@remotion/promo-pages 4.0.269 → 4.0.271
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/.turbo/turbo-make.log +1 -1
- package/bundle.ts +1 -0
- package/dist/Ai.js +40 -0
- package/dist/Homepage.js +72 -53
- package/dist/components/Ai.d.ts +2 -0
- package/dist/components/Ai.js +12 -0
- package/dist/components/icons/remix.js +2 -2
- package/dist/tailwind.css +9 -0
- package/package.json +10 -10
- package/src/components/Ai.tsx +22 -0
- package/src/components/homepage/IconForTemplate.tsx +3 -3
- package/src/components/icons/remix.tsx +16 -13
package/.turbo/turbo-make.log
CHANGED
package/bundle.ts
CHANGED
package/dist/Ai.js
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __export = (target, all) => {
|
|
3
|
+
for (var name in all)
|
|
4
|
+
__defProp(target, name, {
|
|
5
|
+
get: all[name],
|
|
6
|
+
enumerable: true,
|
|
7
|
+
configurable: true,
|
|
8
|
+
set: (newValue) => all[name] = () => newValue
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
12
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
13
|
+
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
14
|
+
}) : x)(function(x) {
|
|
15
|
+
if (typeof require !== "undefined")
|
|
16
|
+
return require.apply(this, arguments);
|
|
17
|
+
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
// src/components/Ai.tsx
|
|
21
|
+
import { useCallback } from "react";
|
|
22
|
+
import { jsx } from "react/jsx-runtime";
|
|
23
|
+
var AskAi = () => {
|
|
24
|
+
const click = useCallback(() => {
|
|
25
|
+
window.crawlchatEmbed.show();
|
|
26
|
+
}, []);
|
|
27
|
+
return /* @__PURE__ */ jsx("button", {
|
|
28
|
+
type: "button",
|
|
29
|
+
onClick: click,
|
|
30
|
+
style: {
|
|
31
|
+
backgroundColor: "#282A36",
|
|
32
|
+
cursor: "pointer"
|
|
33
|
+
},
|
|
34
|
+
className: "rounded-full text-white fixed z-10 bottom-8 right-8 fontbrand appearance-none border-none px-4 py-2 font-medium text-sm",
|
|
35
|
+
children: "Ask AI"
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
export {
|
|
39
|
+
AskAi
|
|
40
|
+
};
|
package/dist/Homepage.js
CHANGED
|
@@ -727,7 +727,7 @@ var __defProp2, __export2 = (target, all) => {
|
|
|
727
727
|
});
|
|
728
728
|
}, useIsPlayer = () => {
|
|
729
729
|
return useContext(IsPlayerContext);
|
|
730
|
-
}, VERSION = "4.0.
|
|
730
|
+
}, VERSION = "4.0.271", checkMultipleRemotionVersions = () => {
|
|
731
731
|
if (typeof globalThis === "undefined") {
|
|
732
732
|
return;
|
|
733
733
|
}
|
|
@@ -4084,17 +4084,12 @@ Check that all your Remotion packages are on the same version. If your dependenc
|
|
|
4084
4084
|
return _portalNode;
|
|
4085
4085
|
}, useLazyComponent = ({
|
|
4086
4086
|
compProps,
|
|
4087
|
-
componentName
|
|
4087
|
+
componentName,
|
|
4088
|
+
noSuspense
|
|
4088
4089
|
}) => {
|
|
4089
4090
|
const lazy = useMemo222(() => {
|
|
4090
|
-
if ("lazyComponent" in compProps && typeof compProps.lazyComponent !== "undefined") {
|
|
4091
|
-
if (typeof compProps.lazyComponent === "undefined") {
|
|
4092
|
-
throw new Error(`A value of \`undefined\` was passed to the \`lazyComponent\` prop. Check the value you are passing to the <${componentName}/> component.`);
|
|
4093
|
-
}
|
|
4094
|
-
return React18.lazy(compProps.lazyComponent);
|
|
4095
|
-
}
|
|
4096
4091
|
if ("component" in compProps) {
|
|
4097
|
-
if (typeof document === "undefined") {
|
|
4092
|
+
if (typeof document === "undefined" || noSuspense) {
|
|
4098
4093
|
return compProps.component;
|
|
4099
4094
|
}
|
|
4100
4095
|
if (typeof compProps.component === "undefined") {
|
|
@@ -4102,6 +4097,12 @@ Check that all your Remotion packages are on the same version. If your dependenc
|
|
|
4102
4097
|
}
|
|
4103
4098
|
return React18.lazy(() => Promise.resolve({ default: compProps.component }));
|
|
4104
4099
|
}
|
|
4100
|
+
if ("lazyComponent" in compProps && typeof compProps.lazyComponent !== "undefined") {
|
|
4101
|
+
if (typeof compProps.lazyComponent === "undefined") {
|
|
4102
|
+
throw new Error(`A value of \`undefined\` was passed to the \`lazyComponent\` prop. Check the value you are passing to the <${componentName}/> component.`);
|
|
4103
|
+
}
|
|
4104
|
+
return React18.lazy(compProps.lazyComponent);
|
|
4105
|
+
}
|
|
4105
4106
|
throw new Error("You must pass either 'component' or 'lazyComponent'");
|
|
4106
4107
|
}, [compProps.component, compProps.lazyComponent]);
|
|
4107
4108
|
return lazy;
|
|
@@ -4139,7 +4140,8 @@ Check that all your Remotion packages are on the same version. If your dependenc
|
|
|
4139
4140
|
const video = useVideo();
|
|
4140
4141
|
const lazy = useLazyComponent({
|
|
4141
4142
|
compProps,
|
|
4142
|
-
componentName: "Composition"
|
|
4143
|
+
componentName: "Composition",
|
|
4144
|
+
noSuspense: false
|
|
4143
4145
|
});
|
|
4144
4146
|
const nonce = useNonce();
|
|
4145
4147
|
const isPlayer = useIsPlayer();
|
|
@@ -12754,15 +12756,21 @@ var useElementSize = (ref, options) => {
|
|
|
12754
12756
|
const probableCssParentScale = contentRect.width === 0 ? 1 : newSize[0].width / contentRect.width;
|
|
12755
12757
|
const width = options.shouldApplyCssTransforms ? newSize[0].width : newSize[0].width * (1 / probableCssParentScale);
|
|
12756
12758
|
const height = options.shouldApplyCssTransforms ? newSize[0].height : newSize[0].height * (1 / probableCssParentScale);
|
|
12757
|
-
setSize({
|
|
12758
|
-
width
|
|
12759
|
-
|
|
12760
|
-
|
|
12761
|
-
top: newSize[0].y,
|
|
12762
|
-
windowSize: {
|
|
12763
|
-
height: window.innerHeight,
|
|
12764
|
-
width: window.innerWidth
|
|
12759
|
+
setSize((prevState) => {
|
|
12760
|
+
const isSame = prevState && prevState.width === width && prevState.height === height && prevState.left === newSize[0].x && prevState.top === newSize[0].y && prevState.windowSize.height === window.innerHeight && prevState.windowSize.width === window.innerWidth;
|
|
12761
|
+
if (isSame) {
|
|
12762
|
+
return prevState;
|
|
12765
12763
|
}
|
|
12764
|
+
return {
|
|
12765
|
+
width,
|
|
12766
|
+
height,
|
|
12767
|
+
left: newSize[0].x,
|
|
12768
|
+
top: newSize[0].y,
|
|
12769
|
+
windowSize: {
|
|
12770
|
+
height: window.innerHeight,
|
|
12771
|
+
width: window.innerWidth
|
|
12772
|
+
}
|
|
12773
|
+
};
|
|
12766
12774
|
});
|
|
12767
12775
|
});
|
|
12768
12776
|
}, [options.shouldApplyCssTransforms]);
|
|
@@ -13974,7 +13982,8 @@ var PlayerUI = ({
|
|
|
13974
13982
|
hideControlsWhenPointerDoesntMove,
|
|
13975
13983
|
overflowVisible,
|
|
13976
13984
|
browserMediaControlsBehavior,
|
|
13977
|
-
overrideInternalClassName
|
|
13985
|
+
overrideInternalClassName,
|
|
13986
|
+
noSuspense
|
|
13978
13987
|
}, ref) => {
|
|
13979
13988
|
const config = Internals.useUnsafeVideoConfig();
|
|
13980
13989
|
const video = Internals.useVideo();
|
|
@@ -14393,7 +14402,7 @@ var PlayerUI = ({
|
|
|
14393
14402
|
}) : null
|
|
14394
14403
|
]
|
|
14395
14404
|
});
|
|
14396
|
-
if (IS_NODE && !doesReactVersionSupportSuspense) {
|
|
14405
|
+
if (noSuspense || IS_NODE && !doesReactVersionSupportSuspense) {
|
|
14397
14406
|
return /* @__PURE__ */ jsx122("div", {
|
|
14398
14407
|
ref: container4,
|
|
14399
14408
|
style: outerStyle,
|
|
@@ -14696,6 +14705,7 @@ var PlayerFn = ({
|
|
|
14696
14705
|
browserMediaControlsBehavior: passedBrowserMediaControlsBehavior,
|
|
14697
14706
|
overrideInternalClassName,
|
|
14698
14707
|
logLevel = "info",
|
|
14708
|
+
noSuspense,
|
|
14699
14709
|
acknowledgeRemotionLicense,
|
|
14700
14710
|
...componentProps
|
|
14701
14711
|
}, ref) => {
|
|
@@ -14717,7 +14727,8 @@ var PlayerFn = ({
|
|
|
14717
14727
|
useState132(() => acknowledgeRemotionLicenseMessage(Boolean(acknowledgeRemotionLicense), logLevel));
|
|
14718
14728
|
const component = Internals.useLazyComponent({
|
|
14719
14729
|
compProps: componentProps,
|
|
14720
|
-
componentName: "Player"
|
|
14730
|
+
componentName: "Player",
|
|
14731
|
+
noSuspense: Boolean(noSuspense)
|
|
14721
14732
|
});
|
|
14722
14733
|
validateInitialFrame({ initialFrame, durationInFrames });
|
|
14723
14734
|
const [frame, setFrame] = useState132(() => ({
|
|
@@ -14869,7 +14880,8 @@ var PlayerFn = ({
|
|
|
14869
14880
|
hideControlsWhenPointerDoesntMove,
|
|
14870
14881
|
overflowVisible,
|
|
14871
14882
|
browserMediaControlsBehavior,
|
|
14872
|
-
overrideInternalClassName: overrideInternalClassName ?? undefined
|
|
14883
|
+
overrideInternalClassName: overrideInternalClassName ?? undefined,
|
|
14884
|
+
noSuspense: Boolean(noSuspense)
|
|
14873
14885
|
})
|
|
14874
14886
|
})
|
|
14875
14887
|
})
|
|
@@ -14902,6 +14914,7 @@ var ThumbnailUI = ({
|
|
|
14902
14914
|
renderLoading,
|
|
14903
14915
|
className: className2,
|
|
14904
14916
|
overflowVisible,
|
|
14917
|
+
noSuspense,
|
|
14905
14918
|
overrideInternalClassName
|
|
14906
14919
|
}, ref) => {
|
|
14907
14920
|
const config = Internals.useUnsafeVideoConfig();
|
|
@@ -14991,7 +15004,7 @@ var ThumbnailUI = ({
|
|
|
14991
15004
|
}) : null
|
|
14992
15005
|
})
|
|
14993
15006
|
});
|
|
14994
|
-
if (IS_NODE && !doesReactVersionSupportSuspense2) {
|
|
15007
|
+
if (noSuspense || IS_NODE && !doesReactVersionSupportSuspense2) {
|
|
14995
15008
|
return /* @__PURE__ */ jsx152("div", {
|
|
14996
15009
|
ref: container4,
|
|
14997
15010
|
style: outerStyle,
|
|
@@ -15024,6 +15037,7 @@ var ThumbnailFn = ({
|
|
|
15024
15037
|
overflowVisible = false,
|
|
15025
15038
|
overrideInternalClassName,
|
|
15026
15039
|
logLevel = "info",
|
|
15040
|
+
noSuspense,
|
|
15027
15041
|
...componentProps
|
|
15028
15042
|
}, ref) => {
|
|
15029
15043
|
if (typeof window !== "undefined") {
|
|
@@ -15054,7 +15068,8 @@ var ThumbnailFn = ({
|
|
|
15054
15068
|
useImperativeHandle42(ref, () => rootRef.current, []);
|
|
15055
15069
|
const Component = Internals.useLazyComponent({
|
|
15056
15070
|
compProps: componentProps,
|
|
15057
|
-
componentName: "Thumbnail"
|
|
15071
|
+
componentName: "Thumbnail",
|
|
15072
|
+
noSuspense: Boolean(noSuspense)
|
|
15058
15073
|
});
|
|
15059
15074
|
const [emitter] = useState142(() => new ThumbnailEmitter);
|
|
15060
15075
|
const passedInputProps = useMemo172(() => {
|
|
@@ -15081,7 +15096,8 @@ var ThumbnailFn = ({
|
|
|
15081
15096
|
renderLoading,
|
|
15082
15097
|
style: style2,
|
|
15083
15098
|
overflowVisible,
|
|
15084
|
-
overrideInternalClassName
|
|
15099
|
+
overrideInternalClassName,
|
|
15100
|
+
noSuspense: Boolean(noSuspense)
|
|
15085
15101
|
})
|
|
15086
15102
|
})
|
|
15087
15103
|
})
|
|
@@ -19855,7 +19871,7 @@ var FEATURED_TEMPLATES = [
|
|
|
19855
19871
|
cliId: "blank",
|
|
19856
19872
|
type: "video",
|
|
19857
19873
|
defaultBranch: "main",
|
|
19858
|
-
featuredOnHomePage:
|
|
19874
|
+
featuredOnHomePage: null,
|
|
19859
19875
|
previewURL: "https://template-empty.vercel.app/?/MyComp",
|
|
19860
19876
|
templateInMonorepo: "template-blank",
|
|
19861
19877
|
allowEnableTailwind: true
|
|
@@ -19881,23 +19897,23 @@ var FEATURED_TEMPLATES = [
|
|
|
19881
19897
|
allowEnableTailwind: true
|
|
19882
19898
|
},
|
|
19883
19899
|
{
|
|
19884
|
-
homePageLabel: "
|
|
19885
|
-
shortName: "
|
|
19900
|
+
homePageLabel: "React Router 7",
|
|
19901
|
+
shortName: "React Router",
|
|
19886
19902
|
org: "remotion-dev",
|
|
19887
|
-
repoName: "template-
|
|
19888
|
-
description: "
|
|
19889
|
-
longerDescription: "A software-as-a-service starter kit which has the Remotion Player and rendering via Remotion Lambda built-in. Built with
|
|
19903
|
+
repoName: "template-react-router",
|
|
19904
|
+
description: "SaaS template for video generation apps",
|
|
19905
|
+
longerDescription: "A software-as-a-service starter kit which has the Remotion Player and rendering via Remotion Lambda built-in. Built with React Router 7.",
|
|
19890
19906
|
promoBanner: {
|
|
19891
|
-
width:
|
|
19907
|
+
width: 918,
|
|
19892
19908
|
height: 720,
|
|
19893
19909
|
src: "/img/remix-template.png"
|
|
19894
19910
|
},
|
|
19895
|
-
cliId: "
|
|
19911
|
+
cliId: "react-router",
|
|
19896
19912
|
type: "image",
|
|
19897
19913
|
defaultBranch: "main",
|
|
19898
|
-
featuredOnHomePage:
|
|
19914
|
+
featuredOnHomePage: "React Router",
|
|
19899
19915
|
previewURL: null,
|
|
19900
|
-
templateInMonorepo: "template-
|
|
19916
|
+
templateInMonorepo: "template-react-router",
|
|
19901
19917
|
allowEnableTailwind: false
|
|
19902
19918
|
},
|
|
19903
19919
|
{
|
|
@@ -20303,24 +20319,27 @@ var OverlayIcon = (props) => {
|
|
|
20303
20319
|
|
|
20304
20320
|
// src/components/icons/remix.tsx
|
|
20305
20321
|
import { jsx as jsx113, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
20306
|
-
var
|
|
20307
|
-
return /* @__PURE__ */
|
|
20308
|
-
viewBox: "0 0 800 800",
|
|
20309
|
-
fill: "none",
|
|
20322
|
+
var ReactRouterIcon = (props) => {
|
|
20323
|
+
return /* @__PURE__ */ jsx113("svg", {
|
|
20310
20324
|
xmlns: "http://www.w3.org/2000/svg",
|
|
20325
|
+
width: "800px",
|
|
20326
|
+
height: "800px",
|
|
20327
|
+
viewBox: "0 -58 256 256",
|
|
20328
|
+
version: "1.1",
|
|
20329
|
+
preserveAspectRatio: "xMidYMid",
|
|
20311
20330
|
...props,
|
|
20312
|
-
children:
|
|
20313
|
-
|
|
20314
|
-
|
|
20315
|
-
|
|
20316
|
-
|
|
20317
|
-
|
|
20318
|
-
|
|
20319
|
-
|
|
20320
|
-
|
|
20321
|
-
|
|
20322
|
-
|
|
20323
|
-
|
|
20331
|
+
children: /* @__PURE__ */ jsxs50("g", {
|
|
20332
|
+
children: [
|
|
20333
|
+
/* @__PURE__ */ jsx113("path", {
|
|
20334
|
+
d: "M78.0659341,92.5875806 C90.8837956,92.5875806 101.274726,82.1966508 101.274726,69.3787894 C101.274726,56.5609279 90.8837956,46.1699982 78.0659341,46.1699982 C65.2480726,46.1699982 54.8571429,56.5609279 54.8571429,69.3787894 C54.8571429,82.1966508 65.2480726,92.5875806 78.0659341,92.5875806 Z M23.2087913,139.005163 C36.0266526,139.005163 46.4175825,128.614233 46.4175825,115.796372 C46.4175825,102.97851 36.0266526,92.5875806 23.2087913,92.5875806 C10.3909298,92.5875806 0,102.97851 0,115.796372 C0,128.614233 10.3909298,139.005163 23.2087913,139.005163 Z M232.791209,139.005163 C245.60907,139.005163 256,128.614233 256,115.796372 C256,102.97851 245.60907,92.5875806 232.791209,92.5875806 C219.973347,92.5875806 209.582418,102.97851 209.582418,115.796372 C209.582418,128.614233 219.973347,139.005163 232.791209,139.005163 Z",
|
|
20335
|
+
fill: "currentcolor"
|
|
20336
|
+
}),
|
|
20337
|
+
/* @__PURE__ */ jsx113("path", {
|
|
20338
|
+
d: "M156.565464,70.3568084 C155.823426,62.6028163 155.445577,56.1490255 149.505494,51.6131676 C141.982638,45.8687002 133.461166,49.5960243 122.964463,45.8072968 C112.650326,43.3121427 105,34.1545727 105,23.2394367 C105,10.4046502 115.577888,0 128.626373,0 C138.29063,0 146.599638,5.70747659 150.259573,13.8825477 C155.861013,24.5221258 152.220489,35.3500418 159.258242,40.8041273 C167.591489,47.2621895 178.826167,42.5329154 191.362109,48.6517412 C195.390112,50.5026944 198.799584,53.4384578 201.202056,57.0769224 C203.604528,60.7153869 205,65.0565524 205,69.7183101 C205,80.633446 197.349674,89.7910161 187.035538,92.2861702 C176.538834,96.0748977 168.017363,92.3475736 160.494506,98.092041 C152.03503,104.551712 156.563892,115.358642 149.669352,126.774447 C145.756163,134.291567 137.802119,139.43662 128.626373,139.43662 C115.577888,139.43662 105,129.03197 105,116.197184 C105,106.873668 110.581887,98.832521 118.637891,95.1306146 C131.173833,89.0117889 142.408511,93.7410629 150.741758,87.2830007 C155.549106,83.5574243 156.565464,77.8102648 156.565464,70.3568084 Z",
|
|
20339
|
+
fill: "currentcolor"
|
|
20340
|
+
})
|
|
20341
|
+
]
|
|
20342
|
+
})
|
|
20324
20343
|
});
|
|
20325
20344
|
};
|
|
20326
20345
|
|
|
@@ -20489,8 +20508,8 @@ var IconForTemplate = ({ template, scale: scale4 = 1 }) => {
|
|
|
20489
20508
|
}
|
|
20490
20509
|
});
|
|
20491
20510
|
}
|
|
20492
|
-
if (template.cliId === "
|
|
20493
|
-
return /* @__PURE__ */ jsx123(
|
|
20511
|
+
if (template.cliId === "react-router") {
|
|
20512
|
+
return /* @__PURE__ */ jsx123(ReactRouterIcon, {
|
|
20494
20513
|
style: {
|
|
20495
20514
|
height: scale4 * 32
|
|
20496
20515
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
export const AskAi = () => {
|
|
4
|
+
const click = useCallback(() => {
|
|
5
|
+
// @ts-expect-error
|
|
6
|
+
window.crawlchatEmbed.show();
|
|
7
|
+
}, []);
|
|
8
|
+
return (_jsx("button", { type: "button", onClick: click, style: {
|
|
9
|
+
backgroundColor: '#282A36',
|
|
10
|
+
cursor: 'pointer',
|
|
11
|
+
}, className: "rounded-full text-white fixed z-10 bottom-8 right-8 fontbrand appearance-none border-none px-4 py-2 font-medium text-sm", children: "Ask AI" }));
|
|
12
|
+
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
export const
|
|
3
|
-
return (
|
|
2
|
+
export const ReactRouterIcon = (props) => {
|
|
3
|
+
return (_jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "800px", height: "800px", viewBox: "0 -58 256 256", version: "1.1", preserveAspectRatio: "xMidYMid", ...props, children: _jsxs("g", { children: [_jsx("path", { d: "M78.0659341,92.5875806 C90.8837956,92.5875806 101.274726,82.1966508 101.274726,69.3787894 C101.274726,56.5609279 90.8837956,46.1699982 78.0659341,46.1699982 C65.2480726,46.1699982 54.8571429,56.5609279 54.8571429,69.3787894 C54.8571429,82.1966508 65.2480726,92.5875806 78.0659341,92.5875806 Z M23.2087913,139.005163 C36.0266526,139.005163 46.4175825,128.614233 46.4175825,115.796372 C46.4175825,102.97851 36.0266526,92.5875806 23.2087913,92.5875806 C10.3909298,92.5875806 0,102.97851 0,115.796372 C0,128.614233 10.3909298,139.005163 23.2087913,139.005163 Z M232.791209,139.005163 C245.60907,139.005163 256,128.614233 256,115.796372 C256,102.97851 245.60907,92.5875806 232.791209,92.5875806 C219.973347,92.5875806 209.582418,102.97851 209.582418,115.796372 C209.582418,128.614233 219.973347,139.005163 232.791209,139.005163 Z", fill: "currentcolor" }), _jsx("path", { d: "M156.565464,70.3568084 C155.823426,62.6028163 155.445577,56.1490255 149.505494,51.6131676 C141.982638,45.8687002 133.461166,49.5960243 122.964463,45.8072968 C112.650326,43.3121427 105,34.1545727 105,23.2394367 C105,10.4046502 115.577888,0 128.626373,0 C138.29063,0 146.599638,5.70747659 150.259573,13.8825477 C155.861013,24.5221258 152.220489,35.3500418 159.258242,40.8041273 C167.591489,47.2621895 178.826167,42.5329154 191.362109,48.6517412 C195.390112,50.5026944 198.799584,53.4384578 201.202056,57.0769224 C203.604528,60.7153869 205,65.0565524 205,69.7183101 C205,80.633446 197.349674,89.7910161 187.035538,92.2861702 C176.538834,96.0748977 168.017363,92.3475736 160.494506,98.092041 C152.03503,104.551712 156.563892,115.358642 149.669352,126.774447 C145.756163,134.291567 137.802119,139.43662 128.626373,139.43662 C115.577888,139.43662 105,129.03197 105,116.197184 C105,106.873668 110.581887,98.832521 118.637891,95.1306146 C131.173833,89.0117889 142.408511,93.7410629 150.741758,87.2830007 C155.549106,83.5574243 156.565464,77.8102648 156.565464,70.3568084 Z", fill: "currentcolor" })] }) }));
|
|
4
4
|
};
|
package/dist/tailwind.css
CHANGED
|
@@ -419,6 +419,9 @@ body {
|
|
|
419
419
|
.absolute {
|
|
420
420
|
position: absolute;
|
|
421
421
|
}
|
|
422
|
+
.fixed {
|
|
423
|
+
position: fixed;
|
|
424
|
+
}
|
|
422
425
|
.relative {
|
|
423
426
|
position: relative;
|
|
424
427
|
}
|
|
@@ -434,9 +437,15 @@ body {
|
|
|
434
437
|
.right-2\.5 {
|
|
435
438
|
right: calc(var(--spacing) * 2.5);
|
|
436
439
|
}
|
|
440
|
+
.right-8 {
|
|
441
|
+
right: calc(var(--spacing) * 8);
|
|
442
|
+
}
|
|
437
443
|
.bottom-2\.5 {
|
|
438
444
|
bottom: calc(var(--spacing) * 2.5);
|
|
439
445
|
}
|
|
446
|
+
.bottom-8 {
|
|
447
|
+
bottom: calc(var(--spacing) * 8);
|
|
448
|
+
}
|
|
440
449
|
.bottom-full {
|
|
441
450
|
bottom: 100%;
|
|
442
451
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remotion/promo-pages",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.271",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -10,14 +10,14 @@
|
|
|
10
10
|
"polished": "4.3.1",
|
|
11
11
|
"vite": "^5.4.12",
|
|
12
12
|
"zod": "3.22.3",
|
|
13
|
-
"@remotion/animated-emoji": "4.0.
|
|
14
|
-
"@remotion/lottie": "4.0.
|
|
15
|
-
"@remotion/
|
|
16
|
-
"@remotion/
|
|
17
|
-
"@remotion/
|
|
18
|
-
"
|
|
19
|
-
"remotion": "4.0.
|
|
20
|
-
"
|
|
13
|
+
"@remotion/animated-emoji": "4.0.271",
|
|
14
|
+
"@remotion/lottie": "4.0.271",
|
|
15
|
+
"@remotion/lambda": "4.0.271",
|
|
16
|
+
"@remotion/paths": "4.0.271",
|
|
17
|
+
"@remotion/player": "4.0.271",
|
|
18
|
+
"@remotion/shapes": "4.0.271",
|
|
19
|
+
"remotion": "4.0.271",
|
|
20
|
+
"create-video": "4.0.271"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@eslint/eslintrc": "3.1.0",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"tailwind-merge": "2.5.2",
|
|
37
37
|
"bun-plugin-tailwind": "0.0.13",
|
|
38
38
|
"clsx": "2.1.1",
|
|
39
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
39
|
+
"@remotion/eslint-config-internal": "4.0.271"
|
|
40
40
|
},
|
|
41
41
|
"repository": {
|
|
42
42
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/promo-pages"
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React, {useCallback} from 'react';
|
|
2
|
+
|
|
3
|
+
export const AskAi: React.FC = () => {
|
|
4
|
+
const click = useCallback(() => {
|
|
5
|
+
// @ts-expect-error
|
|
6
|
+
window.crawlchatEmbed.show();
|
|
7
|
+
}, []);
|
|
8
|
+
|
|
9
|
+
return (
|
|
10
|
+
<button
|
|
11
|
+
type="button"
|
|
12
|
+
onClick={click}
|
|
13
|
+
style={{
|
|
14
|
+
backgroundColor: '#282A36',
|
|
15
|
+
cursor: 'pointer',
|
|
16
|
+
}}
|
|
17
|
+
className="rounded-full text-white fixed z-10 bottom-8 right-8 fontbrand appearance-none border-none px-4 py-2 font-medium text-sm"
|
|
18
|
+
>
|
|
19
|
+
Ask AI
|
|
20
|
+
</button>
|
|
21
|
+
);
|
|
22
|
+
};
|
|
@@ -6,7 +6,7 @@ import {Cubes} from '../icons/cubes';
|
|
|
6
6
|
import {JSIcon} from '../icons/js';
|
|
7
7
|
import {NextIcon} from '../icons/next';
|
|
8
8
|
import {OverlayIcon} from '../icons/overlay';
|
|
9
|
-
import {
|
|
9
|
+
import {ReactRouterIcon} from '../icons/remix';
|
|
10
10
|
import {SkiaIcon} from '../icons/skia';
|
|
11
11
|
import {Stargazer} from '../icons/stargazer';
|
|
12
12
|
import {StillIcon} from '../icons/still';
|
|
@@ -110,9 +110,9 @@ export const IconForTemplate: React.FC<{
|
|
|
110
110
|
);
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
if (template.cliId === '
|
|
113
|
+
if (template.cliId === 'react-router') {
|
|
114
114
|
return (
|
|
115
|
-
<
|
|
115
|
+
<ReactRouterIcon
|
|
116
116
|
style={{
|
|
117
117
|
height: scale * 32,
|
|
118
118
|
}}
|
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
import type {SVGProps} from 'react';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
|
|
4
|
-
export const
|
|
4
|
+
export const ReactRouterIcon: React.FC<SVGProps<SVGSVGElement>> = (props) => {
|
|
5
5
|
return (
|
|
6
6
|
<svg
|
|
7
|
-
viewBox="0 0 800 800"
|
|
8
|
-
fill="none"
|
|
9
7
|
xmlns="http://www.w3.org/2000/svg"
|
|
8
|
+
width="800px"
|
|
9
|
+
height="800px"
|
|
10
|
+
viewBox="0 -58 256 256"
|
|
11
|
+
version="1.1"
|
|
12
|
+
preserveAspectRatio="xMidYMid"
|
|
10
13
|
{...props}
|
|
11
14
|
>
|
|
12
|
-
<
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
15
|
+
<g>
|
|
16
|
+
<path
|
|
17
|
+
d="M78.0659341,92.5875806 C90.8837956,92.5875806 101.274726,82.1966508 101.274726,69.3787894 C101.274726,56.5609279 90.8837956,46.1699982 78.0659341,46.1699982 C65.2480726,46.1699982 54.8571429,56.5609279 54.8571429,69.3787894 C54.8571429,82.1966508 65.2480726,92.5875806 78.0659341,92.5875806 Z M23.2087913,139.005163 C36.0266526,139.005163 46.4175825,128.614233 46.4175825,115.796372 C46.4175825,102.97851 36.0266526,92.5875806 23.2087913,92.5875806 C10.3909298,92.5875806 0,102.97851 0,115.796372 C0,128.614233 10.3909298,139.005163 23.2087913,139.005163 Z M232.791209,139.005163 C245.60907,139.005163 256,128.614233 256,115.796372 C256,102.97851 245.60907,92.5875806 232.791209,92.5875806 C219.973347,92.5875806 209.582418,102.97851 209.582418,115.796372 C209.582418,128.614233 219.973347,139.005163 232.791209,139.005163 Z"
|
|
18
|
+
fill="currentcolor"
|
|
19
|
+
/>
|
|
20
|
+
<path
|
|
21
|
+
d="M156.565464,70.3568084 C155.823426,62.6028163 155.445577,56.1490255 149.505494,51.6131676 C141.982638,45.8687002 133.461166,49.5960243 122.964463,45.8072968 C112.650326,43.3121427 105,34.1545727 105,23.2394367 C105,10.4046502 115.577888,0 128.626373,0 C138.29063,0 146.599638,5.70747659 150.259573,13.8825477 C155.861013,24.5221258 152.220489,35.3500418 159.258242,40.8041273 C167.591489,47.2621895 178.826167,42.5329154 191.362109,48.6517412 C195.390112,50.5026944 198.799584,53.4384578 201.202056,57.0769224 C203.604528,60.7153869 205,65.0565524 205,69.7183101 C205,80.633446 197.349674,89.7910161 187.035538,92.2861702 C176.538834,96.0748977 168.017363,92.3475736 160.494506,98.092041 C152.03503,104.551712 156.563892,115.358642 149.669352,126.774447 C145.756163,134.291567 137.802119,139.43662 128.626373,139.43662 C115.577888,139.43662 105,129.03197 105,116.197184 C105,106.873668 110.581887,98.832521 118.637891,95.1306146 C131.173833,89.0117889 142.408511,93.7410629 150.741758,87.2830007 C155.549106,83.5574243 156.565464,77.8102648 156.565464,70.3568084 Z"
|
|
22
|
+
fill="currentcolor"
|
|
23
|
+
/>
|
|
24
|
+
</g>
|
|
22
25
|
</svg>
|
|
23
26
|
);
|
|
24
27
|
};
|