@remotion/promo-pages 4.0.491 → 4.0.493
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 +371 -273
- package/dist/design.js +331 -271
- package/dist/experts.js +182 -122
- package/dist/homepage/Pricing.js +331 -271
- package/dist/prompts/PromptsGallery.js +331 -271
- package/dist/prompts/PromptsShow.js +331 -271
- package/dist/prompts/PromptsSubmit.js +331 -271
- package/dist/team.js +331 -271
- package/dist/template-modal-content.js +331 -271
- package/dist/templates.js +331 -271
- package/package.json +13 -13
package/dist/Homepage.js
CHANGED
|
@@ -941,6 +941,7 @@ import * as React6 from "react";
|
|
|
941
941
|
import React7, { useMemo as useMemo6, useRef as useRef2 } from "react";
|
|
942
942
|
import { useContext as useContext8, useMemo as useMemo7 } from "react";
|
|
943
943
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
944
|
+
import React9 from "react";
|
|
944
945
|
import {
|
|
945
946
|
forwardRef as forwardRef3,
|
|
946
947
|
useCallback as useCallback6,
|
|
@@ -966,11 +967,11 @@ import { useContext as useContext13 } from "react";
|
|
|
966
967
|
import { useContext as useContext12, useMemo as useMemo10 } from "react";
|
|
967
968
|
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
968
969
|
import { createContext as createContext14 } from "react";
|
|
969
|
-
import
|
|
970
|
+
import React12, { useCallback as useCallback5, useMemo as useMemo12, useRef as useRef4, useState as useState3 } from "react";
|
|
970
971
|
import { jsx as jsx10 } from "react/jsx-runtime";
|
|
971
|
-
import
|
|
972
|
+
import React13, { createContext as createContext15 } from "react";
|
|
972
973
|
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
973
|
-
import
|
|
974
|
+
import React14, { forwardRef as forwardRef2, useContext as useContext16, useMemo as useMemo13, useState as useState4 } from "react";
|
|
974
975
|
import { useContext as useContext15, useRef as useRef5 } from "react";
|
|
975
976
|
import { createContext as createContext16 } from "react";
|
|
976
977
|
import { jsx as jsx12 } from "react/jsx-runtime";
|
|
@@ -982,7 +983,7 @@ import {
|
|
|
982
983
|
useRef as useRef9,
|
|
983
984
|
useState as useState6
|
|
984
985
|
} from "react";
|
|
985
|
-
import
|
|
986
|
+
import React16, { useCallback as useCallback7, useImperativeHandle, useMemo as useMemo16, useRef as useRef8 } from "react";
|
|
986
987
|
import { useEffect as useEffect4, useMemo as useMemo15, useRef as useRef7 } from "react";
|
|
987
988
|
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
988
989
|
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
@@ -998,7 +999,7 @@ import {
|
|
|
998
999
|
} from "react";
|
|
999
1000
|
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
1000
1001
|
import { forwardRef as forwardRef7, useCallback as useCallback14, useContext as useContext30 } from "react";
|
|
1001
|
-
import
|
|
1002
|
+
import React17, { createContext as createContext18, useMemo as useMemo18 } from "react";
|
|
1002
1003
|
import { jsx as jsx16 } from "react/jsx-runtime";
|
|
1003
1004
|
import { useContext as useContext19 } from "react";
|
|
1004
1005
|
import { createContext as createContext19, useEffect as useEffect6, useState as useState9 } from "react";
|
|
@@ -1006,7 +1007,7 @@ import { jsx as jsx17 } from "react/jsx-runtime";
|
|
|
1006
1007
|
import { createContext as createContext20, useMemo as useMemo19, useReducer } from "react";
|
|
1007
1008
|
import { jsx as jsx18 } from "react/jsx-runtime";
|
|
1008
1009
|
import { useCallback as useCallback13 } from "react";
|
|
1009
|
-
import
|
|
1010
|
+
import React23, {
|
|
1010
1011
|
forwardRef as forwardRef5,
|
|
1011
1012
|
useContext as useContext28,
|
|
1012
1013
|
useEffect as useEffect14,
|
|
@@ -1016,7 +1017,7 @@ import React22, {
|
|
|
1016
1017
|
useState as useState14
|
|
1017
1018
|
} from "react";
|
|
1018
1019
|
import { useContext as useContext21, useLayoutEffect as useLayoutEffect5, useRef as useRef14 } from "react";
|
|
1019
|
-
import
|
|
1020
|
+
import React20, {
|
|
1020
1021
|
createContext as createContext21,
|
|
1021
1022
|
createRef as createRef2,
|
|
1022
1023
|
useCallback as useCallback9,
|
|
@@ -1040,7 +1041,7 @@ import {
|
|
|
1040
1041
|
} from "react";
|
|
1041
1042
|
import { useCallback as useCallback11, useMemo as useMemo25, useRef as useRef16 } from "react";
|
|
1042
1043
|
import { useContext as useContext25, useMemo as useMemo24 } from "react";
|
|
1043
|
-
import
|
|
1044
|
+
import React21, {
|
|
1044
1045
|
useCallback as useCallback10,
|
|
1045
1046
|
useContext as useContext24,
|
|
1046
1047
|
useEffect as useEffect9,
|
|
@@ -1050,7 +1051,7 @@ import React20, {
|
|
|
1050
1051
|
useState as useState12
|
|
1051
1052
|
} from "react";
|
|
1052
1053
|
import { jsx as jsx20 } from "react/jsx-runtime";
|
|
1053
|
-
import
|
|
1054
|
+
import React22 from "react";
|
|
1054
1055
|
import { useEffect as useEffect10, useState as useState13 } from "react";
|
|
1055
1056
|
import { useEffect as useEffect11, useRef as useRef17 } from "react";
|
|
1056
1057
|
import { useEffect as useEffect13 } from "react";
|
|
@@ -1108,10 +1109,10 @@ import {
|
|
|
1108
1109
|
useState as useState18
|
|
1109
1110
|
} from "react";
|
|
1110
1111
|
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
1111
|
-
import
|
|
1112
|
+
import React30, { forwardRef as forwardRef12, useCallback as useCallback20, useRef as useRef25 } from "react";
|
|
1112
1113
|
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
1113
1114
|
import { createRef as createRef3 } from "react";
|
|
1114
|
-
import
|
|
1115
|
+
import React31 from "react";
|
|
1115
1116
|
import {
|
|
1116
1117
|
useCallback as useCallback21,
|
|
1117
1118
|
useImperativeHandle as useImperativeHandle8,
|
|
@@ -1120,14 +1121,14 @@ import {
|
|
|
1120
1121
|
useState as useState19
|
|
1121
1122
|
} from "react";
|
|
1122
1123
|
import { jsx as jsx30 } from "react/jsx-runtime";
|
|
1123
|
-
import
|
|
1124
|
+
import React32 from "react";
|
|
1124
1125
|
import { useMemo as useMemo34 } from "react";
|
|
1125
1126
|
import { createContext as createContext24, useContext as useContext34, useMemo as useMemo33 } from "react";
|
|
1126
1127
|
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
1127
1128
|
import { jsx as jsx32 } from "react/jsx-runtime";
|
|
1128
|
-
import
|
|
1129
|
-
import
|
|
1130
|
-
import
|
|
1129
|
+
import React34 from "react";
|
|
1130
|
+
import React35, { createContext as createContext25 } from "react";
|
|
1131
|
+
import React36, { useContext as useContext35 } from "react";
|
|
1131
1132
|
import { useCallback as useCallback24 } from "react";
|
|
1132
1133
|
import {
|
|
1133
1134
|
useCallback as useCallback22,
|
|
@@ -1138,7 +1139,7 @@ import {
|
|
|
1138
1139
|
useState as useState20
|
|
1139
1140
|
} from "react";
|
|
1140
1141
|
import { jsx as jsx33 } from "react/jsx-runtime";
|
|
1141
|
-
import
|
|
1142
|
+
import React38, {
|
|
1142
1143
|
forwardRef as forwardRef13,
|
|
1143
1144
|
useCallback as useCallback23,
|
|
1144
1145
|
useContext as useContext37,
|
|
@@ -1151,15 +1152,15 @@ import React37, {
|
|
|
1151
1152
|
import { useEffect as useEffect18 } from "react";
|
|
1152
1153
|
import { jsx as jsx34 } from "react/jsx-runtime";
|
|
1153
1154
|
import { jsx as jsx35 } from "react/jsx-runtime";
|
|
1154
|
-
import
|
|
1155
|
+
import React40, { useMemo as useMemo37 } from "react";
|
|
1155
1156
|
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
1156
|
-
import
|
|
1157
|
+
import React42, {
|
|
1157
1158
|
forwardRef as forwardRef14,
|
|
1158
1159
|
useMemo as useMemo38
|
|
1159
1160
|
} from "react";
|
|
1160
|
-
import
|
|
1161
|
+
import React41 from "react";
|
|
1161
1162
|
import { jsx as jsx37, jsxs as jsxs3, Fragment } from "react/jsx-runtime";
|
|
1162
|
-
import
|
|
1163
|
+
import React43 from "react";
|
|
1163
1164
|
import { forwardRef as forwardRef16, useCallback as useCallback25, useContext as useContext39 } from "react";
|
|
1164
1165
|
import {
|
|
1165
1166
|
forwardRef as forwardRef15,
|
|
@@ -1821,6 +1822,7 @@ var useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
1821
1822
|
if (currentCompositionMetadata) {
|
|
1822
1823
|
return {
|
|
1823
1824
|
type: "success",
|
|
1825
|
+
metadataSource: null,
|
|
1824
1826
|
result: {
|
|
1825
1827
|
...currentCompositionMetadata,
|
|
1826
1828
|
id: composition.id,
|
|
@@ -1838,6 +1840,7 @@ var useResolvedVideoConfig = (preferredCompositionId) => {
|
|
|
1838
1840
|
validateDimension(composition.height, "height", `in <Composition id="${composition.id}">`);
|
|
1839
1841
|
return {
|
|
1840
1842
|
type: "success",
|
|
1843
|
+
metadataSource: null,
|
|
1841
1844
|
result: {
|
|
1842
1845
|
width: composition.width,
|
|
1843
1846
|
height: composition.height,
|
|
@@ -2237,6 +2240,7 @@ var InnerComposition = ({
|
|
|
2237
2240
|
}
|
|
2238
2241
|
const { folderName, parentName } = useContext9(FolderContext);
|
|
2239
2242
|
const stack = compProps.stack ?? null;
|
|
2243
|
+
const componentFromProps = "component" in compProps ? compProps.component : null;
|
|
2240
2244
|
useEffect2(() => {
|
|
2241
2245
|
if (!id) {
|
|
2242
2246
|
throw new Error("No id for composition passed.");
|
|
@@ -2254,6 +2258,7 @@ var InnerComposition = ({
|
|
|
2254
2258
|
defaultProps: serializeThenDeserializeInStudio(defaultProps ?? {}),
|
|
2255
2259
|
nonce: nonce.get(),
|
|
2256
2260
|
parentFolderName: parentName,
|
|
2261
|
+
componentFromProps,
|
|
2257
2262
|
schema: schema ?? null,
|
|
2258
2263
|
calculateMetadata: compProps.calculateMetadata ?? null,
|
|
2259
2264
|
stack
|
|
@@ -2272,6 +2277,7 @@ var InnerComposition = ({
|
|
|
2272
2277
|
width,
|
|
2273
2278
|
nonce,
|
|
2274
2279
|
parentName,
|
|
2280
|
+
componentFromProps,
|
|
2275
2281
|
schema,
|
|
2276
2282
|
compProps.calculateMetadata,
|
|
2277
2283
|
stack,
|
|
@@ -2330,11 +2336,30 @@ var Composition = (props) => {
|
|
|
2330
2336
|
});
|
|
2331
2337
|
};
|
|
2332
2338
|
var componentsToAddStacksTo = [];
|
|
2339
|
+
var sequenceComponent = null;
|
|
2333
2340
|
var getComponentsToAddStacksTo = () => componentsToAddStacksTo;
|
|
2334
2341
|
var addSequenceStackTraces = (component) => {
|
|
2335
2342
|
componentsToAddStacksTo.push(component);
|
|
2336
2343
|
};
|
|
2337
|
-
var
|
|
2344
|
+
var setSequenceComponent = (component) => {
|
|
2345
|
+
sequenceComponent = component;
|
|
2346
|
+
};
|
|
2347
|
+
var getSequenceComponent = () => sequenceComponent;
|
|
2348
|
+
var getSingleChildComponent = (children) => {
|
|
2349
|
+
const mountedChildren = React9.Children.toArray(children);
|
|
2350
|
+
if (mountedChildren.length !== 1) {
|
|
2351
|
+
return null;
|
|
2352
|
+
}
|
|
2353
|
+
const child = mountedChildren[0];
|
|
2354
|
+
if (!React9.isValidElement(child)) {
|
|
2355
|
+
return null;
|
|
2356
|
+
}
|
|
2357
|
+
if (typeof child.type !== "function" && typeof child.type !== "object") {
|
|
2358
|
+
return null;
|
|
2359
|
+
}
|
|
2360
|
+
return child.type;
|
|
2361
|
+
};
|
|
2362
|
+
var VERSION = "4.0.493";
|
|
2338
2363
|
var checkMultipleRemotionVersions = () => {
|
|
2339
2364
|
if (typeof globalThis === "undefined") {
|
|
2340
2365
|
return;
|
|
@@ -2934,7 +2959,7 @@ var sequenceSchemaDefaultLayoutNone = {
|
|
|
2934
2959
|
var PremountContext = createContext14({
|
|
2935
2960
|
premountFramesRemaining: 0
|
|
2936
2961
|
});
|
|
2937
|
-
var SequenceManager =
|
|
2962
|
+
var SequenceManager = React12.createContext({
|
|
2938
2963
|
registerSequence: () => {
|
|
2939
2964
|
throw new Error("SequenceManagerContext not initialized");
|
|
2940
2965
|
},
|
|
@@ -2943,19 +2968,19 @@ var SequenceManager = React11.createContext({
|
|
|
2943
2968
|
},
|
|
2944
2969
|
sequences: []
|
|
2945
2970
|
});
|
|
2946
|
-
var SequenceManagerRefContext =
|
|
2971
|
+
var SequenceManagerRefContext = React12.createContext({
|
|
2947
2972
|
current: []
|
|
2948
2973
|
});
|
|
2949
2974
|
var makeSequencePropsSubscriptionKey = (key) => {
|
|
2950
2975
|
return `${key.absolutePath}\x00${key.nodePath.join(".")}\x00${key.sequenceKeys.join(".")}\x00${key.effectKeys.map((keys) => keys.join(".")).join(".")}`;
|
|
2951
2976
|
};
|
|
2952
|
-
var VisualModePropStatusesContext =
|
|
2977
|
+
var VisualModePropStatusesContext = React12.createContext({
|
|
2953
2978
|
propStatuses: {}
|
|
2954
2979
|
});
|
|
2955
|
-
var VisualModePropStatusesRefContext =
|
|
2980
|
+
var VisualModePropStatusesRefContext = React12.createContext({
|
|
2956
2981
|
current: {}
|
|
2957
2982
|
});
|
|
2958
|
-
var VisualModeDragOverridesContext =
|
|
2983
|
+
var VisualModeDragOverridesContext = React12.createContext({
|
|
2959
2984
|
getDragOverrides: () => {
|
|
2960
2985
|
throw new Error("VisualModeDragOverridesContext not initialized");
|
|
2961
2986
|
},
|
|
@@ -2963,7 +2988,7 @@ var VisualModeDragOverridesContext = React11.createContext({
|
|
|
2963
2988
|
throw new Error("VisualModeDragOverridesContext not initialized");
|
|
2964
2989
|
}
|
|
2965
2990
|
});
|
|
2966
|
-
var VisualModeSettersContext =
|
|
2991
|
+
var VisualModeSettersContext = React12.createContext({
|
|
2967
2992
|
setDragOverrides: () => {
|
|
2968
2993
|
throw new Error("VisualModeSettersContext not initialized");
|
|
2969
2994
|
},
|
|
@@ -3127,7 +3152,7 @@ var IsNotInsideSeriesProvider = ({ children }) => {
|
|
|
3127
3152
|
});
|
|
3128
3153
|
};
|
|
3129
3154
|
var useRequireToBeInsideSeries = () => {
|
|
3130
|
-
const isInsideSeries =
|
|
3155
|
+
const isInsideSeries = React13.useContext(IsInsideSeriesContext);
|
|
3131
3156
|
if (!isInsideSeries) {
|
|
3132
3157
|
throw new Error("This component must be inside a <Series /> component.");
|
|
3133
3158
|
}
|
|
@@ -5196,6 +5221,9 @@ var computeEffectiveSchemaValuesDotNotation = ({
|
|
|
5196
5221
|
shouldResortToDefaultValueIfUndefined: false
|
|
5197
5222
|
});
|
|
5198
5223
|
}
|
|
5224
|
+
if (field?.type === "asset" && typeof value === "string" && value.startsWith(FILE_TOKEN)) {
|
|
5225
|
+
value = `${window.remotion_staticBase}/${value.slice(FILE_TOKEN.length)}`;
|
|
5226
|
+
}
|
|
5199
5227
|
if (value === undefined) {
|
|
5200
5228
|
propsToDelete.add(key);
|
|
5201
5229
|
}
|
|
@@ -5294,7 +5322,7 @@ var withInteractivitySchema = ({
|
|
|
5294
5322
|
const Wrapped = forwardRef2((props, ref) => {
|
|
5295
5323
|
const env = useRemotionEnvironment();
|
|
5296
5324
|
if (!env.isStudio || env.isReadOnlyStudio || env.isRendering) {
|
|
5297
|
-
return
|
|
5325
|
+
return React14.createElement(Component, {
|
|
5298
5326
|
...props,
|
|
5299
5327
|
controls: null,
|
|
5300
5328
|
ref
|
|
@@ -5305,7 +5333,7 @@ var withInteractivitySchema = ({
|
|
|
5305
5333
|
const nodePathMapping = useContext16(OverrideIdsToNodePathsGettersContext);
|
|
5306
5334
|
const frame = useCurrentFrame();
|
|
5307
5335
|
if (props.controls) {
|
|
5308
|
-
return
|
|
5336
|
+
return React14.createElement(Component, {
|
|
5309
5337
|
...props,
|
|
5310
5338
|
ref
|
|
5311
5339
|
});
|
|
@@ -5363,7 +5391,7 @@ var withInteractivitySchema = ({
|
|
|
5363
5391
|
schemaKeys: activeKeys,
|
|
5364
5392
|
propsToDelete
|
|
5365
5393
|
});
|
|
5366
|
-
return
|
|
5394
|
+
return React14.createElement(Component, {
|
|
5367
5395
|
...mergedProps,
|
|
5368
5396
|
controls,
|
|
5369
5397
|
ref
|
|
@@ -5389,6 +5417,7 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
5389
5417
|
_remotionInternalLoopDisplay: loopDisplay,
|
|
5390
5418
|
_remotionInternalStack: stack,
|
|
5391
5419
|
_remotionInternalDocumentationLink: documentationLink,
|
|
5420
|
+
_remotionInternalSingleChildComponent: singleChildComponent,
|
|
5392
5421
|
_remotionInternalPremountDisplay: premountDisplay,
|
|
5393
5422
|
_remotionInternalPostmountDisplay: postmountDisplay,
|
|
5394
5423
|
_remotionInternalIsMedia: isMedia,
|
|
@@ -5535,7 +5564,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
5535
5564
|
getStack: () => stackRef.current,
|
|
5536
5565
|
refForOutline: refForOutline ?? null,
|
|
5537
5566
|
isInsideSeries,
|
|
5538
|
-
frozenFrame: registeredFrozenFrame
|
|
5567
|
+
frozenFrame: registeredFrozenFrame,
|
|
5568
|
+
singleChildComponent: singleChildComponent ?? null
|
|
5539
5569
|
});
|
|
5540
5570
|
} else {
|
|
5541
5571
|
registerSequence({
|
|
@@ -5565,7 +5595,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
5565
5595
|
refForOutline: refForOutline ?? null,
|
|
5566
5596
|
isInsideSeries,
|
|
5567
5597
|
frozenFrame: registeredFrozenFrame,
|
|
5568
|
-
frozenMediaFrame
|
|
5598
|
+
frozenMediaFrame,
|
|
5599
|
+
singleChildComponent: singleChildComponent ?? null
|
|
5569
5600
|
});
|
|
5570
5601
|
}
|
|
5571
5602
|
return () => {
|
|
@@ -5592,7 +5623,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
5592
5623
|
effects: _remotionInternalEffects ?? EMPTY_EFFECTS,
|
|
5593
5624
|
refForOutline: refForOutline ?? null,
|
|
5594
5625
|
isInsideSeries,
|
|
5595
|
-
frozenFrame: registeredFrozenFrame
|
|
5626
|
+
frozenFrame: registeredFrozenFrame,
|
|
5627
|
+
singleChildComponent: singleChildComponent ?? null
|
|
5596
5628
|
});
|
|
5597
5629
|
return () => {
|
|
5598
5630
|
unregisterSequence(id);
|
|
@@ -5625,7 +5657,8 @@ var RegularSequenceRefForwardingFunction = ({
|
|
|
5625
5657
|
registeredFrozenFrame,
|
|
5626
5658
|
startMediaFrom,
|
|
5627
5659
|
mediaFrameAtSequenceZero,
|
|
5628
|
-
frozenMediaFrame
|
|
5660
|
+
frozenMediaFrame,
|
|
5661
|
+
singleChildComponent
|
|
5629
5662
|
]);
|
|
5630
5663
|
const endThreshold = Math.ceil(cumulatedFrom + from + durationInFrames - 1);
|
|
5631
5664
|
const content = absoluteFrame < cumulatedFrom + from ? null : absoluteFrame > endThreshold ? null : children;
|
|
@@ -6127,7 +6160,7 @@ var CanvasRefForwardingFunction = ({ width, height, fit, className, style, effec
|
|
|
6127
6160
|
...props
|
|
6128
6161
|
});
|
|
6129
6162
|
};
|
|
6130
|
-
var Canvas =
|
|
6163
|
+
var Canvas = React16.forwardRef(CanvasRefForwardingFunction);
|
|
6131
6164
|
var CACHE_SIZE = 5;
|
|
6132
6165
|
var getActualTime = ({
|
|
6133
6166
|
loopBehavior,
|
|
@@ -6288,6 +6321,12 @@ var resolveAnimatedImageSource = (src) => {
|
|
|
6288
6321
|
return new URL(src, window.origin).href;
|
|
6289
6322
|
};
|
|
6290
6323
|
var animatedImageSchema = {
|
|
6324
|
+
src: {
|
|
6325
|
+
type: "asset",
|
|
6326
|
+
default: undefined,
|
|
6327
|
+
description: "Source",
|
|
6328
|
+
keyframable: false
|
|
6329
|
+
},
|
|
6291
6330
|
...baseSchema,
|
|
6292
6331
|
playbackRate: {
|
|
6293
6332
|
type: "number",
|
|
@@ -6705,7 +6744,7 @@ var calculateMediaDuration = ({
|
|
|
6705
6744
|
};
|
|
6706
6745
|
var LoopContext = createContext18(null);
|
|
6707
6746
|
var useLoop = () => {
|
|
6708
|
-
return
|
|
6747
|
+
return React17.useContext(LoopContext);
|
|
6709
6748
|
};
|
|
6710
6749
|
var Loop = ({
|
|
6711
6750
|
durationInFrames,
|
|
@@ -7556,7 +7595,7 @@ var SharedAudioTagsContextProvider = ({ children, numberOfAudioTags }) => {
|
|
|
7556
7595
|
};
|
|
7557
7596
|
});
|
|
7558
7597
|
}, [audioContext, numberOfAudioTags]);
|
|
7559
|
-
const effectToUse =
|
|
7598
|
+
const effectToUse = React20.useInsertionEffect ?? React20.useLayoutEffect;
|
|
7560
7599
|
effectToUse(() => {
|
|
7561
7600
|
return () => {
|
|
7562
7601
|
requestAnimationFrame(() => {
|
|
@@ -7726,7 +7765,7 @@ var useSharedAudio = ({
|
|
|
7726
7765
|
if (tagsCtx && tagsCtx.numberOfAudioTags > 0) {
|
|
7727
7766
|
return tagsCtx.registerAudio({ aud, audioId, premounting, postmounting });
|
|
7728
7767
|
}
|
|
7729
|
-
const el =
|
|
7768
|
+
const el = React20.createRef();
|
|
7730
7769
|
const mediaElementSourceNode = audioCtx?.audioContext ? makeSharedElementSourceNode({
|
|
7731
7770
|
audioContext: audioCtx.audioContext,
|
|
7732
7771
|
ref: el
|
|
@@ -7745,7 +7784,7 @@ var useSharedAudio = ({
|
|
|
7745
7784
|
}
|
|
7746
7785
|
};
|
|
7747
7786
|
});
|
|
7748
|
-
const effectToUse =
|
|
7787
|
+
const effectToUse = React20.useInsertionEffect ?? React20.useLayoutEffect;
|
|
7749
7788
|
if (typeof document !== "undefined") {
|
|
7750
7789
|
effectToUse(() => {
|
|
7751
7790
|
if (tagsCtx && tagsCtx.numberOfAudioTags > 0) {
|
|
@@ -8297,7 +8336,7 @@ var useBufferManager = (logLevel, mountTime) => {
|
|
|
8297
8336
|
return { addBlock, listenForBuffering, listenForResume, buffering };
|
|
8298
8337
|
}, [addBlock, buffering, listenForBuffering, listenForResume]);
|
|
8299
8338
|
};
|
|
8300
|
-
var BufferingContextReact =
|
|
8339
|
+
var BufferingContextReact = React21.createContext(null);
|
|
8301
8340
|
var BufferingProvider = ({ children }) => {
|
|
8302
8341
|
const { logLevel, mountTime } = useContext24(LogLevelContext);
|
|
8303
8342
|
const bufferManager = useBufferManager(logLevel ?? "info", mountTime);
|
|
@@ -8510,7 +8549,7 @@ var getMediaSyncAction = (input) => {
|
|
|
8510
8549
|
return { type: "none" };
|
|
8511
8550
|
};
|
|
8512
8551
|
var useCurrentTimeOfMediaTagWithUpdateTimeStamp = (mediaRef) => {
|
|
8513
|
-
const lastUpdate =
|
|
8552
|
+
const lastUpdate = React22.useRef({
|
|
8514
8553
|
time: mediaRef.current?.currentTime ?? 0,
|
|
8515
8554
|
lastUpdate: performance.now()
|
|
8516
8555
|
});
|
|
@@ -9263,7 +9302,7 @@ var AudioForDevelopmentForwardRefFunction = (props, ref) => {
|
|
|
9263
9302
|
volume: userPreferredVolume,
|
|
9264
9303
|
shouldUseWebAudioApi: useWebAudioApi ?? false
|
|
9265
9304
|
});
|
|
9266
|
-
const effectToUse =
|
|
9305
|
+
const effectToUse = React23.useInsertionEffect ?? React23.useLayoutEffect;
|
|
9267
9306
|
effectToUse(() => {
|
|
9268
9307
|
return () => {
|
|
9269
9308
|
requestAnimationFrame(() => {
|
|
@@ -10809,6 +10848,12 @@ var NativeImgInner = ({
|
|
|
10809
10848
|
};
|
|
10810
10849
|
var CanvasImageWithPrivateProps = CanvasImage;
|
|
10811
10850
|
var imgSchema = {
|
|
10851
|
+
src: {
|
|
10852
|
+
type: "asset",
|
|
10853
|
+
default: undefined,
|
|
10854
|
+
description: "Source",
|
|
10855
|
+
keyframable: false
|
|
10856
|
+
},
|
|
10812
10857
|
...baseSchema,
|
|
10813
10858
|
...transformSchema
|
|
10814
10859
|
};
|
|
@@ -11019,7 +11064,7 @@ var makeInteractiveElement = (tag, displayName) => {
|
|
|
11019
11064
|
_remotionInternalStack: stack,
|
|
11020
11065
|
_remotionInternalDocumentationLink: "https://www.remotion.dev/docs/interactive",
|
|
11021
11066
|
outlineRef: refForOutline,
|
|
11022
|
-
children:
|
|
11067
|
+
children: React30.createElement(tag, {
|
|
11023
11068
|
...props2,
|
|
11024
11069
|
ref: callbackRef
|
|
11025
11070
|
})
|
|
@@ -11083,7 +11128,7 @@ var Interactive = {
|
|
|
11083
11128
|
Text: makeInteractiveElement("text", "<Interactive.Text>"),
|
|
11084
11129
|
Ul: makeInteractiveElement("ul", "<Interactive.Ul>")
|
|
11085
11130
|
};
|
|
11086
|
-
var compositionsRef =
|
|
11131
|
+
var compositionsRef = React31.createRef();
|
|
11087
11132
|
var CompositionManagerProvider = ({
|
|
11088
11133
|
children,
|
|
11089
11134
|
onlyRenderComposition,
|
|
@@ -11232,7 +11277,7 @@ var REMOTION_STUDIO_CONTAINER_ELEMENT = "__remotion-studio-container";
|
|
|
11232
11277
|
var getPreviewDomElement = () => {
|
|
11233
11278
|
return document.getElementById(REMOTION_STUDIO_CONTAINER_ELEMENT);
|
|
11234
11279
|
};
|
|
11235
|
-
var MaxMediaCacheSizeContext =
|
|
11280
|
+
var MaxMediaCacheSizeContext = React32.createContext(null);
|
|
11236
11281
|
var Root = null;
|
|
11237
11282
|
var listeners = [];
|
|
11238
11283
|
var getRoot = () => {
|
|
@@ -11400,7 +11445,46 @@ var validateCalculated = ({
|
|
|
11400
11445
|
defaultSampleRate
|
|
11401
11446
|
};
|
|
11402
11447
|
};
|
|
11403
|
-
var
|
|
11448
|
+
var makeVideoConfigWithMetadata = ({
|
|
11449
|
+
calculated,
|
|
11450
|
+
compositionDurationInFrames,
|
|
11451
|
+
compositionFps,
|
|
11452
|
+
compositionHeight,
|
|
11453
|
+
compositionId,
|
|
11454
|
+
compositionWidth,
|
|
11455
|
+
defaultProps,
|
|
11456
|
+
originalProps
|
|
11457
|
+
}) => {
|
|
11458
|
+
const data = validateCalculated({
|
|
11459
|
+
calculated,
|
|
11460
|
+
compositionDurationInFrames,
|
|
11461
|
+
compositionFps,
|
|
11462
|
+
compositionHeight,
|
|
11463
|
+
compositionWidth,
|
|
11464
|
+
compositionId
|
|
11465
|
+
});
|
|
11466
|
+
return {
|
|
11467
|
+
metadataSource: {
|
|
11468
|
+
durationInFrames: calculated?.durationInFrames === undefined ? "composition" : "calculate-metadata",
|
|
11469
|
+
fps: calculated?.fps === undefined ? "composition" : "calculate-metadata",
|
|
11470
|
+
height: calculated?.height === undefined ? "composition" : "calculate-metadata",
|
|
11471
|
+
width: calculated?.width === undefined ? "composition" : "calculate-metadata"
|
|
11472
|
+
},
|
|
11473
|
+
videoConfig: {
|
|
11474
|
+
...data,
|
|
11475
|
+
id: compositionId,
|
|
11476
|
+
defaultProps: serializeThenDeserializeInStudio(defaultProps ?? {}),
|
|
11477
|
+
props: serializeThenDeserializeInStudio(calculated?.props ?? originalProps),
|
|
11478
|
+
defaultCodec: data.defaultCodec ?? null,
|
|
11479
|
+
defaultOutName: data.defaultOutName ?? null,
|
|
11480
|
+
defaultVideoImageFormat: data.defaultVideoImageFormat ?? null,
|
|
11481
|
+
defaultPixelFormat: data.defaultPixelFormat ?? null,
|
|
11482
|
+
defaultProResProfile: data.defaultProResProfile ?? null,
|
|
11483
|
+
defaultSampleRate: data.defaultSampleRate ?? null
|
|
11484
|
+
}
|
|
11485
|
+
};
|
|
11486
|
+
};
|
|
11487
|
+
var resolveVideoConfigWithMetadata = ({
|
|
11404
11488
|
calculateMetadata,
|
|
11405
11489
|
signal,
|
|
11406
11490
|
defaultProps,
|
|
@@ -11420,76 +11504,48 @@ var resolveVideoConfig = ({
|
|
|
11420
11504
|
}) : null;
|
|
11421
11505
|
if (calculatedProm !== null && typeof calculatedProm === "object" && "then" in calculatedProm) {
|
|
11422
11506
|
return calculatedProm.then((c2) => {
|
|
11423
|
-
|
|
11424
|
-
height,
|
|
11425
|
-
width,
|
|
11426
|
-
durationInFrames,
|
|
11427
|
-
fps,
|
|
11428
|
-
defaultCodec,
|
|
11429
|
-
defaultOutName,
|
|
11430
|
-
defaultVideoImageFormat,
|
|
11431
|
-
defaultPixelFormat,
|
|
11432
|
-
defaultProResProfile,
|
|
11433
|
-
defaultSampleRate
|
|
11434
|
-
} = validateCalculated({
|
|
11507
|
+
return makeVideoConfigWithMetadata({
|
|
11435
11508
|
calculated: c2,
|
|
11436
11509
|
compositionDurationInFrames,
|
|
11437
11510
|
compositionFps,
|
|
11438
11511
|
compositionHeight,
|
|
11439
11512
|
compositionWidth,
|
|
11440
|
-
compositionId
|
|
11513
|
+
compositionId,
|
|
11514
|
+
defaultProps,
|
|
11515
|
+
originalProps
|
|
11441
11516
|
});
|
|
11442
|
-
return {
|
|
11443
|
-
width,
|
|
11444
|
-
height,
|
|
11445
|
-
fps,
|
|
11446
|
-
durationInFrames,
|
|
11447
|
-
id: compositionId,
|
|
11448
|
-
defaultProps: serializeThenDeserializeInStudio(defaultProps),
|
|
11449
|
-
props: serializeThenDeserializeInStudio(c2.props ?? originalProps),
|
|
11450
|
-
defaultCodec: defaultCodec ?? null,
|
|
11451
|
-
defaultOutName: defaultOutName ?? null,
|
|
11452
|
-
defaultVideoImageFormat: defaultVideoImageFormat ?? null,
|
|
11453
|
-
defaultPixelFormat: defaultPixelFormat ?? null,
|
|
11454
|
-
defaultProResProfile: defaultProResProfile ?? null,
|
|
11455
|
-
defaultSampleRate: defaultSampleRate ?? null
|
|
11456
|
-
};
|
|
11457
11517
|
});
|
|
11458
11518
|
}
|
|
11459
|
-
|
|
11519
|
+
return makeVideoConfigWithMetadata({
|
|
11460
11520
|
calculated: calculatedProm,
|
|
11461
11521
|
compositionDurationInFrames,
|
|
11462
11522
|
compositionFps,
|
|
11463
11523
|
compositionHeight,
|
|
11464
11524
|
compositionWidth,
|
|
11465
|
-
compositionId
|
|
11525
|
+
compositionId,
|
|
11526
|
+
defaultProps,
|
|
11527
|
+
originalProps
|
|
11466
11528
|
});
|
|
11467
|
-
|
|
11529
|
+
};
|
|
11530
|
+
var resolveVideoConfig = (params) => {
|
|
11531
|
+
const resolved = resolveVideoConfigWithMetadata(params);
|
|
11532
|
+
if (typeof resolved === "object" && "then" in resolved) {
|
|
11533
|
+
return resolved.then(({ videoConfig }) => videoConfig);
|
|
11534
|
+
}
|
|
11535
|
+
return resolved.videoConfig;
|
|
11536
|
+
};
|
|
11537
|
+
var resolveVideoConfigWithMetadataOrCatch = (params) => {
|
|
11538
|
+
try {
|
|
11468
11539
|
return {
|
|
11469
|
-
|
|
11470
|
-
|
|
11471
|
-
|
|
11472
|
-
|
|
11473
|
-
|
|
11474
|
-
|
|
11475
|
-
|
|
11476
|
-
defaultPixelFormat: null,
|
|
11477
|
-
defaultProResProfile: null,
|
|
11478
|
-
defaultSampleRate: null
|
|
11540
|
+
type: "success",
|
|
11541
|
+
result: resolveVideoConfigWithMetadata(params)
|
|
11542
|
+
};
|
|
11543
|
+
} catch (err) {
|
|
11544
|
+
return {
|
|
11545
|
+
type: "error",
|
|
11546
|
+
error: err
|
|
11479
11547
|
};
|
|
11480
11548
|
}
|
|
11481
|
-
return {
|
|
11482
|
-
...data,
|
|
11483
|
-
id: compositionId,
|
|
11484
|
-
defaultProps: serializeThenDeserializeInStudio(defaultProps ?? {}),
|
|
11485
|
-
props: serializeThenDeserializeInStudio(calculatedProm.props ?? originalProps),
|
|
11486
|
-
defaultCodec: calculatedProm.defaultCodec ?? null,
|
|
11487
|
-
defaultOutName: calculatedProm.defaultOutName ?? null,
|
|
11488
|
-
defaultVideoImageFormat: calculatedProm.defaultVideoImageFormat ?? null,
|
|
11489
|
-
defaultPixelFormat: calculatedProm.defaultPixelFormat ?? null,
|
|
11490
|
-
defaultProResProfile: calculatedProm.defaultProResProfile ?? null,
|
|
11491
|
-
defaultSampleRate: calculatedProm.defaultSampleRate ?? null
|
|
11492
|
-
};
|
|
11493
11549
|
};
|
|
11494
11550
|
var resolveVideoConfigOrCatch = (params) => {
|
|
11495
11551
|
try {
|
|
@@ -11505,7 +11561,7 @@ var resolveVideoConfigOrCatch = (params) => {
|
|
|
11505
11561
|
};
|
|
11506
11562
|
}
|
|
11507
11563
|
};
|
|
11508
|
-
var SequenceStackTracesUpdateContext =
|
|
11564
|
+
var SequenceStackTracesUpdateContext = React34.createContext(() => {});
|
|
11509
11565
|
var getEnvVariables = () => {
|
|
11510
11566
|
if (getRemotionEnvironment().isRendering) {
|
|
11511
11567
|
const param = window.remotion_envVariables;
|
|
@@ -11531,7 +11587,7 @@ var setupEnvVariables = () => {
|
|
|
11531
11587
|
window.process.env[key] = env[key];
|
|
11532
11588
|
});
|
|
11533
11589
|
};
|
|
11534
|
-
var CurrentScaleContext =
|
|
11590
|
+
var CurrentScaleContext = React35.createContext(null);
|
|
11535
11591
|
var PreviewSizeContext = createContext25({
|
|
11536
11592
|
setSize: () => {
|
|
11537
11593
|
return;
|
|
@@ -11555,7 +11611,7 @@ var calculateScale = ({
|
|
|
11555
11611
|
}
|
|
11556
11612
|
return Number(previewSize);
|
|
11557
11613
|
};
|
|
11558
|
-
var PixelDensityContext =
|
|
11614
|
+
var PixelDensityContext = React36.createContext(null);
|
|
11559
11615
|
var getOffthreadVideoSource = ({
|
|
11560
11616
|
src,
|
|
11561
11617
|
transparent,
|
|
@@ -11822,7 +11878,7 @@ var VideoForDevelopmentRefForwardingFunction = (props2, ref) => {
|
|
|
11822
11878
|
ref: videoRef
|
|
11823
11879
|
});
|
|
11824
11880
|
}, [context.audioContext]);
|
|
11825
|
-
const effectToUse =
|
|
11881
|
+
const effectToUse = React38.useInsertionEffect ?? React38.useLayoutEffect;
|
|
11826
11882
|
effectToUse(() => {
|
|
11827
11883
|
return () => {
|
|
11828
11884
|
requestAnimationFrame(() => {
|
|
@@ -12198,20 +12254,20 @@ var OffthreadVideo = ({
|
|
|
12198
12254
|
addSequenceStackTraces(OffthreadVideo);
|
|
12199
12255
|
var WATCH_REMOTION_STATIC_FILES = "remotion_staticFilesChanged";
|
|
12200
12256
|
function useRemotionContexts() {
|
|
12201
|
-
const compositionManagerCtx =
|
|
12202
|
-
const timelineContext =
|
|
12203
|
-
const setTimelineContext =
|
|
12204
|
-
const sequenceContext =
|
|
12205
|
-
const nonceContext =
|
|
12206
|
-
const canUseRemotionHooksContext =
|
|
12207
|
-
const preloadContext =
|
|
12208
|
-
const resolveCompositionContext =
|
|
12209
|
-
const renderAssetManagerContext =
|
|
12210
|
-
const sequenceManagerContext =
|
|
12211
|
-
const sequenceManagerRefContext =
|
|
12212
|
-
const visualModePropStatusesRefContext =
|
|
12213
|
-
const bufferManagerContext =
|
|
12214
|
-
const logLevelContext =
|
|
12257
|
+
const compositionManagerCtx = React40.useContext(CompositionManager);
|
|
12258
|
+
const timelineContext = React40.useContext(TimelineContext);
|
|
12259
|
+
const setTimelineContext = React40.useContext(SetTimelineContext);
|
|
12260
|
+
const sequenceContext = React40.useContext(SequenceContext);
|
|
12261
|
+
const nonceContext = React40.useContext(NonceContext);
|
|
12262
|
+
const canUseRemotionHooksContext = React40.useContext(CanUseRemotionHooks);
|
|
12263
|
+
const preloadContext = React40.useContext(PreloadContext);
|
|
12264
|
+
const resolveCompositionContext = React40.useContext(ResolveCompositionContext);
|
|
12265
|
+
const renderAssetManagerContext = React40.useContext(RenderAssetManager);
|
|
12266
|
+
const sequenceManagerContext = React40.useContext(SequenceManager);
|
|
12267
|
+
const sequenceManagerRefContext = React40.useContext(SequenceManagerRefContext);
|
|
12268
|
+
const visualModePropStatusesRefContext = React40.useContext(VisualModePropStatusesRefContext);
|
|
12269
|
+
const bufferManagerContext = React40.useContext(BufferingContextReact);
|
|
12270
|
+
const logLevelContext = React40.useContext(LogLevelContext);
|
|
12215
12271
|
return useMemo37(() => ({
|
|
12216
12272
|
compositionManagerCtx,
|
|
12217
12273
|
timelineContext,
|
|
@@ -12369,6 +12425,7 @@ var Internals = {
|
|
|
12369
12425
|
NonceContext,
|
|
12370
12426
|
resolveVideoConfig,
|
|
12371
12427
|
resolveVideoConfigOrCatch,
|
|
12428
|
+
resolveVideoConfigWithMetadataOrCatch,
|
|
12372
12429
|
ResolveCompositionContext,
|
|
12373
12430
|
useResolvedVideoConfig,
|
|
12374
12431
|
resolveCompositionsRef,
|
|
@@ -12385,6 +12442,8 @@ var Internals = {
|
|
|
12385
12442
|
BufferingProvider,
|
|
12386
12443
|
BufferingContextReact,
|
|
12387
12444
|
getComponentsToAddStacksTo,
|
|
12445
|
+
getSequenceComponent,
|
|
12446
|
+
getSingleChildComponent,
|
|
12388
12447
|
CurrentScaleContext,
|
|
12389
12448
|
PixelDensityContext,
|
|
12390
12449
|
PreviewSizeContext,
|
|
@@ -12442,9 +12501,9 @@ var Internals = {
|
|
|
12442
12501
|
fromField
|
|
12443
12502
|
};
|
|
12444
12503
|
var flattenChildren = (children) => {
|
|
12445
|
-
const childrenArray =
|
|
12504
|
+
const childrenArray = React41.Children.toArray(children);
|
|
12446
12505
|
return childrenArray.reduce((flatChildren, child) => {
|
|
12447
|
-
if (child.type ===
|
|
12506
|
+
if (child.type === React41.Fragment) {
|
|
12448
12507
|
return flatChildren.concat(flattenChildren(child.props.children));
|
|
12449
12508
|
}
|
|
12450
12509
|
flatChildren.push(child);
|
|
@@ -12532,7 +12591,7 @@ var SeriesInner = (props2) => {
|
|
|
12532
12591
|
index: i,
|
|
12533
12592
|
childrenLength: flattenedChildren.length
|
|
12534
12593
|
});
|
|
12535
|
-
return
|
|
12594
|
+
return React42.cloneElement(castedElement, {
|
|
12536
12595
|
_remotionInternalRender: (resolvedProps, ref) => {
|
|
12537
12596
|
const durationInFramesProp = resolvedProps.durationInFrames;
|
|
12538
12597
|
const {
|
|
@@ -12690,7 +12749,7 @@ var Still = (props2) => {
|
|
|
12690
12749
|
durationInFrames: 1,
|
|
12691
12750
|
fps: 1
|
|
12692
12751
|
};
|
|
12693
|
-
return
|
|
12752
|
+
return React43.createElement(Composition, newProps);
|
|
12694
12753
|
};
|
|
12695
12754
|
addSequenceStackTraces(Still);
|
|
12696
12755
|
var roundTo6Commas = (num) => {
|
|
@@ -13169,6 +13228,7 @@ var Config = new Proxy(proxyObj, {
|
|
|
13169
13228
|
});
|
|
13170
13229
|
Sequence.displayName = "Sequence";
|
|
13171
13230
|
addSequenceStackTraces(Sequence);
|
|
13231
|
+
setSequenceComponent(Sequence);
|
|
13172
13232
|
addSequenceStackTraces(Composition);
|
|
13173
13233
|
addSequenceStackTraces(Folder);
|
|
13174
13234
|
|
|
@@ -13611,7 +13671,7 @@ var ExpertsPageContent = ({ Link }) => {
|
|
|
13611
13671
|
import { useMemo as useMemo53 } from "react";
|
|
13612
13672
|
|
|
13613
13673
|
// ../design/dist/esm/index.mjs
|
|
13614
|
-
import * as
|
|
13674
|
+
import * as React24 from "react";
|
|
13615
13675
|
import * as React8 from "react";
|
|
13616
13676
|
import { Fragment as Fragment22, jsx as jsx46 } from "react/jsx-runtime";
|
|
13617
13677
|
import React52, { useCallback as useCallback27, useRef as useRef210, useState as useState22 } from "react";
|
|
@@ -14956,7 +15016,7 @@ var getDefaultConfig = () => {
|
|
|
14956
15016
|
var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
|
|
14957
15017
|
|
|
14958
15018
|
// ../design/dist/esm/index.mjs
|
|
14959
|
-
import
|
|
15019
|
+
import React33, { useEffect as useEffect21, useMemo as useMemo43, useState as useState23 } from "react";
|
|
14960
15020
|
|
|
14961
15021
|
// ../paths/dist/esm/index.mjs
|
|
14962
15022
|
var cutLInstruction = ({
|
|
@@ -20647,12 +20707,12 @@ import React72 from "react";
|
|
|
20647
20707
|
import { jsx as jsx103 } from "react/jsx-runtime";
|
|
20648
20708
|
import { jsx as jsx113 } from "react/jsx-runtime";
|
|
20649
20709
|
import { jsx as jsx123 } from "react/jsx-runtime";
|
|
20650
|
-
import * as
|
|
20710
|
+
import * as React362 from "react";
|
|
20651
20711
|
import * as ReactDOM4 from "react-dom";
|
|
20652
|
-
import
|
|
20712
|
+
import React11 from "react";
|
|
20653
20713
|
import * as React82 from "react";
|
|
20654
20714
|
import { jsx as jsx132 } from "react/jsx-runtime";
|
|
20655
|
-
import * as
|
|
20715
|
+
import * as React92 from "react";
|
|
20656
20716
|
import * as React10 from "react";
|
|
20657
20717
|
import { Fragment as Fragment5, jsx as jsx142 } from "react/jsx-runtime";
|
|
20658
20718
|
import { jsx as jsx152 } from "react/jsx-runtime";
|
|
@@ -20662,15 +20722,15 @@ import * as React162 from "react";
|
|
|
20662
20722
|
import * as React132 from "react";
|
|
20663
20723
|
import * as ReactDOM from "react-dom";
|
|
20664
20724
|
import { jsx as jsx172 } from "react/jsx-runtime";
|
|
20665
|
-
import * as
|
|
20666
|
-
import * as
|
|
20725
|
+
import * as React142 from "react";
|
|
20726
|
+
import * as React15 from "react";
|
|
20667
20727
|
import { jsx as jsx182 } from "react/jsx-runtime";
|
|
20668
|
-
import * as
|
|
20728
|
+
import * as React172 from "react";
|
|
20669
20729
|
import * as React18 from "react";
|
|
20670
20730
|
import { jsx as jsx192 } from "react/jsx-runtime";
|
|
20671
20731
|
import * as React202 from "react";
|
|
20672
|
-
import * as
|
|
20673
|
-
import * as
|
|
20732
|
+
import * as React19 from "react";
|
|
20733
|
+
import * as React242 from "react";
|
|
20674
20734
|
import * as React212 from "react";
|
|
20675
20735
|
import { useLayoutEffect as useLayoutEffect32, useEffect as useEffect82 } from "react";
|
|
20676
20736
|
import * as ReactDOM2 from "react-dom";
|
|
@@ -20688,7 +20748,7 @@ import { jsx as jsx232 } from "react/jsx-runtime";
|
|
|
20688
20748
|
import * as React352 from "react";
|
|
20689
20749
|
import * as React312 from "react";
|
|
20690
20750
|
import { useState as useState112 } from "react";
|
|
20691
|
-
import * as
|
|
20751
|
+
import * as React29 from "react";
|
|
20692
20752
|
import * as React302 from "react";
|
|
20693
20753
|
import * as React342 from "react";
|
|
20694
20754
|
import * as React332 from "react";
|
|
@@ -20696,22 +20756,22 @@ import * as React322 from "react";
|
|
|
20696
20756
|
import { Fragment as Fragment8, jsx as jsx242, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
20697
20757
|
import { forwardRef as forwardRef142, createElement as createElement7 } from "react";
|
|
20698
20758
|
import { forwardRef as forwardRef132, createElement as createElement6 } from "react";
|
|
20699
|
-
import * as
|
|
20759
|
+
import * as React37 from "react";
|
|
20700
20760
|
import { jsx as jsx252, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
20701
20761
|
import { jsx as jsx262 } from "react/jsx-runtime";
|
|
20702
20762
|
import * as React49 from "react";
|
|
20703
|
-
import * as
|
|
20763
|
+
import * as React382 from "react";
|
|
20704
20764
|
import { jsx as jsx272 } from "react/jsx-runtime";
|
|
20705
20765
|
import * as React47 from "react";
|
|
20706
20766
|
import React402 from "react";
|
|
20707
|
-
import * as
|
|
20767
|
+
import * as React39 from "react";
|
|
20708
20768
|
import { Fragment as Fragment222, jsx as jsx282 } from "react/jsx-runtime";
|
|
20709
20769
|
import { jsx as jsx292 } from "react/jsx-runtime";
|
|
20710
20770
|
import React210 from "react";
|
|
20711
20771
|
import { jsx as jsx2102 } from "react/jsx-runtime";
|
|
20712
20772
|
import * as React422 from "react";
|
|
20713
20773
|
import * as React412 from "react";
|
|
20714
|
-
import * as
|
|
20774
|
+
import * as React432 from "react";
|
|
20715
20775
|
import * as ReactDOM5 from "react-dom";
|
|
20716
20776
|
import { jsx as jsx302 } from "react/jsx-runtime";
|
|
20717
20777
|
import * as React44 from "react";
|
|
@@ -20763,7 +20823,7 @@ function useComposedRefs(...refs) {
|
|
|
20763
20823
|
return React8.useCallback(composeRefs(...refs), refs);
|
|
20764
20824
|
}
|
|
20765
20825
|
var REACT_LAZY_TYPE = Symbol.for("react.lazy");
|
|
20766
|
-
var use =
|
|
20826
|
+
var use = React24[" use ".trim().toString()];
|
|
20767
20827
|
function isPromiseLike(value) {
|
|
20768
20828
|
return typeof value === "object" && value !== null && "then" in value;
|
|
20769
20829
|
}
|
|
@@ -20772,25 +20832,25 @@ function isLazyComponent(element) {
|
|
|
20772
20832
|
}
|
|
20773
20833
|
function createSlot(ownerName) {
|
|
20774
20834
|
const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);
|
|
20775
|
-
const Slot2 =
|
|
20835
|
+
const Slot2 = React24.forwardRef((props, forwardedRef) => {
|
|
20776
20836
|
let { children, ...slotProps } = props;
|
|
20777
20837
|
if (isLazyComponent(children) && typeof use === "function") {
|
|
20778
20838
|
children = use(children._payload);
|
|
20779
20839
|
}
|
|
20780
|
-
const childrenArray =
|
|
20840
|
+
const childrenArray = React24.Children.toArray(children);
|
|
20781
20841
|
const slottable = childrenArray.find(isSlottable);
|
|
20782
20842
|
if (slottable) {
|
|
20783
20843
|
const newElement = slottable.props.children;
|
|
20784
20844
|
const newChildren = childrenArray.map((child) => {
|
|
20785
20845
|
if (child === slottable) {
|
|
20786
|
-
if (
|
|
20787
|
-
return
|
|
20788
|
-
return
|
|
20846
|
+
if (React24.Children.count(newElement) > 1)
|
|
20847
|
+
return React24.Children.only(null);
|
|
20848
|
+
return React24.isValidElement(newElement) ? newElement.props.children : null;
|
|
20789
20849
|
} else {
|
|
20790
20850
|
return child;
|
|
20791
20851
|
}
|
|
20792
20852
|
});
|
|
20793
|
-
return /* @__PURE__ */ jsx46(SlotClone, { ...slotProps, ref: forwardedRef, children:
|
|
20853
|
+
return /* @__PURE__ */ jsx46(SlotClone, { ...slotProps, ref: forwardedRef, children: React24.isValidElement(newElement) ? React24.cloneElement(newElement, undefined, newChildren) : null });
|
|
20794
20854
|
}
|
|
20795
20855
|
return /* @__PURE__ */ jsx46(SlotClone, { ...slotProps, ref: forwardedRef, children });
|
|
20796
20856
|
});
|
|
@@ -20799,20 +20859,20 @@ function createSlot(ownerName) {
|
|
|
20799
20859
|
}
|
|
20800
20860
|
var Slot = /* @__PURE__ */ createSlot("Slot");
|
|
20801
20861
|
function createSlotClone(ownerName) {
|
|
20802
|
-
const SlotClone =
|
|
20862
|
+
const SlotClone = React24.forwardRef((props, forwardedRef) => {
|
|
20803
20863
|
let { children, ...slotProps } = props;
|
|
20804
20864
|
if (isLazyComponent(children) && typeof use === "function") {
|
|
20805
20865
|
children = use(children._payload);
|
|
20806
20866
|
}
|
|
20807
|
-
if (
|
|
20867
|
+
if (React24.isValidElement(children)) {
|
|
20808
20868
|
const childrenRef = getElementRef(children);
|
|
20809
20869
|
const props2 = mergeProps(slotProps, children.props);
|
|
20810
|
-
if (children.type !==
|
|
20870
|
+
if (children.type !== React24.Fragment) {
|
|
20811
20871
|
props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;
|
|
20812
20872
|
}
|
|
20813
|
-
return
|
|
20873
|
+
return React24.cloneElement(children, props2);
|
|
20814
20874
|
}
|
|
20815
|
-
return
|
|
20875
|
+
return React24.Children.count(children) > 1 ? React24.Children.only(null) : null;
|
|
20816
20876
|
});
|
|
20817
20877
|
SlotClone.displayName = `${ownerName}.SlotClone`;
|
|
20818
20878
|
return SlotClone;
|
|
@@ -20828,7 +20888,7 @@ function createSlottable(ownerName) {
|
|
|
20828
20888
|
}
|
|
20829
20889
|
var Slottable = /* @__PURE__ */ createSlottable("Slottable");
|
|
20830
20890
|
function isSlottable(child) {
|
|
20831
|
-
return
|
|
20891
|
+
return React24.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
|
|
20832
20892
|
}
|
|
20833
20893
|
function mergeProps(slotProps, childProps) {
|
|
20834
20894
|
const overrideProps = { ...childProps };
|
|
@@ -20885,7 +20945,7 @@ var getChildNodeFrom = (htmlElement) => {
|
|
|
20885
20945
|
return childNode;
|
|
20886
20946
|
};
|
|
20887
20947
|
var useHoverTransforms = (ref, disabled) => {
|
|
20888
|
-
const [state, setState] =
|
|
20948
|
+
const [state, setState] = React33.useState({
|
|
20889
20949
|
progress: 0,
|
|
20890
20950
|
isActive: false
|
|
20891
20951
|
});
|
|
@@ -20897,7 +20957,7 @@ var useHoverTransforms = (ref, disabled) => {
|
|
|
20897
20957
|
eventTarget.dispatchEvent(new Event("enabled"));
|
|
20898
20958
|
}
|
|
20899
20959
|
}, [disabled, eventTarget]);
|
|
20900
|
-
|
|
20960
|
+
React33.useEffect(() => {
|
|
20901
20961
|
const element = ref.current;
|
|
20902
20962
|
if (!element)
|
|
20903
20963
|
return;
|
|
@@ -20972,8 +21032,8 @@ var useHoverTransforms = (ref, disabled) => {
|
|
|
20972
21032
|
return state;
|
|
20973
21033
|
};
|
|
20974
21034
|
var useClickTransforms = (ref) => {
|
|
20975
|
-
const [hoverProgress, setHoverProgress] =
|
|
20976
|
-
|
|
21035
|
+
const [hoverProgress, setHoverProgress] = React33.useState(0);
|
|
21036
|
+
React33.useEffect(() => {
|
|
20977
21037
|
const element = getChildNodeFrom(ref.current);
|
|
20978
21038
|
if (!element) {
|
|
20979
21039
|
return;
|
|
@@ -21549,7 +21609,7 @@ function composeRefs2(...refs) {
|
|
|
21549
21609
|
return (node) => refs.forEach((ref) => setRef22(ref, node));
|
|
21550
21610
|
}
|
|
21551
21611
|
function useComposedRefs2(...refs) {
|
|
21552
|
-
return
|
|
21612
|
+
return React92.useCallback(composeRefs2(...refs), refs);
|
|
21553
21613
|
}
|
|
21554
21614
|
var Slot2 = React10.forwardRef((props, forwardedRef) => {
|
|
21555
21615
|
const { children, ...slotProps } = props;
|
|
@@ -21631,13 +21691,13 @@ function createCollection(name) {
|
|
|
21631
21691
|
const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(PROVIDER_NAME, { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map });
|
|
21632
21692
|
const CollectionProvider = (props) => {
|
|
21633
21693
|
const { scope, children } = props;
|
|
21634
|
-
const ref =
|
|
21635
|
-
const itemMap =
|
|
21694
|
+
const ref = React11.useRef(null);
|
|
21695
|
+
const itemMap = React11.useRef(/* @__PURE__ */ new Map).current;
|
|
21636
21696
|
return /* @__PURE__ */ jsx152(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });
|
|
21637
21697
|
};
|
|
21638
21698
|
CollectionProvider.displayName = PROVIDER_NAME;
|
|
21639
21699
|
const COLLECTION_SLOT_NAME = name + "CollectionSlot";
|
|
21640
|
-
const CollectionSlot =
|
|
21700
|
+
const CollectionSlot = React11.forwardRef((props, forwardedRef) => {
|
|
21641
21701
|
const { scope, children } = props;
|
|
21642
21702
|
const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
|
|
21643
21703
|
const composedRefs = useComposedRefs2(forwardedRef, context.collectionRef);
|
|
@@ -21646,12 +21706,12 @@ function createCollection(name) {
|
|
|
21646
21706
|
CollectionSlot.displayName = COLLECTION_SLOT_NAME;
|
|
21647
21707
|
const ITEM_SLOT_NAME = name + "CollectionItemSlot";
|
|
21648
21708
|
const ITEM_DATA_ATTR = "data-radix-collection-item";
|
|
21649
|
-
const CollectionItemSlot =
|
|
21709
|
+
const CollectionItemSlot = React11.forwardRef((props, forwardedRef) => {
|
|
21650
21710
|
const { scope, children, ...itemData } = props;
|
|
21651
|
-
const ref =
|
|
21711
|
+
const ref = React11.useRef(null);
|
|
21652
21712
|
const composedRefs = useComposedRefs2(forwardedRef, ref);
|
|
21653
21713
|
const context = useCollectionContext(ITEM_SLOT_NAME, scope);
|
|
21654
|
-
|
|
21714
|
+
React11.useEffect(() => {
|
|
21655
21715
|
context.itemMap.set(ref, { ref, ...itemData });
|
|
21656
21716
|
return () => void context.itemMap.delete(ref);
|
|
21657
21717
|
});
|
|
@@ -21660,7 +21720,7 @@ function createCollection(name) {
|
|
|
21660
21720
|
CollectionItemSlot.displayName = ITEM_SLOT_NAME;
|
|
21661
21721
|
function useCollection(scope) {
|
|
21662
21722
|
const context = useCollectionContext(name + "CollectionConsumer", scope);
|
|
21663
|
-
const getItems =
|
|
21723
|
+
const getItems = React11.useCallback(() => {
|
|
21664
21724
|
const collectionNode = context.collectionRef.current;
|
|
21665
21725
|
if (!collectionNode)
|
|
21666
21726
|
return [];
|
|
@@ -21717,15 +21777,15 @@ function dispatchDiscreteCustomEvent(target, event) {
|
|
|
21717
21777
|
ReactDOM.flushSync(() => target.dispatchEvent(event));
|
|
21718
21778
|
}
|
|
21719
21779
|
function useCallbackRef(callback) {
|
|
21720
|
-
const callbackRef =
|
|
21721
|
-
|
|
21780
|
+
const callbackRef = React142.useRef(callback);
|
|
21781
|
+
React142.useEffect(() => {
|
|
21722
21782
|
callbackRef.current = callback;
|
|
21723
21783
|
});
|
|
21724
|
-
return
|
|
21784
|
+
return React142.useMemo(() => (...args) => callbackRef.current?.(...args), []);
|
|
21725
21785
|
}
|
|
21726
21786
|
function useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {
|
|
21727
21787
|
const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);
|
|
21728
|
-
|
|
21788
|
+
React15.useEffect(() => {
|
|
21729
21789
|
const handleKeyDown = (event) => {
|
|
21730
21790
|
if (event.key === "Escape") {
|
|
21731
21791
|
onEscapeKeyDown(event);
|
|
@@ -21932,7 +21992,7 @@ function handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {
|
|
|
21932
21992
|
}
|
|
21933
21993
|
var count = 0;
|
|
21934
21994
|
function useFocusGuards() {
|
|
21935
|
-
|
|
21995
|
+
React172.useEffect(() => {
|
|
21936
21996
|
const edgeGuards = document.querySelectorAll("[data-radix-focus-guard]");
|
|
21937
21997
|
document.body.insertAdjacentElement("afterbegin", edgeGuards[0] ?? createFocusGuard());
|
|
21938
21998
|
document.body.insertAdjacentElement("beforeend", edgeGuards[1] ?? createFocusGuard());
|
|
@@ -22167,7 +22227,7 @@ function arrayRemove(array, item) {
|
|
|
22167
22227
|
function removeLinks(items) {
|
|
22168
22228
|
return items.filter((item) => item.tagName !== "A");
|
|
22169
22229
|
}
|
|
22170
|
-
var useLayoutEffect22 = Boolean(globalThis?.document) ?
|
|
22230
|
+
var useLayoutEffect22 = Boolean(globalThis?.document) ? React19.useLayoutEffect : () => {};
|
|
22171
22231
|
var useReactId = React202["useId".toString()] || (() => {
|
|
22172
22232
|
return;
|
|
22173
22233
|
});
|
|
@@ -24019,17 +24079,17 @@ var [createPopperContext, createPopperScope] = createContextScope(POPPER_NAME);
|
|
|
24019
24079
|
var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
|
|
24020
24080
|
var Popper = (props) => {
|
|
24021
24081
|
const { __scopePopper, children } = props;
|
|
24022
|
-
const [anchor, setAnchor] =
|
|
24082
|
+
const [anchor, setAnchor] = React242.useState(null);
|
|
24023
24083
|
return /* @__PURE__ */ jsx213(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
24024
24084
|
};
|
|
24025
24085
|
Popper.displayName = POPPER_NAME;
|
|
24026
24086
|
var ANCHOR_NAME = "PopperAnchor";
|
|
24027
|
-
var PopperAnchor =
|
|
24087
|
+
var PopperAnchor = React242.forwardRef((props, forwardedRef) => {
|
|
24028
24088
|
const { __scopePopper, virtualRef, ...anchorProps } = props;
|
|
24029
24089
|
const context = usePopperContext(ANCHOR_NAME, __scopePopper);
|
|
24030
|
-
const ref =
|
|
24090
|
+
const ref = React242.useRef(null);
|
|
24031
24091
|
const composedRefs = useComposedRefs2(forwardedRef, ref);
|
|
24032
|
-
|
|
24092
|
+
React242.useEffect(() => {
|
|
24033
24093
|
context.onAnchorChange(virtualRef?.current || ref.current);
|
|
24034
24094
|
});
|
|
24035
24095
|
return virtualRef ? null : /* @__PURE__ */ jsx213(Primitive.div, { ...anchorProps, ref: composedRefs });
|
|
@@ -24037,7 +24097,7 @@ var PopperAnchor = React24.forwardRef((props, forwardedRef) => {
|
|
|
24037
24097
|
PopperAnchor.displayName = ANCHOR_NAME;
|
|
24038
24098
|
var CONTENT_NAME = "PopperContent";
|
|
24039
24099
|
var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME);
|
|
24040
|
-
var PopperContent =
|
|
24100
|
+
var PopperContent = React242.forwardRef((props, forwardedRef) => {
|
|
24041
24101
|
const {
|
|
24042
24102
|
__scopePopper,
|
|
24043
24103
|
side = "bottom",
|
|
@@ -24055,9 +24115,9 @@ var PopperContent = React24.forwardRef((props, forwardedRef) => {
|
|
|
24055
24115
|
...contentProps
|
|
24056
24116
|
} = props;
|
|
24057
24117
|
const context = usePopperContext(CONTENT_NAME, __scopePopper);
|
|
24058
|
-
const [content, setContent] =
|
|
24118
|
+
const [content, setContent] = React242.useState(null);
|
|
24059
24119
|
const composedRefs = useComposedRefs2(forwardedRef, (node) => setContent(node));
|
|
24060
|
-
const [arrow4, setArrow] =
|
|
24120
|
+
const [arrow4, setArrow] = React242.useState(null);
|
|
24061
24121
|
const arrowSize = useSize(arrow4);
|
|
24062
24122
|
const arrowWidth = arrowSize?.width ?? 0;
|
|
24063
24123
|
const arrowHeight = arrowSize?.height ?? 0;
|
|
@@ -24117,7 +24177,7 @@ var PopperContent = React24.forwardRef((props, forwardedRef) => {
|
|
|
24117
24177
|
const arrowX = middlewareData.arrow?.x;
|
|
24118
24178
|
const arrowY = middlewareData.arrow?.y;
|
|
24119
24179
|
const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
|
|
24120
|
-
const [contentZIndex, setContentZIndex] =
|
|
24180
|
+
const [contentZIndex, setContentZIndex] = React242.useState();
|
|
24121
24181
|
useLayoutEffect22(() => {
|
|
24122
24182
|
if (content)
|
|
24123
24183
|
setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
@@ -24168,7 +24228,7 @@ var OPPOSITE_SIDE = {
|
|
|
24168
24228
|
bottom: "top",
|
|
24169
24229
|
left: "right"
|
|
24170
24230
|
};
|
|
24171
|
-
var PopperArrow =
|
|
24231
|
+
var PopperArrow = React242.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
24172
24232
|
const { __scopePopper, ...arrowProps } = props;
|
|
24173
24233
|
const contentContext = useContentContext(ARROW_NAME, __scopePopper);
|
|
24174
24234
|
const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
|
|
@@ -24511,7 +24571,7 @@ function useCallbackRef2(initialValue, callback) {
|
|
|
24511
24571
|
ref.callback = callback;
|
|
24512
24572
|
return ref.facade;
|
|
24513
24573
|
}
|
|
24514
|
-
var useIsomorphicLayoutEffect = typeof window !== "undefined" ?
|
|
24574
|
+
var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React29.useLayoutEffect : React29.useEffect;
|
|
24515
24575
|
var currentValues = new WeakMap;
|
|
24516
24576
|
function useMergeRefs(refs, defaultValue) {
|
|
24517
24577
|
var callbackRef = useCallbackRef2(defaultValue || null, function(newValue) {
|
|
@@ -25147,9 +25207,9 @@ var Select = (props) => {
|
|
|
25147
25207
|
required
|
|
25148
25208
|
} = props;
|
|
25149
25209
|
const popperScope = usePopperScope(__scopeSelect);
|
|
25150
|
-
const [trigger, setTrigger] =
|
|
25151
|
-
const [valueNode, setValueNode] =
|
|
25152
|
-
const [valueNodeHasChildren, setValueNodeHasChildren] =
|
|
25210
|
+
const [trigger, setTrigger] = React362.useState(null);
|
|
25211
|
+
const [valueNode, setValueNode] = React362.useState(null);
|
|
25212
|
+
const [valueNodeHasChildren, setValueNodeHasChildren] = React362.useState(false);
|
|
25153
25213
|
const direction = useDirection(dir);
|
|
25154
25214
|
const [open = false, setOpen] = useControllableState({
|
|
25155
25215
|
prop: openProp,
|
|
@@ -25161,9 +25221,9 @@ var Select = (props) => {
|
|
|
25161
25221
|
defaultProp: defaultValue,
|
|
25162
25222
|
onChange: onValueChange
|
|
25163
25223
|
});
|
|
25164
|
-
const triggerPointerDownPosRef =
|
|
25224
|
+
const triggerPointerDownPosRef = React362.useRef(null);
|
|
25165
25225
|
const isFormControl = trigger ? Boolean(trigger.closest("form")) : true;
|
|
25166
|
-
const [nativeOptionsSet, setNativeOptionsSet] =
|
|
25226
|
+
const [nativeOptionsSet, setNativeOptionsSet] = React362.useState(/* @__PURE__ */ new Set);
|
|
25167
25227
|
const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(";");
|
|
25168
25228
|
return /* @__PURE__ */ jsx242(Root22, { ...popperScope, children: /* @__PURE__ */ jsxs42(SelectProvider, {
|
|
25169
25229
|
required,
|
|
@@ -25185,10 +25245,10 @@ var Select = (props) => {
|
|
|
25185
25245
|
children: [
|
|
25186
25246
|
/* @__PURE__ */ jsx242(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx242(SelectNativeOptionsProvider, {
|
|
25187
25247
|
scope: props.__scopeSelect,
|
|
25188
|
-
onNativeOptionAdd:
|
|
25248
|
+
onNativeOptionAdd: React362.useCallback((option) => {
|
|
25189
25249
|
setNativeOptionsSet((prev) => new Set(prev).add(option));
|
|
25190
25250
|
}, []),
|
|
25191
|
-
onNativeOptionRemove:
|
|
25251
|
+
onNativeOptionRemove: React362.useCallback((option) => {
|
|
25192
25252
|
setNativeOptionsSet((prev) => {
|
|
25193
25253
|
const optionsSet = new Set(prev);
|
|
25194
25254
|
optionsSet.delete(option);
|
|
@@ -25216,7 +25276,7 @@ var Select = (props) => {
|
|
|
25216
25276
|
};
|
|
25217
25277
|
Select.displayName = SELECT_NAME;
|
|
25218
25278
|
var TRIGGER_NAME = "SelectTrigger";
|
|
25219
|
-
var SelectTrigger =
|
|
25279
|
+
var SelectTrigger = React362.forwardRef((props, forwardedRef) => {
|
|
25220
25280
|
const { __scopeSelect, disabled = false, ...triggerProps } = props;
|
|
25221
25281
|
const popperScope = usePopperScope(__scopeSelect);
|
|
25222
25282
|
const context = useSelectContext(TRIGGER_NAME, __scopeSelect);
|
|
@@ -25284,7 +25344,7 @@ var SelectTrigger = React36.forwardRef((props, forwardedRef) => {
|
|
|
25284
25344
|
});
|
|
25285
25345
|
SelectTrigger.displayName = TRIGGER_NAME;
|
|
25286
25346
|
var VALUE_NAME = "SelectValue";
|
|
25287
|
-
var SelectValue =
|
|
25347
|
+
var SelectValue = React362.forwardRef((props, forwardedRef) => {
|
|
25288
25348
|
const { __scopeSelect, className, style, children, placeholder = "", ...valueProps } = props;
|
|
25289
25349
|
const context = useSelectContext(VALUE_NAME, __scopeSelect);
|
|
25290
25350
|
const { onValueNodeHasChildrenChange } = context;
|
|
@@ -25302,7 +25362,7 @@ var SelectValue = React36.forwardRef((props, forwardedRef) => {
|
|
|
25302
25362
|
});
|
|
25303
25363
|
SelectValue.displayName = VALUE_NAME;
|
|
25304
25364
|
var ICON_NAME = "SelectIcon";
|
|
25305
|
-
var SelectIcon =
|
|
25365
|
+
var SelectIcon = React362.forwardRef((props, forwardedRef) => {
|
|
25306
25366
|
const { __scopeSelect, children, ...iconProps } = props;
|
|
25307
25367
|
return /* @__PURE__ */ jsx242(Primitive.span, { "aria-hidden": true, ...iconProps, ref: forwardedRef, children: children || "▼" });
|
|
25308
25368
|
});
|
|
@@ -25313,9 +25373,9 @@ var SelectPortal = (props) => {
|
|
|
25313
25373
|
};
|
|
25314
25374
|
SelectPortal.displayName = PORTAL_NAME2;
|
|
25315
25375
|
var CONTENT_NAME2 = "SelectContent";
|
|
25316
|
-
var SelectContent =
|
|
25376
|
+
var SelectContent = React362.forwardRef((props, forwardedRef) => {
|
|
25317
25377
|
const context = useSelectContext(CONTENT_NAME2, props.__scopeSelect);
|
|
25318
|
-
const [fragment, setFragment] =
|
|
25378
|
+
const [fragment, setFragment] = React362.useState();
|
|
25319
25379
|
useLayoutEffect22(() => {
|
|
25320
25380
|
setFragment(new DocumentFragment);
|
|
25321
25381
|
}, []);
|
|
@@ -25329,7 +25389,7 @@ SelectContent.displayName = CONTENT_NAME2;
|
|
|
25329
25389
|
var CONTENT_MARGIN = 10;
|
|
25330
25390
|
var [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME2);
|
|
25331
25391
|
var CONTENT_IMPL_NAME = "SelectContentImpl";
|
|
25332
|
-
var SelectContentImpl =
|
|
25392
|
+
var SelectContentImpl = React362.forwardRef((props, forwardedRef) => {
|
|
25333
25393
|
const {
|
|
25334
25394
|
__scopeSelect,
|
|
25335
25395
|
position = "item-aligned",
|
|
@@ -25349,20 +25409,20 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25349
25409
|
...contentProps
|
|
25350
25410
|
} = props;
|
|
25351
25411
|
const context = useSelectContext(CONTENT_NAME2, __scopeSelect);
|
|
25352
|
-
const [content, setContent] =
|
|
25353
|
-
const [viewport, setViewport] =
|
|
25412
|
+
const [content, setContent] = React362.useState(null);
|
|
25413
|
+
const [viewport, setViewport] = React362.useState(null);
|
|
25354
25414
|
const composedRefs = useComposedRefs2(forwardedRef, (node) => setContent(node));
|
|
25355
|
-
const [selectedItem, setSelectedItem] =
|
|
25356
|
-
const [selectedItemText, setSelectedItemText] =
|
|
25415
|
+
const [selectedItem, setSelectedItem] = React362.useState(null);
|
|
25416
|
+
const [selectedItemText, setSelectedItemText] = React362.useState(null);
|
|
25357
25417
|
const getItems = useCollection(__scopeSelect);
|
|
25358
|
-
const [isPositioned, setIsPositioned] =
|
|
25359
|
-
const firstValidItemFoundRef =
|
|
25360
|
-
|
|
25418
|
+
const [isPositioned, setIsPositioned] = React362.useState(false);
|
|
25419
|
+
const firstValidItemFoundRef = React362.useRef(false);
|
|
25420
|
+
React362.useEffect(() => {
|
|
25361
25421
|
if (content)
|
|
25362
25422
|
return hideOthers(content);
|
|
25363
25423
|
}, [content]);
|
|
25364
25424
|
useFocusGuards();
|
|
25365
|
-
const focusFirst2 =
|
|
25425
|
+
const focusFirst2 = React362.useCallback((candidates) => {
|
|
25366
25426
|
const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);
|
|
25367
25427
|
const [lastItem] = restItems.slice(-1);
|
|
25368
25428
|
const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;
|
|
@@ -25379,14 +25439,14 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25379
25439
|
return;
|
|
25380
25440
|
}
|
|
25381
25441
|
}, [getItems, viewport]);
|
|
25382
|
-
const focusSelectedItem =
|
|
25383
|
-
|
|
25442
|
+
const focusSelectedItem = React362.useCallback(() => focusFirst2([selectedItem, content]), [focusFirst2, selectedItem, content]);
|
|
25443
|
+
React362.useEffect(() => {
|
|
25384
25444
|
if (isPositioned) {
|
|
25385
25445
|
focusSelectedItem();
|
|
25386
25446
|
}
|
|
25387
25447
|
}, [isPositioned, focusSelectedItem]);
|
|
25388
25448
|
const { onOpenChange, triggerPointerDownPosRef } = context;
|
|
25389
|
-
|
|
25449
|
+
React362.useEffect(() => {
|
|
25390
25450
|
if (content) {
|
|
25391
25451
|
let pointerMoveDelta = { x: 0, y: 0 };
|
|
25392
25452
|
const handlePointerMove = (event) => {
|
|
@@ -25416,7 +25476,7 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25416
25476
|
};
|
|
25417
25477
|
}
|
|
25418
25478
|
}, [content, onOpenChange, triggerPointerDownPosRef]);
|
|
25419
|
-
|
|
25479
|
+
React362.useEffect(() => {
|
|
25420
25480
|
const close = () => onOpenChange(false);
|
|
25421
25481
|
window.addEventListener("blur", close);
|
|
25422
25482
|
window.addEventListener("resize", close);
|
|
@@ -25433,7 +25493,7 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25433
25493
|
setTimeout(() => nextItem.ref.current.focus());
|
|
25434
25494
|
}
|
|
25435
25495
|
});
|
|
25436
|
-
const itemRefCallback =
|
|
25496
|
+
const itemRefCallback = React362.useCallback((node, value, disabled) => {
|
|
25437
25497
|
const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
|
|
25438
25498
|
const isSelectedItem = context.value !== undefined && context.value === value;
|
|
25439
25499
|
if (isSelectedItem || isFirstValidItem) {
|
|
@@ -25442,8 +25502,8 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25442
25502
|
firstValidItemFoundRef.current = true;
|
|
25443
25503
|
}
|
|
25444
25504
|
}, [context.value]);
|
|
25445
|
-
const handleItemLeave =
|
|
25446
|
-
const itemTextRefCallback =
|
|
25505
|
+
const handleItemLeave = React362.useCallback(() => content?.focus(), [content]);
|
|
25506
|
+
const itemTextRefCallback = React362.useCallback((node, value, disabled) => {
|
|
25447
25507
|
const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
|
|
25448
25508
|
const isSelectedItem = context.value !== undefined && context.value === value;
|
|
25449
25509
|
if (isSelectedItem || isFirstValidItem) {
|
|
@@ -25538,18 +25598,18 @@ var SelectContentImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25538
25598
|
});
|
|
25539
25599
|
SelectContentImpl.displayName = CONTENT_IMPL_NAME;
|
|
25540
25600
|
var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition";
|
|
25541
|
-
var SelectItemAlignedPosition =
|
|
25601
|
+
var SelectItemAlignedPosition = React362.forwardRef((props, forwardedRef) => {
|
|
25542
25602
|
const { __scopeSelect, onPlaced, ...popperProps } = props;
|
|
25543
25603
|
const context = useSelectContext(CONTENT_NAME2, __scopeSelect);
|
|
25544
25604
|
const contentContext = useSelectContentContext(CONTENT_NAME2, __scopeSelect);
|
|
25545
|
-
const [contentWrapper, setContentWrapper] =
|
|
25546
|
-
const [content, setContent] =
|
|
25605
|
+
const [contentWrapper, setContentWrapper] = React362.useState(null);
|
|
25606
|
+
const [content, setContent] = React362.useState(null);
|
|
25547
25607
|
const composedRefs = useComposedRefs2(forwardedRef, (node) => setContent(node));
|
|
25548
25608
|
const getItems = useCollection(__scopeSelect);
|
|
25549
|
-
const shouldExpandOnScrollRef =
|
|
25550
|
-
const shouldRepositionRef =
|
|
25609
|
+
const shouldExpandOnScrollRef = React362.useRef(false);
|
|
25610
|
+
const shouldRepositionRef = React362.useRef(true);
|
|
25551
25611
|
const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;
|
|
25552
|
-
const position =
|
|
25612
|
+
const position = React362.useCallback(() => {
|
|
25553
25613
|
if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {
|
|
25554
25614
|
const triggerRect = context.trigger.getBoundingClientRect();
|
|
25555
25615
|
const contentRect = content.getBoundingClientRect();
|
|
@@ -25630,12 +25690,12 @@ var SelectItemAlignedPosition = React36.forwardRef((props, forwardedRef) => {
|
|
|
25630
25690
|
onPlaced
|
|
25631
25691
|
]);
|
|
25632
25692
|
useLayoutEffect22(() => position(), [position]);
|
|
25633
|
-
const [contentZIndex, setContentZIndex] =
|
|
25693
|
+
const [contentZIndex, setContentZIndex] = React362.useState();
|
|
25634
25694
|
useLayoutEffect22(() => {
|
|
25635
25695
|
if (content)
|
|
25636
25696
|
setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
25637
25697
|
}, [content]);
|
|
25638
|
-
const handleScrollButtonChange =
|
|
25698
|
+
const handleScrollButtonChange = React362.useCallback((node) => {
|
|
25639
25699
|
if (node && shouldRepositionRef.current === true) {
|
|
25640
25700
|
position();
|
|
25641
25701
|
focusSelectedItem?.();
|
|
@@ -25669,7 +25729,7 @@ var SelectItemAlignedPosition = React36.forwardRef((props, forwardedRef) => {
|
|
|
25669
25729
|
});
|
|
25670
25730
|
SelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;
|
|
25671
25731
|
var POPPER_POSITION_NAME = "SelectPopperPosition";
|
|
25672
|
-
var SelectPopperPosition =
|
|
25732
|
+
var SelectPopperPosition = React362.forwardRef((props, forwardedRef) => {
|
|
25673
25733
|
const {
|
|
25674
25734
|
__scopeSelect,
|
|
25675
25735
|
align = "start",
|
|
@@ -25699,12 +25759,12 @@ var SelectPopperPosition = React36.forwardRef((props, forwardedRef) => {
|
|
|
25699
25759
|
SelectPopperPosition.displayName = POPPER_POSITION_NAME;
|
|
25700
25760
|
var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME2, {});
|
|
25701
25761
|
var VIEWPORT_NAME = "SelectViewport";
|
|
25702
|
-
var SelectViewport =
|
|
25762
|
+
var SelectViewport = React362.forwardRef((props, forwardedRef) => {
|
|
25703
25763
|
const { __scopeSelect, nonce, ...viewportProps } = props;
|
|
25704
25764
|
const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);
|
|
25705
25765
|
const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);
|
|
25706
25766
|
const composedRefs = useComposedRefs2(forwardedRef, contentContext.onViewportChange);
|
|
25707
|
-
const prevScrollTopRef =
|
|
25767
|
+
const prevScrollTopRef = React362.useRef(0);
|
|
25708
25768
|
return /* @__PURE__ */ jsxs42(Fragment8, { children: [
|
|
25709
25769
|
/* @__PURE__ */ jsx242("style", {
|
|
25710
25770
|
dangerouslySetInnerHTML: {
|
|
@@ -25753,14 +25813,14 @@ var SelectViewport = React36.forwardRef((props, forwardedRef) => {
|
|
|
25753
25813
|
SelectViewport.displayName = VIEWPORT_NAME;
|
|
25754
25814
|
var GROUP_NAME = "SelectGroup";
|
|
25755
25815
|
var [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);
|
|
25756
|
-
var SelectGroup =
|
|
25816
|
+
var SelectGroup = React362.forwardRef((props, forwardedRef) => {
|
|
25757
25817
|
const { __scopeSelect, ...groupProps } = props;
|
|
25758
25818
|
const groupId = useId();
|
|
25759
25819
|
return /* @__PURE__ */ jsx242(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsx242(Primitive.div, { role: "group", "aria-labelledby": groupId, ...groupProps, ref: forwardedRef }) });
|
|
25760
25820
|
});
|
|
25761
25821
|
SelectGroup.displayName = GROUP_NAME;
|
|
25762
25822
|
var LABEL_NAME = "SelectLabel";
|
|
25763
|
-
var SelectLabel =
|
|
25823
|
+
var SelectLabel = React362.forwardRef((props, forwardedRef) => {
|
|
25764
25824
|
const { __scopeSelect, ...labelProps } = props;
|
|
25765
25825
|
const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);
|
|
25766
25826
|
return /* @__PURE__ */ jsx242(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });
|
|
@@ -25768,7 +25828,7 @@ var SelectLabel = React36.forwardRef((props, forwardedRef) => {
|
|
|
25768
25828
|
SelectLabel.displayName = LABEL_NAME;
|
|
25769
25829
|
var ITEM_NAME = "SelectItem";
|
|
25770
25830
|
var [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);
|
|
25771
|
-
var SelectItem =
|
|
25831
|
+
var SelectItem = React362.forwardRef((props, forwardedRef) => {
|
|
25772
25832
|
const {
|
|
25773
25833
|
__scopeSelect,
|
|
25774
25834
|
value,
|
|
@@ -25779,8 +25839,8 @@ var SelectItem = React36.forwardRef((props, forwardedRef) => {
|
|
|
25779
25839
|
const context = useSelectContext(ITEM_NAME, __scopeSelect);
|
|
25780
25840
|
const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);
|
|
25781
25841
|
const isSelected = context.value === value;
|
|
25782
|
-
const [textValue, setTextValue] =
|
|
25783
|
-
const [isFocused, setIsFocused] =
|
|
25842
|
+
const [textValue, setTextValue] = React362.useState(textValueProp ?? "");
|
|
25843
|
+
const [isFocused, setIsFocused] = React362.useState(false);
|
|
25784
25844
|
const composedRefs = useComposedRefs2(forwardedRef, (node) => contentContext.itemRefCallback?.(node, value, disabled));
|
|
25785
25845
|
const textId = useId();
|
|
25786
25846
|
const handleSelect = () => {
|
|
@@ -25798,7 +25858,7 @@ var SelectItem = React36.forwardRef((props, forwardedRef) => {
|
|
|
25798
25858
|
disabled,
|
|
25799
25859
|
textId,
|
|
25800
25860
|
isSelected,
|
|
25801
|
-
onItemTextChange:
|
|
25861
|
+
onItemTextChange: React362.useCallback((node) => {
|
|
25802
25862
|
setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? "").trim());
|
|
25803
25863
|
}, []),
|
|
25804
25864
|
children: /* @__PURE__ */ jsx242(Collection.ItemSlot, {
|
|
@@ -25847,16 +25907,16 @@ var SelectItem = React36.forwardRef((props, forwardedRef) => {
|
|
|
25847
25907
|
});
|
|
25848
25908
|
SelectItem.displayName = ITEM_NAME;
|
|
25849
25909
|
var ITEM_TEXT_NAME = "SelectItemText";
|
|
25850
|
-
var SelectItemText =
|
|
25910
|
+
var SelectItemText = React362.forwardRef((props, forwardedRef) => {
|
|
25851
25911
|
const { __scopeSelect, className, style, ...itemTextProps } = props;
|
|
25852
25912
|
const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
25853
25913
|
const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
25854
25914
|
const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
25855
25915
|
const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
25856
|
-
const [itemTextNode, setItemTextNode] =
|
|
25916
|
+
const [itemTextNode, setItemTextNode] = React362.useState(null);
|
|
25857
25917
|
const composedRefs = useComposedRefs2(forwardedRef, (node) => setItemTextNode(node), itemContext.onItemTextChange, (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled));
|
|
25858
25918
|
const textContent = itemTextNode?.textContent;
|
|
25859
|
-
const nativeOption =
|
|
25919
|
+
const nativeOption = React362.useMemo(() => /* @__PURE__ */ jsx242("option", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value), [itemContext.disabled, itemContext.value, textContent]);
|
|
25860
25920
|
const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;
|
|
25861
25921
|
useLayoutEffect22(() => {
|
|
25862
25922
|
onNativeOptionAdd(nativeOption);
|
|
@@ -25869,17 +25929,17 @@ var SelectItemText = React36.forwardRef((props, forwardedRef) => {
|
|
|
25869
25929
|
});
|
|
25870
25930
|
SelectItemText.displayName = ITEM_TEXT_NAME;
|
|
25871
25931
|
var ITEM_INDICATOR_NAME = "SelectItemIndicator";
|
|
25872
|
-
var SelectItemIndicator =
|
|
25932
|
+
var SelectItemIndicator = React362.forwardRef((props, forwardedRef) => {
|
|
25873
25933
|
const { __scopeSelect, ...itemIndicatorProps } = props;
|
|
25874
25934
|
const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);
|
|
25875
25935
|
return itemContext.isSelected ? /* @__PURE__ */ jsx242(Primitive.span, { "aria-hidden": true, ...itemIndicatorProps, ref: forwardedRef }) : null;
|
|
25876
25936
|
});
|
|
25877
25937
|
SelectItemIndicator.displayName = ITEM_INDICATOR_NAME;
|
|
25878
25938
|
var SCROLL_UP_BUTTON_NAME = "SelectScrollUpButton";
|
|
25879
|
-
var SelectScrollUpButton =
|
|
25939
|
+
var SelectScrollUpButton = React362.forwardRef((props, forwardedRef) => {
|
|
25880
25940
|
const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
|
|
25881
25941
|
const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
|
|
25882
|
-
const [canScrollUp, setCanScrollUp] =
|
|
25942
|
+
const [canScrollUp, setCanScrollUp] = React362.useState(false);
|
|
25883
25943
|
const composedRefs = useComposedRefs2(forwardedRef, viewportContext.onScrollButtonChange);
|
|
25884
25944
|
useLayoutEffect22(() => {
|
|
25885
25945
|
if (contentContext.viewport && contentContext.isPositioned) {
|
|
@@ -25907,10 +25967,10 @@ var SelectScrollUpButton = React36.forwardRef((props, forwardedRef) => {
|
|
|
25907
25967
|
});
|
|
25908
25968
|
SelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;
|
|
25909
25969
|
var SCROLL_DOWN_BUTTON_NAME = "SelectScrollDownButton";
|
|
25910
|
-
var SelectScrollDownButton =
|
|
25970
|
+
var SelectScrollDownButton = React362.forwardRef((props, forwardedRef) => {
|
|
25911
25971
|
const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
|
|
25912
25972
|
const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
|
|
25913
|
-
const [canScrollDown, setCanScrollDown] =
|
|
25973
|
+
const [canScrollDown, setCanScrollDown] = React362.useState(false);
|
|
25914
25974
|
const composedRefs = useComposedRefs2(forwardedRef, viewportContext.onScrollButtonChange);
|
|
25915
25975
|
useLayoutEffect22(() => {
|
|
25916
25976
|
if (contentContext.viewport && contentContext.isPositioned) {
|
|
@@ -25938,18 +25998,18 @@ var SelectScrollDownButton = React36.forwardRef((props, forwardedRef) => {
|
|
|
25938
25998
|
}) : null;
|
|
25939
25999
|
});
|
|
25940
26000
|
SelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;
|
|
25941
|
-
var SelectScrollButtonImpl =
|
|
26001
|
+
var SelectScrollButtonImpl = React362.forwardRef((props, forwardedRef) => {
|
|
25942
26002
|
const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;
|
|
25943
26003
|
const contentContext = useSelectContentContext("SelectScrollButton", __scopeSelect);
|
|
25944
|
-
const autoScrollTimerRef =
|
|
26004
|
+
const autoScrollTimerRef = React362.useRef(null);
|
|
25945
26005
|
const getItems = useCollection(__scopeSelect);
|
|
25946
|
-
const clearAutoScrollTimer =
|
|
26006
|
+
const clearAutoScrollTimer = React362.useCallback(() => {
|
|
25947
26007
|
if (autoScrollTimerRef.current !== null) {
|
|
25948
26008
|
window.clearInterval(autoScrollTimerRef.current);
|
|
25949
26009
|
autoScrollTimerRef.current = null;
|
|
25950
26010
|
}
|
|
25951
26011
|
}, []);
|
|
25952
|
-
|
|
26012
|
+
React362.useEffect(() => {
|
|
25953
26013
|
return () => clearAutoScrollTimer();
|
|
25954
26014
|
}, [clearAutoScrollTimer]);
|
|
25955
26015
|
useLayoutEffect22(() => {
|
|
@@ -25978,13 +26038,13 @@ var SelectScrollButtonImpl = React36.forwardRef((props, forwardedRef) => {
|
|
|
25978
26038
|
});
|
|
25979
26039
|
});
|
|
25980
26040
|
var SEPARATOR_NAME = "SelectSeparator";
|
|
25981
|
-
var SelectSeparator =
|
|
26041
|
+
var SelectSeparator = React362.forwardRef((props, forwardedRef) => {
|
|
25982
26042
|
const { __scopeSelect, ...separatorProps } = props;
|
|
25983
26043
|
return /* @__PURE__ */ jsx242(Primitive.div, { "aria-hidden": true, ...separatorProps, ref: forwardedRef });
|
|
25984
26044
|
});
|
|
25985
26045
|
SelectSeparator.displayName = SEPARATOR_NAME;
|
|
25986
26046
|
var ARROW_NAME2 = "SelectArrow";
|
|
25987
|
-
var SelectArrow =
|
|
26047
|
+
var SelectArrow = React362.forwardRef((props, forwardedRef) => {
|
|
25988
26048
|
const { __scopeSelect, ...arrowProps } = props;
|
|
25989
26049
|
const popperScope = usePopperScope(__scopeSelect);
|
|
25990
26050
|
const context = useSelectContext(ARROW_NAME2, __scopeSelect);
|
|
@@ -25995,12 +26055,12 @@ SelectArrow.displayName = ARROW_NAME2;
|
|
|
25995
26055
|
function shouldShowPlaceholder(value) {
|
|
25996
26056
|
return value === "" || value === undefined;
|
|
25997
26057
|
}
|
|
25998
|
-
var BubbleSelect =
|
|
26058
|
+
var BubbleSelect = React362.forwardRef((props, forwardedRef) => {
|
|
25999
26059
|
const { value, ...selectProps } = props;
|
|
26000
|
-
const ref =
|
|
26060
|
+
const ref = React362.useRef(null);
|
|
26001
26061
|
const composedRefs = useComposedRefs2(forwardedRef, ref);
|
|
26002
26062
|
const prevValue = usePrevious(value);
|
|
26003
|
-
|
|
26063
|
+
React362.useEffect(() => {
|
|
26004
26064
|
const select = ref.current;
|
|
26005
26065
|
const selectProto = window.HTMLSelectElement.prototype;
|
|
26006
26066
|
const descriptor = Object.getOwnPropertyDescriptor(selectProto, "value");
|
|
@@ -26016,9 +26076,9 @@ var BubbleSelect = React36.forwardRef((props, forwardedRef) => {
|
|
|
26016
26076
|
BubbleSelect.displayName = "BubbleSelect";
|
|
26017
26077
|
function useTypeaheadSearch(onSearchChange) {
|
|
26018
26078
|
const handleSearchChange = useCallbackRef(onSearchChange);
|
|
26019
|
-
const searchRef =
|
|
26020
|
-
const timerRef =
|
|
26021
|
-
const handleTypeaheadSearch =
|
|
26079
|
+
const searchRef = React362.useRef("");
|
|
26080
|
+
const timerRef = React362.useRef(0);
|
|
26081
|
+
const handleTypeaheadSearch = React362.useCallback((key) => {
|
|
26022
26082
|
const search = searchRef.current + key;
|
|
26023
26083
|
handleSearchChange(search);
|
|
26024
26084
|
(function updateSearch(value) {
|
|
@@ -26028,11 +26088,11 @@ function useTypeaheadSearch(onSearchChange) {
|
|
|
26028
26088
|
timerRef.current = window.setTimeout(() => updateSearch(""), 1000);
|
|
26029
26089
|
})(search);
|
|
26030
26090
|
}, [handleSearchChange]);
|
|
26031
|
-
const resetTypeahead =
|
|
26091
|
+
const resetTypeahead = React362.useCallback(() => {
|
|
26032
26092
|
searchRef.current = "";
|
|
26033
26093
|
window.clearTimeout(timerRef.current);
|
|
26034
26094
|
}, []);
|
|
26035
|
-
|
|
26095
|
+
React362.useEffect(() => {
|
|
26036
26096
|
return () => window.clearTimeout(timerRef.current);
|
|
26037
26097
|
}, []);
|
|
26038
26098
|
return [searchRef, handleTypeaheadSearch, resetTypeahead];
|
|
@@ -26121,7 +26181,7 @@ var ChevronDown = createLucideIcon("ChevronDown", [
|
|
|
26121
26181
|
var ChevronUp = createLucideIcon("ChevronUp", [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]]);
|
|
26122
26182
|
var Select2 = Root222;
|
|
26123
26183
|
var SelectValue2 = Value;
|
|
26124
|
-
var SelectTrigger2 =
|
|
26184
|
+
var SelectTrigger2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs5(Trigger, {
|
|
26125
26185
|
ref,
|
|
26126
26186
|
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),
|
|
26127
26187
|
...props,
|
|
@@ -26136,7 +26196,7 @@ var SelectTrigger2 = React372.forwardRef(({ className, children, ...props }, ref
|
|
|
26136
26196
|
]
|
|
26137
26197
|
}));
|
|
26138
26198
|
SelectTrigger2.displayName = Trigger.displayName;
|
|
26139
|
-
var SelectScrollUpButton2 =
|
|
26199
|
+
var SelectScrollUpButton2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx252(ScrollUpButton, {
|
|
26140
26200
|
ref,
|
|
26141
26201
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
26142
26202
|
...props,
|
|
@@ -26145,7 +26205,7 @@ var SelectScrollUpButton2 = React372.forwardRef(({ className, ...props }, ref) =
|
|
|
26145
26205
|
})
|
|
26146
26206
|
}));
|
|
26147
26207
|
SelectScrollUpButton2.displayName = ScrollUpButton.displayName;
|
|
26148
|
-
var SelectScrollDownButton2 =
|
|
26208
|
+
var SelectScrollDownButton2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx252(ScrollDownButton, {
|
|
26149
26209
|
ref,
|
|
26150
26210
|
className: cn("flex cursor-default items-center justify-center py-1", className),
|
|
26151
26211
|
...props,
|
|
@@ -26154,7 +26214,7 @@ var SelectScrollDownButton2 = React372.forwardRef(({ className, ...props }, ref)
|
|
|
26154
26214
|
})
|
|
26155
26215
|
}));
|
|
26156
26216
|
SelectScrollDownButton2.displayName = ScrollDownButton.displayName;
|
|
26157
|
-
var SelectContent2 =
|
|
26217
|
+
var SelectContent2 = React37.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx252(Portal2, {
|
|
26158
26218
|
children: /* @__PURE__ */ jsxs5(Content2, {
|
|
26159
26219
|
ref,
|
|
26160
26220
|
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),
|
|
@@ -26171,13 +26231,13 @@ var SelectContent2 = React372.forwardRef(({ className, children, position = "pop
|
|
|
26171
26231
|
})
|
|
26172
26232
|
}));
|
|
26173
26233
|
SelectContent2.displayName = Content2.displayName;
|
|
26174
|
-
var SelectLabel2 =
|
|
26234
|
+
var SelectLabel2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx252(Label, {
|
|
26175
26235
|
ref,
|
|
26176
26236
|
className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className),
|
|
26177
26237
|
...props
|
|
26178
26238
|
}));
|
|
26179
26239
|
SelectLabel2.displayName = Label.displayName;
|
|
26180
|
-
var SelectItem2 =
|
|
26240
|
+
var SelectItem2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs5(Item, {
|
|
26181
26241
|
ref,
|
|
26182
26242
|
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),
|
|
26183
26243
|
...props,
|
|
@@ -26196,7 +26256,7 @@ var SelectItem2 = React372.forwardRef(({ className, children, ...props }, ref) =
|
|
|
26196
26256
|
]
|
|
26197
26257
|
}));
|
|
26198
26258
|
SelectItem2.displayName = Item.displayName;
|
|
26199
|
-
var SelectSeparator2 =
|
|
26259
|
+
var SelectSeparator2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx252(Separator, {
|
|
26200
26260
|
ref,
|
|
26201
26261
|
className: cn("-mx-1 my-1 h-px bg-muted", className),
|
|
26202
26262
|
...props
|
|
@@ -26229,19 +26289,19 @@ function composeEventHandlers2(originalEventHandler, ourEventHandler, { checkFor
|
|
|
26229
26289
|
function createContextScope2(scopeName, createContextScopeDeps = []) {
|
|
26230
26290
|
let defaultContexts = [];
|
|
26231
26291
|
function createContext32(rootComponentName, defaultContext) {
|
|
26232
|
-
const BaseContext =
|
|
26292
|
+
const BaseContext = React382.createContext(defaultContext);
|
|
26233
26293
|
const index2 = defaultContexts.length;
|
|
26234
26294
|
defaultContexts = [...defaultContexts, defaultContext];
|
|
26235
26295
|
const Provider = (props) => {
|
|
26236
26296
|
const { scope, children, ...context } = props;
|
|
26237
26297
|
const Context = scope?.[scopeName]?.[index2] || BaseContext;
|
|
26238
|
-
const value =
|
|
26298
|
+
const value = React382.useMemo(() => context, Object.values(context));
|
|
26239
26299
|
return /* @__PURE__ */ jsx272(Context.Provider, { value, children });
|
|
26240
26300
|
};
|
|
26241
26301
|
Provider.displayName = rootComponentName + "Provider";
|
|
26242
26302
|
function useContext222(consumerName, scope) {
|
|
26243
26303
|
const Context = scope?.[scopeName]?.[index2] || BaseContext;
|
|
26244
|
-
const context =
|
|
26304
|
+
const context = React382.useContext(Context);
|
|
26245
26305
|
if (context)
|
|
26246
26306
|
return context;
|
|
26247
26307
|
if (defaultContext !== undefined)
|
|
@@ -26252,11 +26312,11 @@ function createContextScope2(scopeName, createContextScopeDeps = []) {
|
|
|
26252
26312
|
}
|
|
26253
26313
|
const createScope = () => {
|
|
26254
26314
|
const scopeContexts = defaultContexts.map((defaultContext) => {
|
|
26255
|
-
return
|
|
26315
|
+
return React382.createContext(defaultContext);
|
|
26256
26316
|
});
|
|
26257
26317
|
return function useScope(scope) {
|
|
26258
26318
|
const contexts = scope?.[scopeName] || scopeContexts;
|
|
26259
|
-
return
|
|
26319
|
+
return React382.useMemo(() => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }), [scope, contexts]);
|
|
26260
26320
|
};
|
|
26261
26321
|
};
|
|
26262
26322
|
createScope.scopeName = scopeName;
|
|
@@ -26277,7 +26337,7 @@ function composeContextScopes2(...scopes) {
|
|
|
26277
26337
|
const currentScope = scopeProps[`__scope${scopeName}`];
|
|
26278
26338
|
return { ...nextScopes2, ...currentScope };
|
|
26279
26339
|
}, {});
|
|
26280
|
-
return
|
|
26340
|
+
return React382.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
|
|
26281
26341
|
};
|
|
26282
26342
|
};
|
|
26283
26343
|
createScope.scopeName = baseScope.scopeName;
|
|
@@ -26285,22 +26345,22 @@ function composeContextScopes2(...scopes) {
|
|
|
26285
26345
|
}
|
|
26286
26346
|
function createSlot2(ownerName) {
|
|
26287
26347
|
const SlotClone2 = /* @__PURE__ */ createSlotClone2(ownerName);
|
|
26288
|
-
const Slot22 =
|
|
26348
|
+
const Slot22 = React39.forwardRef((props, forwardedRef) => {
|
|
26289
26349
|
const { children, ...slotProps } = props;
|
|
26290
|
-
const childrenArray =
|
|
26350
|
+
const childrenArray = React39.Children.toArray(children);
|
|
26291
26351
|
const slottable = childrenArray.find(isSlottable3);
|
|
26292
26352
|
if (slottable) {
|
|
26293
26353
|
const newElement = slottable.props.children;
|
|
26294
26354
|
const newChildren = childrenArray.map((child) => {
|
|
26295
26355
|
if (child === slottable) {
|
|
26296
|
-
if (
|
|
26297
|
-
return
|
|
26298
|
-
return
|
|
26356
|
+
if (React39.Children.count(newElement) > 1)
|
|
26357
|
+
return React39.Children.only(null);
|
|
26358
|
+
return React39.isValidElement(newElement) ? newElement.props.children : null;
|
|
26299
26359
|
} else {
|
|
26300
26360
|
return child;
|
|
26301
26361
|
}
|
|
26302
26362
|
});
|
|
26303
|
-
return /* @__PURE__ */ jsx282(SlotClone2, { ...slotProps, ref: forwardedRef, children:
|
|
26363
|
+
return /* @__PURE__ */ jsx282(SlotClone2, { ...slotProps, ref: forwardedRef, children: React39.isValidElement(newElement) ? React39.cloneElement(newElement, undefined, newChildren) : null });
|
|
26304
26364
|
}
|
|
26305
26365
|
return /* @__PURE__ */ jsx282(SlotClone2, { ...slotProps, ref: forwardedRef, children });
|
|
26306
26366
|
});
|
|
@@ -26308,24 +26368,24 @@ function createSlot2(ownerName) {
|
|
|
26308
26368
|
return Slot22;
|
|
26309
26369
|
}
|
|
26310
26370
|
function createSlotClone2(ownerName) {
|
|
26311
|
-
const SlotClone2 =
|
|
26371
|
+
const SlotClone2 = React39.forwardRef((props, forwardedRef) => {
|
|
26312
26372
|
const { children, ...slotProps } = props;
|
|
26313
|
-
if (
|
|
26373
|
+
if (React39.isValidElement(children)) {
|
|
26314
26374
|
const childrenRef = getElementRef3(children);
|
|
26315
26375
|
const props2 = mergeProps3(slotProps, children.props);
|
|
26316
|
-
if (children.type !==
|
|
26376
|
+
if (children.type !== React39.Fragment) {
|
|
26317
26377
|
props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;
|
|
26318
26378
|
}
|
|
26319
|
-
return
|
|
26379
|
+
return React39.cloneElement(children, props2);
|
|
26320
26380
|
}
|
|
26321
|
-
return
|
|
26381
|
+
return React39.Children.count(children) > 1 ? React39.Children.only(null) : null;
|
|
26322
26382
|
});
|
|
26323
26383
|
SlotClone2.displayName = `${ownerName}.SlotClone`;
|
|
26324
26384
|
return SlotClone2;
|
|
26325
26385
|
}
|
|
26326
26386
|
var SLOTTABLE_IDENTIFIER2 = Symbol("radix.slottable");
|
|
26327
26387
|
function isSlottable3(child) {
|
|
26328
|
-
return
|
|
26388
|
+
return React39.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER2;
|
|
26329
26389
|
}
|
|
26330
26390
|
function mergeProps3(slotProps, childProps) {
|
|
26331
26391
|
const overrideProps = { ...childProps };
|
|
@@ -26753,7 +26813,7 @@ var NODES2 = [
|
|
|
26753
26813
|
];
|
|
26754
26814
|
var Primitive2 = NODES2.reduce((primitive, node) => {
|
|
26755
26815
|
const Slot3 = createSlot2(`Primitive.${node}`);
|
|
26756
|
-
const Node2 =
|
|
26816
|
+
const Node2 = React432.forwardRef((props, forwardedRef) => {
|
|
26757
26817
|
const { asChild, ...primitiveProps } = props;
|
|
26758
26818
|
const Comp = asChild ? Slot3 : node;
|
|
26759
26819
|
if (typeof window !== "undefined") {
|
|
@@ -40740,6 +40800,12 @@ var AudioForRendering2 = ({
|
|
|
40740
40800
|
};
|
|
40741
40801
|
var { validateMediaProps: validateMediaProps2 } = Internals;
|
|
40742
40802
|
var audioSchema = {
|
|
40803
|
+
src: {
|
|
40804
|
+
type: "asset",
|
|
40805
|
+
default: undefined,
|
|
40806
|
+
description: "Source",
|
|
40807
|
+
keyframable: false
|
|
40808
|
+
},
|
|
40743
40809
|
...Internals.baseSchema,
|
|
40744
40810
|
volume: {
|
|
40745
40811
|
type: "number",
|
|
@@ -40850,6 +40916,24 @@ var Audio2 = Interactive.withSchema({
|
|
|
40850
40916
|
schema: audioSchema,
|
|
40851
40917
|
supportsEffects: false
|
|
40852
40918
|
});
|
|
40919
|
+
var getVideoSequenceDuration = ({
|
|
40920
|
+
durationInFrames,
|
|
40921
|
+
loop,
|
|
40922
|
+
playbackRate,
|
|
40923
|
+
trimAfter,
|
|
40924
|
+
trimBefore
|
|
40925
|
+
}) => {
|
|
40926
|
+
if (loop || trimAfter === undefined) {
|
|
40927
|
+
return durationInFrames;
|
|
40928
|
+
}
|
|
40929
|
+
const trimmedDuration = Internals.calculateMediaDuration({
|
|
40930
|
+
trimAfter,
|
|
40931
|
+
trimBefore,
|
|
40932
|
+
playbackRate,
|
|
40933
|
+
mediaDurationInFrames: Infinity
|
|
40934
|
+
});
|
|
40935
|
+
return Math.min(durationInFrames ?? Infinity, trimmedDuration);
|
|
40936
|
+
};
|
|
40853
40937
|
var PRORES_DOCS_URL = "https://www.remotion.dev/docs/videos/prores";
|
|
40854
40938
|
var proresDecoderNotEnabledMessage = (src) => {
|
|
40855
40939
|
return `Cannot decode "${src}": it is encoded with Apple ProRes, which WebCodecs does not support natively. ` + `ProRes decoding is not enabled by default. Register the ProRes decoder by calling ` + `registerProresDecoder() from "@mediabunny/prores" in your entry point, before registerRoot(). ` + `See ${PRORES_DOCS_URL}. ` + `(This is required to decode a ProRes source for both preview and rendering — it is unrelated to exporting a video as ProRes.)`;
|
|
@@ -41624,6 +41708,12 @@ var VideoForRendering2 = ({
|
|
|
41624
41708
|
};
|
|
41625
41709
|
var { validateMediaTrimProps: validateMediaTrimProps2, resolveTrimProps: resolveTrimProps2, validateMediaProps: validateMediaProps22 } = Internals;
|
|
41626
41710
|
var videoSchema = {
|
|
41711
|
+
src: {
|
|
41712
|
+
type: "asset",
|
|
41713
|
+
default: undefined,
|
|
41714
|
+
description: "Source",
|
|
41715
|
+
keyframable: false
|
|
41716
|
+
},
|
|
41627
41717
|
...Internals.baseSchema,
|
|
41628
41718
|
volume: {
|
|
41629
41719
|
type: "number",
|
|
@@ -41643,6 +41733,7 @@ var videoSchema = {
|
|
|
41643
41733
|
hiddenFromList: false,
|
|
41644
41734
|
keyframable: false
|
|
41645
41735
|
},
|
|
41736
|
+
muted: { type: "boolean", default: false, description: "Muted" },
|
|
41646
41737
|
loop: { type: "boolean", default: false, description: "Loop" },
|
|
41647
41738
|
...Internals.transformSchema
|
|
41648
41739
|
};
|
|
@@ -41801,6 +41892,13 @@ var VideoInner = ({
|
|
|
41801
41892
|
const mediaStartsAt = Internals.useMediaStartsAt();
|
|
41802
41893
|
const videoConfig = useVideoConfig();
|
|
41803
41894
|
const sequenceDurationInFrames = Math.min(durationInFrames ?? Infinity, Math.max(0, videoConfig.durationInFrames - (from ?? 0)));
|
|
41895
|
+
const videoSequenceDuration = getVideoSequenceDuration({
|
|
41896
|
+
durationInFrames,
|
|
41897
|
+
loop: loop ?? false,
|
|
41898
|
+
playbackRate: playbackRate ?? 1,
|
|
41899
|
+
trimAfter,
|
|
41900
|
+
trimBefore
|
|
41901
|
+
});
|
|
41804
41902
|
const basicInfo = Internals.useBasicMediaInTimeline({
|
|
41805
41903
|
src,
|
|
41806
41904
|
volume,
|
|
@@ -41848,7 +41946,7 @@ var VideoInner = ({
|
|
|
41848
41946
|
return /* @__PURE__ */ jsx65(Sequence, {
|
|
41849
41947
|
layout: "none",
|
|
41850
41948
|
from: from ?? 0,
|
|
41851
|
-
durationInFrames:
|
|
41949
|
+
durationInFrames: videoSequenceDuration,
|
|
41852
41950
|
freeze,
|
|
41853
41951
|
_remotionInternalStack: stack,
|
|
41854
41952
|
_remotionInternalIsMedia: isMedia,
|
|
@@ -43210,7 +43308,7 @@ import {
|
|
|
43210
43308
|
import { BufferTarget, StreamTarget } from "mediabunny";
|
|
43211
43309
|
|
|
43212
43310
|
// ../core/dist/esm/version.mjs
|
|
43213
|
-
var VERSION2 = "4.0.
|
|
43311
|
+
var VERSION2 = "4.0.493";
|
|
43214
43312
|
|
|
43215
43313
|
// ../web-renderer/dist/esm/index.mjs
|
|
43216
43314
|
import { AudioSample, VideoSample } from "mediabunny";
|