farm-react 1.0.10 → 1.0.12
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/cjs/Utils/index.js.map +1 -1
- package/dist/cjs/assets/data/header.js.map +1 -1
- package/dist/cjs/components/Accordion.js +4 -4
- package/dist/cjs/components/Accordion.js.map +1 -1
- package/dist/cjs/components/Alert.js +6 -6
- package/dist/cjs/components/Alert.js.map +1 -1
- package/dist/cjs/components/Badge.js +6 -6
- package/dist/cjs/components/Badge.js.map +1 -1
- package/dist/cjs/components/BrokenPage.js +7 -7
- package/dist/cjs/components/BrokenPage.js.map +1 -1
- package/dist/cjs/components/Button.d.ts +2 -1
- package/dist/cjs/components/Button.js +6 -6
- package/dist/cjs/components/Button.js.map +1 -1
- package/dist/cjs/components/Card.js +1 -1
- package/dist/cjs/components/Card.js.map +1 -1
- package/dist/cjs/components/Checkbox.js +4 -4
- package/dist/cjs/components/Checkbox.js.map +1 -1
- package/dist/cjs/components/ConfirmPoup.js +8 -8
- package/dist/cjs/components/ConfirmPoup.js.map +1 -1
- package/dist/cjs/components/Dropdown.js +3 -3
- package/dist/cjs/components/Dropdown.js.map +1 -1
- package/dist/cjs/components/Label.js +2 -2
- package/dist/cjs/components/Label.js.map +1 -1
- package/dist/cjs/components/Layout/Footer.js.map +1 -1
- package/dist/cjs/components/Layout/Header.js.map +1 -1
- package/dist/cjs/components/Layout/Sidebar.js.map +1 -1
- package/dist/cjs/components/MultiCheckbox.js.map +1 -1
- package/dist/cjs/components/MultiRadio.js +5 -5
- package/dist/cjs/components/MultiRadio.js.map +1 -1
- package/dist/cjs/components/NumberInput.js +5 -5
- package/dist/cjs/components/NumberInput.js.map +1 -1
- package/dist/cjs/components/Popover.js +4 -4
- package/dist/cjs/components/Popover.js.map +1 -1
- package/dist/cjs/components/Radio.js +4 -4
- package/dist/cjs/components/Radio.js.map +1 -1
- package/dist/cjs/components/RadioButtonGroup.js +16 -16
- package/dist/cjs/components/RadioButtonGroup.js.map +1 -1
- package/dist/cjs/components/RangeSlider.js +4 -4
- package/dist/cjs/components/RangeSlider.js.map +1 -1
- package/dist/cjs/components/RatingDisplay.js +4 -4
- package/dist/cjs/components/RatingDisplay.js.map +1 -1
- package/dist/cjs/components/Search.js.map +1 -1
- package/dist/cjs/components/Select.js +7 -7
- package/dist/cjs/components/Select.js.map +1 -1
- package/dist/cjs/components/SkeletonLoader.js +3 -3
- package/dist/cjs/components/SkeletonLoader.js.map +1 -1
- package/dist/cjs/components/{Slider/SlickSlider.d.ts → SlickSlider.d.ts} +13 -10
- package/dist/cjs/components/{Slider/SlickSlider.js → SlickSlider.js} +40 -67
- package/dist/cjs/components/SlickSlider.js.map +1 -0
- package/dist/cjs/components/TextInput.d.ts +6 -5
- package/dist/cjs/components/TextInput.js +5 -5
- package/dist/cjs/components/TextInput.js.map +1 -1
- package/dist/cjs/components/ThreeDotsLoader.js +3 -3
- package/dist/cjs/components/ThreeDotsLoader.js.map +1 -1
- package/dist/cjs/components/Tooltip.js +3 -3
- package/dist/cjs/components/Tooltip.js.map +1 -1
- package/dist/cjs/{helpers/app.d.ts → components/helper.d.ts} +2 -1
- package/dist/cjs/{helpers/app.js → components/helper.js} +1 -1
- package/dist/cjs/components/helper.js.map +1 -0
- package/dist/cjs/constants/app.js.map +1 -1
- package/dist/cjs/constants/icons.js.map +1 -1
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/{esm/components/Slider → cjs/hooks/slider}/useSlider.d.ts +21 -14
- package/dist/cjs/{components/Slider → hooks/slider}/useSlider.js +62 -67
- package/dist/cjs/hooks/slider/useSlider.js.map +1 -0
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderAutoPlay.d.ts +4 -4
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderAutoPlay.js +4 -4
- package/dist/cjs/hooks/slider/useSliderAutoPlay.js.map +1 -0
- package/dist/cjs/hooks/slider/useSliderBreakpoints.d.ts +35 -0
- package/dist/cjs/hooks/slider/useSliderBreakpoints.js +54 -0
- package/dist/cjs/hooks/slider/useSliderBreakpoints.js.map +1 -0
- package/dist/{esm/components/Slider → cjs/hooks/slider}/useSliderDimension.d.ts +8 -9
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderDimension.js +7 -11
- package/dist/cjs/hooks/slider/useSliderDimension.js.map +1 -0
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderDraggable.d.ts +7 -8
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderDraggable.js +13 -16
- package/dist/cjs/hooks/slider/useSliderDraggable.js.map +1 -0
- package/dist/{esm/components/Slider → cjs/hooks/slider}/useSliderNavigation.d.ts +5 -4
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderNavigation.js +9 -21
- package/dist/cjs/hooks/slider/useSliderNavigation.js.map +1 -0
- package/dist/cjs/hooks/slider/useSliderTransform.d.ts +31 -0
- package/dist/cjs/{components/Slider → hooks/slider}/useSliderTransform.js +11 -16
- package/dist/cjs/hooks/slider/useSliderTransform.js.map +1 -0
- package/dist/cjs/hooks/useLocalStorage.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/strings/en.js.map +1 -1
- package/dist/cjs/subComponent/ToggleButton.js +2 -2
- package/dist/cjs/subComponent/ToggleButton.js.map +1 -1
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js +3 -3
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -1
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -1
- package/dist/esm/Utils/index.js.map +1 -1
- package/dist/esm/assets/data/header.js.map +1 -1
- package/dist/esm/components/Accordion.js +1 -1
- package/dist/esm/components/Accordion.js.map +1 -1
- package/dist/esm/components/Alert.js +1 -1
- package/dist/esm/components/Alert.js.map +1 -1
- package/dist/esm/components/Badge.js +1 -1
- package/dist/esm/components/Badge.js.map +1 -1
- package/dist/esm/components/BrokenPage.js +1 -1
- package/dist/esm/components/BrokenPage.js.map +1 -1
- package/dist/esm/components/Button.d.ts +2 -1
- package/dist/esm/components/Button.js +1 -1
- package/dist/esm/components/Button.js.map +1 -1
- package/dist/esm/components/Card.js +1 -1
- package/dist/esm/components/Card.js.map +1 -1
- package/dist/esm/components/Checkbox.js +1 -1
- package/dist/esm/components/Checkbox.js.map +1 -1
- package/dist/esm/components/ConfirmPoup.js +1 -1
- package/dist/esm/components/ConfirmPoup.js.map +1 -1
- package/dist/esm/components/Dropdown.js +1 -1
- package/dist/esm/components/Dropdown.js.map +1 -1
- package/dist/esm/components/Label.js +1 -1
- package/dist/esm/components/Label.js.map +1 -1
- package/dist/esm/components/Layout/Footer.js.map +1 -1
- package/dist/esm/components/Layout/Header.js.map +1 -1
- package/dist/esm/components/Layout/Sidebar.js.map +1 -1
- package/dist/esm/components/MultiCheckbox.js.map +1 -1
- package/dist/esm/components/MultiRadio.js +1 -1
- package/dist/esm/components/MultiRadio.js.map +1 -1
- package/dist/esm/components/NumberInput.js +1 -1
- package/dist/esm/components/NumberInput.js.map +1 -1
- package/dist/esm/components/Popover.js +1 -1
- package/dist/esm/components/Popover.js.map +1 -1
- package/dist/esm/components/Radio.js +1 -1
- package/dist/esm/components/Radio.js.map +1 -1
- package/dist/esm/components/RadioButtonGroup.js +1 -1
- package/dist/esm/components/RadioButtonGroup.js.map +1 -1
- package/dist/esm/components/RangeSlider.js +1 -1
- package/dist/esm/components/RangeSlider.js.map +1 -1
- package/dist/esm/components/RatingDisplay.js +1 -1
- package/dist/esm/components/RatingDisplay.js.map +1 -1
- package/dist/esm/components/Search.js.map +1 -1
- package/dist/esm/components/Select.js +1 -1
- package/dist/esm/components/Select.js.map +1 -1
- package/dist/esm/components/SkeletonLoader.js +1 -1
- package/dist/esm/components/SkeletonLoader.js.map +1 -1
- package/dist/esm/components/{Slider/SlickSlider.d.ts → SlickSlider.d.ts} +13 -10
- package/dist/esm/components/{Slider/SlickSlider.js → SlickSlider.js} +34 -61
- package/dist/esm/components/SlickSlider.js.map +1 -0
- package/dist/esm/components/TextInput.d.ts +6 -5
- package/dist/esm/components/TextInput.js +1 -1
- package/dist/esm/components/TextInput.js.map +1 -1
- package/dist/esm/components/ThreeDotsLoader.js +1 -1
- package/dist/esm/components/ThreeDotsLoader.js.map +1 -1
- package/dist/esm/components/Tooltip.js +1 -1
- package/dist/esm/components/Tooltip.js.map +1 -1
- package/dist/esm/{helpers/app.d.ts → components/helper.d.ts} +2 -1
- package/dist/esm/{helpers/app.js → components/helper.js} +1 -1
- package/dist/esm/components/helper.js.map +1 -0
- package/dist/esm/constants/app.js.map +1 -1
- package/dist/esm/constants/icons.js.map +1 -1
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/{cjs/components/Slider → esm/hooks/slider}/useSlider.d.ts +21 -14
- package/dist/esm/hooks/slider/useSlider.js +150 -0
- package/dist/esm/hooks/slider/useSlider.js.map +1 -0
- package/dist/esm/{components/Slider → hooks/slider}/useSliderAutoPlay.d.ts +4 -4
- package/dist/esm/{components/Slider → hooks/slider}/useSliderAutoPlay.js +2 -2
- package/dist/esm/hooks/slider/useSliderAutoPlay.js.map +1 -0
- package/dist/esm/hooks/slider/useSliderBreakpoints.d.ts +35 -0
- package/dist/esm/hooks/slider/useSliderBreakpoints.js +52 -0
- package/dist/esm/hooks/slider/useSliderBreakpoints.js.map +1 -0
- package/dist/{cjs/components/Slider → esm/hooks/slider}/useSliderDimension.d.ts +8 -9
- package/dist/esm/{components/Slider → hooks/slider}/useSliderDimension.js +6 -10
- package/dist/esm/hooks/slider/useSliderDimension.js.map +1 -0
- package/dist/esm/{components/Slider → hooks/slider}/useSliderDraggable.d.ts +7 -8
- package/dist/esm/{components/Slider → hooks/slider}/useSliderDraggable.js +4 -7
- package/dist/esm/hooks/slider/useSliderDraggable.js.map +1 -0
- package/dist/{cjs/components/Slider → esm/hooks/slider}/useSliderNavigation.d.ts +5 -4
- package/dist/esm/{components/Slider → hooks/slider}/useSliderNavigation.js +8 -20
- package/dist/esm/hooks/slider/useSliderNavigation.js.map +1 -0
- package/dist/esm/hooks/slider/useSliderTransform.d.ts +31 -0
- package/dist/esm/{components/Slider → hooks/slider}/useSliderTransform.js +10 -15
- package/dist/esm/hooks/slider/useSliderTransform.js.map +1 -0
- package/dist/esm/hooks/useLocalStorage.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/strings/en.js.map +1 -1
- package/dist/esm/subComponent/ToggleButton.js +1 -1
- package/dist/esm/subComponent/ToggleButton.js.map +1 -1
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js +1 -1
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -1
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -1
- package/dist/package.json +19 -1
- package/package.json +22 -2
- package/dist/cjs/components/Slider/SlickSlider.js.map +0 -1
- package/dist/cjs/components/Slider/useCenterMode.d.ts +0 -24
- package/dist/cjs/components/Slider/useCenterMode.js +0 -40
- package/dist/cjs/components/Slider/useCenterMode.js.map +0 -1
- package/dist/cjs/components/Slider/useSlider.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderAutoPlay.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderBreakpoint.d.ts +0 -23
- package/dist/cjs/components/Slider/useSliderBreakpoint.js +0 -92
- package/dist/cjs/components/Slider/useSliderBreakpoint.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderDimension.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderDraggable.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderNavigation.js.map +0 -1
- package/dist/cjs/components/Slider/useSliderTransform.d.ts +0 -17
- package/dist/cjs/components/Slider/useSliderTransform.js.map +0 -1
- package/dist/cjs/helpers/app.js.map +0 -1
- package/dist/cjs/helpers/index.d.ts +0 -1
- package/dist/cjs/helpers/index.js +0 -5
- package/dist/cjs/helpers/index.js.map +0 -1
- package/dist/esm/components/Slider/SlickSlider.js.map +0 -1
- package/dist/esm/components/Slider/useCenterMode.d.ts +0 -24
- package/dist/esm/components/Slider/useCenterMode.js +0 -38
- package/dist/esm/components/Slider/useCenterMode.js.map +0 -1
- package/dist/esm/components/Slider/useSlider.js +0 -156
- package/dist/esm/components/Slider/useSlider.js.map +0 -1
- package/dist/esm/components/Slider/useSliderAutoPlay.js.map +0 -1
- package/dist/esm/components/Slider/useSliderBreakpoint.d.ts +0 -23
- package/dist/esm/components/Slider/useSliderBreakpoint.js +0 -90
- package/dist/esm/components/Slider/useSliderBreakpoint.js.map +0 -1
- package/dist/esm/components/Slider/useSliderDimension.js.map +0 -1
- package/dist/esm/components/Slider/useSliderDraggable.js.map +0 -1
- package/dist/esm/components/Slider/useSliderNavigation.js.map +0 -1
- package/dist/esm/components/Slider/useSliderTransform.d.ts +0 -17
- package/dist/esm/components/Slider/useSliderTransform.js.map +0 -1
- package/dist/esm/helpers/app.js.map +0 -1
- package/dist/esm/helpers/index.d.ts +0 -1
- package/dist/esm/helpers/index.js +0 -2
- package/dist/esm/helpers/index.js.map +0 -1
|
@@ -1,40 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
2
4
|
/**
|
|
3
5
|
* -----------------------------------------------------------------------------
|
|
4
6
|
* @file useSlider
|
|
5
7
|
* -----------------------------------------------------------------------------
|
|
6
8
|
*
|
|
9
|
+
* @description Add description here
|
|
10
|
+
*
|
|
11
|
+
* Features:
|
|
12
|
+
* - Calculates slider layout and dimensions
|
|
13
|
+
* - Handles next / previous slide navigation
|
|
14
|
+
* - Supports looping and indicators
|
|
15
|
+
* - Applies slide animations
|
|
16
|
+
* - Adds optional autoplay functionality
|
|
17
|
+
*
|
|
7
18
|
* @description
|
|
8
19
|
* Main hook that controls all slider behavior.
|
|
9
|
-
*
|
|
10
20
|
* This hook connects multiple smaller slider hooks and makes them work
|
|
11
21
|
* together. It handles slide size calculation, navigation, animations,
|
|
12
|
-
* autoplay,
|
|
13
|
-
* and window resize updates.
|
|
14
|
-
*
|
|
22
|
+
* autoplay, and window resize updates.
|
|
15
23
|
* The UI layer only needs to use the values and functions returned from
|
|
16
24
|
* this hook.
|
|
17
25
|
*
|
|
18
26
|
* -----------------------------------------------------------------------------
|
|
19
|
-
* Copyright ©
|
|
27
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
20
28
|
* -----------------------------------------------------------------------------
|
|
21
29
|
*/
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
var tslib_1 = require("tslib");
|
|
24
30
|
var react_1 = require("react");
|
|
25
|
-
var Utils_1 = require("../../Utils");
|
|
26
31
|
var useSliderAutoPlay_1 = tslib_1.__importDefault(require("./useSliderAutoPlay"));
|
|
32
|
+
var useSliderBreakpoints_1 = tslib_1.__importDefault(require("./useSliderBreakpoints"));
|
|
27
33
|
var useSliderDimension_1 = tslib_1.__importDefault(require("./useSliderDimension"));
|
|
28
34
|
var useSliderDraggable_1 = tslib_1.__importDefault(require("./useSliderDraggable"));
|
|
29
35
|
var useSliderNavigation_1 = tslib_1.__importDefault(require("./useSliderNavigation"));
|
|
30
36
|
var useSliderTransform_1 = tslib_1.__importDefault(require("./useSliderTransform"));
|
|
31
|
-
var
|
|
37
|
+
var Utils_1 = require("../../Utils");
|
|
32
38
|
function useSlider(_a) {
|
|
33
|
-
var _b
|
|
34
|
-
var activeSlide = _a.activeSlide, animationConfig = _a.animationConfig, autoPlayConfig = _a.autoPlayConfig, breakpoints = _a.breakpoints, draggable = _a.draggable, gap = _a.gap,
|
|
39
|
+
var _b;
|
|
40
|
+
var activeSlide = _a.activeSlide, animationConfig = _a.animationConfig, autoPlayConfig = _a.autoPlayConfig, breakpoints = _a.breakpoints, data = _a.data, draggable = _a.draggable, gap = _a.gap, loop = _a.loop, orientation = _a.orientation, slideToScroll = _a.slideToScroll, slideToShow = _a.slideToShow, totalSlides = _a.totalSlides;
|
|
41
|
+
// Exceed the activeSlide value to total slide then return a first.
|
|
35
42
|
var activeSlideIndex = (0, react_1.useMemo)(function () { return (totalSlides > 0 && activeSlide >= totalSlides ? 0 : activeSlide); }, [activeSlide, totalSlides]);
|
|
36
|
-
|
|
37
|
-
var resolvedBreakpointConfig = (0, useSliderBreakpoint_1.default)({
|
|
43
|
+
var breakPoint = (0, useSliderBreakpoints_1.default)({
|
|
38
44
|
breakpoints: breakpoints,
|
|
39
45
|
config: {
|
|
40
46
|
activeSlide: activeSlideIndex,
|
|
@@ -48,94 +54,82 @@ function useSlider(_a) {
|
|
|
48
54
|
},
|
|
49
55
|
});
|
|
50
56
|
/**
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
57
|
+
* Creates an extended slides array to support seamless looping.
|
|
58
|
+
*
|
|
59
|
+
* - Prepends the last `slideToShow` slides to allow backward looping
|
|
60
|
+
* - Appends the full slides array to allow forward looping
|
|
61
|
+
* - Results in a continuous sequence that prevents visual gaps
|
|
62
|
+
* when transitioning across boundaries
|
|
63
|
+
*
|
|
64
|
+
* Example:
|
|
65
|
+
* data = [A, B, C, D]
|
|
66
|
+
* extendedSlides = [D, A, B, C, D, A, B, C, D] slideToShow = 1
|
|
67
|
+
* extendedSlides = [C,D, A, B, C, D, A, B, C, D] slideToShow = 2
|
|
55
68
|
*/
|
|
56
|
-
var
|
|
57
|
-
|
|
58
|
-
animationConfig,
|
|
59
|
-
autoPlayConfig,
|
|
60
|
-
draggable,
|
|
61
|
-
gap,
|
|
62
|
-
loop,
|
|
63
|
-
slideToScroll,
|
|
64
|
-
slideToShow,
|
|
65
|
-
resolvedBreakpointConfig,
|
|
66
|
-
]);
|
|
67
|
-
console.log(breakPointConfig);
|
|
69
|
+
var extendedSlides = (0, react_1.useMemo)(function () { return [data.slice(-(breakPoint === null || breakPoint === void 0 ? void 0 : breakPoint.slideToShow)), data, data].flat(); }, [data, breakPoint.slideToShow]);
|
|
70
|
+
// Refs
|
|
68
71
|
var sliderWrapperRef = (0, react_1.useRef)(null);
|
|
69
72
|
var sliderObjRefs = (0, react_1.useRef)({
|
|
70
73
|
containerHeight: 0,
|
|
71
74
|
containerWidth: 0,
|
|
72
75
|
currentIndex: 0,
|
|
73
|
-
drag: {
|
|
74
|
-
|
|
75
|
-
startX: 0,
|
|
76
|
-
startY: 0,
|
|
77
|
-
translate: 0,
|
|
78
|
-
},
|
|
79
|
-
isTransitionComplete: false,
|
|
76
|
+
drag: { isDragging: false, startX: 0, startY: 0, translate: 0 },
|
|
77
|
+
isTransitionComplete: false, // NOTE: added for the debounce case
|
|
80
78
|
totalSlides: totalSlides,
|
|
81
79
|
});
|
|
82
80
|
var calculateDimensions = (0, useSliderDimension_1.default)({
|
|
83
|
-
gap:
|
|
81
|
+
gap: breakPoint.gap,
|
|
82
|
+
orientation: orientation,
|
|
84
83
|
sliderObjRefs: sliderObjRefs,
|
|
85
84
|
sliderWrapperRef: sliderWrapperRef,
|
|
86
|
-
slideToShow:
|
|
87
|
-
variant: variant,
|
|
85
|
+
slideToShow: breakPoint.slideToShow,
|
|
88
86
|
}).calculateDimensions;
|
|
89
|
-
|
|
90
|
-
var
|
|
91
|
-
|
|
87
|
+
// Determine if all slides are visible at once (no navigation needed)
|
|
88
|
+
var isAllSlidesVisible = (0, react_1.useMemo)(function () { return breakPoint.slideToShow >= sliderObjRefs.current.totalSlides; }, [breakPoint.slideToShow, sliderObjRefs.current.totalSlides]);
|
|
89
|
+
// Hooks
|
|
90
|
+
var _c = (0, useSliderTransform_1.default)({
|
|
91
|
+
animationConfig: breakPoint.animationConfig,
|
|
92
92
|
isAllSlidesVisible: isAllSlidesVisible,
|
|
93
|
-
|
|
93
|
+
orientation: orientation,
|
|
94
94
|
sliderObjRefs: sliderObjRefs,
|
|
95
95
|
sliderWrapperRef: sliderWrapperRef,
|
|
96
|
-
slideToShow:
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
activeSlide: (_f = breakPointConfig.activeSlide) !== null && _f !== void 0 ? _f : 0,
|
|
96
|
+
slideToShow: breakPoint.slideToShow,
|
|
97
|
+
}), applyTransform = _c.applyTransform, calculateTranslate = _c.calculateTranslate;
|
|
98
|
+
var _d = (0, useSliderNavigation_1.default)({
|
|
99
|
+
activeSlide: breakPoint.activeSlide,
|
|
101
100
|
applyTransform: applyTransform,
|
|
102
|
-
loop:
|
|
101
|
+
loop: breakPoint.loop,
|
|
103
102
|
sliderObjRefs: sliderObjRefs,
|
|
104
103
|
sliderWrapperRef: sliderWrapperRef,
|
|
105
|
-
slideToScroll:
|
|
106
|
-
slideToShow:
|
|
107
|
-
speed: (
|
|
108
|
-
}), getActiveIndicatorIndex =
|
|
104
|
+
slideToScroll: breakPoint.slideToScroll,
|
|
105
|
+
slideToShow: breakPoint.slideToShow,
|
|
106
|
+
speed: (_b = breakPoint.animationConfig) === null || _b === void 0 ? void 0 : _b.delay,
|
|
107
|
+
}), getActiveIndicatorIndex = _d.getActiveIndicatorIndex, getIndicatorCount = _d.getIndicatorCount, goToSlideIndicator = _d.goToSlideIndicator, handleNextSlide = _d.handleNextSlide, handlePrevSlide = _d.handlePrevSlide, hasNextBtnDisabled = _d.hasNextBtnDisabled, hasPrevBtnDisabled = _d.hasPrevBtnDisabled;
|
|
109
108
|
(0, react_1.useEffect)(function () {
|
|
110
|
-
var _a;
|
|
111
109
|
calculateDimensions();
|
|
112
110
|
Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.addEventListener('resize', calculateDimensions);
|
|
111
|
+
// Set initial slide position once container width is calculated.
|
|
113
112
|
if (sliderObjRefs.current.containerWidth > 0 || sliderObjRefs.current.containerHeight > 0) {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
sliderObjRefs.current.currentIndex = index;
|
|
113
|
+
applyTransform(breakPoint.activeSlide, false);
|
|
114
|
+
Object.assign(sliderObjRefs.current, { currentIndex: breakPoint.activeSlide });
|
|
117
115
|
}
|
|
118
116
|
return function () {
|
|
119
117
|
Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.removeEventListener('resize', calculateDimensions);
|
|
120
118
|
};
|
|
121
|
-
}, [
|
|
122
|
-
|
|
123
|
-
applyTransform,
|
|
124
|
-
breakPointConfig.activeSlide,
|
|
125
|
-
breakPointConfig.slideToShow,
|
|
126
|
-
breakPointConfig.gap,
|
|
127
|
-
]);
|
|
119
|
+
}, [calculateDimensions, applyTransform, breakPoint.activeSlide]);
|
|
120
|
+
// Auto navigation hooks
|
|
128
121
|
(0, useSliderAutoPlay_1.default)({
|
|
129
|
-
autoPlayConfig:
|
|
122
|
+
autoPlayConfig: breakPoint.autoPlayConfig,
|
|
130
123
|
handleNextSlide: handleNextSlide,
|
|
131
124
|
isAllSlidesVisible: isAllSlidesVisible,
|
|
132
|
-
loop:
|
|
125
|
+
loop: breakPoint.loop,
|
|
133
126
|
sliderWrapperRef: sliderWrapperRef,
|
|
134
127
|
});
|
|
128
|
+
// Draggable Slide
|
|
135
129
|
(0, useSliderDraggable_1.default)({
|
|
136
130
|
applyTransform: applyTransform,
|
|
137
131
|
calculateTranslate: calculateTranslate,
|
|
138
|
-
draggable:
|
|
132
|
+
draggable: breakPoint === null || breakPoint === void 0 ? void 0 : breakPoint.draggable,
|
|
139
133
|
handleNextSlide: handleNextSlide,
|
|
140
134
|
handlePrevSlide: handlePrevSlide,
|
|
141
135
|
hasNextBtnDisabled: hasNextBtnDisabled,
|
|
@@ -144,6 +138,7 @@ function useSlider(_a) {
|
|
|
144
138
|
sliderWrapperRef: sliderWrapperRef,
|
|
145
139
|
});
|
|
146
140
|
return {
|
|
141
|
+
extendedSlides: extendedSlides,
|
|
147
142
|
getActiveIndicatorIndex: getActiveIndicatorIndex,
|
|
148
143
|
getIndicatorCount: getIndicatorCount,
|
|
149
144
|
goToSlideIndicator: goToSlideIndicator,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSlider.js","sourceRoot":"","sources":["../../../../src/hooks/slider/useSlider.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
* @param handleNextSlide Callback invoked to move to the next slide
|
|
18
18
|
*
|
|
19
19
|
* -----------------------------------------------------------------------------
|
|
20
|
-
* Copyright ©
|
|
20
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
21
21
|
* -----------------------------------------------------------------------------
|
|
22
22
|
*/
|
|
23
23
|
import { type RefObject } from 'react';
|
|
24
|
-
import {
|
|
25
|
-
interface
|
|
24
|
+
import type { SlickSliderAutoPlayConfig } from '../../components/SlickSlider';
|
|
25
|
+
interface SlickSliderAutoplayProps {
|
|
26
26
|
autoPlayConfig: SlickSliderAutoPlayConfig;
|
|
27
27
|
handleNextSlide: () => void;
|
|
28
28
|
isAllSlidesVisible: boolean;
|
|
29
29
|
loop: boolean;
|
|
30
30
|
sliderWrapperRef?: RefObject<HTMLDivElement | null>;
|
|
31
31
|
}
|
|
32
|
-
declare function useSliderAutoplay({ autoPlayConfig, handleNextSlide, isAllSlidesVisible, loop, }: Readonly<
|
|
32
|
+
declare function useSliderAutoplay({ autoPlayConfig, handleNextSlide, isAllSlidesVisible, loop, }: Readonly<SlickSliderAutoplayProps>): void;
|
|
33
33
|
export default useSliderAutoplay;
|
|
@@ -19,16 +19,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
19
19
|
* @param handleNextSlide Callback invoked to move to the next slide
|
|
20
20
|
*
|
|
21
21
|
* -----------------------------------------------------------------------------
|
|
22
|
-
* Copyright ©
|
|
22
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
23
23
|
* -----------------------------------------------------------------------------
|
|
24
24
|
*/
|
|
25
25
|
var react_1 = require("react");
|
|
26
|
+
var helper_1 = require("../../components/helper");
|
|
26
27
|
var Utils_1 = require("../../Utils");
|
|
27
|
-
var helpers_1 = require("../../helpers");
|
|
28
28
|
function useSliderAutoplay(_a) {
|
|
29
29
|
var autoPlayConfig = _a.autoPlayConfig, handleNextSlide = _a.handleNextSlide, isAllSlidesVisible = _a.isAllSlidesVisible, loop = _a.loop;
|
|
30
30
|
// Destruct props
|
|
31
|
-
var _b = (0,
|
|
31
|
+
var _b = (0, helper_1.destructObj)(autoPlayConfig), _c = _b.enable, enable = _c === void 0 ? false : _c, _d = _b.interval, interval = _d === void 0 ? 2000 : _d;
|
|
32
32
|
// Refs
|
|
33
33
|
var timerRef = (0, react_1.useRef)(null);
|
|
34
34
|
/**
|
|
@@ -45,7 +45,7 @@ function useSliderAutoplay(_a) {
|
|
|
45
45
|
}, [enable, interval, handleNextSlide]);
|
|
46
46
|
/** Function stops the active autoplay interval and resets the timer reference. */
|
|
47
47
|
var clearAutoplayTimer = (0, react_1.useCallback)(function () {
|
|
48
|
-
if (!(0,
|
|
48
|
+
if (!(0, helper_1.isNullOrUndefined)(timerRef.current)) {
|
|
49
49
|
Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.clearInterval(timerRef.current);
|
|
50
50
|
timerRef.current = null;
|
|
51
51
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSliderAutoPlay.js","sourceRoot":"","sources":["../../../../src/hooks/slider/useSliderAutoPlay.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,+BAAuE;AACvE,kDAAyE;AAEzE,qCAAyC;AAUzC,SAAS,iBAAiB,CAAC,EAKU;QAJnC,cAAc,oBAAA,EACd,eAAe,qBAAA,EACf,kBAAkB,wBAAA,EAClB,IAAI,UAAA;IAEJ,iBAAiB;IACX,IAAA,KAAsC,IAAA,oBAAW,EAAC,cAAc,CAAC,EAA/D,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EAAE,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAgC,CAAC;IAExE,OAAO;IACP,IAAM,QAAQ,GAAG,IAAA,cAAM,EAA4B,IAAI,CAAC,CAAC;IAEzD;;;;OAIG;IACH,IAAM,aAAa,GAAG,IAAA,mBAAW,EAAC;QAChC,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO;QACxC,QAAQ,CAAC,OAAO,GAAG,kBAAU,aAAV,kBAAU,uBAAV,kBAAU,CAAE,WAAW,CAAC;YACzC,eAAe,EAAE,CAAC;QACpB,CAAC,EAAE,QAAQ,CAAC,CAAC;IACf,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;IAExC,kFAAkF;IAClF,IAAM,kBAAkB,GAAG,IAAA,mBAAW,EAAC;QACrC,IAAI,CAAC,IAAA,0BAAiB,EAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,kBAAU,aAAV,kBAAU,uBAAV,kBAAU,CAAE,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5C,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,IAAI,IAAI,kBAAkB;YAAE,OAAO,SAAS,CAAC;QAClD,aAAa,EAAE,CAAC;QAChB,qIAAqI;QACrI,+CAA+C;QAC/C,sBAAsB;QACtB,6CAA6C;QAC7C,iEAAiE;QACjE,4DAA4D;QAC5D,IAAI;QAEJ,OAAO;YACL,kBAAkB,EAAE,CAAC;YACrB,4CAA4C;YAC5C,mEAAmE;YACnE,8DAA8D;QAChE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,kBAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* -----------------------------------------------------------------------------
|
|
3
|
+
* @file useSliderBreakpoint
|
|
4
|
+
* -----------------------------------------------------------------------------
|
|
5
|
+
*
|
|
6
|
+
* @description Resolves responsive slider configuration based on viewport width.
|
|
7
|
+
* Applies the first matching breakpoint over the base config and updates
|
|
8
|
+
* the result on window resize. Uses deep comparison to avoid unnecessary
|
|
9
|
+
* re-renders.
|
|
10
|
+
*
|
|
11
|
+
* -----------------------------------------------------------------------------
|
|
12
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
13
|
+
* -----------------------------------------------------------------------------
|
|
14
|
+
*/
|
|
15
|
+
import type { SlickSliderAnimationConfig, SlickSliderAutoPlayConfig } from '../../components/SlickSlider';
|
|
16
|
+
export interface SlickSliderConfig {
|
|
17
|
+
activeSlide: number;
|
|
18
|
+
animationConfig: SlickSliderAnimationConfig;
|
|
19
|
+
autoPlayConfig: SlickSliderAutoPlayConfig;
|
|
20
|
+
breakpoint?: number;
|
|
21
|
+
draggable: {
|
|
22
|
+
dragThreshold?: number;
|
|
23
|
+
enableDrag?: boolean;
|
|
24
|
+
};
|
|
25
|
+
gap: number;
|
|
26
|
+
loop: boolean;
|
|
27
|
+
slideToScroll: number;
|
|
28
|
+
slideToShow: number;
|
|
29
|
+
}
|
|
30
|
+
export interface SliderBreakpointProps {
|
|
31
|
+
breakpoints?: SlickSliderConfig[];
|
|
32
|
+
config: SlickSliderConfig;
|
|
33
|
+
}
|
|
34
|
+
declare function useSliderBreakpoints({ breakpoints, config }: SliderBreakpointProps): SlickSliderConfig;
|
|
35
|
+
export default useSliderBreakpoints;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* -----------------------------------------------------------------------------
|
|
4
|
+
* @file useSliderBreakpoint
|
|
5
|
+
* -----------------------------------------------------------------------------
|
|
6
|
+
*
|
|
7
|
+
* @description Resolves responsive slider configuration based on viewport width.
|
|
8
|
+
* Applies the first matching breakpoint over the base config and updates
|
|
9
|
+
* the result on window resize. Uses deep comparison to avoid unnecessary
|
|
10
|
+
* re-renders.
|
|
11
|
+
*
|
|
12
|
+
* -----------------------------------------------------------------------------
|
|
13
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
14
|
+
* -----------------------------------------------------------------------------
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var tslib_1 = require("tslib");
|
|
18
|
+
var react_1 = require("react");
|
|
19
|
+
var helper_1 = require("../../components/helper");
|
|
20
|
+
var Utils_1 = require("../../Utils");
|
|
21
|
+
function useSliderBreakpoints(_a) {
|
|
22
|
+
var breakpoints = _a.breakpoints, config = _a.config;
|
|
23
|
+
// States
|
|
24
|
+
var _b = (0, react_1.useState)(config), sliderConfig = _b[0], setSliderConfig = _b[1];
|
|
25
|
+
// Hooks
|
|
26
|
+
(0, react_1.useEffect)(function () {
|
|
27
|
+
if ((0, helper_1.isObjectEmpty)(config)) {
|
|
28
|
+
setSliderConfig(config);
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
function resolveBreakpointConfig() {
|
|
32
|
+
var viewportWidth = Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.innerWidth;
|
|
33
|
+
// Find the first breakpoint that matches current viewport
|
|
34
|
+
var matchedBreakpoint = breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.find(function (bp) { return viewportWidth && (bp === null || bp === void 0 ? void 0 : bp.breakpoint) && viewportWidth <= bp.breakpoint; });
|
|
35
|
+
// Merge base config with breakpoint overrides
|
|
36
|
+
return (0, helper_1.isObjectNotEmpty)(matchedBreakpoint) ? tslib_1.__assign(tslib_1.__assign({}, config), matchedBreakpoint) : config;
|
|
37
|
+
}
|
|
38
|
+
function updateConfig() {
|
|
39
|
+
var resolvedConfig = resolveBreakpointConfig();
|
|
40
|
+
// Avoid unnecessary updates
|
|
41
|
+
if (!(0, helper_1.deepCompareObjects)(sliderConfig, resolvedConfig)) {
|
|
42
|
+
setSliderConfig(resolvedConfig);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
updateConfig();
|
|
46
|
+
Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.addEventListener('resize', updateConfig);
|
|
47
|
+
return function () {
|
|
48
|
+
Utils_1.safeWindow === null || Utils_1.safeWindow === void 0 ? void 0 : Utils_1.safeWindow.removeEventListener('resize', updateConfig);
|
|
49
|
+
};
|
|
50
|
+
}, [config, breakpoints]);
|
|
51
|
+
return sliderConfig;
|
|
52
|
+
}
|
|
53
|
+
exports.default = useSliderBreakpoints;
|
|
54
|
+
//# sourceMappingURL=useSliderBreakpoints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSliderBreakpoints.js","sourceRoot":"","sources":["../../../../src/hooks/slider/useSliderBreakpoints.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,+BAA4C;AAC5C,kDAA8F;AAE9F,qCAAyC;AAqBzC,SAAS,oBAAoB,CAAC,EAA8C;QAA5C,WAAW,iBAAA,EAAE,MAAM,YAAA;IACjD,SAAS;IACH,IAAA,KAAkC,IAAA,gBAAQ,EAAC,MAAM,CAAC,EAAjD,YAAY,QAAA,EAAE,eAAe,QAAoB,CAAC;IAEzD,QAAQ;IACR,IAAA,iBAAS,EAAC;QACR,IAAI,IAAA,sBAAa,EAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,eAAe,CAAC,MAAM,CAAC,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,SAAS,uBAAuB;YAC9B,IAAM,aAAa,GAAG,kBAAU,aAAV,kBAAU,uBAAV,kBAAU,CAAE,UAAU,CAAC;YAE7C,0DAA0D;YAC1D,IAAM,iBAAiB,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CACzC,UAAC,EAAE,IAAK,OAAA,aAAa,KAAI,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,UAAU,CAAA,IAAI,aAAa,IAAI,EAAE,CAAC,UAAU,EAAjE,CAAiE,CAC1E,CAAC;YAEF,8CAA8C;YAC9C,OAAO,IAAA,yBAAgB,EAAC,iBAAiB,CAAC,CAAC,CAAC,uCAAM,MAAM,GAAK,iBAAiB,EAAG,CAAC,CAAC,MAAM,CAAC;QAC5F,CAAC;QAED,SAAS,YAAY;YACnB,IAAM,cAAc,GAAG,uBAAuB,EAAE,CAAC;YACjD,4BAA4B;YAC5B,IAAI,CAAC,IAAA,2BAAkB,EAAC,YAAY,EAAE,cAAc,CAAC,EAAE,CAAC;gBACtD,eAAe,CAAC,cAAc,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,YAAY,EAAE,CAAC;QACf,kBAAU,aAAV,kBAAU,uBAAV,kBAAU,CAAE,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAErD,OAAO;YACL,kBAAU,aAAV,kBAAU,uBAAV,kBAAU,CAAE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC1D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAE1B,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,kBAAe,oBAAoB,CAAC"}
|
|
@@ -5,12 +5,10 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @description React hook responsible for calculating and applying layout-related
|
|
7
7
|
* dimensions for a flex-based slider.
|
|
8
|
-
*
|
|
9
8
|
* This hook dynamically computes:
|
|
10
9
|
* - Slider container width
|
|
11
10
|
* - Slide flex-basis based on the number of visible slides
|
|
12
11
|
* - Gap between slides
|
|
13
|
-
*
|
|
14
12
|
* The calculated values are applied directly to the DOM and stored
|
|
15
13
|
* in shared slider refs for use by other slider utilities.
|
|
16
14
|
*
|
|
@@ -21,21 +19,22 @@
|
|
|
21
19
|
* - Safe DOM access via refs
|
|
22
20
|
*
|
|
23
21
|
* NOTE: this loc update when we have add the custom styling. loc no.:-69
|
|
22
|
+
*
|
|
24
23
|
* -----------------------------------------------------------------------------
|
|
25
|
-
* Copyright ©
|
|
24
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
26
25
|
* -----------------------------------------------------------------------------
|
|
27
26
|
*/
|
|
28
|
-
import { type RefObject } from 'react';
|
|
29
|
-
import {
|
|
30
|
-
export interface
|
|
27
|
+
import { type MutableRefObject, type RefObject } from 'react';
|
|
28
|
+
import type { SlickSliderRefs } from './useSlider';
|
|
29
|
+
export interface SlickSliderDimensionProps {
|
|
31
30
|
gap: number;
|
|
32
|
-
|
|
31
|
+
orientation: 'horizontal' | 'vertical';
|
|
32
|
+
sliderObjRefs: MutableRefObject<SlickSliderRefs>;
|
|
33
33
|
sliderWrapperRef: RefObject<HTMLDivElement | null>;
|
|
34
34
|
slideToShow: number;
|
|
35
|
-
variant: 'horizontal' | 'vertical';
|
|
36
35
|
}
|
|
37
36
|
interface SlickSliderDimensionsReturn {
|
|
38
37
|
calculateDimensions: () => void;
|
|
39
38
|
}
|
|
40
|
-
declare function useSliderDimension({ gap, sliderObjRefs, sliderWrapperRef, slideToShow,
|
|
39
|
+
declare function useSliderDimension({ gap, orientation, sliderObjRefs, sliderWrapperRef, slideToShow, }: Readonly<SlickSliderDimensionProps>): SlickSliderDimensionsReturn;
|
|
41
40
|
export default useSliderDimension;
|
|
@@ -7,12 +7,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
*
|
|
8
8
|
* @description React hook responsible for calculating and applying layout-related
|
|
9
9
|
* dimensions for a flex-based slider.
|
|
10
|
-
*
|
|
11
10
|
* This hook dynamically computes:
|
|
12
11
|
* - Slider container width
|
|
13
12
|
* - Slide flex-basis based on the number of visible slides
|
|
14
13
|
* - Gap between slides
|
|
15
|
-
*
|
|
16
14
|
* The calculated values are applied directly to the DOM and stored
|
|
17
15
|
* in shared slider refs for use by other slider utilities.
|
|
18
16
|
*
|
|
@@ -23,14 +21,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
23
21
|
* - Safe DOM access via refs
|
|
24
22
|
*
|
|
25
23
|
* NOTE: this loc update when we have add the custom styling. loc no.:-69
|
|
24
|
+
*
|
|
26
25
|
* -----------------------------------------------------------------------------
|
|
27
|
-
* Copyright ©
|
|
26
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
28
27
|
* -----------------------------------------------------------------------------
|
|
29
28
|
*/
|
|
30
29
|
var react_1 = require("react");
|
|
31
|
-
var
|
|
30
|
+
var helper_1 = require("../../components/helper");
|
|
32
31
|
function useSliderDimension(_a) {
|
|
33
|
-
var gap = _a.gap,
|
|
32
|
+
var gap = _a.gap, orientation = _a.orientation, sliderObjRefs = _a.sliderObjRefs, sliderWrapperRef = _a.sliderWrapperRef, slideToShow = _a.slideToShow;
|
|
34
33
|
/**
|
|
35
34
|
* Calculates and applies slide dimensions based on slider orientation.
|
|
36
35
|
*
|
|
@@ -48,10 +47,8 @@ function useSliderDimension(_a) {
|
|
|
48
47
|
*/
|
|
49
48
|
var calculateSlideDimensions = (0, react_1.useCallback)(function (_a) {
|
|
50
49
|
var container = _a.container, rect = _a.rect;
|
|
51
|
-
if (!sliderObjRefs.current)
|
|
52
|
-
return;
|
|
53
50
|
container.style.setProperty('gap', "".concat(gap, "px"));
|
|
54
|
-
if (
|
|
51
|
+
if (orientation === 'vertical') {
|
|
55
52
|
var verticalSlideHight = container.children[0].clientHeight + gap;
|
|
56
53
|
Object.assign(sliderObjRefs.current, {
|
|
57
54
|
containerHeight: verticalSlideHight,
|
|
@@ -69,10 +66,9 @@ function useSliderDimension(_a) {
|
|
|
69
66
|
containerWidth: containerWidth + gap,
|
|
70
67
|
});
|
|
71
68
|
Array.from(container.children).forEach(function (element) {
|
|
72
|
-
;
|
|
73
69
|
element.style.setProperty('flex', "0 0 ".concat(flexBasisPercent, "%"));
|
|
74
70
|
});
|
|
75
|
-
}, [gap, slideToShow, sliderObjRefs,
|
|
71
|
+
}, [gap, slideToShow, sliderObjRefs, orientation]);
|
|
76
72
|
/**
|
|
77
73
|
* Calculates and applies slider dimensions based on the current container size.
|
|
78
74
|
* Safely accesses the slider container element, retrieves its bounding rectangle,
|
|
@@ -81,7 +77,7 @@ function useSliderDimension(_a) {
|
|
|
81
77
|
*/
|
|
82
78
|
var calculateDimensions = (0, react_1.useCallback)(function () {
|
|
83
79
|
var container = sliderWrapperRef.current;
|
|
84
|
-
if ((0,
|
|
80
|
+
if ((0, helper_1.isNullOrUndefined)(container))
|
|
85
81
|
return;
|
|
86
82
|
var rect = container.getBoundingClientRect();
|
|
87
83
|
calculateSlideDimensions({ container: container, rect: rect });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSliderDimension.js","sourceRoot":"","sources":["../../../../src/hooks/slider/useSliderDimension.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,+BAA2E;AAC3E,kDAA4D;AAoB5D,SAAS,kBAAkB,CAAC,EAMU;QALpC,GAAG,SAAA,EACH,WAAW,iBAAA,EACX,aAAa,mBAAA,EACb,gBAAgB,sBAAA,EAChB,WAAW,iBAAA;IAEX;;;;;;;;;;;;;;OAcG;IACH,IAAM,wBAAwB,GAAG,IAAA,mBAAW,EAC1C,UAAC,EAAwC;YAAtC,SAAS,eAAA,EAAE,IAAI,UAAA;QAChB,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,UAAG,GAAG,OAAI,CAAC,CAAC;QAC/C,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;YAC/B,IAAM,kBAAkB,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC;YACpE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE;gBACnC,eAAe,EAAE,kBAAkB;aACpC,CAAC,CAAC;YACH,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,UAAG,kBAAkB,GAAG,WAAW,OAAI,CAAC,CAAC;YAC/E,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAEO,IAAO,cAAc,GAAK,IAAI,MAAT,CAAU;QACvC,IAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QACzC,IAAM,cAAc,GAAG,cAAc,GAAG,QAAQ,CAAC;QACjD,IAAM,YAAY,GAAG,cAAc,GAAG,WAAW,CAAC;QAClD,IAAM,gBAAgB,GAAG,CAAC,YAAY,GAAG,cAAc,CAAC,GAAG,GAAG,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE;YACnC,cAAc,EAAE,cAAc,GAAG,GAAG;SACrC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;YAC5C,OAAuB,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,cAAO,gBAAgB,MAAG,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,GAAG,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAC/C,CAAC;IAEF;;;;;OAKG;IACH,IAAM,mBAAmB,GAAG,IAAA,mBAAW,EAAC;QACtC,IAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAC3C,IAAI,IAAA,0BAAiB,EAAC,SAAS,CAAC;YAAE,OAAO;QACzC,IAAM,IAAI,GAAG,SAAS,CAAC,qBAAqB,EAAE,CAAC;QAC/C,wBAAwB,CAAC,EAAE,SAAS,WAAA,EAAE,IAAI,MAAA,EAAE,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IAEjD,OAAO,EAAE,mBAAmB,qBAAA,EAAE,CAAC;AACjC,CAAC;AAED,kBAAe,kBAAkB,CAAC"}
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
*
|
|
6
6
|
* @description A custom React hook that enables pointer-based drag interactions
|
|
7
7
|
* for the Slick slider component.
|
|
8
|
-
*
|
|
9
8
|
* Responsibilities:
|
|
10
9
|
* - Attaches pointer event listeners to the slider container
|
|
11
10
|
* - Tracks drag state and movement distance
|
|
@@ -13,19 +12,19 @@
|
|
|
13
12
|
* - Determines swipe intent using a configurable threshold
|
|
14
13
|
* - Triggers next/previous slide navigation based on drag direction
|
|
15
14
|
* - Safely handles pointer cancellation and cleanup
|
|
16
|
-
*
|
|
17
15
|
* Behavior:
|
|
18
16
|
* - Dragging is enabled only when `draggable.enableDrag` is true
|
|
19
17
|
* - Horizontal movement controls slide navigation
|
|
20
18
|
* - Transitions are suppressed during drag and restored on release
|
|
21
19
|
* - Automatically cleans up listeners on unmount or ref changes
|
|
20
|
+
*
|
|
22
21
|
* -----------------------------------------------------------------------------
|
|
23
|
-
* Copyright ©
|
|
22
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
24
23
|
* -----------------------------------------------------------------------------
|
|
25
24
|
*/
|
|
26
|
-
import { type RefObject } from 'react';
|
|
27
|
-
import { SlickSliderRefs } from './useSlider';
|
|
28
|
-
export interface
|
|
25
|
+
import { type MutableRefObject, type RefObject } from 'react';
|
|
26
|
+
import type { SlickSliderRefs } from './useSlider';
|
|
27
|
+
export interface SliderDraggableProps {
|
|
29
28
|
applyTransform: (val: number, withTransition?: boolean, isRaw?: boolean) => void;
|
|
30
29
|
calculateTranslate: (idx: number) => number;
|
|
31
30
|
draggable?: {
|
|
@@ -36,8 +35,8 @@ export interface UseSliderDraggableProps {
|
|
|
36
35
|
handlePrevSlide: () => void;
|
|
37
36
|
hasNextBtnDisabled: () => boolean;
|
|
38
37
|
hasPrevBtnDisabled: () => boolean;
|
|
39
|
-
sliderObjRefs:
|
|
38
|
+
sliderObjRefs: MutableRefObject<SlickSliderRefs>;
|
|
40
39
|
sliderWrapperRef: RefObject<HTMLDivElement | null>;
|
|
41
40
|
}
|
|
42
|
-
declare function useSliderDraggable({ applyTransform, calculateTranslate, draggable, handleNextSlide, handlePrevSlide, hasNextBtnDisabled, hasPrevBtnDisabled, sliderObjRefs, sliderWrapperRef, }:
|
|
41
|
+
declare function useSliderDraggable({ applyTransform, calculateTranslate, draggable, handleNextSlide, handlePrevSlide, hasNextBtnDisabled, hasPrevBtnDisabled, sliderObjRefs, sliderWrapperRef, }: SliderDraggableProps): void;
|
|
43
42
|
export default useSliderDraggable;
|
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
7
7
|
*
|
|
8
8
|
* @description A custom React hook that enables pointer-based drag interactions
|
|
9
9
|
* for the Slick slider component.
|
|
10
|
-
*
|
|
11
10
|
* Responsibilities:
|
|
12
11
|
* - Attaches pointer event listeners to the slider container
|
|
13
12
|
* - Tracks drag state and movement distance
|
|
@@ -15,27 +14,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
14
|
* - Determines swipe intent using a configurable threshold
|
|
16
15
|
* - Triggers next/previous slide navigation based on drag direction
|
|
17
16
|
* - Safely handles pointer cancellation and cleanup
|
|
18
|
-
*
|
|
19
17
|
* Behavior:
|
|
20
18
|
* - Dragging is enabled only when `draggable.enableDrag` is true
|
|
21
19
|
* - Horizontal movement controls slide navigation
|
|
22
20
|
* - Transitions are suppressed during drag and restored on release
|
|
23
21
|
* - Automatically cleans up listeners on unmount or ref changes
|
|
22
|
+
*
|
|
24
23
|
* -----------------------------------------------------------------------------
|
|
25
|
-
* Copyright ©
|
|
24
|
+
* Copyright © 2017-present BookingKoala. All rights reserved.
|
|
26
25
|
* -----------------------------------------------------------------------------
|
|
27
26
|
*/
|
|
28
27
|
var react_1 = require("react");
|
|
29
|
-
var
|
|
28
|
+
var helper_1 = require("../../components/helper");
|
|
30
29
|
function useSliderDraggable(_a) {
|
|
31
30
|
var applyTransform = _a.applyTransform, calculateTranslate = _a.calculateTranslate, draggable = _a.draggable, handleNextSlide = _a.handleNextSlide, handlePrevSlide = _a.handlePrevSlide, hasNextBtnDisabled = _a.hasNextBtnDisabled, hasPrevBtnDisabled = _a.hasPrevBtnDisabled, sliderObjRefs = _a.sliderObjRefs, sliderWrapperRef = _a.sliderWrapperRef;
|
|
32
31
|
(0, react_1.useEffect)(function () {
|
|
33
|
-
var _a = (0,
|
|
34
|
-
|
|
35
|
-
return undefined;
|
|
36
|
-
var _d = (0, helpers_1.destructObj)(sliderObjRefs.current), currentIndex = _d.currentIndex, drag = _d.drag;
|
|
32
|
+
var _a = (0, helper_1.destructObj)(draggable), _b = _a.dragThreshold, dragThreshold = _b === void 0 ? 200 : _b, _c = _a.enableDrag, enableDrag = _c === void 0 ? true : _c;
|
|
33
|
+
var _d = sliderObjRefs.current, currentIndex = _d.currentIndex, drag = _d.drag;
|
|
37
34
|
var container = sliderWrapperRef.current;
|
|
38
|
-
if (!enableDrag || (0,
|
|
35
|
+
if (!enableDrag || (0, helper_1.isNullOrUndefined)(container))
|
|
39
36
|
return undefined;
|
|
40
37
|
/**
|
|
41
38
|
* Handles the pointer down event to initiate a drag interaction.
|
|
@@ -44,7 +41,7 @@ function useSliderDraggable(_a) {
|
|
|
44
41
|
* - Initializes drag state (start position and reset translate)
|
|
45
42
|
*/
|
|
46
43
|
function handlePointerDown(event) {
|
|
47
|
-
if ((0,
|
|
44
|
+
if ((0, helper_1.isNullOrUndefined)(container))
|
|
48
45
|
return;
|
|
49
46
|
container.setPointerCapture(event.pointerId);
|
|
50
47
|
Object.assign(drag, {
|
|
@@ -53,7 +50,7 @@ function useSliderDraggable(_a) {
|
|
|
53
50
|
startY: event.clientY,
|
|
54
51
|
translate: 0,
|
|
55
52
|
});
|
|
56
|
-
(0,
|
|
53
|
+
(0, helper_1.preventDefault)(event);
|
|
57
54
|
}
|
|
58
55
|
/**
|
|
59
56
|
* Handles pointer move events during an active drag gesture.
|
|
@@ -63,13 +60,13 @@ function useSliderDraggable(_a) {
|
|
|
63
60
|
* - Applies a real-time transform without transition for smooth dragging
|
|
64
61
|
*/
|
|
65
62
|
function handlePointerMove(event) {
|
|
66
|
-
if ((0,
|
|
63
|
+
if ((0, helper_1.isNullOrUndefined)(container) || !drag.isDragging)
|
|
67
64
|
return;
|
|
68
65
|
var delta = event.clientX - drag.startX;
|
|
69
66
|
var base = calculateTranslate(currentIndex);
|
|
70
67
|
Object.assign(drag, { translate: delta });
|
|
71
68
|
applyTransform(delta + base, false, true);
|
|
72
|
-
(0,
|
|
69
|
+
(0, helper_1.preventDefault)(event);
|
|
73
70
|
}
|
|
74
71
|
/**
|
|
75
72
|
* Handles the pointer up event to finalize a drag interaction.
|
|
@@ -79,7 +76,7 @@ function useSliderDraggable(_a) {
|
|
|
79
76
|
* - Reverts to the current slide if the drag is insufficient or navigation is disabled
|
|
80
77
|
*/
|
|
81
78
|
function handlePointerUp(event) {
|
|
82
|
-
if ((0,
|
|
79
|
+
if ((0, helper_1.isNullOrUndefined)(container) || !drag.isDragging)
|
|
83
80
|
return;
|
|
84
81
|
container.releasePointerCapture(event.pointerId);
|
|
85
82
|
var translate = drag.translate;
|
|
@@ -107,7 +104,7 @@ function useSliderDraggable(_a) {
|
|
|
107
104
|
* - Smoothly reverts the slider back to the current active slid.
|
|
108
105
|
*/
|
|
109
106
|
function handlePointerCancel(event) {
|
|
110
|
-
if ((0,
|
|
107
|
+
if ((0, helper_1.isNullOrUndefined)(container) || !drag.isDragging)
|
|
111
108
|
return;
|
|
112
109
|
container.releasePointerCapture(event.pointerId);
|
|
113
110
|
Object.assign(drag, { isDragging: false });
|
|
@@ -132,7 +129,7 @@ function useSliderDraggable(_a) {
|
|
|
132
129
|
var touchActionAxis = 'pan-y';
|
|
133
130
|
Object.assign(container.style, { touchAction: touchActionAxis });
|
|
134
131
|
return function () {
|
|
135
|
-
if ((0,
|
|
132
|
+
if ((0, helper_1.isNullOrUndefined)(container))
|
|
136
133
|
return;
|
|
137
134
|
container.removeEventListener('pointerdown', handlePointerDown);
|
|
138
135
|
container.removeEventListener('pointermove', handlePointerMove);
|