@plasmicpkgs/react-slick 0.0.201 → 0.0.203
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 +26 -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 +26 -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,15 @@ 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
|
+
$ref.slickGoTo(stateValue);
|
|
46
50
|
}
|
|
47
51
|
}
|
|
48
52
|
}
|
|
@@ -62,21 +66,21 @@ function useDebounce(value, delay) {
|
|
|
62
66
|
return debouncedValue;
|
|
63
67
|
}
|
|
64
68
|
var SliderWrapper = /*#__PURE__*/React.forwardRef(function SliderWrapper_(props, userRef) {
|
|
65
|
-
var
|
|
69
|
+
var initialSlide = props.initialSlide,
|
|
66
70
|
arrowColor = props.arrowColor,
|
|
67
71
|
className = props.className,
|
|
68
72
|
sliderScopeClassName = props.sliderScopeClassName,
|
|
69
73
|
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
70
74
|
// "data-plasmic-canvas-envs" prop only exists in studio canvas
|
|
71
|
-
var
|
|
75
|
+
var inCanvas = !!host.usePlasmicCanvasContext();
|
|
72
76
|
var slider = React.useRef(null);
|
|
73
|
-
var
|
|
77
|
+
var debouncedInitialSlide = useDebounce(initialSlide);
|
|
74
78
|
React.useEffect(function () {
|
|
75
|
-
if (
|
|
79
|
+
if (debouncedInitialSlide !== undefined && inCanvas) {
|
|
76
80
|
var _slider$current;
|
|
77
|
-
(_slider$current = slider.current) == null || _slider$current.slickGoTo(
|
|
81
|
+
(_slider$current = slider.current) == null || _slider$current.slickGoTo(debouncedInitialSlide);
|
|
78
82
|
}
|
|
79
|
-
}, [
|
|
83
|
+
}, [debouncedInitialSlide, inCanvas]);
|
|
80
84
|
React__default.useImperativeHandle(userRef, function () {
|
|
81
85
|
return {
|
|
82
86
|
slickGoTo: function slickGoTo(index, dontAnimate) {
|
|
@@ -127,13 +131,13 @@ function registerSlider(loader) {
|
|
|
127
131
|
rows = _ref$rows === void 0 ? 1 : _ref$rows,
|
|
128
132
|
_ref$slidesPerRow = _ref.slidesPerRow,
|
|
129
133
|
slidesPerRow = _ref$slidesPerRow === void 0 ? 1 : _ref$slidesPerRow,
|
|
130
|
-
_ref$
|
|
131
|
-
|
|
134
|
+
_ref$initialSlide = _ref.initialSlide,
|
|
135
|
+
initialSlide = _ref$initialSlide === void 0 ? 0 : _ref$initialSlide,
|
|
132
136
|
children = _ref.children;
|
|
133
137
|
var slidesCnt = Array.isArray(children) ? children.length : 1;
|
|
134
138
|
var slidesPerDot = rows * slidesPerRow;
|
|
135
139
|
var dotCount = Math.ceil(slidesCnt / slidesPerDot);
|
|
136
|
-
var currentDotIndex =
|
|
140
|
+
var currentDotIndex = initialSlide >= dotCount ? dotCount - 1 : initialSlide;
|
|
137
141
|
return {
|
|
138
142
|
currentDotIndex: currentDotIndex,
|
|
139
143
|
slidesPerDot: slidesPerDot,
|
|
@@ -158,8 +162,8 @@ function registerSlider(loader) {
|
|
|
158
162
|
}, "Slide ", i);
|
|
159
163
|
});
|
|
160
164
|
var handleChange = function handleChange(e) {
|
|
161
|
-
studioOps.
|
|
162
|
-
|
|
165
|
+
studioOps.updateStates({
|
|
166
|
+
currentSlide: Number(e.target.value)
|
|
163
167
|
});
|
|
164
168
|
};
|
|
165
169
|
return React__default.createElement("div", {
|
|
@@ -199,8 +203,8 @@ function registerSlider(loader) {
|
|
|
199
203
|
},
|
|
200
204
|
onClick: function onClick() {
|
|
201
205
|
var prevSlide = currentDotIndex === 0 ? dotCount - 1 : (currentDotIndex - 1) % dotCount;
|
|
202
|
-
studioOps.
|
|
203
|
-
|
|
206
|
+
studioOps.updateStates({
|
|
207
|
+
currentSlide: prevSlide
|
|
204
208
|
});
|
|
205
209
|
}
|
|
206
210
|
}, "Prev slide"), React__default.createElement(antd.Button, {
|
|
@@ -209,8 +213,8 @@ function registerSlider(loader) {
|
|
|
209
213
|
},
|
|
210
214
|
onClick: function onClick() {
|
|
211
215
|
var nextSlide = (currentDotIndex + 1) % dotCount;
|
|
212
|
-
studioOps.
|
|
213
|
-
|
|
216
|
+
studioOps.updateStates({
|
|
217
|
+
currentSlide: nextSlide
|
|
214
218
|
});
|
|
215
219
|
}
|
|
216
220
|
}, "Next slide"));
|
|
@@ -240,7 +244,7 @@ function registerSlider(loader) {
|
|
|
240
244
|
dotCount = _getSlideInfo3.dotCount,
|
|
241
245
|
slidesPerDot = _getSlideInfo3.slidesPerDot,
|
|
242
246
|
totalSlides = _getSlideInfo3.totalSlides;
|
|
243
|
-
var
|
|
247
|
+
var currentSlide = totalSlides % slidesPerDot ? dotCount - 1 : dotCount;
|
|
244
248
|
studioOps.appendToSlot({
|
|
245
249
|
type: "img",
|
|
246
250
|
src: "",
|
|
@@ -248,8 +252,8 @@ function registerSlider(loader) {
|
|
|
248
252
|
maxWidth: "100%"
|
|
249
253
|
}
|
|
250
254
|
}, "children");
|
|
251
|
-
studioOps.
|
|
252
|
-
|
|
255
|
+
studioOps.updateStates({
|
|
256
|
+
currentSlide: currentSlide
|
|
253
257
|
});
|
|
254
258
|
}
|
|
255
259
|
}, {
|
|
@@ -283,8 +287,8 @@ function registerSlider(loader) {
|
|
|
283
287
|
// the last dot
|
|
284
288
|
newPos = totalSlides % slidesPerDot === 1 ? currentDotIndex - 1 : currentDotIndex;
|
|
285
289
|
}
|
|
286
|
-
studioOps.
|
|
287
|
-
|
|
290
|
+
studioOps.updateStates({
|
|
291
|
+
currentSlide: newPos
|
|
288
292
|
});
|
|
289
293
|
}
|
|
290
294
|
}, {
|
|
@@ -337,17 +341,6 @@ function registerSlider(loader) {
|
|
|
337
341
|
};
|
|
338
342
|
})
|
|
339
343
|
},
|
|
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
344
|
accessibility: {
|
|
352
345
|
advanced: true,
|
|
353
346
|
displayName: "Accessibility",
|
|
@@ -613,7 +606,7 @@ function registerSlider(loader) {
|
|
|
613
606
|
states: {
|
|
614
607
|
currentSlide: _extends({
|
|
615
608
|
type: "writable",
|
|
616
|
-
valueProp: "
|
|
609
|
+
valueProp: "initialSlide",
|
|
617
610
|
onChangeProp: "beforeChange",
|
|
618
611
|
variableType: "number"
|
|
619
612
|
}, 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 $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","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){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 $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","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,15 @@ 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
|
+
$ref.slickGoTo(stateValue);
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
45
|
}
|
|
@@ -55,21 +59,21 @@ function useDebounce(value, delay) {
|
|
|
55
59
|
return debouncedValue;
|
|
56
60
|
}
|
|
57
61
|
var SliderWrapper = /*#__PURE__*/forwardRef(function SliderWrapper_(props, userRef) {
|
|
58
|
-
var
|
|
62
|
+
var initialSlide = props.initialSlide,
|
|
59
63
|
arrowColor = props.arrowColor,
|
|
60
64
|
className = props.className,
|
|
61
65
|
sliderScopeClassName = props.sliderScopeClassName,
|
|
62
66
|
rest = _objectWithoutPropertiesLoose(props, _excluded);
|
|
63
67
|
// "data-plasmic-canvas-envs" prop only exists in studio canvas
|
|
64
|
-
var
|
|
68
|
+
var inCanvas = !!usePlasmicCanvasContext();
|
|
65
69
|
var slider = useRef(null);
|
|
66
|
-
var
|
|
70
|
+
var debouncedInitialSlide = useDebounce(initialSlide);
|
|
67
71
|
useEffect(function () {
|
|
68
|
-
if (
|
|
72
|
+
if (debouncedInitialSlide !== undefined && inCanvas) {
|
|
69
73
|
var _slider$current;
|
|
70
|
-
(_slider$current = slider.current) == null || _slider$current.slickGoTo(
|
|
74
|
+
(_slider$current = slider.current) == null || _slider$current.slickGoTo(debouncedInitialSlide);
|
|
71
75
|
}
|
|
72
|
-
}, [
|
|
76
|
+
}, [debouncedInitialSlide, inCanvas]);
|
|
73
77
|
React.useImperativeHandle(userRef, function () {
|
|
74
78
|
return {
|
|
75
79
|
slickGoTo: function slickGoTo(index, dontAnimate) {
|
|
@@ -120,13 +124,13 @@ function registerSlider(loader) {
|
|
|
120
124
|
rows = _ref$rows === void 0 ? 1 : _ref$rows,
|
|
121
125
|
_ref$slidesPerRow = _ref.slidesPerRow,
|
|
122
126
|
slidesPerRow = _ref$slidesPerRow === void 0 ? 1 : _ref$slidesPerRow,
|
|
123
|
-
_ref$
|
|
124
|
-
|
|
127
|
+
_ref$initialSlide = _ref.initialSlide,
|
|
128
|
+
initialSlide = _ref$initialSlide === void 0 ? 0 : _ref$initialSlide,
|
|
125
129
|
children = _ref.children;
|
|
126
130
|
var slidesCnt = Array.isArray(children) ? children.length : 1;
|
|
127
131
|
var slidesPerDot = rows * slidesPerRow;
|
|
128
132
|
var dotCount = Math.ceil(slidesCnt / slidesPerDot);
|
|
129
|
-
var currentDotIndex =
|
|
133
|
+
var currentDotIndex = initialSlide >= dotCount ? dotCount - 1 : initialSlide;
|
|
130
134
|
return {
|
|
131
135
|
currentDotIndex: currentDotIndex,
|
|
132
136
|
slidesPerDot: slidesPerDot,
|
|
@@ -151,8 +155,8 @@ function registerSlider(loader) {
|
|
|
151
155
|
}, "Slide ", i);
|
|
152
156
|
});
|
|
153
157
|
var handleChange = function handleChange(e) {
|
|
154
|
-
studioOps.
|
|
155
|
-
|
|
158
|
+
studioOps.updateStates({
|
|
159
|
+
currentSlide: Number(e.target.value)
|
|
156
160
|
});
|
|
157
161
|
};
|
|
158
162
|
return React.createElement("div", {
|
|
@@ -192,8 +196,8 @@ function registerSlider(loader) {
|
|
|
192
196
|
},
|
|
193
197
|
onClick: function onClick() {
|
|
194
198
|
var prevSlide = currentDotIndex === 0 ? dotCount - 1 : (currentDotIndex - 1) % dotCount;
|
|
195
|
-
studioOps.
|
|
196
|
-
|
|
199
|
+
studioOps.updateStates({
|
|
200
|
+
currentSlide: prevSlide
|
|
197
201
|
});
|
|
198
202
|
}
|
|
199
203
|
}, "Prev slide"), React.createElement(Button, {
|
|
@@ -202,8 +206,8 @@ function registerSlider(loader) {
|
|
|
202
206
|
},
|
|
203
207
|
onClick: function onClick() {
|
|
204
208
|
var nextSlide = (currentDotIndex + 1) % dotCount;
|
|
205
|
-
studioOps.
|
|
206
|
-
|
|
209
|
+
studioOps.updateStates({
|
|
210
|
+
currentSlide: nextSlide
|
|
207
211
|
});
|
|
208
212
|
}
|
|
209
213
|
}, "Next slide"));
|
|
@@ -233,7 +237,7 @@ function registerSlider(loader) {
|
|
|
233
237
|
dotCount = _getSlideInfo3.dotCount,
|
|
234
238
|
slidesPerDot = _getSlideInfo3.slidesPerDot,
|
|
235
239
|
totalSlides = _getSlideInfo3.totalSlides;
|
|
236
|
-
var
|
|
240
|
+
var currentSlide = totalSlides % slidesPerDot ? dotCount - 1 : dotCount;
|
|
237
241
|
studioOps.appendToSlot({
|
|
238
242
|
type: "img",
|
|
239
243
|
src: "",
|
|
@@ -241,8 +245,8 @@ function registerSlider(loader) {
|
|
|
241
245
|
maxWidth: "100%"
|
|
242
246
|
}
|
|
243
247
|
}, "children");
|
|
244
|
-
studioOps.
|
|
245
|
-
|
|
248
|
+
studioOps.updateStates({
|
|
249
|
+
currentSlide: currentSlide
|
|
246
250
|
});
|
|
247
251
|
}
|
|
248
252
|
}, {
|
|
@@ -276,8 +280,8 @@ function registerSlider(loader) {
|
|
|
276
280
|
// the last dot
|
|
277
281
|
newPos = totalSlides % slidesPerDot === 1 ? currentDotIndex - 1 : currentDotIndex;
|
|
278
282
|
}
|
|
279
|
-
studioOps.
|
|
280
|
-
|
|
283
|
+
studioOps.updateStates({
|
|
284
|
+
currentSlide: newPos
|
|
281
285
|
});
|
|
282
286
|
}
|
|
283
287
|
}, {
|
|
@@ -330,17 +334,6 @@ function registerSlider(loader) {
|
|
|
330
334
|
};
|
|
331
335
|
})
|
|
332
336
|
},
|
|
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
337
|
accessibility: {
|
|
345
338
|
advanced: true,
|
|
346
339
|
displayName: "Accessibility",
|
|
@@ -606,7 +599,7 @@ function registerSlider(loader) {
|
|
|
606
599
|
states: {
|
|
607
600
|
currentSlide: _extends({
|
|
608
601
|
type: "writable",
|
|
609
|
-
valueProp: "
|
|
602
|
+
valueProp: "initialSlide",
|
|
610
603
|
onChangeProp: "beforeChange",
|
|
611
604
|
variableType: "number"
|
|
612
605
|
}, 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 $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","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.203",
|
|
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": "20ea5eac4a3ee1f7dd599d22e99618a64661794d"
|
|
52
52
|
}
|