@plasmicpkgs/react-slick 0.0.201 → 0.0.202
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 +6 -8
- package/dist/react-slick.cjs.development.js +27 -33
- package/dist/react-slick.cjs.development.js.map +1 -1
- package/dist/react-slick.cjs.production.min.js +1 -1
- package/dist/react-slick.cjs.production.min.js.map +1 -1
- package/dist/react-slick.esm.js +27 -33
- package/dist/react-slick.esm.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
import registerComponent from "@plasmicapp/host/registerComponent";
|
|
1
|
+
import registerComponent, { ComponentHelpers } from "@plasmicapp/host/registerComponent";
|
|
2
2
|
import React from "react";
|
|
3
3
|
import Slider, { Settings } from "react-slick";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
onChangeArgsToValue: (_: number, newIndex: number) => number;
|
|
8
|
-
};
|
|
9
|
-
};
|
|
4
|
+
declare type SliderProps = Settings & {
|
|
5
|
+
arrowColor?: string;
|
|
6
|
+
sliderScopeClassName: string;
|
|
10
7
|
};
|
|
8
|
+
export declare const sliderHelpers: ComponentHelpers<SliderProps>;
|
|
11
9
|
export declare type SliderMethods = Pick<Slider, "slickGoTo" | "slickNext" | "slickPause" | "slickPlay" | "slickPrev">;
|
|
12
10
|
export declare const SliderWrapper: React.ForwardRefExoticComponent<Settings & {
|
|
13
11
|
arrowColor?: string | undefined;
|
|
14
|
-
editingSlide?: number | undefined;
|
|
15
12
|
sliderScopeClassName: string;
|
|
16
13
|
} & React.RefAttributes<Pick<Slider, "slickGoTo" | "slickNext" | "slickPause" | "slickPlay" | "slickPrev">>>;
|
|
17
14
|
export declare function registerSlider(loader?: {
|
|
18
15
|
registerComponent: typeof registerComponent;
|
|
19
16
|
}): void;
|
|
17
|
+
export {};
|
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
6
6
|
|
|
7
|
+
var host = require('@plasmicapp/host');
|
|
7
8
|
var registerComponent = _interopDefault(require('@plasmicapp/host/registerComponent'));
|
|
8
9
|
var antd = require('antd');
|
|
9
10
|
var React = require('react');
|
|
@@ -37,12 +38,16 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
37
38
|
return target;
|
|
38
39
|
}
|
|
39
40
|
|
|
40
|
-
var _excluded = ["
|
|
41
|
+
var _excluded = ["initialSlide", "arrowColor", "className", "sliderScopeClassName"];
|
|
41
42
|
var sliderHelpers = {
|
|
42
43
|
states: {
|
|
43
44
|
currentSlide: {
|
|
44
45
|
onChangeArgsToValue: function onChangeArgsToValue(_, newIndex) {
|
|
45
46
|
return newIndex;
|
|
47
|
+
},
|
|
48
|
+
onMutate: function onMutate(stateValue, $ref) {
|
|
49
|
+
console.log("dale", stateValue, $ref);
|
|
50
|
+
$ref.slickGoTo(stateValue);
|
|
46
51
|
}
|
|
47
52
|
}
|
|
48
53
|
}
|
|
@@ -62,21 +67,21 @@ function useDebounce(value, delay) {
|
|
|
62
67
|
return debouncedValue;
|
|
63
68
|
}
|
|
64
69
|
var SliderWrapper = /*#__PURE__*/React.forwardRef(function SliderWrapper_(props, userRef) {
|
|
65
|
-
var
|
|
70
|
+
var initialSlide = props.initialSlide,
|
|
66
71
|
arrowColor = props.arrowColor,
|
|
67
72
|
className = props.className,
|
|
68
73
|
sliderScopeClassName = props.sliderScopeClassName,
|
|
69
74
|
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
70
75
|
// "data-plasmic-canvas-envs" prop only exists in studio canvas
|
|
71
|
-
var
|
|
76
|
+
var inCanvas = !!host.usePlasmicCanvasContext();
|
|
72
77
|
var slider = React.useRef(null);
|
|
73
|
-
var
|
|
78
|
+
var debouncedInitialSlide = useDebounce(initialSlide);
|
|
74
79
|
React.useEffect(function () {
|
|
75
|
-
if (
|
|
80
|
+
if (debouncedInitialSlide !== undefined && inCanvas) {
|
|
76
81
|
var _slider$current;
|
|
77
|
-
(_slider$current = slider.current) == null || _slider$current.slickGoTo(
|
|
82
|
+
(_slider$current = slider.current) == null || _slider$current.slickGoTo(debouncedInitialSlide);
|
|
78
83
|
}
|
|
79
|
-
}, [
|
|
84
|
+
}, [debouncedInitialSlide, inCanvas]);
|
|
80
85
|
React__default.useImperativeHandle(userRef, function () {
|
|
81
86
|
return {
|
|
82
87
|
slickGoTo: function slickGoTo(index, dontAnimate) {
|
|
@@ -127,13 +132,13 @@ function registerSlider(loader) {
|
|
|
127
132
|
rows = _ref$rows === void 0 ? 1 : _ref$rows,
|
|
128
133
|
_ref$slidesPerRow = _ref.slidesPerRow,
|
|
129
134
|
slidesPerRow = _ref$slidesPerRow === void 0 ? 1 : _ref$slidesPerRow,
|
|
130
|
-
_ref$
|
|
131
|
-
|
|
135
|
+
_ref$initialSlide = _ref.initialSlide,
|
|
136
|
+
initialSlide = _ref$initialSlide === void 0 ? 0 : _ref$initialSlide,
|
|
132
137
|
children = _ref.children;
|
|
133
138
|
var slidesCnt = Array.isArray(children) ? children.length : 1;
|
|
134
139
|
var slidesPerDot = rows * slidesPerRow;
|
|
135
140
|
var dotCount = Math.ceil(slidesCnt / slidesPerDot);
|
|
136
|
-
var currentDotIndex =
|
|
141
|
+
var currentDotIndex = initialSlide >= dotCount ? dotCount - 1 : initialSlide;
|
|
137
142
|
return {
|
|
138
143
|
currentDotIndex: currentDotIndex,
|
|
139
144
|
slidesPerDot: slidesPerDot,
|
|
@@ -158,8 +163,8 @@ function registerSlider(loader) {
|
|
|
158
163
|
}, "Slide ", i);
|
|
159
164
|
});
|
|
160
165
|
var handleChange = function handleChange(e) {
|
|
161
|
-
studioOps.
|
|
162
|
-
|
|
166
|
+
studioOps.updateStates({
|
|
167
|
+
currentSlide: Number(e.target.value)
|
|
163
168
|
});
|
|
164
169
|
};
|
|
165
170
|
return React__default.createElement("div", {
|
|
@@ -199,8 +204,8 @@ function registerSlider(loader) {
|
|
|
199
204
|
},
|
|
200
205
|
onClick: function onClick() {
|
|
201
206
|
var prevSlide = currentDotIndex === 0 ? dotCount - 1 : (currentDotIndex - 1) % dotCount;
|
|
202
|
-
studioOps.
|
|
203
|
-
|
|
207
|
+
studioOps.updateStates({
|
|
208
|
+
currentSlide: prevSlide
|
|
204
209
|
});
|
|
205
210
|
}
|
|
206
211
|
}, "Prev slide"), React__default.createElement(antd.Button, {
|
|
@@ -209,8 +214,8 @@ function registerSlider(loader) {
|
|
|
209
214
|
},
|
|
210
215
|
onClick: function onClick() {
|
|
211
216
|
var nextSlide = (currentDotIndex + 1) % dotCount;
|
|
212
|
-
studioOps.
|
|
213
|
-
|
|
217
|
+
studioOps.updateStates({
|
|
218
|
+
currentSlide: nextSlide
|
|
214
219
|
});
|
|
215
220
|
}
|
|
216
221
|
}, "Next slide"));
|
|
@@ -240,7 +245,7 @@ function registerSlider(loader) {
|
|
|
240
245
|
dotCount = _getSlideInfo3.dotCount,
|
|
241
246
|
slidesPerDot = _getSlideInfo3.slidesPerDot,
|
|
242
247
|
totalSlides = _getSlideInfo3.totalSlides;
|
|
243
|
-
var
|
|
248
|
+
var currentSlide = totalSlides % slidesPerDot ? dotCount - 1 : dotCount;
|
|
244
249
|
studioOps.appendToSlot({
|
|
245
250
|
type: "img",
|
|
246
251
|
src: "",
|
|
@@ -248,8 +253,8 @@ function registerSlider(loader) {
|
|
|
248
253
|
maxWidth: "100%"
|
|
249
254
|
}
|
|
250
255
|
}, "children");
|
|
251
|
-
studioOps.
|
|
252
|
-
|
|
256
|
+
studioOps.updateStates({
|
|
257
|
+
currentSlide: currentSlide
|
|
253
258
|
});
|
|
254
259
|
}
|
|
255
260
|
}, {
|
|
@@ -283,8 +288,8 @@ function registerSlider(loader) {
|
|
|
283
288
|
// the last dot
|
|
284
289
|
newPos = totalSlides % slidesPerDot === 1 ? currentDotIndex - 1 : currentDotIndex;
|
|
285
290
|
}
|
|
286
|
-
studioOps.
|
|
287
|
-
|
|
291
|
+
studioOps.updateStates({
|
|
292
|
+
currentSlide: newPos
|
|
288
293
|
});
|
|
289
294
|
}
|
|
290
295
|
}, {
|
|
@@ -337,17 +342,6 @@ function registerSlider(loader) {
|
|
|
337
342
|
};
|
|
338
343
|
})
|
|
339
344
|
},
|
|
340
|
-
editingSlide: {
|
|
341
|
-
displayName: "Currently edited slide",
|
|
342
|
-
type: "number",
|
|
343
|
-
description: "Switch to the specified slide (first is 0). Only affects the editor, not the final page.",
|
|
344
|
-
defaultValueHint: 0,
|
|
345
|
-
defaultValue: 0,
|
|
346
|
-
editOnly: true,
|
|
347
|
-
hidden: function hidden() {
|
|
348
|
-
return true;
|
|
349
|
-
}
|
|
350
|
-
},
|
|
351
345
|
accessibility: {
|
|
352
346
|
advanced: true,
|
|
353
347
|
displayName: "Accessibility",
|
|
@@ -613,7 +607,7 @@ function registerSlider(loader) {
|
|
|
613
607
|
states: {
|
|
614
608
|
currentSlide: _extends({
|
|
615
609
|
type: "writable",
|
|
616
|
-
valueProp: "
|
|
610
|
+
valueProp: "initialSlide",
|
|
617
611
|
onChangeProp: "beforeChange",
|
|
618
612
|
variableType: "number"
|
|
619
613
|
}, sliderHelpers.states.currentSlide)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-slick.cjs.development.js","sources":["../src/index.tsx"],"sourcesContent":["import registerComponent, {\n ActionProps,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n editingSlide?: number;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { editingSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const isEditMode = (props as any)[\"data-plasmic-canvas-envs\"] ? true : false;\n const slider = useRef<Slider>(null);\n const debouncedEditingSlide = useDebounce(editingSlide);\n\n useEffect(() => {\n if (debouncedEditingSlide !== undefined && isEditMode) {\n slider.current?.slickGoTo(debouncedEditingSlide);\n }\n }, [debouncedEditingSlide, isEditMode]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n editingSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n editingSlide >= dotCount ? dotCount - 1 : editingSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateProps({ editingSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateProps({ editingSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateProps({ editingSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const editingSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateProps({ editingSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateProps({\n editingSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n editingSlide: {\n displayName: \"Currently edited slide\",\n type: \"number\",\n description:\n \"Switch to the specified slide (first is 0). Only affects the editor, not the final page.\",\n defaultValueHint: 0,\n defaultValue: 0,\n editOnly: true,\n hidden: () => true,\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"editingSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","useDebounce","value","delay","_useState","useState","debouncedValue","setDebouncedValue","useEffect","timer","setTimeout","clearTimeout","SliderWrapper","forwardRef","SliderWrapper_","props","userRef","editingSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","isEditMode","slider","useRef","debouncedEditingSlide","undefined","_slider$current","current","slickGoTo","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","registerSlider","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$editingSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","CurrentSlideDropdown","_ref2","componentProps","studioOps","_getSlideInfo","options","from","i","map","key","toString","handleChange","e","updateProps","Number","target","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","NavigateSlides","_ref3","_getSlideInfo2","Button","onClick","prevSlide","nextSlide","OutlineMessage","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","newPos","refActions","argTypes","defaultValueHint","editOnly","accessibility","advanced","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","initialSlide","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-slick.cjs.development.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ActionProps,\n ComponentHelpers,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers: ComponentHelpers<SliderProps> = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n onMutate: (stateValue, $ref) => {\n console.log(\"dale\", stateValue, $ref);\n $ref.slickGoTo(stateValue);\n },\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { initialSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const inCanvas = !!usePlasmicCanvasContext();\n const slider = useRef<Slider>(null);\n const debouncedInitialSlide = useDebounce(initialSlide);\n\n useEffect(() => {\n if (debouncedInitialSlide !== undefined && inCanvas) {\n slider.current?.slickGoTo(debouncedInitialSlide);\n }\n }, [debouncedInitialSlide, inCanvas]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n initialSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n initialSlide >= dotCount ? dotCount - 1 : initialSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateStates({ currentSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateStates({ currentSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateStates({ currentSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const currentSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateStates({ currentSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateStates({\n currentSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"initialSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","onMutate","stateValue","$ref","console","log","slickGoTo","useDebounce","value","delay","_useState","useState","debouncedValue","setDebouncedValue","useEffect","timer","setTimeout","clearTimeout","SliderWrapper","forwardRef","SliderWrapper_","props","userRef","initialSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","inCanvas","usePlasmicCanvasContext","slider","useRef","debouncedInitialSlide","undefined","_slider$current","current","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","registerSlider","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$initialSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","CurrentSlideDropdown","_ref2","componentProps","studioOps","_getSlideInfo","options","from","i","map","key","toString","handleChange","e","updateStates","Number","target","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","NavigateSlides","_ref3","_getSlideInfo2","Button","onClick","prevSlide","nextSlide","OutlineMessage","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","newPos","refActions","argTypes","accessibility","advanced","defaultValueHint","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("@plasmicapp/host/registerComponent")),i=require("antd"),n=require("react"),a=e(n),l=e(require("react-slick"));function o(){return(o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(e[n]=i[n])}return e}).apply(this,arguments)}var r=["editingSlide","arrowColor","className","sliderScopeClassName"],s={states:{currentSlide:{onChangeArgsToValue:function(e,t){return t}}}},d=n.forwardRef((function(e,t){var i,o,s,d,c=e.editingSlide,u=e.arrowColor,p=e.className,y=e.sliderScopeClassName,m=function(e,t){if(null==e)return{};var i,n,a={},l=Object.keys(e);for(n=0;n<l.length;n++)t.indexOf(i=l[n])>=0||(a[i]=e[i]);return a}(e,r),f=!!e["data-plasmic-canvas-envs"],v=n.useRef(null),h=(s=(o=n.useState(i=c))[0],d=o[1],n.useEffect((function(){var e=setTimeout((function(){return d(i)}),500);return function(){clearTimeout(e)}}),[i,void 0]),s);n.useEffect((function(){var e;void 0!==h&&f&&(null==(e=v.current)||e.slickGoTo(h))}),[h,f]),a.useImperativeHandle(t,(function(){return{slickGoTo:function(e,t){v.current&&(0,v.current.slickGoTo)(e,t)},slickNext:function(){v.current&&(0,v.current.slickNext)()},slickPause:function(){v.current&&(0,v.current.slickPause)()},slickPlay:function(){v.current&&(0,v.current.slickPlay)()},slickPrev:function(){v.current&&(0,v.current.slickPrev)()}}}),[]);var b="\n ."+y+" .slick-arrow:before {\n color: "+(null!=u?u:"black")+";\n }\n ."+y+" .slick-slide img:only-child,\n ."+y+" .slick-slide .__wab_img-wrapper:only-child {\n \n \n display: inline-block;\n vertical-align: top;\n }\n ";return a.createElement(a.Fragment,null,a.createElement(l,Object.assign({className:p+" "+y,ref:v},m)),a.createElement("style",{dangerouslySetInnerHTML:{__html:b}}))}));exports.SliderWrapper=d,exports.registerSlider=function(e){function n(e){var t=e.rows,i=void 0===t?1:t,n=e.slidesPerRow,a=void 0===n?1:n,l=e.editingSlide,o=void 0===l?0:l,r=e.children,s=Array.isArray(r)?r.length:1,d=i*a,c=Math.ceil(s/d);return{currentDotIndex:o>=c?c-1:o,slidesPerDot:d,dotCount:c,totalSlides:s}}var l={name:"hostless-slider",displayName:"Slider Carousel",importName:"SliderWrapper",importPath:"@plasmicpkgs/react-slick",description:"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)",actions:[{type:"custom-action",control:function(e){var t=e.studioOps,i=n(e.componentProps),l=i.currentDotIndex,o=Array.from({length:i.dotCount},(function(e,t){return t})).map((function(e){return a.createElement("option",{key:e,value:e.toString()},"Slide ",e)}));return a.createElement("div",{style:{width:"100%",display:"flex",flexDirection:"row",gap:"10px",justifyContent:"space-between"}},a.createElement("div",null,"Current slide:"),a.createElement("select",{defaultValue:l.toString(),style:{width:"100%"},onChange:function(e){t.updateProps({editingSlide:Number(e.target.value)})},value:l.toString()},o))}},{type:"custom-action",control:function(e){var t=e.studioOps,l=n(e.componentProps),o=l.dotCount,r=l.currentDotIndex;return a.createElement("div",{style:{width:"100%",display:"flex",flexDirection:"row",gap:"10px",justifyContent:"space-between"}},a.createElement(i.Button,{style:{width:"100%"},onClick:function(){t.updateProps({editingSlide:0===r?o-1:(r-1)%o})}},"Prev slide"),a.createElement(i.Button,{style:{width:"100%"},onClick:function(){t.updateProps({editingSlide:(r+1)%o})}},"Next slide"))}},{type:"button-action",label:"Append new slide",onClick:function(e){var t=e.studioOps,i=n(e.componentProps),a=i.dotCount,l=i.totalSlides%i.slidesPerDot?a-1:a;t.appendToSlot({type:"img",src:"",styles:{maxWidth:"100%"}},"children"),t.updateProps({editingSlide:l})}},{type:"button-action",label:"Delete current slide",hidden:function(e){var t;return"CanvasSlotPlaceholder"===(null==(t=e.children)||null==(t=t.type)?void 0:t.name)},onClick:function(e){var t=e.studioOps,i=n(e.componentProps),a=i.currentDotIndex,l=i.dotCount,o=i.slidesPerDot,r=i.totalSlides;t.removeFromSlotAt(a*o,"children"),t.updateProps({editingSlide:1===l?0:a!==l-1?1===o?a-1:a:r%o==1?a-1:a})}},{type:"custom-action",control:function(){return a.createElement("div",null,"* To re-arrange slides, use the Outline panel")}}],refActions:{slickGoTo:{displayName:"Jump to slide",argTypes:[{name:"index",displayName:"Slide index",type:"number"},{name:"dontAnimate",displayName:"Animate?",type:"boolean"}]},slickNext:{displayName:"Go to Next slide",argTypes:[]},slickPause:{displayName:"Pause",argTypes:[]},slickPlay:{displayName:"Play",argTypes:[]},slickPrev:{displayName:"Go to Previous slide",argTypes:[]}},props:{children:{type:"slot",defaultValue:[0,1,2].map((function(e){return{type:"vbox",children:{type:"img",src:"https://static1.plasmic.app/components/react-slick/slide"+(e+1)+".png",styles:{maxWidth:"100%"}}}}))},editingSlide:{displayName:"Currently edited slide",type:"number",description:"Switch to the specified slide (first is 0). Only affects the editor, not the final page.",defaultValueHint:0,defaultValue:0,editOnly:!0,hidden:function(){return!0}},accessibility:{advanced:!0,displayName:"Accessibility",type:"boolean",description:"Enables tabbing and arrow key navigation",defaultValueHint:!0},adaptiveHeight:{advanced:!0,displayName:"Adaptive Height",type:"boolean",description:"Adjust the slide's height automatically",defaultValueHint:!1},arrows:{displayName:"Arrows",type:"boolean",description:"Show next/prev arrows",defaultValueHint:!0},sliderScopeClassName:{type:"styleScopeClass",scopeName:"slider"},arrowColor:{type:"color",description:"Color of next/prev arrow buttons",defaultValueHint:"#000000",hidden:function(e){return void 0!==e.arrows&&!e.arrows}},autoplay:{displayName:"Auto Play",type:"boolean",description:"Automatically start scrolling",defaultValueHint:!1},autoplaySpeed:{displayName:"Auto Play Speed",type:"number",description:"Delay between each auto scroll, in milliseconds",defaultValueHint:3e3,hidden:function(e){return!e.autoplay}},centerMode:{displayName:"Center Mode",type:"boolean",description:"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts",defaultValueHint:!1},centerPadding:{displayName:"Center Padding",type:"string",description:"Side padding when in center mode (px or %)",defaultValueHint:"50px",hidden:function(e){return!e.centerMode}},dots:{displayName:"Dots",type:"boolean",description:"Show dots for each slide",defaultValueHint:!1},draggable:{advanced:!0,displayName:"Draggable",type:"boolean",description:"Enables mouse dragging on desktop",defaultValueHint:!0},cssEase:{advanced:!0,displayName:"Easing",type:"string",description:"Easing method for transition",defaultValueHint:"linear"},easing:{hidden:function(){return!0},advanced:!0,displayName:"Easing",type:"string",description:"Easing method for transition",defaultValueHint:"linear"},fade:{advanced:!0,displayName:"Fade",type:"boolean",description:"Cross-fade between slides",defaultValueHint:!1},focusOnSelect:{advanced:!0,displayName:"Focus On Select",type:"boolean",description:"Go to slide on click",defaultValueHint:!1},infinite:{displayName:"Infinite",type:"boolean",description:"Infinitely wrap around contents",defaultValueHint:!0},initialSlide:{displayName:"Initial Slide",type:"number",description:"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.",defaultValueHint:0,defaultValue:0},lazyLoad:{advanced:!0,displayName:"Lazy Load",type:"choice",options:["ondemand","progressive"],description:"Load images or render components on demand or progressively"},pauseOnDotsHover:{displayName:"Pause On Dots Hover",type:"boolean",description:"Prevents autoplay while hovering on dots",defaultValueHint:!1},pauseOnFocus:{displayName:"Pause On Focus",type:"boolean",description:"Prevents autoplay while focused on slides",defaultValueHint:!1},pauseOnHover:{displayName:"Pause On Hover",type:"boolean",description:"Prevents autoplay while hovering on track",defaultValueHint:!0},rows:{displayName:"Rows",type:"number",description:"Number of rows per slide (enables grid mode)",defaultValueHint:1},rtl:{advanced:!0,displayName:"Reverse",type:"boolean",description:"Reverses the slide order",defaultValueHint:!1},slidesPerRow:{displayName:"Slides Per Row",type:"number",description:"Number of slides to display in grid mode, this is useful with rows option",defaultValueHint:1},slidesToScroll:{advanced:!0,displayName:"Slides To Scroll",type:"number",description:"Number of slides to scroll at once",defaultValueHint:1},slidesToShow:{advanced:!0,displayName:"Slides To Show",type:"number",description:"Number of slides to show in one frame",defaultValueHint:1},speed:{advanced:!0,displayName:"Speed",type:"number",description:"Transition speed in milliseconds",defaultValueHint:500},swipe:{advanced:!0,displayName:"Swipe",type:"boolean",description:"Enable swiping to change slides",defaultValueHint:!0},swipeToSlide:{advanced:!0,displayName:"Swipe To Slide",type:"boolean",description:"Enable drag/swipe irrespective of 'slidesToScroll'",defaultValueHint:!1},touchMove:{advanced:!0,displayName:"Touch Move",type:"boolean",description:"Enable slide moving on touch",defaultValueHint:!0},touchThreshold:{advanced:!0,displayName:"Touch Threshold",type:"number",description:"Swipe distance threshold in pixels",defaultValueHint:5},useCSS:{advanced:!0,displayName:"Use CSS",type:"boolean",description:"Enable/Disable CSS Transitions",defaultValueHint:!0},useTransform:{advanced:!0,displayName:"Use Transform",type:"boolean",description:"Enable/Disable CSS Transforms",defaultValueHint:!0},variableWidth:{advanced:!0,displayName:"Variable Width",type:"boolean",description:"Variable width slides",defaultValueHint:!1},vertical:{advanced:!0,displayName:"Vertical",type:"boolean",description:"Vertical slide mode",defaultValueHint:!1},beforeChange:{type:"eventHandler",advanced:!0,argTypes:[{name:"currentSlide",type:"number"}]}},states:{currentSlide:o({type:"writable",valueProp:"editingSlide",onChangeProp:"beforeChange",variableType:"number"},s.states.currentSlide)},componentHelpers:{helpers:s,importName:"sliderHelpers",importPath:"@plasmicpkgs/react-slick"},defaultStyles:{width:"stretch",maxWidth:"100%",flexDirection:"column"}};e?e.registerComponent(d,l):t(d,l)},exports.sliderHelpers=s;
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@plasmicapp/host"),i=e(require("@plasmicapp/host/registerComponent")),a=require("antd"),n=require("react"),l=e(n),o=e(require("react-slick"));function r(){return(r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i)Object.prototype.hasOwnProperty.call(i,a)&&(e[a]=i[a])}return e}).apply(this,arguments)}var s=["initialSlide","arrowColor","className","sliderScopeClassName"],d={states:{currentSlide:{onChangeArgsToValue:function(e,t){return t},onMutate:function(e,t){console.log("dale",e,t),t.slickGoTo(e)}}}},c=n.forwardRef((function(e,i){var a,r,d,c,u=e.initialSlide,p=e.arrowColor,y=e.className,m=e.sliderScopeClassName,f=function(e,t){if(null==e)return{};var i,a,n={},l=Object.keys(e);for(a=0;a<l.length;a++)t.indexOf(i=l[a])>=0||(n[i]=e[i]);return n}(e,s),v=!!t.usePlasmicCanvasContext(),h=n.useRef(null),b=(d=(r=n.useState(a=u))[0],c=r[1],n.useEffect((function(){var e=setTimeout((function(){return c(a)}),500);return function(){clearTimeout(e)}}),[a,void 0]),d);n.useEffect((function(){var e;void 0!==b&&v&&(null==(e=h.current)||e.slickGoTo(b))}),[b,v]),l.useImperativeHandle(i,(function(){return{slickGoTo:function(e,t){h.current&&(0,h.current.slickGoTo)(e,t)},slickNext:function(){h.current&&(0,h.current.slickNext)()},slickPause:function(){h.current&&(0,h.current.slickPause)()},slickPlay:function(){h.current&&(0,h.current.slickPlay)()},slickPrev:function(){h.current&&(0,h.current.slickPrev)()}}}),[]);var g="\n ."+m+" .slick-arrow:before {\n color: "+(null!=p?p:"black")+";\n }\n ."+m+" .slick-slide img:only-child,\n ."+m+" .slick-slide .__wab_img-wrapper:only-child {\n \n \n display: inline-block;\n vertical-align: top;\n }\n ";return l.createElement(l.Fragment,null,l.createElement(o,Object.assign({className:y+" "+m,ref:h},f)),l.createElement("style",{dangerouslySetInnerHTML:{__html:g}}))}));exports.SliderWrapper=c,exports.registerSlider=function(e){function t(e){var t=e.rows,i=void 0===t?1:t,a=e.slidesPerRow,n=void 0===a?1:a,l=e.initialSlide,o=void 0===l?0:l,r=e.children,s=Array.isArray(r)?r.length:1,d=i*n,c=Math.ceil(s/d);return{currentDotIndex:o>=c?c-1:o,slidesPerDot:d,dotCount:c,totalSlides:s}}var n={name:"hostless-slider",displayName:"Slider Carousel",importName:"SliderWrapper",importPath:"@plasmicpkgs/react-slick",description:"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)",actions:[{type:"custom-action",control:function(e){var i=e.studioOps,a=t(e.componentProps),n=a.currentDotIndex,o=Array.from({length:a.dotCount},(function(e,t){return t})).map((function(e){return l.createElement("option",{key:e,value:e.toString()},"Slide ",e)}));return l.createElement("div",{style:{width:"100%",display:"flex",flexDirection:"row",gap:"10px",justifyContent:"space-between"}},l.createElement("div",null,"Current slide:"),l.createElement("select",{defaultValue:n.toString(),style:{width:"100%"},onChange:function(e){i.updateStates({currentSlide:Number(e.target.value)})},value:n.toString()},o))}},{type:"custom-action",control:function(e){var i=e.studioOps,n=t(e.componentProps),o=n.dotCount,r=n.currentDotIndex;return l.createElement("div",{style:{width:"100%",display:"flex",flexDirection:"row",gap:"10px",justifyContent:"space-between"}},l.createElement(a.Button,{style:{width:"100%"},onClick:function(){i.updateStates({currentSlide:0===r?o-1:(r-1)%o})}},"Prev slide"),l.createElement(a.Button,{style:{width:"100%"},onClick:function(){i.updateStates({currentSlide:(r+1)%o})}},"Next slide"))}},{type:"button-action",label:"Append new slide",onClick:function(e){var i=e.studioOps,a=t(e.componentProps),n=a.dotCount,l=a.totalSlides%a.slidesPerDot?n-1:n;i.appendToSlot({type:"img",src:"",styles:{maxWidth:"100%"}},"children"),i.updateStates({currentSlide:l})}},{type:"button-action",label:"Delete current slide",hidden:function(e){var t;return"CanvasSlotPlaceholder"===(null==(t=e.children)||null==(t=t.type)?void 0:t.name)},onClick:function(e){var i=e.studioOps,a=t(e.componentProps),n=a.currentDotIndex,l=a.dotCount,o=a.slidesPerDot,r=a.totalSlides;i.removeFromSlotAt(n*o,"children"),i.updateStates({currentSlide:1===l?0:n!==l-1?1===o?n-1:n:r%o==1?n-1:n})}},{type:"custom-action",control:function(){return l.createElement("div",null,"* To re-arrange slides, use the Outline panel")}}],refActions:{slickGoTo:{displayName:"Jump to slide",argTypes:[{name:"index",displayName:"Slide index",type:"number"},{name:"dontAnimate",displayName:"Animate?",type:"boolean"}]},slickNext:{displayName:"Go to Next slide",argTypes:[]},slickPause:{displayName:"Pause",argTypes:[]},slickPlay:{displayName:"Play",argTypes:[]},slickPrev:{displayName:"Go to Previous slide",argTypes:[]}},props:{children:{type:"slot",defaultValue:[0,1,2].map((function(e){return{type:"vbox",children:{type:"img",src:"https://static1.plasmic.app/components/react-slick/slide"+(e+1)+".png",styles:{maxWidth:"100%"}}}}))},accessibility:{advanced:!0,displayName:"Accessibility",type:"boolean",description:"Enables tabbing and arrow key navigation",defaultValueHint:!0},adaptiveHeight:{advanced:!0,displayName:"Adaptive Height",type:"boolean",description:"Adjust the slide's height automatically",defaultValueHint:!1},arrows:{displayName:"Arrows",type:"boolean",description:"Show next/prev arrows",defaultValueHint:!0},sliderScopeClassName:{type:"styleScopeClass",scopeName:"slider"},arrowColor:{type:"color",description:"Color of next/prev arrow buttons",defaultValueHint:"#000000",hidden:function(e){return void 0!==e.arrows&&!e.arrows}},autoplay:{displayName:"Auto Play",type:"boolean",description:"Automatically start scrolling",defaultValueHint:!1},autoplaySpeed:{displayName:"Auto Play Speed",type:"number",description:"Delay between each auto scroll, in milliseconds",defaultValueHint:3e3,hidden:function(e){return!e.autoplay}},centerMode:{displayName:"Center Mode",type:"boolean",description:"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts",defaultValueHint:!1},centerPadding:{displayName:"Center Padding",type:"string",description:"Side padding when in center mode (px or %)",defaultValueHint:"50px",hidden:function(e){return!e.centerMode}},dots:{displayName:"Dots",type:"boolean",description:"Show dots for each slide",defaultValueHint:!1},draggable:{advanced:!0,displayName:"Draggable",type:"boolean",description:"Enables mouse dragging on desktop",defaultValueHint:!0},cssEase:{advanced:!0,displayName:"Easing",type:"string",description:"Easing method for transition",defaultValueHint:"linear"},easing:{hidden:function(){return!0},advanced:!0,displayName:"Easing",type:"string",description:"Easing method for transition",defaultValueHint:"linear"},fade:{advanced:!0,displayName:"Fade",type:"boolean",description:"Cross-fade between slides",defaultValueHint:!1},focusOnSelect:{advanced:!0,displayName:"Focus On Select",type:"boolean",description:"Go to slide on click",defaultValueHint:!1},infinite:{displayName:"Infinite",type:"boolean",description:"Infinitely wrap around contents",defaultValueHint:!0},initialSlide:{displayName:"Initial Slide",type:"number",description:"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.",defaultValueHint:0,defaultValue:0},lazyLoad:{advanced:!0,displayName:"Lazy Load",type:"choice",options:["ondemand","progressive"],description:"Load images or render components on demand or progressively"},pauseOnDotsHover:{displayName:"Pause On Dots Hover",type:"boolean",description:"Prevents autoplay while hovering on dots",defaultValueHint:!1},pauseOnFocus:{displayName:"Pause On Focus",type:"boolean",description:"Prevents autoplay while focused on slides",defaultValueHint:!1},pauseOnHover:{displayName:"Pause On Hover",type:"boolean",description:"Prevents autoplay while hovering on track",defaultValueHint:!0},rows:{displayName:"Rows",type:"number",description:"Number of rows per slide (enables grid mode)",defaultValueHint:1},rtl:{advanced:!0,displayName:"Reverse",type:"boolean",description:"Reverses the slide order",defaultValueHint:!1},slidesPerRow:{displayName:"Slides Per Row",type:"number",description:"Number of slides to display in grid mode, this is useful with rows option",defaultValueHint:1},slidesToScroll:{advanced:!0,displayName:"Slides To Scroll",type:"number",description:"Number of slides to scroll at once",defaultValueHint:1},slidesToShow:{advanced:!0,displayName:"Slides To Show",type:"number",description:"Number of slides to show in one frame",defaultValueHint:1},speed:{advanced:!0,displayName:"Speed",type:"number",description:"Transition speed in milliseconds",defaultValueHint:500},swipe:{advanced:!0,displayName:"Swipe",type:"boolean",description:"Enable swiping to change slides",defaultValueHint:!0},swipeToSlide:{advanced:!0,displayName:"Swipe To Slide",type:"boolean",description:"Enable drag/swipe irrespective of 'slidesToScroll'",defaultValueHint:!1},touchMove:{advanced:!0,displayName:"Touch Move",type:"boolean",description:"Enable slide moving on touch",defaultValueHint:!0},touchThreshold:{advanced:!0,displayName:"Touch Threshold",type:"number",description:"Swipe distance threshold in pixels",defaultValueHint:5},useCSS:{advanced:!0,displayName:"Use CSS",type:"boolean",description:"Enable/Disable CSS Transitions",defaultValueHint:!0},useTransform:{advanced:!0,displayName:"Use Transform",type:"boolean",description:"Enable/Disable CSS Transforms",defaultValueHint:!0},variableWidth:{advanced:!0,displayName:"Variable Width",type:"boolean",description:"Variable width slides",defaultValueHint:!1},vertical:{advanced:!0,displayName:"Vertical",type:"boolean",description:"Vertical slide mode",defaultValueHint:!1},beforeChange:{type:"eventHandler",advanced:!0,argTypes:[{name:"currentSlide",type:"number"}]}},states:{currentSlide:r({type:"writable",valueProp:"initialSlide",onChangeProp:"beforeChange",variableType:"number"},d.states.currentSlide)},componentHelpers:{helpers:d,importName:"sliderHelpers",importPath:"@plasmicpkgs/react-slick"},defaultStyles:{width:"stretch",maxWidth:"100%",flexDirection:"column"}};e?e.registerComponent(c,n):i(c,n)},exports.sliderHelpers=d;
|
|
2
2
|
//# sourceMappingURL=react-slick.cjs.production.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-slick.cjs.production.min.js","sources":["../src/index.tsx"],"sourcesContent":["import registerComponent, {\n ActionProps,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n editingSlide?: number;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { editingSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const isEditMode = (props as any)[\"data-plasmic-canvas-envs\"] ? true : false;\n const slider = useRef<Slider>(null);\n const debouncedEditingSlide = useDebounce(editingSlide);\n\n useEffect(() => {\n if (debouncedEditingSlide !== undefined && isEditMode) {\n slider.current?.slickGoTo(debouncedEditingSlide);\n }\n }, [debouncedEditingSlide, isEditMode]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n editingSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n editingSlide >= dotCount ? dotCount - 1 : editingSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateProps({ editingSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateProps({ editingSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateProps({ editingSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const editingSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateProps({ editingSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateProps({\n editingSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n editingSlide: {\n displayName: \"Currently edited slide\",\n type: \"number\",\n description:\n \"Switch to the specified slide (first is 0). Only affects the editor, not the final page.\",\n defaultValueHint: 0,\n defaultValue: 0,\n editOnly: true,\n hidden: () => true,\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"editingSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","SliderWrapper","forwardRef","props","userRef","value","_useState","debouncedValue","setDebouncedValue","editingSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","isEditMode","slider","useRef","debouncedEditingSlide","useState","useEffect","timer","setTimeout","clearTimeout","delay","_slider$current","undefined","current","slickGoTo","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$editingSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","_ref2","studioOps","_getSlideInfo","componentProps","options","from","i","map","key","toString","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","e","updateProps","Number","target","_ref3","_getSlideInfo2","Button","onClick","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","refActions","argTypes","defaultValueHint","editOnly","accessibility","advanced","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","initialSlide","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-slick.cjs.production.min.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ActionProps,\n ComponentHelpers,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers: ComponentHelpers<SliderProps> = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n onMutate: (stateValue, $ref) => {\n console.log(\"dale\", stateValue, $ref);\n $ref.slickGoTo(stateValue);\n },\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { initialSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const inCanvas = !!usePlasmicCanvasContext();\n const slider = useRef<Slider>(null);\n const debouncedInitialSlide = useDebounce(initialSlide);\n\n useEffect(() => {\n if (debouncedInitialSlide !== undefined && inCanvas) {\n slider.current?.slickGoTo(debouncedInitialSlide);\n }\n }, [debouncedInitialSlide, inCanvas]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n initialSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n initialSlide >= dotCount ? dotCount - 1 : initialSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateStates({ currentSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateStates({ currentSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateStates({ currentSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const currentSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateStates({ currentSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateStates({\n currentSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"initialSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","onMutate","stateValue","$ref","console","log","slickGoTo","SliderWrapper","forwardRef","props","userRef","value","_useState","debouncedValue","setDebouncedValue","initialSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","inCanvas","usePlasmicCanvasContext","slider","useRef","debouncedInitialSlide","useState","useEffect","timer","setTimeout","clearTimeout","delay","_slider$current","undefined","current","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$initialSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","_ref2","studioOps","_getSlideInfo","componentProps","options","from","i","map","key","toString","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","e","updateStates","Number","target","_ref3","_getSlideInfo2","Button","onClick","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","refActions","argTypes","accessibility","advanced","defaultValueHint","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
package/dist/react-slick.esm.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { usePlasmicCanvasContext } from '@plasmicapp/host';
|
|
1
2
|
import registerComponent from '@plasmicapp/host/registerComponent';
|
|
2
3
|
import { Button } from 'antd';
|
|
3
4
|
import React, { forwardRef, useRef, useEffect, useState } from 'react';
|
|
@@ -30,12 +31,16 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
|
30
31
|
return target;
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
var _excluded = ["
|
|
34
|
+
var _excluded = ["initialSlide", "arrowColor", "className", "sliderScopeClassName"];
|
|
34
35
|
var sliderHelpers = {
|
|
35
36
|
states: {
|
|
36
37
|
currentSlide: {
|
|
37
38
|
onChangeArgsToValue: function onChangeArgsToValue(_, newIndex) {
|
|
38
39
|
return newIndex;
|
|
40
|
+
},
|
|
41
|
+
onMutate: function onMutate(stateValue, $ref) {
|
|
42
|
+
console.log("dale", stateValue, $ref);
|
|
43
|
+
$ref.slickGoTo(stateValue);
|
|
39
44
|
}
|
|
40
45
|
}
|
|
41
46
|
}
|
|
@@ -55,21 +60,21 @@ function useDebounce(value, delay) {
|
|
|
55
60
|
return debouncedValue;
|
|
56
61
|
}
|
|
57
62
|
var SliderWrapper = /*#__PURE__*/forwardRef(function SliderWrapper_(props, userRef) {
|
|
58
|
-
var
|
|
63
|
+
var initialSlide = props.initialSlide,
|
|
59
64
|
arrowColor = props.arrowColor,
|
|
60
65
|
className = props.className,
|
|
61
66
|
sliderScopeClassName = props.sliderScopeClassName,
|
|
62
67
|
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
63
68
|
// "data-plasmic-canvas-envs" prop only exists in studio canvas
|
|
64
|
-
var
|
|
69
|
+
var inCanvas = !!usePlasmicCanvasContext();
|
|
65
70
|
var slider = useRef(null);
|
|
66
|
-
var
|
|
71
|
+
var debouncedInitialSlide = useDebounce(initialSlide);
|
|
67
72
|
useEffect(function () {
|
|
68
|
-
if (
|
|
73
|
+
if (debouncedInitialSlide !== undefined && inCanvas) {
|
|
69
74
|
var _slider$current;
|
|
70
|
-
(_slider$current = slider.current) == null || _slider$current.slickGoTo(
|
|
75
|
+
(_slider$current = slider.current) == null || _slider$current.slickGoTo(debouncedInitialSlide);
|
|
71
76
|
}
|
|
72
|
-
}, [
|
|
77
|
+
}, [debouncedInitialSlide, inCanvas]);
|
|
73
78
|
React.useImperativeHandle(userRef, function () {
|
|
74
79
|
return {
|
|
75
80
|
slickGoTo: function slickGoTo(index, dontAnimate) {
|
|
@@ -120,13 +125,13 @@ function registerSlider(loader) {
|
|
|
120
125
|
rows = _ref$rows === void 0 ? 1 : _ref$rows,
|
|
121
126
|
_ref$slidesPerRow = _ref.slidesPerRow,
|
|
122
127
|
slidesPerRow = _ref$slidesPerRow === void 0 ? 1 : _ref$slidesPerRow,
|
|
123
|
-
_ref$
|
|
124
|
-
|
|
128
|
+
_ref$initialSlide = _ref.initialSlide,
|
|
129
|
+
initialSlide = _ref$initialSlide === void 0 ? 0 : _ref$initialSlide,
|
|
125
130
|
children = _ref.children;
|
|
126
131
|
var slidesCnt = Array.isArray(children) ? children.length : 1;
|
|
127
132
|
var slidesPerDot = rows * slidesPerRow;
|
|
128
133
|
var dotCount = Math.ceil(slidesCnt / slidesPerDot);
|
|
129
|
-
var currentDotIndex =
|
|
134
|
+
var currentDotIndex = initialSlide >= dotCount ? dotCount - 1 : initialSlide;
|
|
130
135
|
return {
|
|
131
136
|
currentDotIndex: currentDotIndex,
|
|
132
137
|
slidesPerDot: slidesPerDot,
|
|
@@ -151,8 +156,8 @@ function registerSlider(loader) {
|
|
|
151
156
|
}, "Slide ", i);
|
|
152
157
|
});
|
|
153
158
|
var handleChange = function handleChange(e) {
|
|
154
|
-
studioOps.
|
|
155
|
-
|
|
159
|
+
studioOps.updateStates({
|
|
160
|
+
currentSlide: Number(e.target.value)
|
|
156
161
|
});
|
|
157
162
|
};
|
|
158
163
|
return React.createElement("div", {
|
|
@@ -192,8 +197,8 @@ function registerSlider(loader) {
|
|
|
192
197
|
},
|
|
193
198
|
onClick: function onClick() {
|
|
194
199
|
var prevSlide = currentDotIndex === 0 ? dotCount - 1 : (currentDotIndex - 1) % dotCount;
|
|
195
|
-
studioOps.
|
|
196
|
-
|
|
200
|
+
studioOps.updateStates({
|
|
201
|
+
currentSlide: prevSlide
|
|
197
202
|
});
|
|
198
203
|
}
|
|
199
204
|
}, "Prev slide"), React.createElement(Button, {
|
|
@@ -202,8 +207,8 @@ function registerSlider(loader) {
|
|
|
202
207
|
},
|
|
203
208
|
onClick: function onClick() {
|
|
204
209
|
var nextSlide = (currentDotIndex + 1) % dotCount;
|
|
205
|
-
studioOps.
|
|
206
|
-
|
|
210
|
+
studioOps.updateStates({
|
|
211
|
+
currentSlide: nextSlide
|
|
207
212
|
});
|
|
208
213
|
}
|
|
209
214
|
}, "Next slide"));
|
|
@@ -233,7 +238,7 @@ function registerSlider(loader) {
|
|
|
233
238
|
dotCount = _getSlideInfo3.dotCount,
|
|
234
239
|
slidesPerDot = _getSlideInfo3.slidesPerDot,
|
|
235
240
|
totalSlides = _getSlideInfo3.totalSlides;
|
|
236
|
-
var
|
|
241
|
+
var currentSlide = totalSlides % slidesPerDot ? dotCount - 1 : dotCount;
|
|
237
242
|
studioOps.appendToSlot({
|
|
238
243
|
type: "img",
|
|
239
244
|
src: "",
|
|
@@ -241,8 +246,8 @@ function registerSlider(loader) {
|
|
|
241
246
|
maxWidth: "100%"
|
|
242
247
|
}
|
|
243
248
|
}, "children");
|
|
244
|
-
studioOps.
|
|
245
|
-
|
|
249
|
+
studioOps.updateStates({
|
|
250
|
+
currentSlide: currentSlide
|
|
246
251
|
});
|
|
247
252
|
}
|
|
248
253
|
}, {
|
|
@@ -276,8 +281,8 @@ function registerSlider(loader) {
|
|
|
276
281
|
// the last dot
|
|
277
282
|
newPos = totalSlides % slidesPerDot === 1 ? currentDotIndex - 1 : currentDotIndex;
|
|
278
283
|
}
|
|
279
|
-
studioOps.
|
|
280
|
-
|
|
284
|
+
studioOps.updateStates({
|
|
285
|
+
currentSlide: newPos
|
|
281
286
|
});
|
|
282
287
|
}
|
|
283
288
|
}, {
|
|
@@ -330,17 +335,6 @@ function registerSlider(loader) {
|
|
|
330
335
|
};
|
|
331
336
|
})
|
|
332
337
|
},
|
|
333
|
-
editingSlide: {
|
|
334
|
-
displayName: "Currently edited slide",
|
|
335
|
-
type: "number",
|
|
336
|
-
description: "Switch to the specified slide (first is 0). Only affects the editor, not the final page.",
|
|
337
|
-
defaultValueHint: 0,
|
|
338
|
-
defaultValue: 0,
|
|
339
|
-
editOnly: true,
|
|
340
|
-
hidden: function hidden() {
|
|
341
|
-
return true;
|
|
342
|
-
}
|
|
343
|
-
},
|
|
344
338
|
accessibility: {
|
|
345
339
|
advanced: true,
|
|
346
340
|
displayName: "Accessibility",
|
|
@@ -606,7 +600,7 @@ function registerSlider(loader) {
|
|
|
606
600
|
states: {
|
|
607
601
|
currentSlide: _extends({
|
|
608
602
|
type: "writable",
|
|
609
|
-
valueProp: "
|
|
603
|
+
valueProp: "initialSlide",
|
|
610
604
|
onChangeProp: "beforeChange",
|
|
611
605
|
variableType: "number"
|
|
612
606
|
}, sliderHelpers.states.currentSlide)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-slick.esm.js","sources":["../src/index.tsx"],"sourcesContent":["import registerComponent, {\n ActionProps,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n editingSlide?: number;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { editingSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const isEditMode = (props as any)[\"data-plasmic-canvas-envs\"] ? true : false;\n const slider = useRef<Slider>(null);\n const debouncedEditingSlide = useDebounce(editingSlide);\n\n useEffect(() => {\n if (debouncedEditingSlide !== undefined && isEditMode) {\n slider.current?.slickGoTo(debouncedEditingSlide);\n }\n }, [debouncedEditingSlide, isEditMode]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n editingSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n editingSlide >= dotCount ? dotCount - 1 : editingSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateProps({ editingSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateProps({ editingSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateProps({ editingSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const editingSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateProps({ editingSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateProps({\n editingSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n editingSlide: {\n displayName: \"Currently edited slide\",\n type: \"number\",\n description:\n \"Switch to the specified slide (first is 0). Only affects the editor, not the final page.\",\n defaultValueHint: 0,\n defaultValue: 0,\n editOnly: true,\n hidden: () => true,\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"editingSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","useDebounce","value","delay","_useState","useState","debouncedValue","setDebouncedValue","useEffect","timer","setTimeout","clearTimeout","SliderWrapper","forwardRef","SliderWrapper_","props","userRef","editingSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","isEditMode","slider","useRef","debouncedEditingSlide","undefined","_slider$current","current","slickGoTo","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","registerSlider","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$editingSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","CurrentSlideDropdown","_ref2","componentProps","studioOps","_getSlideInfo","options","from","i","map","key","toString","handleChange","e","updateProps","Number","target","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","NavigateSlides","_ref3","_getSlideInfo2","Button","onClick","prevSlide","nextSlide","OutlineMessage","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","newPos","refActions","argTypes","defaultValueHint","editOnly","accessibility","advanced","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","initialSlide","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-slick.esm.js","sources":["../src/index.tsx"],"sourcesContent":["import { usePlasmicCanvasContext } from \"@plasmicapp/host\";\nimport registerComponent, {\n ActionProps,\n ComponentHelpers,\n ComponentMeta,\n} from \"@plasmicapp/host/registerComponent\";\nimport { Button } from \"antd\";\nimport React, {\n ChangeEvent,\n forwardRef,\n Ref,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport Slider, { Settings } from \"react-slick\";\n\ntype SliderProps = Settings & {\n arrowColor?: string;\n sliderScopeClassName: string;\n};\n\nexport const sliderHelpers: ComponentHelpers<SliderProps> = {\n states: {\n currentSlide: {\n onChangeArgsToValue: (_: number, newIndex: number) => newIndex,\n onMutate: (stateValue, $ref) => {\n console.log(\"dale\", stateValue, $ref);\n $ref.slickGoTo(stateValue);\n },\n },\n },\n};\n\nfunction useDebounce<T>(value: T, delay?: number): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay || 500);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n\nexport type SliderMethods = Pick<\n Slider,\n \"slickGoTo\" | \"slickNext\" | \"slickPause\" | \"slickPlay\" | \"slickPrev\"\n>;\n\nexport const SliderWrapper = forwardRef(function SliderWrapper_(\n props: SliderProps,\n userRef?: Ref<SliderMethods>\n) {\n const { initialSlide, arrowColor, className, sliderScopeClassName, ...rest } =\n props;\n // \"data-plasmic-canvas-envs\" prop only exists in studio canvas\n const inCanvas = !!usePlasmicCanvasContext();\n const slider = useRef<Slider>(null);\n const debouncedInitialSlide = useDebounce(initialSlide);\n\n useEffect(() => {\n if (debouncedInitialSlide !== undefined && inCanvas) {\n slider.current?.slickGoTo(debouncedInitialSlide);\n }\n }, [debouncedInitialSlide, inCanvas]);\n\n React.useImperativeHandle(\n userRef,\n () => ({\n slickGoTo(index, dontAnimate) {\n if (slider.current) {\n const { slickGoTo } = slider.current;\n slickGoTo(index, dontAnimate);\n }\n },\n slickNext() {\n if (slider.current) {\n const { slickNext } = slider.current;\n slickNext();\n }\n },\n slickPause() {\n if (slider.current) {\n const { slickPause } = slider.current;\n slickPause();\n }\n },\n slickPlay() {\n if (slider.current) {\n const { slickPlay } = slider.current;\n slickPlay();\n }\n },\n slickPrev() {\n if (slider.current) {\n const { slickPrev } = slider.current;\n slickPrev();\n }\n },\n }),\n []\n );\n\n const css = `\n .${sliderScopeClassName} .slick-arrow:before {\n color: ${arrowColor ?? \"black\"};\n }\n .${sliderScopeClassName} .slick-slide img:only-child,\n .${sliderScopeClassName} .slick-slide .__wab_img-wrapper:only-child {\n ${\n /* NOTE: this is otherwise explicitly set to \"block\" by react-slick (which should also fix this issue but somehow doesn't.). */ \"\"\n }\n ${\n /* This style override is added to fix a well-known issue with images inside divs. https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image */ \"\"\n }\n display: inline-block;\n vertical-align: top;\n }\n `;\n\n return (\n <>\n <Slider\n className={`${className} ${sliderScopeClassName}`}\n ref={slider}\n {...rest}\n />\n <style dangerouslySetInnerHTML={{ __html: css }} />\n </>\n );\n});\n\nexport function registerSlider(loader?: {\n registerComponent: typeof registerComponent;\n}) {\n function getSlideInfo({\n rows = 1,\n slidesPerRow = 1,\n initialSlide = 0,\n children,\n }: SliderProps) {\n const slidesCnt = Array.isArray(children) ? children.length : 1;\n\n const slidesPerDot = rows * slidesPerRow;\n const dotCount = Math.ceil(slidesCnt / slidesPerDot);\n const currentDotIndex =\n initialSlide >= dotCount ? dotCount - 1 : initialSlide;\n\n return {\n currentDotIndex,\n slidesPerDot,\n dotCount,\n totalSlides: slidesCnt,\n };\n }\n\n function CurrentSlideDropdown({\n componentProps,\n studioOps,\n }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n const options = Array.from({ length: dotCount }, (_, i) => i).map((i) => {\n return (\n <option key={i} value={i.toString()}>\n Slide {i}\n </option>\n );\n });\n\n const handleChange = (e: ChangeEvent<HTMLSelectElement>) => {\n studioOps.updateStates({ currentSlide: Number(e.target.value) });\n };\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <div>Current slide:</div>\n <select\n defaultValue={currentDotIndex.toString()}\n style={{ width: \"100%\" }}\n onChange={handleChange}\n value={currentDotIndex.toString()}\n >\n {options}\n </select>\n </div>\n );\n }\n\n function NavigateSlides({ componentProps, studioOps }: ActionProps<any>) {\n const { dotCount, currentDotIndex } = getSlideInfo(componentProps);\n\n return (\n <div\n style={{\n width: \"100%\",\n display: \"flex\",\n flexDirection: \"row\",\n gap: \"10px\",\n justifyContent: \"space-between\",\n }}\n >\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const prevSlide =\n currentDotIndex === 0\n ? dotCount - 1\n : (currentDotIndex - 1) % dotCount;\n studioOps.updateStates({ currentSlide: prevSlide });\n }}\n >\n Prev slide\n </Button>\n <Button\n style={{ width: \"100%\" }}\n onClick={() => {\n const nextSlide = (currentDotIndex + 1) % dotCount;\n studioOps.updateStates({ currentSlide: nextSlide });\n }}\n >\n Next slide\n </Button>\n </div>\n );\n }\n\n function OutlineMessage() {\n return <div>* To re-arrange slides, use the Outline panel</div>;\n }\n const sliderMeta: ComponentMeta<SliderProps> = {\n name: \"hostless-slider\",\n displayName: \"Slider Carousel\",\n importName: \"SliderWrapper\",\n importPath: \"@plasmicpkgs/react-slick\",\n description:\n \"[See tutorial video](https://www.youtube.com/watch?v=GMgXLbNHX8c)\",\n actions: [\n {\n type: \"custom-action\",\n control: CurrentSlideDropdown,\n },\n {\n type: \"custom-action\",\n control: NavigateSlides,\n },\n {\n type: \"button-action\",\n label: \"Append new slide\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n const currentSlide =\n totalSlides % slidesPerDot ? dotCount - 1 : dotCount;\n studioOps.appendToSlot(\n {\n type: \"img\",\n src: \"\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n \"children\"\n );\n studioOps.updateStates({ currentSlide });\n },\n },\n {\n type: \"button-action\",\n label: \"Delete current slide\",\n hidden: (ps) =>\n (ps.children as any)?.type?.name === \"CanvasSlotPlaceholder\",\n onClick: ({ componentProps, studioOps }: ActionProps<any>) => {\n const { currentDotIndex, dotCount, slidesPerDot, totalSlides } =\n getSlideInfo(componentProps);\n studioOps.removeFromSlotAt(\n currentDotIndex * slidesPerDot,\n \"children\"\n );\n let newPos = currentDotIndex;\n if (dotCount === 1) {\n // not the only dot\n newPos = 0;\n } else if (currentDotIndex !== dotCount - 1) {\n // not the last dot\n if (slidesPerDot === 1) {\n newPos = currentDotIndex - 1;\n } else {\n newPos = currentDotIndex;\n }\n } else {\n // the last dot\n newPos =\n totalSlides % slidesPerDot === 1\n ? currentDotIndex - 1\n : currentDotIndex;\n }\n studioOps.updateStates({\n currentSlide: newPos,\n });\n },\n },\n {\n type: \"custom-action\",\n control: OutlineMessage,\n },\n ],\n refActions: {\n slickGoTo: {\n displayName: \"Jump to slide\",\n argTypes: [\n {\n name: \"index\",\n displayName: \"Slide index\",\n type: \"number\",\n },\n {\n name: \"dontAnimate\",\n displayName: \"Animate?\",\n type: \"boolean\",\n },\n ],\n },\n slickNext: {\n displayName: \"Go to Next slide\",\n argTypes: [],\n },\n slickPause: {\n displayName: \"Pause\",\n argTypes: [],\n },\n slickPlay: {\n displayName: \"Play\",\n argTypes: [],\n },\n slickPrev: {\n displayName: \"Go to Previous slide\",\n argTypes: [],\n },\n },\n props: {\n children: {\n type: \"slot\",\n defaultValue: [0, 1, 2].map((i) => ({\n type: \"vbox\",\n children: {\n type: \"img\",\n src:\n \"https://static1.plasmic.app/components/react-slick/slide\" +\n (i + 1) +\n \".png\",\n styles: {\n maxWidth: \"100%\",\n },\n },\n })),\n },\n accessibility: {\n advanced: true,\n displayName: \"Accessibility\",\n type: \"boolean\",\n description: \"Enables tabbing and arrow key navigation\",\n defaultValueHint: true,\n },\n adaptiveHeight: {\n advanced: true,\n displayName: \"Adaptive Height\",\n type: \"boolean\",\n description: \"Adjust the slide's height automatically\",\n defaultValueHint: false,\n },\n arrows: {\n displayName: \"Arrows\",\n type: \"boolean\",\n description: \"Show next/prev arrows\",\n defaultValueHint: true,\n },\n sliderScopeClassName: {\n type: \"styleScopeClass\",\n scopeName: \"slider\",\n } as any,\n arrowColor: {\n type: \"color\",\n description: \"Color of next/prev arrow buttons\",\n defaultValueHint: \"#000000\",\n hidden: (ps) => (ps.arrows === undefined ? false : !ps.arrows),\n },\n autoplay: {\n displayName: \"Auto Play\",\n type: \"boolean\",\n description: \"Automatically start scrolling\",\n defaultValueHint: false,\n },\n autoplaySpeed: {\n displayName: \"Auto Play Speed\",\n type: \"number\",\n description: \"Delay between each auto scroll, in milliseconds\",\n defaultValueHint: 3000,\n hidden: (props) => !props.autoplay,\n },\n centerMode: {\n displayName: \"Center Mode\",\n type: \"boolean\",\n description:\n \"Enables centered view with partial prev/next slides. Use with odd numbered slidesToShow counts\",\n defaultValueHint: false,\n },\n centerPadding: {\n displayName: \"Center Padding\",\n type: \"string\",\n description: \"Side padding when in center mode (px or %)\",\n defaultValueHint: \"50px\",\n hidden: (props) => !props.centerMode,\n },\n dots: {\n displayName: \"Dots\",\n type: \"boolean\",\n description: \"Show dots for each slide\",\n defaultValueHint: false,\n },\n draggable: {\n advanced: true,\n displayName: \"Draggable\",\n type: \"boolean\",\n description: \"Enables mouse dragging on desktop\",\n defaultValueHint: true,\n },\n cssEase: {\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n /** Deprecated, this was apparently never working:\n * https://github.com/akiran/react-slick/issues/363 */\n easing: {\n hidden: () => true,\n advanced: true,\n displayName: \"Easing\",\n type: \"string\",\n description: \"Easing method for transition\",\n defaultValueHint: \"linear\",\n },\n fade: {\n advanced: true,\n displayName: \"Fade\",\n type: \"boolean\",\n description: \"Cross-fade between slides\",\n defaultValueHint: false,\n },\n focusOnSelect: {\n advanced: true,\n displayName: \"Focus On Select\",\n type: \"boolean\",\n description: \"Go to slide on click\",\n defaultValueHint: false,\n },\n infinite: {\n displayName: \"Infinite\",\n type: \"boolean\",\n description: \"Infinitely wrap around contents\",\n defaultValueHint: true,\n },\n initialSlide: {\n displayName: \"Initial Slide\",\n type: \"number\",\n description:\n \"Index of the first visible slide (first is 0), accounting for multiple slides per view if applicable.\",\n defaultValueHint: 0,\n defaultValue: 0,\n },\n lazyLoad: {\n advanced: true,\n displayName: \"Lazy Load\",\n type: \"choice\",\n options: [\"ondemand\", \"progressive\"],\n description:\n \"Load images or render components on demand or progressively\",\n },\n pauseOnDotsHover: {\n displayName: \"Pause On Dots Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on dots\",\n defaultValueHint: false,\n },\n pauseOnFocus: {\n displayName: \"Pause On Focus\",\n type: \"boolean\",\n description: \"Prevents autoplay while focused on slides\",\n defaultValueHint: false,\n },\n pauseOnHover: {\n displayName: \"Pause On Hover\",\n type: \"boolean\",\n description: \"Prevents autoplay while hovering on track\",\n defaultValueHint: true,\n },\n rows: {\n displayName: \"Rows\",\n type: \"number\",\n description: \"Number of rows per slide (enables grid mode)\",\n defaultValueHint: 1,\n },\n rtl: {\n advanced: true,\n displayName: \"Reverse\",\n type: \"boolean\",\n description: \"Reverses the slide order\",\n defaultValueHint: false,\n },\n // Looks like the `slide` prop is not being used to set the container tag:\n // https://github.com/akiran/react-slick/issues/1318\n // https://github.com/akiran/react-slick/pull/1885\n // https://stackoverflow.com/questions/51492535/wrap-react-slick-li-slides-inside-ul\n //\n // slide: {\n // displayName: \"Slide Tag\",\n // type: \"string\",\n // description: 'Slide container element type',\n // defaultValueHint: \"div\",\n // },\n slidesPerRow: {\n displayName: \"Slides Per Row\",\n type: \"number\",\n description:\n \"Number of slides to display in grid mode, this is useful with rows option\",\n defaultValueHint: 1,\n },\n slidesToScroll: {\n advanced: true,\n displayName: \"Slides To Scroll\",\n type: \"number\",\n description: \"Number of slides to scroll at once\",\n defaultValueHint: 1,\n },\n slidesToShow: {\n advanced: true,\n displayName: \"Slides To Show\",\n type: \"number\",\n description: \"Number of slides to show in one frame\",\n defaultValueHint: 1,\n },\n speed: {\n advanced: true,\n displayName: \"Speed\",\n type: \"number\",\n description: \"Transition speed in milliseconds\",\n defaultValueHint: 500,\n },\n swipe: {\n advanced: true,\n displayName: \"Swipe\",\n type: \"boolean\",\n description: \"Enable swiping to change slides\",\n defaultValueHint: true,\n },\n swipeToSlide: {\n advanced: true,\n displayName: \"Swipe To Slide\",\n type: \"boolean\",\n description: \"Enable drag/swipe irrespective of 'slidesToScroll'\",\n defaultValueHint: false,\n },\n touchMove: {\n advanced: true,\n displayName: \"Touch Move\",\n type: \"boolean\",\n description: \"Enable slide moving on touch\",\n defaultValueHint: true,\n },\n touchThreshold: {\n advanced: true,\n displayName: \"Touch Threshold\",\n type: \"number\",\n description: \"Swipe distance threshold in pixels\",\n defaultValueHint: 5,\n },\n useCSS: {\n advanced: true,\n displayName: \"Use CSS\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transitions\",\n defaultValueHint: true,\n },\n useTransform: {\n advanced: true,\n displayName: \"Use Transform\",\n type: \"boolean\",\n description: \"Enable/Disable CSS Transforms\",\n defaultValueHint: true,\n },\n variableWidth: {\n advanced: true,\n displayName: \"Variable Width\",\n type: \"boolean\",\n description: \"Variable width slides\",\n defaultValueHint: false,\n },\n vertical: {\n advanced: true,\n displayName: \"Vertical\",\n type: \"boolean\",\n description: \"Vertical slide mode\",\n defaultValueHint: false,\n },\n beforeChange: {\n type: \"eventHandler\",\n advanced: true,\n argTypes: [{ name: \"currentSlide\", type: \"number\" }],\n },\n },\n states: {\n currentSlide: {\n type: \"writable\",\n valueProp: \"initialSlide\",\n onChangeProp: \"beforeChange\",\n variableType: \"number\",\n ...sliderHelpers.states.currentSlide,\n },\n },\n componentHelpers: {\n helpers: sliderHelpers,\n importName: \"sliderHelpers\",\n importPath: \"@plasmicpkgs/react-slick\",\n },\n defaultStyles: {\n width: \"stretch\",\n maxWidth: \"100%\",\n flexDirection: \"column\",\n },\n };\n if (loader) {\n loader.registerComponent(SliderWrapper, sliderMeta);\n } else {\n registerComponent(SliderWrapper, sliderMeta);\n }\n}\n"],"names":["sliderHelpers","states","currentSlide","onChangeArgsToValue","_","newIndex","onMutate","stateValue","$ref","console","log","slickGoTo","useDebounce","value","delay","_useState","useState","debouncedValue","setDebouncedValue","useEffect","timer","setTimeout","clearTimeout","SliderWrapper","forwardRef","SliderWrapper_","props","userRef","initialSlide","arrowColor","className","sliderScopeClassName","rest","_objectWithoutPropertiesLoose","_excluded","inCanvas","usePlasmicCanvasContext","slider","useRef","debouncedInitialSlide","undefined","_slider$current","current","React","useImperativeHandle","index","dontAnimate","slickNext","slickPause","slickPlay","slickPrev","css","Slider","ref","dangerouslySetInnerHTML","__html","registerSlider","loader","getSlideInfo","_ref","rows","_ref$rows","_ref$slidesPerRow","slidesPerRow","_ref$initialSlide","children","slidesCnt","Array","isArray","length","slidesPerDot","dotCount","Math","ceil","currentDotIndex","totalSlides","CurrentSlideDropdown","_ref2","componentProps","studioOps","_getSlideInfo","options","from","i","map","key","toString","handleChange","e","updateStates","Number","target","style","width","display","flexDirection","gap","justifyContent","defaultValue","onChange","NavigateSlides","_ref3","_getSlideInfo2","Button","onClick","prevSlide","nextSlide","OutlineMessage","sliderMeta","name","displayName","importName","importPath","description","actions","type","control","label","_ref4","_getSlideInfo3","appendToSlot","src","styles","maxWidth","hidden","ps","_ps$children","_ref5","_getSlideInfo4","removeFromSlotAt","newPos","refActions","argTypes","accessibility","advanced","defaultValueHint","adaptiveHeight","arrows","scopeName","autoplay","autoplaySpeed","centerMode","centerPadding","dots","draggable","cssEase","easing","fade","focusOnSelect","infinite","lazyLoad","pauseOnDotsHover","pauseOnFocus","pauseOnHover","rtl","slidesToScroll","slidesToShow","speed","swipe","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","beforeChange","_extends","valueProp","onChangeProp","variableType","componentHelpers","helpers","defaultStyles","registerComponent"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/react-slick",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.202",
|
|
4
4
|
"description": "Plasmic registration call for the React Slick Slider component",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -48,5 +48,5 @@
|
|
|
48
48
|
"react": ">=16.8.0",
|
|
49
49
|
"react-dom": ">=16.8.0"
|
|
50
50
|
},
|
|
51
|
-
"gitHead": "
|
|
51
|
+
"gitHead": "485c32697390000b360d4ecd36ea4862b723fdb8"
|
|
52
52
|
}
|