@weaverse/react 1.0.10 → 1.0.11
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/index.d.ts +5 -0
- package/dist/index.js +72 -51
- package/dist/index.mjs +54 -33
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -158,6 +158,10 @@ declare function Dots(props: SliderDotsProps): JSX.Element;
|
|
|
158
158
|
|
|
159
159
|
declare function AutoplayPlugin(changeSlidesEvery: number): KeenSliderPlugin;
|
|
160
160
|
|
|
161
|
+
declare function NoHydrate({ getHTML, ...rest }: {
|
|
162
|
+
getHTML?: () => string;
|
|
163
|
+
} & JSX.IntrinsicElements['div']): JSX.Element;
|
|
164
|
+
|
|
161
165
|
declare let Components: {
|
|
162
166
|
Background: typeof Background;
|
|
163
167
|
Icon: typeof Icon;
|
|
@@ -167,6 +171,7 @@ declare let Components: {
|
|
|
167
171
|
Spinner: typeof Spinner;
|
|
168
172
|
Slider: typeof Slider;
|
|
169
173
|
Tooltip: typeof Tooltip;
|
|
174
|
+
NoHydrate: typeof NoHydrate;
|
|
170
175
|
};
|
|
171
176
|
declare let SliderComponents: {
|
|
172
177
|
Arrows: typeof Arrows;
|
package/dist/index.js
CHANGED
|
@@ -45,7 +45,7 @@ __reExport(src_exports, require("@weaverse/core"), module.exports);
|
|
|
45
45
|
|
|
46
46
|
// src/context.ts
|
|
47
47
|
var import_core2 = require("@weaverse/core");
|
|
48
|
-
var
|
|
48
|
+
var import_react37 = require("react");
|
|
49
49
|
|
|
50
50
|
// src/elements/button.tsx
|
|
51
51
|
var React = __toESM(require("react"));
|
|
@@ -694,7 +694,7 @@ Video.defaultProps = {
|
|
|
694
694
|
var video_default = Video;
|
|
695
695
|
|
|
696
696
|
// src/elements/instagram.tsx
|
|
697
|
-
var
|
|
697
|
+
var import_react31 = __toESM(require("react"));
|
|
698
698
|
|
|
699
699
|
// src/components/modal/index.tsx
|
|
700
700
|
var modal_exports = {};
|
|
@@ -1936,6 +1936,25 @@ var Placeholder = (0, import_react29.forwardRef)(
|
|
|
1936
1936
|
);
|
|
1937
1937
|
var placeholder_default = Placeholder;
|
|
1938
1938
|
|
|
1939
|
+
// src/components/no-hydrate.tsx
|
|
1940
|
+
var import_react30 = __toESM(require("react"));
|
|
1941
|
+
function NoHydrate({
|
|
1942
|
+
getHTML,
|
|
1943
|
+
...rest
|
|
1944
|
+
}) {
|
|
1945
|
+
let id = (0, import_react30.useId)();
|
|
1946
|
+
let [html] = (0, import_react30.useState)(() => {
|
|
1947
|
+
if (typeof document === "undefined") {
|
|
1948
|
+
return getHTML?.() ?? "";
|
|
1949
|
+
}
|
|
1950
|
+
let el = document.getElementById(id);
|
|
1951
|
+
if (!el)
|
|
1952
|
+
return getHTML?.() ?? "";
|
|
1953
|
+
return el.innerHTML;
|
|
1954
|
+
});
|
|
1955
|
+
return /* @__PURE__ */ import_react30.default.createElement("div", { ...rest, id, dangerouslySetInnerHTML: { __html: html } });
|
|
1956
|
+
}
|
|
1957
|
+
|
|
1939
1958
|
// src/components/index.ts
|
|
1940
1959
|
var Components = {
|
|
1941
1960
|
Background,
|
|
@@ -1945,7 +1964,8 @@ var Components = {
|
|
|
1945
1964
|
Placeholder: placeholder_default,
|
|
1946
1965
|
Spinner,
|
|
1947
1966
|
Slider,
|
|
1948
|
-
Tooltip
|
|
1967
|
+
Tooltip,
|
|
1968
|
+
NoHydrate
|
|
1949
1969
|
};
|
|
1950
1970
|
var SliderComponents = {
|
|
1951
1971
|
Arrows,
|
|
@@ -1955,12 +1975,12 @@ var SliderComponents = {
|
|
|
1955
1975
|
};
|
|
1956
1976
|
|
|
1957
1977
|
// src/elements/instagram.tsx
|
|
1958
|
-
var Instagram = (0,
|
|
1978
|
+
var Instagram = (0, import_react31.forwardRef)(
|
|
1959
1979
|
(props, ref) => {
|
|
1960
1980
|
let { token, username, numberOfImages, imagesPerRow, gap, ...rest } = props;
|
|
1961
|
-
let [media, setMedia] = (0,
|
|
1962
|
-
let [error, setError] = (0,
|
|
1963
|
-
(0,
|
|
1981
|
+
let [media, setMedia] = (0, import_react31.useState)([]);
|
|
1982
|
+
let [error, setError] = (0, import_react31.useState)(null);
|
|
1983
|
+
(0, import_react31.useEffect)(() => {
|
|
1964
1984
|
if (token) {
|
|
1965
1985
|
let params = new URLSearchParams({
|
|
1966
1986
|
access_token: token,
|
|
@@ -1977,13 +1997,13 @@ var Instagram = (0, import_react30.forwardRef)(
|
|
|
1977
1997
|
}
|
|
1978
1998
|
}, [token]);
|
|
1979
1999
|
if (!token || error) {
|
|
1980
|
-
return /* @__PURE__ */
|
|
2000
|
+
return /* @__PURE__ */ import_react31.default.createElement("div", { ref, ...rest }, /* @__PURE__ */ import_react31.default.createElement(Components.Placeholder, { element: "Instagram" }, !token ? "Connect to Instagram to display photos on your site." : "Invalid or expired token!"));
|
|
1981
2001
|
}
|
|
1982
2002
|
let style = {
|
|
1983
2003
|
"--wv-ig-images-per-row": imagesPerRow,
|
|
1984
2004
|
"--wv-ig-images-gap": gap + "px"
|
|
1985
2005
|
};
|
|
1986
|
-
return /* @__PURE__ */
|
|
2006
|
+
return /* @__PURE__ */ import_react31.default.createElement("div", { ref, ...rest, style }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "wv-ig-media-container" }, media.slice(0, numberOfImages).map((item) => {
|
|
1987
2007
|
let {
|
|
1988
2008
|
id,
|
|
1989
2009
|
permalink,
|
|
@@ -1993,9 +2013,9 @@ var Instagram = (0, import_react30.forwardRef)(
|
|
|
1993
2013
|
thumbnail_url
|
|
1994
2014
|
} = item;
|
|
1995
2015
|
if (media_type === "VIDEO") {
|
|
1996
|
-
return /* @__PURE__ */
|
|
2016
|
+
return /* @__PURE__ */ import_react31.default.createElement("video", { key: id, controls: true, poster: thumbnail_url }, /* @__PURE__ */ import_react31.default.createElement("source", { src: media_url, type: "video/mp4" }));
|
|
1997
2017
|
}
|
|
1998
|
-
return /* @__PURE__ */
|
|
2018
|
+
return /* @__PURE__ */ import_react31.default.createElement("a", { key: id, href: permalink, target: "_blank", rel: "noreferrer" }, /* @__PURE__ */ import_react31.default.createElement("img", { alt: caption, src: media_url }));
|
|
1999
2019
|
})));
|
|
2000
2020
|
}
|
|
2001
2021
|
);
|
|
@@ -2062,13 +2082,13 @@ Instagram.defaultProps = {
|
|
|
2062
2082
|
var instagram_default = Instagram;
|
|
2063
2083
|
|
|
2064
2084
|
// src/elements/slideshow/index.tsx
|
|
2065
|
-
var
|
|
2085
|
+
var import_react34 = require("@stitches/react");
|
|
2066
2086
|
var import_clsx6 = __toESM(require("clsx"));
|
|
2067
|
-
var
|
|
2087
|
+
var import_react35 = __toESM(require("react"));
|
|
2068
2088
|
|
|
2069
2089
|
// src/elements/slideshow/use-slideshow-configs.ts
|
|
2070
|
-
var
|
|
2071
|
-
var
|
|
2090
|
+
var import_react32 = require("keen-slider/react");
|
|
2091
|
+
var import_react33 = __toESM(require("react"));
|
|
2072
2092
|
|
|
2073
2093
|
// src/utils/css.ts
|
|
2074
2094
|
var import_clsx5 = __toESM(require("clsx"));
|
|
@@ -2128,19 +2148,19 @@ function useSlideshowConfigs(props) {
|
|
|
2128
2148
|
changeSlidesEvery,
|
|
2129
2149
|
children
|
|
2130
2150
|
} = props;
|
|
2131
|
-
let { isDesignMode, isPreviewMode } = (0,
|
|
2132
|
-
let [opacities, setOpacities] =
|
|
2133
|
-
let [cssLoaded, setCssLoaded] = (0,
|
|
2134
|
-
let [created, setCreated] = (0,
|
|
2135
|
-
let [ready, setReady] = (0,
|
|
2136
|
-
let [currentSlide, setCurrentSlide] = (0,
|
|
2151
|
+
let { isDesignMode, isPreviewMode } = (0, import_react33.useContext)(WeaverseContext);
|
|
2152
|
+
let [opacities, setOpacities] = import_react33.default.useState([]);
|
|
2153
|
+
let [cssLoaded, setCssLoaded] = (0, import_react33.useState)(false);
|
|
2154
|
+
let [created, setCreated] = (0, import_react33.useState)(false);
|
|
2155
|
+
let [ready, setReady] = (0, import_react33.useState)(false);
|
|
2156
|
+
let [currentSlide, setCurrentSlide] = (0, import_react33.useState)(0);
|
|
2137
2157
|
let sliderPlugins = [ResizePlugin];
|
|
2138
2158
|
if (autoRotate && (isPreviewMode || !isDesignMode)) {
|
|
2139
2159
|
sliderPlugins.push(AutoplayPlugin(changeSlidesEvery));
|
|
2140
2160
|
}
|
|
2141
|
-
let [sliderRef, instanceRef] = (0,
|
|
2161
|
+
let [sliderRef, instanceRef] = (0, import_react32.useKeenSlider)(
|
|
2142
2162
|
{
|
|
2143
|
-
slides: animation === "fade" ?
|
|
2163
|
+
slides: animation === "fade" ? import_react33.default.Children.count(children) : { perView: slidesPerView, number: import_react33.default.Children.count(children) },
|
|
2144
2164
|
drag: isPreviewMode || !isDesignMode,
|
|
2145
2165
|
loop,
|
|
2146
2166
|
selector: animation === "fade" ? null : ".keen-slider__slide",
|
|
@@ -2170,13 +2190,13 @@ function useSlideshowConfigs(props) {
|
|
|
2170
2190
|
},
|
|
2171
2191
|
sliderPlugins
|
|
2172
2192
|
);
|
|
2173
|
-
(0,
|
|
2193
|
+
(0, import_react33.useEffect)(() => {
|
|
2174
2194
|
loadCSS({
|
|
2175
2195
|
rel: "stylesheet",
|
|
2176
2196
|
href: "https://cdn.jsdelivr.net/npm/keen-slider@latest/keen-slider.min.css"
|
|
2177
2197
|
}).then(() => setCssLoaded(true));
|
|
2178
2198
|
}, []);
|
|
2179
|
-
(0,
|
|
2199
|
+
(0, import_react33.useEffect)(() => {
|
|
2180
2200
|
if (created && cssLoaded) {
|
|
2181
2201
|
setReady(true);
|
|
2182
2202
|
}
|
|
@@ -2192,7 +2212,7 @@ function useSlideshowConfigs(props) {
|
|
|
2192
2212
|
}
|
|
2193
2213
|
|
|
2194
2214
|
// src/elements/slideshow/index.tsx
|
|
2195
|
-
var Slideshow = (0,
|
|
2215
|
+
var Slideshow = (0, import_react35.forwardRef)((props, ref) => {
|
|
2196
2216
|
let {
|
|
2197
2217
|
animation,
|
|
2198
2218
|
showArrows,
|
|
@@ -2211,7 +2231,7 @@ var Slideshow = (0, import_react34.forwardRef)((props, ref) => {
|
|
|
2211
2231
|
};
|
|
2212
2232
|
let faderClass = "";
|
|
2213
2233
|
if (animation === "fade") {
|
|
2214
|
-
faderClass = (0,
|
|
2234
|
+
faderClass = (0, import_react34.css)({
|
|
2215
2235
|
".keen-slider__slide": opacities.reduce((acc, opacity, index) => {
|
|
2216
2236
|
acc[`&:nth-child(${index + 1})`] = {
|
|
2217
2237
|
opacity
|
|
@@ -2229,7 +2249,7 @@ var Slideshow = (0, import_react34.forwardRef)((props, ref) => {
|
|
|
2229
2249
|
showArrowsOnHover && "show-on-hover",
|
|
2230
2250
|
`arrows--${arrowsColor}`
|
|
2231
2251
|
);
|
|
2232
|
-
return /* @__PURE__ */
|
|
2252
|
+
return /* @__PURE__ */ import_react35.default.createElement("div", { ref, style, ...rest }, /* @__PURE__ */ import_react35.default.createElement("div", { ref: sliderRef, className: _className }, children), showArrows && created && instanceRef?.current && /* @__PURE__ */ import_react35.default.createElement(
|
|
2233
2253
|
Arrows,
|
|
2234
2254
|
{
|
|
2235
2255
|
instanceRef,
|
|
@@ -2238,7 +2258,7 @@ var Slideshow = (0, import_react34.forwardRef)((props, ref) => {
|
|
|
2238
2258
|
icon: arrowIcon,
|
|
2239
2259
|
offset: 20
|
|
2240
2260
|
}
|
|
2241
|
-
), showDots && created && instanceRef?.current && /* @__PURE__ */
|
|
2261
|
+
), showDots && created && instanceRef?.current && /* @__PURE__ */ import_react35.default.createElement(
|
|
2242
2262
|
Dots,
|
|
2243
2263
|
{
|
|
2244
2264
|
instanceRef,
|
|
@@ -2319,7 +2339,7 @@ Slideshow.defaultProps = {
|
|
|
2319
2339
|
var slideshow_default = Slideshow;
|
|
2320
2340
|
|
|
2321
2341
|
// src/elements/slideshow/slide.tsx
|
|
2322
|
-
var
|
|
2342
|
+
var import_react36 = __toESM(require("react"));
|
|
2323
2343
|
|
|
2324
2344
|
// src/elements/slideshow/position.ts
|
|
2325
2345
|
var slidePositionMap = {
|
|
@@ -2362,7 +2382,7 @@ var slidePositionMap = {
|
|
|
2362
2382
|
};
|
|
2363
2383
|
|
|
2364
2384
|
// src/elements/slideshow/slide.tsx
|
|
2365
|
-
var Slide = (0,
|
|
2385
|
+
var Slide = (0, import_react36.forwardRef)((props, ref) => {
|
|
2366
2386
|
let {
|
|
2367
2387
|
contentPosition,
|
|
2368
2388
|
backgroundColor,
|
|
@@ -2374,7 +2394,7 @@ var Slide = (0, import_react35.forwardRef)((props, ref) => {
|
|
|
2374
2394
|
children,
|
|
2375
2395
|
...rest
|
|
2376
2396
|
} = props;
|
|
2377
|
-
return /* @__PURE__ */
|
|
2397
|
+
return /* @__PURE__ */ import_react36.default.createElement("div", { className: "keen-slider__slide" }, /* @__PURE__ */ import_react36.default.createElement(
|
|
2378
2398
|
Background,
|
|
2379
2399
|
{
|
|
2380
2400
|
backgroundColor,
|
|
@@ -2383,14 +2403,14 @@ var Slide = (0, import_react35.forwardRef)((props, ref) => {
|
|
|
2383
2403
|
backgroundPosition,
|
|
2384
2404
|
className: "slide-background"
|
|
2385
2405
|
}
|
|
2386
|
-
), /* @__PURE__ */
|
|
2406
|
+
), /* @__PURE__ */ import_react36.default.createElement(
|
|
2387
2407
|
Overlay,
|
|
2388
2408
|
{
|
|
2389
2409
|
enableOverlay,
|
|
2390
2410
|
overlayOpacity,
|
|
2391
2411
|
className: "slide-overlay"
|
|
2392
2412
|
}
|
|
2393
|
-
), /* @__PURE__ */
|
|
2413
|
+
), /* @__PURE__ */ import_react36.default.createElement("div", { ref, style: slidePositionMap[contentPosition], ...rest }, children?.length ? children : /* @__PURE__ */ import_react36.default.createElement(placeholder_default, { element: "Slide", className: "wv-slide-placeholder" }, "Drag and drop elements here")));
|
|
2394
2414
|
});
|
|
2395
2415
|
var css12 = {
|
|
2396
2416
|
"@desktop": {
|
|
@@ -2520,18 +2540,18 @@ var createRootContext = (configs) => {
|
|
|
2520
2540
|
});
|
|
2521
2541
|
return rootContext;
|
|
2522
2542
|
};
|
|
2523
|
-
var WeaverseContext = (0,
|
|
2543
|
+
var WeaverseContext = (0, import_react37.createContext)({});
|
|
2524
2544
|
var WeaverseContextProvider = WeaverseContext.Provider;
|
|
2525
2545
|
var WeaverseContextConsumer = WeaverseContext.Consumer;
|
|
2526
2546
|
|
|
2527
2547
|
// src/renderer.tsx
|
|
2528
2548
|
var import_core3 = require("@weaverse/core");
|
|
2529
|
-
var
|
|
2549
|
+
var import_react38 = __toESM(require("react"));
|
|
2530
2550
|
var WeaverseRoot = ({ context }) => {
|
|
2531
|
-
let [, setData] = (0,
|
|
2532
|
-
let rootRef = (0,
|
|
2551
|
+
let [, setData] = (0, import_react38.useState)(context.data);
|
|
2552
|
+
let rootRef = (0, import_react38.useRef)();
|
|
2533
2553
|
let renderRoot = () => setData({});
|
|
2534
|
-
(0,
|
|
2554
|
+
(0, import_react38.useEffect)(() => {
|
|
2535
2555
|
context.subscribe(renderRoot);
|
|
2536
2556
|
context.contentRootElement = rootRef.current;
|
|
2537
2557
|
initUploadCareAdaptiveDelivery(context.weaverseHost);
|
|
@@ -2542,24 +2562,25 @@ var WeaverseRoot = ({ context }) => {
|
|
|
2542
2562
|
let eventHandlers = context?.studioBridge?.eventHandlers || {};
|
|
2543
2563
|
let themeClass = context.stitchesInstance.theme.className;
|
|
2544
2564
|
if (context.data?.rootId) {
|
|
2545
|
-
return /* @__PURE__ */
|
|
2565
|
+
return /* @__PURE__ */ import_react38.default.createElement(
|
|
2546
2566
|
"div",
|
|
2547
2567
|
{
|
|
2548
2568
|
className: `weaverse-content-root ${themeClass}`,
|
|
2549
2569
|
...eventHandlers,
|
|
2570
|
+
suppressHydrationWarning: true,
|
|
2550
2571
|
ref: rootRef
|
|
2551
2572
|
},
|
|
2552
|
-
/* @__PURE__ */
|
|
2553
|
-
context.platformType === "react-ssr" ? /* @__PURE__ */
|
|
2573
|
+
/* @__PURE__ */ import_react38.default.createElement(WeaverseContextProvider, { value: context }, /* @__PURE__ */ import_react38.default.createElement(ItemInstance, { id: context.data.rootId })),
|
|
2574
|
+
context.platformType === "react-ssr" ? /* @__PURE__ */ import_react38.default.createElement(StitchesSSR, { stitchesInstance: context.stitchesInstance }) : null
|
|
2554
2575
|
);
|
|
2555
2576
|
}
|
|
2556
2577
|
return null;
|
|
2557
2578
|
};
|
|
2558
2579
|
var ItemComponent = ({ instance }) => {
|
|
2559
|
-
let { stitchesInstance, elementInstances } = (0,
|
|
2560
|
-
let [data, setData] = (0,
|
|
2580
|
+
let { stitchesInstance, elementInstances } = (0, import_react38.useContext)(WeaverseContext);
|
|
2581
|
+
let [data, setData] = (0, import_react38.useState)(instance.data);
|
|
2561
2582
|
let { id, type, childIds = [], css: css13, className, ...rest } = data;
|
|
2562
|
-
(0,
|
|
2583
|
+
(0, import_react38.useEffect)(() => {
|
|
2563
2584
|
let render = (data2) => setData({ ...data2 });
|
|
2564
2585
|
instance.subscribe(render);
|
|
2565
2586
|
if (import_core3.isBrowser && !instance.ref.current) {
|
|
@@ -2575,7 +2596,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2575
2596
|
if (Component.$$typeof === Symbol.for("react.forward_ref")) {
|
|
2576
2597
|
rest.ref = instance.ref;
|
|
2577
2598
|
}
|
|
2578
|
-
return /* @__PURE__ */
|
|
2599
|
+
return /* @__PURE__ */ import_react38.default.createElement(
|
|
2579
2600
|
Component,
|
|
2580
2601
|
{
|
|
2581
2602
|
key: id,
|
|
@@ -2584,7 +2605,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2584
2605
|
className: generateItemClassName(instance, stitchesInstance),
|
|
2585
2606
|
...rest
|
|
2586
2607
|
},
|
|
2587
|
-
childIds.map((id2) => /* @__PURE__ */
|
|
2608
|
+
childIds.map((id2) => /* @__PURE__ */ import_react38.default.createElement(ItemInstance, { key: id2, id: id2 }))
|
|
2588
2609
|
);
|
|
2589
2610
|
} else {
|
|
2590
2611
|
console.log(`Unknown element: ${type}`);
|
|
@@ -2593,7 +2614,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2593
2614
|
};
|
|
2594
2615
|
var StitchesSSR = ({ stitchesInstance }) => {
|
|
2595
2616
|
const stitchesCss2 = stitchesInstance.getCssText();
|
|
2596
|
-
return /* @__PURE__ */
|
|
2617
|
+
return /* @__PURE__ */ import_react38.default.createElement(
|
|
2597
2618
|
"style",
|
|
2598
2619
|
{
|
|
2599
2620
|
id: "stitches",
|
|
@@ -2604,13 +2625,13 @@ var StitchesSSR = ({ stitchesInstance }) => {
|
|
|
2604
2625
|
);
|
|
2605
2626
|
};
|
|
2606
2627
|
var ItemInstance = ({ id }) => {
|
|
2607
|
-
let context = (0,
|
|
2628
|
+
let context = (0, import_react38.useContext)(WeaverseContext);
|
|
2608
2629
|
let { itemInstances } = context;
|
|
2609
2630
|
let instance = itemInstances.get(id);
|
|
2610
2631
|
if (!instance) {
|
|
2611
|
-
return /* @__PURE__ */
|
|
2632
|
+
return /* @__PURE__ */ import_react38.default.createElement("div", { style: { display: "none" } }, "Item instance ", id, " not found");
|
|
2612
2633
|
}
|
|
2613
|
-
return /* @__PURE__ */
|
|
2634
|
+
return /* @__PURE__ */ import_react38.default.createElement(ItemComponent, { key: id, instance });
|
|
2614
2635
|
};
|
|
2615
2636
|
// Annotate the CommonJS export names for ESM import in node:
|
|
2616
2637
|
0 && (module.exports = {
|
package/dist/index.mjs
CHANGED
|
@@ -658,7 +658,7 @@ Video.defaultProps = {
|
|
|
658
658
|
var video_default = Video;
|
|
659
659
|
|
|
660
660
|
// src/elements/instagram.tsx
|
|
661
|
-
import
|
|
661
|
+
import React26, { forwardRef as forwardRef10, useEffect as useEffect3, useState as useState4 } from "react";
|
|
662
662
|
|
|
663
663
|
// src/components/modal/index.tsx
|
|
664
664
|
var modal_exports = {};
|
|
@@ -1900,6 +1900,25 @@ var Placeholder = forwardRef9(
|
|
|
1900
1900
|
);
|
|
1901
1901
|
var placeholder_default = Placeholder;
|
|
1902
1902
|
|
|
1903
|
+
// src/components/no-hydrate.tsx
|
|
1904
|
+
import React25, { useId, useState as useState3 } from "react";
|
|
1905
|
+
function NoHydrate({
|
|
1906
|
+
getHTML,
|
|
1907
|
+
...rest
|
|
1908
|
+
}) {
|
|
1909
|
+
let id = useId();
|
|
1910
|
+
let [html] = useState3(() => {
|
|
1911
|
+
if (typeof document === "undefined") {
|
|
1912
|
+
return getHTML?.() ?? "";
|
|
1913
|
+
}
|
|
1914
|
+
let el = document.getElementById(id);
|
|
1915
|
+
if (!el)
|
|
1916
|
+
return getHTML?.() ?? "";
|
|
1917
|
+
return el.innerHTML;
|
|
1918
|
+
});
|
|
1919
|
+
return /* @__PURE__ */ React25.createElement("div", { ...rest, id, dangerouslySetInnerHTML: { __html: html } });
|
|
1920
|
+
}
|
|
1921
|
+
|
|
1903
1922
|
// src/components/index.ts
|
|
1904
1923
|
var Components = {
|
|
1905
1924
|
Background,
|
|
@@ -1909,7 +1928,8 @@ var Components = {
|
|
|
1909
1928
|
Placeholder: placeholder_default,
|
|
1910
1929
|
Spinner,
|
|
1911
1930
|
Slider,
|
|
1912
|
-
Tooltip
|
|
1931
|
+
Tooltip,
|
|
1932
|
+
NoHydrate
|
|
1913
1933
|
};
|
|
1914
1934
|
var SliderComponents = {
|
|
1915
1935
|
Arrows,
|
|
@@ -1922,8 +1942,8 @@ var SliderComponents = {
|
|
|
1922
1942
|
var Instagram = forwardRef10(
|
|
1923
1943
|
(props, ref) => {
|
|
1924
1944
|
let { token, username, numberOfImages, imagesPerRow, gap, ...rest } = props;
|
|
1925
|
-
let [media, setMedia] =
|
|
1926
|
-
let [error, setError] =
|
|
1945
|
+
let [media, setMedia] = useState4([]);
|
|
1946
|
+
let [error, setError] = useState4(null);
|
|
1927
1947
|
useEffect3(() => {
|
|
1928
1948
|
if (token) {
|
|
1929
1949
|
let params = new URLSearchParams({
|
|
@@ -1941,13 +1961,13 @@ var Instagram = forwardRef10(
|
|
|
1941
1961
|
}
|
|
1942
1962
|
}, [token]);
|
|
1943
1963
|
if (!token || error) {
|
|
1944
|
-
return /* @__PURE__ */
|
|
1964
|
+
return /* @__PURE__ */ React26.createElement("div", { ref, ...rest }, /* @__PURE__ */ React26.createElement(Components.Placeholder, { element: "Instagram" }, !token ? "Connect to Instagram to display photos on your site." : "Invalid or expired token!"));
|
|
1945
1965
|
}
|
|
1946
1966
|
let style = {
|
|
1947
1967
|
"--wv-ig-images-per-row": imagesPerRow,
|
|
1948
1968
|
"--wv-ig-images-gap": gap + "px"
|
|
1949
1969
|
};
|
|
1950
|
-
return /* @__PURE__ */
|
|
1970
|
+
return /* @__PURE__ */ React26.createElement("div", { ref, ...rest, style }, /* @__PURE__ */ React26.createElement("div", { className: "wv-ig-media-container" }, media.slice(0, numberOfImages).map((item) => {
|
|
1951
1971
|
let {
|
|
1952
1972
|
id,
|
|
1953
1973
|
permalink,
|
|
@@ -1957,9 +1977,9 @@ var Instagram = forwardRef10(
|
|
|
1957
1977
|
thumbnail_url
|
|
1958
1978
|
} = item;
|
|
1959
1979
|
if (media_type === "VIDEO") {
|
|
1960
|
-
return /* @__PURE__ */
|
|
1980
|
+
return /* @__PURE__ */ React26.createElement("video", { key: id, controls: true, poster: thumbnail_url }, /* @__PURE__ */ React26.createElement("source", { src: media_url, type: "video/mp4" }));
|
|
1961
1981
|
}
|
|
1962
|
-
return /* @__PURE__ */
|
|
1982
|
+
return /* @__PURE__ */ React26.createElement("a", { key: id, href: permalink, target: "_blank", rel: "noreferrer" }, /* @__PURE__ */ React26.createElement("img", { alt: caption, src: media_url }));
|
|
1963
1983
|
})));
|
|
1964
1984
|
}
|
|
1965
1985
|
);
|
|
@@ -2028,11 +2048,11 @@ var instagram_default = Instagram;
|
|
|
2028
2048
|
// src/elements/slideshow/index.tsx
|
|
2029
2049
|
import { css as stitchesCss } from "@stitches/react";
|
|
2030
2050
|
import clsx6 from "clsx";
|
|
2031
|
-
import
|
|
2051
|
+
import React28, { forwardRef as forwardRef11 } from "react";
|
|
2032
2052
|
|
|
2033
2053
|
// src/elements/slideshow/use-slideshow-configs.ts
|
|
2034
2054
|
import { useKeenSlider as useKeenSlider2 } from "keen-slider/react";
|
|
2035
|
-
import
|
|
2055
|
+
import React27, { useContext as useContext5, useEffect as useEffect4, useState as useState5 } from "react";
|
|
2036
2056
|
|
|
2037
2057
|
// src/utils/css.ts
|
|
2038
2058
|
import clsx5 from "clsx";
|
|
@@ -2093,18 +2113,18 @@ function useSlideshowConfigs(props) {
|
|
|
2093
2113
|
children
|
|
2094
2114
|
} = props;
|
|
2095
2115
|
let { isDesignMode, isPreviewMode } = useContext5(WeaverseContext);
|
|
2096
|
-
let [opacities, setOpacities] =
|
|
2097
|
-
let [cssLoaded, setCssLoaded] =
|
|
2098
|
-
let [created, setCreated] =
|
|
2099
|
-
let [ready, setReady] =
|
|
2100
|
-
let [currentSlide, setCurrentSlide] =
|
|
2116
|
+
let [opacities, setOpacities] = React27.useState([]);
|
|
2117
|
+
let [cssLoaded, setCssLoaded] = useState5(false);
|
|
2118
|
+
let [created, setCreated] = useState5(false);
|
|
2119
|
+
let [ready, setReady] = useState5(false);
|
|
2120
|
+
let [currentSlide, setCurrentSlide] = useState5(0);
|
|
2101
2121
|
let sliderPlugins = [ResizePlugin];
|
|
2102
2122
|
if (autoRotate && (isPreviewMode || !isDesignMode)) {
|
|
2103
2123
|
sliderPlugins.push(AutoplayPlugin(changeSlidesEvery));
|
|
2104
2124
|
}
|
|
2105
2125
|
let [sliderRef, instanceRef] = useKeenSlider2(
|
|
2106
2126
|
{
|
|
2107
|
-
slides: animation === "fade" ?
|
|
2127
|
+
slides: animation === "fade" ? React27.Children.count(children) : { perView: slidesPerView, number: React27.Children.count(children) },
|
|
2108
2128
|
drag: isPreviewMode || !isDesignMode,
|
|
2109
2129
|
loop,
|
|
2110
2130
|
selector: animation === "fade" ? null : ".keen-slider__slide",
|
|
@@ -2193,7 +2213,7 @@ var Slideshow = forwardRef11((props, ref) => {
|
|
|
2193
2213
|
showArrowsOnHover && "show-on-hover",
|
|
2194
2214
|
`arrows--${arrowsColor}`
|
|
2195
2215
|
);
|
|
2196
|
-
return /* @__PURE__ */
|
|
2216
|
+
return /* @__PURE__ */ React28.createElement("div", { ref, style, ...rest }, /* @__PURE__ */ React28.createElement("div", { ref: sliderRef, className: _className }, children), showArrows && created && instanceRef?.current && /* @__PURE__ */ React28.createElement(
|
|
2197
2217
|
Arrows,
|
|
2198
2218
|
{
|
|
2199
2219
|
instanceRef,
|
|
@@ -2202,7 +2222,7 @@ var Slideshow = forwardRef11((props, ref) => {
|
|
|
2202
2222
|
icon: arrowIcon,
|
|
2203
2223
|
offset: 20
|
|
2204
2224
|
}
|
|
2205
|
-
), showDots && created && instanceRef?.current && /* @__PURE__ */
|
|
2225
|
+
), showDots && created && instanceRef?.current && /* @__PURE__ */ React28.createElement(
|
|
2206
2226
|
Dots,
|
|
2207
2227
|
{
|
|
2208
2228
|
instanceRef,
|
|
@@ -2283,7 +2303,7 @@ Slideshow.defaultProps = {
|
|
|
2283
2303
|
var slideshow_default = Slideshow;
|
|
2284
2304
|
|
|
2285
2305
|
// src/elements/slideshow/slide.tsx
|
|
2286
|
-
import
|
|
2306
|
+
import React29, { forwardRef as forwardRef12 } from "react";
|
|
2287
2307
|
|
|
2288
2308
|
// src/elements/slideshow/position.ts
|
|
2289
2309
|
var slidePositionMap = {
|
|
@@ -2338,7 +2358,7 @@ var Slide = forwardRef12((props, ref) => {
|
|
|
2338
2358
|
children,
|
|
2339
2359
|
...rest
|
|
2340
2360
|
} = props;
|
|
2341
|
-
return /* @__PURE__ */
|
|
2361
|
+
return /* @__PURE__ */ React29.createElement("div", { className: "keen-slider__slide" }, /* @__PURE__ */ React29.createElement(
|
|
2342
2362
|
Background,
|
|
2343
2363
|
{
|
|
2344
2364
|
backgroundColor,
|
|
@@ -2347,14 +2367,14 @@ var Slide = forwardRef12((props, ref) => {
|
|
|
2347
2367
|
backgroundPosition,
|
|
2348
2368
|
className: "slide-background"
|
|
2349
2369
|
}
|
|
2350
|
-
), /* @__PURE__ */
|
|
2370
|
+
), /* @__PURE__ */ React29.createElement(
|
|
2351
2371
|
Overlay,
|
|
2352
2372
|
{
|
|
2353
2373
|
enableOverlay,
|
|
2354
2374
|
overlayOpacity,
|
|
2355
2375
|
className: "slide-overlay"
|
|
2356
2376
|
}
|
|
2357
|
-
), /* @__PURE__ */
|
|
2377
|
+
), /* @__PURE__ */ React29.createElement("div", { ref, style: slidePositionMap[contentPosition], ...rest }, children?.length ? children : /* @__PURE__ */ React29.createElement(placeholder_default, { element: "Slide", className: "wv-slide-placeholder" }, "Drag and drop elements here")));
|
|
2358
2378
|
});
|
|
2359
2379
|
var css12 = {
|
|
2360
2380
|
"@desktop": {
|
|
@@ -2490,9 +2510,9 @@ var WeaverseContextConsumer = WeaverseContext.Consumer;
|
|
|
2490
2510
|
|
|
2491
2511
|
// src/renderer.tsx
|
|
2492
2512
|
import { isBrowser as isBrowser2 } from "@weaverse/core";
|
|
2493
|
-
import
|
|
2513
|
+
import React30, { useContext as useContext6, useEffect as useEffect5, useRef, useState as useState6 } from "react";
|
|
2494
2514
|
var WeaverseRoot = ({ context }) => {
|
|
2495
|
-
let [, setData] =
|
|
2515
|
+
let [, setData] = useState6(context.data);
|
|
2496
2516
|
let rootRef = useRef();
|
|
2497
2517
|
let renderRoot = () => setData({});
|
|
2498
2518
|
useEffect5(() => {
|
|
@@ -2506,22 +2526,23 @@ var WeaverseRoot = ({ context }) => {
|
|
|
2506
2526
|
let eventHandlers = context?.studioBridge?.eventHandlers || {};
|
|
2507
2527
|
let themeClass = context.stitchesInstance.theme.className;
|
|
2508
2528
|
if (context.data?.rootId) {
|
|
2509
|
-
return /* @__PURE__ */
|
|
2529
|
+
return /* @__PURE__ */ React30.createElement(
|
|
2510
2530
|
"div",
|
|
2511
2531
|
{
|
|
2512
2532
|
className: `weaverse-content-root ${themeClass}`,
|
|
2513
2533
|
...eventHandlers,
|
|
2534
|
+
suppressHydrationWarning: true,
|
|
2514
2535
|
ref: rootRef
|
|
2515
2536
|
},
|
|
2516
|
-
/* @__PURE__ */
|
|
2517
|
-
context.platformType === "react-ssr" ? /* @__PURE__ */
|
|
2537
|
+
/* @__PURE__ */ React30.createElement(WeaverseContextProvider, { value: context }, /* @__PURE__ */ React30.createElement(ItemInstance, { id: context.data.rootId })),
|
|
2538
|
+
context.platformType === "react-ssr" ? /* @__PURE__ */ React30.createElement(StitchesSSR, { stitchesInstance: context.stitchesInstance }) : null
|
|
2518
2539
|
);
|
|
2519
2540
|
}
|
|
2520
2541
|
return null;
|
|
2521
2542
|
};
|
|
2522
2543
|
var ItemComponent = ({ instance }) => {
|
|
2523
2544
|
let { stitchesInstance, elementInstances } = useContext6(WeaverseContext);
|
|
2524
|
-
let [data, setData] =
|
|
2545
|
+
let [data, setData] = useState6(instance.data);
|
|
2525
2546
|
let { id, type, childIds = [], css: css13, className, ...rest } = data;
|
|
2526
2547
|
useEffect5(() => {
|
|
2527
2548
|
let render = (data2) => setData({ ...data2 });
|
|
@@ -2539,7 +2560,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2539
2560
|
if (Component.$$typeof === Symbol.for("react.forward_ref")) {
|
|
2540
2561
|
rest.ref = instance.ref;
|
|
2541
2562
|
}
|
|
2542
|
-
return /* @__PURE__ */
|
|
2563
|
+
return /* @__PURE__ */ React30.createElement(
|
|
2543
2564
|
Component,
|
|
2544
2565
|
{
|
|
2545
2566
|
key: id,
|
|
@@ -2548,7 +2569,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2548
2569
|
className: generateItemClassName(instance, stitchesInstance),
|
|
2549
2570
|
...rest
|
|
2550
2571
|
},
|
|
2551
|
-
childIds.map((id2) => /* @__PURE__ */
|
|
2572
|
+
childIds.map((id2) => /* @__PURE__ */ React30.createElement(ItemInstance, { key: id2, id: id2 }))
|
|
2552
2573
|
);
|
|
2553
2574
|
} else {
|
|
2554
2575
|
console.log(`Unknown element: ${type}`);
|
|
@@ -2557,7 +2578,7 @@ var ItemComponent = ({ instance }) => {
|
|
|
2557
2578
|
};
|
|
2558
2579
|
var StitchesSSR = ({ stitchesInstance }) => {
|
|
2559
2580
|
const stitchesCss2 = stitchesInstance.getCssText();
|
|
2560
|
-
return /* @__PURE__ */
|
|
2581
|
+
return /* @__PURE__ */ React30.createElement(
|
|
2561
2582
|
"style",
|
|
2562
2583
|
{
|
|
2563
2584
|
id: "stitches",
|
|
@@ -2572,9 +2593,9 @@ var ItemInstance = ({ id }) => {
|
|
|
2572
2593
|
let { itemInstances } = context;
|
|
2573
2594
|
let instance = itemInstances.get(id);
|
|
2574
2595
|
if (!instance) {
|
|
2575
|
-
return /* @__PURE__ */
|
|
2596
|
+
return /* @__PURE__ */ React30.createElement("div", { style: { display: "none" } }, "Item instance ", id, " not found");
|
|
2576
2597
|
}
|
|
2577
|
-
return /* @__PURE__ */
|
|
2598
|
+
return /* @__PURE__ */ React30.createElement(ItemComponent, { key: id, instance });
|
|
2578
2599
|
};
|
|
2579
2600
|
export {
|
|
2580
2601
|
Components,
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "1.0.
|
|
2
|
+
"version": "1.0.11",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"typings": "dist/index.d.ts",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"@radix-ui/react-dialog": "^1.0.2",
|
|
36
36
|
"@stitches/react": "^1.2.8",
|
|
37
|
-
"@weaverse/core": "1.0.
|
|
37
|
+
"@weaverse/core": "1.0.11",
|
|
38
38
|
"clsx": "^1.2.1",
|
|
39
39
|
"keen-slider": "^6.8.5"
|
|
40
40
|
}
|