@studiometa/ui 0.2.13 → 0.2.15
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/atoms/AnchorScrollTo/AnchorScrollTo.cjs +4 -3
- package/atoms/AnchorScrollTo/AnchorScrollTo.cjs.map +7 -0
- package/atoms/AnchorScrollTo/AnchorScrollTo.d.ts +8 -15
- package/atoms/AnchorScrollTo/AnchorScrollTo.js +21 -1
- package/atoms/AnchorScrollTo/AnchorScrollTo.js.map +7 -0
- package/atoms/AnchorScrollTo/index.cjs +21 -0
- package/atoms/AnchorScrollTo/index.cjs.map +7 -0
- package/atoms/AnchorScrollTo/index.d.ts +1 -0
- package/atoms/AnchorScrollTo/index.js +2 -0
- package/atoms/AnchorScrollTo/index.js.map +7 -0
- package/atoms/Cursor/Cursor.cjs +8 -3
- package/atoms/Cursor/Cursor.cjs.map +7 -0
- package/atoms/Cursor/Cursor.d.ts +19 -117
- package/atoms/Cursor/Cursor.js +103 -1
- package/atoms/Cursor/Cursor.js.map +7 -0
- package/atoms/Cursor/index.cjs +21 -0
- package/atoms/Cursor/index.cjs.map +7 -0
- package/atoms/Cursor/index.d.ts +1 -0
- package/atoms/Cursor/index.js +2 -0
- package/atoms/Cursor/index.js.map +7 -0
- package/atoms/Figure/Figure.cjs +16 -9
- package/atoms/Figure/Figure.cjs.map +7 -0
- package/atoms/Figure/Figure.d.ts +18 -53
- package/atoms/Figure/Figure.js +51 -1
- package/atoms/Figure/Figure.js.map +7 -0
- package/atoms/Figure/FigureTwicPics.cjs +11 -10
- package/atoms/Figure/FigureTwicPics.cjs.map +7 -0
- package/atoms/Figure/FigureTwicPics.d.ts +16 -37
- package/atoms/Figure/FigureTwicPics.js +46 -1
- package/atoms/Figure/FigureTwicPics.js.map +7 -0
- package/atoms/Figure/index.cjs +5 -14
- package/atoms/Figure/index.cjs.map +7 -0
- package/atoms/Figure/index.d.ts +2 -2
- package/atoms/Figure/index.js +3 -1
- package/atoms/Figure/index.js.map +7 -0
- package/atoms/LargeText/LargeText.cjs +8 -3
- package/atoms/LargeText/LargeText.cjs.map +7 -0
- package/atoms/LargeText/LargeText.d.ts +19 -40
- package/atoms/LargeText/LargeText.js +60 -1
- package/atoms/LargeText/LargeText.js.map +7 -0
- package/atoms/LargeText/index.cjs +21 -0
- package/atoms/LargeText/index.cjs.map +7 -0
- package/atoms/LargeText/index.d.ts +1 -0
- package/atoms/LargeText/index.js +2 -0
- package/atoms/LargeText/index.js.map +7 -0
- package/atoms/LazyInclude/LazyInclude.cjs +3 -2
- package/atoms/LazyInclude/LazyInclude.cjs.map +7 -0
- package/atoms/LazyInclude/LazyInclude.d.ts +17 -36
- package/atoms/LazyInclude/LazyInclude.js +41 -1
- package/atoms/LazyInclude/LazyInclude.js.map +7 -0
- package/atoms/LazyInclude/index.cjs +21 -0
- package/atoms/LazyInclude/index.cjs.map +7 -0
- package/atoms/LazyInclude/index.d.ts +1 -0
- package/atoms/LazyInclude/index.js +2 -0
- package/atoms/LazyInclude/index.js.map +7 -0
- package/atoms/Prefetch/AbstractPrefetch.cjs +7 -6
- package/atoms/Prefetch/AbstractPrefetch.cjs.map +7 -0
- package/atoms/Prefetch/AbstractPrefetch.d.ts +12 -35
- package/atoms/Prefetch/AbstractPrefetch.js +52 -1
- package/atoms/Prefetch/AbstractPrefetch.js.map +7 -0
- package/atoms/Prefetch/PrefetchWhenOver.cjs +6 -8
- package/atoms/Prefetch/PrefetchWhenOver.cjs.map +7 -0
- package/atoms/Prefetch/PrefetchWhenOver.d.ts +8 -14
- package/atoms/Prefetch/PrefetchWhenOver.js +14 -1
- package/atoms/Prefetch/PrefetchWhenOver.js.map +7 -0
- package/atoms/Prefetch/PrefetchWhenVisible.cjs +6 -8
- package/atoms/Prefetch/PrefetchWhenVisible.cjs.map +7 -0
- package/atoms/Prefetch/PrefetchWhenVisible.d.ts +10 -14
- package/atoms/Prefetch/PrefetchWhenVisible.js +15 -1
- package/atoms/Prefetch/PrefetchWhenVisible.js.map +7 -0
- package/atoms/Prefetch/index.cjs +6 -16
- package/atoms/Prefetch/index.cjs.map +7 -0
- package/atoms/Prefetch/index.d.ts +3 -3
- package/atoms/Prefetch/index.js +4 -1
- package/atoms/Prefetch/index.js.map +7 -0
- package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs +18 -14
- package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs.map +7 -0
- package/atoms/ScrollAnimation/AbstractScrollAnimation.d.ts +19 -89
- package/atoms/ScrollAnimation/AbstractScrollAnimation.js +62 -1
- package/atoms/ScrollAnimation/AbstractScrollAnimation.js.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimation.cjs +6 -14
- package/atoms/ScrollAnimation/ScrollAnimation.cjs.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimation.d.ts +13 -51
- package/atoms/ScrollAnimation/ScrollAnimation.js +16 -1
- package/atoms/ScrollAnimation/ScrollAnimation.js.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationChild.cjs +31 -10
- package/atoms/ScrollAnimation/ScrollAnimationChild.cjs.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationChild.d.ts +19 -6
- package/atoms/ScrollAnimation/ScrollAnimationChild.js +45 -1
- package/atoms/ScrollAnimation/ScrollAnimationChild.js.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs +7 -9
- package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.d.ts +8 -2
- package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js +12 -1
- package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationParent.cjs +9 -8
- package/atoms/ScrollAnimation/ScrollAnimationParent.cjs.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationParent.d.ts +14 -26
- package/atoms/ScrollAnimation/ScrollAnimationParent.js +22 -1
- package/atoms/ScrollAnimation/ScrollAnimationParent.js.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs +7 -9
- package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs.map +7 -0
- package/atoms/ScrollAnimation/ScrollAnimationWithEase.d.ts +15 -2
- package/atoms/ScrollAnimation/ScrollAnimationWithEase.js +12 -1
- package/atoms/ScrollAnimation/ScrollAnimationWithEase.js.map +7 -0
- package/atoms/ScrollAnimation/animationScrollWithEase.cjs +9 -5
- package/atoms/ScrollAnimation/animationScrollWithEase.cjs.map +7 -0
- package/atoms/ScrollAnimation/animationScrollWithEase.d.ts +10 -8
- package/atoms/ScrollAnimation/animationScrollWithEase.js +31 -1
- package/atoms/ScrollAnimation/animationScrollWithEase.js.map +7 -0
- package/atoms/ScrollAnimation/index.cjs +10 -24
- package/atoms/ScrollAnimation/index.cjs.map +7 -0
- package/atoms/ScrollAnimation/index.d.ts +7 -7
- package/atoms/ScrollAnimation/index.js +8 -1
- package/atoms/ScrollAnimation/index.js.map +7 -0
- package/atoms/ScrollReveal/ScrollReveal.cjs +6 -3
- package/atoms/ScrollReveal/ScrollReveal.cjs.map +7 -0
- package/atoms/ScrollReveal/ScrollReveal.d.ts +16 -59
- package/atoms/ScrollReveal/ScrollReveal.js +47 -1
- package/atoms/ScrollReveal/ScrollReveal.js.map +7 -0
- package/atoms/ScrollReveal/index.cjs +4 -12
- package/atoms/ScrollReveal/index.cjs.map +7 -0
- package/atoms/ScrollReveal/index.d.ts +1 -1
- package/atoms/ScrollReveal/index.js +2 -1
- package/atoms/ScrollReveal/index.js.map +7 -0
- package/atoms/index.cjs +6 -18
- package/atoms/index.cjs.map +7 -0
- package/atoms/index.d.ts +8 -8
- package/atoms/index.js +9 -1
- package/atoms/index.js.map +7 -0
- package/decorators/index.cjs +4 -12
- package/decorators/index.cjs.map +7 -0
- package/decorators/index.d.ts +1 -1
- package/decorators/index.js +2 -1
- package/decorators/index.js.map +7 -0
- package/decorators/withTransition.cjs +23 -17
- package/decorators/withTransition.cjs.map +7 -0
- package/decorators/withTransition.d.ts +21 -33
- package/decorators/withTransition.js +50 -1
- package/decorators/withTransition.js.map +7 -0
- package/index.cjs +2 -1
- package/index.cjs.map +7 -0
- package/index.d.ts +5 -5
- package/index.js +6 -1
- package/index.js.map +7 -0
- package/molecules/Accordion/Accordion.cjs +8 -10
- package/molecules/Accordion/Accordion.cjs.map +7 -0
- package/molecules/Accordion/Accordion.d.ts +5 -23
- package/molecules/Accordion/Accordion.js +14 -1
- package/molecules/Accordion/Accordion.js.map +7 -0
- package/molecules/Accordion/AccordionCore.cjs +7 -8
- package/molecules/Accordion/AccordionCore.cjs.map +7 -0
- package/molecules/Accordion/AccordionCore.d.ts +22 -70
- package/molecules/Accordion/AccordionCore.js +27 -1
- package/molecules/Accordion/AccordionCore.js.map +7 -0
- package/molecules/Accordion/AccordionItem.cjs +39 -23
- package/molecules/Accordion/AccordionItem.cjs.map +7 -0
- package/molecules/Accordion/AccordionItem.d.ts +24 -94
- package/molecules/Accordion/AccordionItem.js +146 -1
- package/molecules/Accordion/AccordionItem.js.map +7 -0
- package/molecules/Accordion/index.cjs +22 -0
- package/molecules/Accordion/index.cjs.map +7 -0
- package/molecules/Accordion/index.d.ts +2 -0
- package/molecules/Accordion/index.js +3 -0
- package/molecules/Accordion/index.js.map +7 -0
- package/molecules/Menu/Menu.cjs +7 -10
- package/molecules/Menu/Menu.cjs.map +7 -0
- package/molecules/Menu/Menu.d.ts +24 -84
- package/molecules/Menu/Menu.js +108 -1
- package/molecules/Menu/Menu.js.map +7 -0
- package/molecules/Menu/MenuBtn.cjs +4 -4
- package/molecules/Menu/MenuBtn.cjs.map +7 -0
- package/molecules/Menu/MenuBtn.d.ts +7 -9
- package/molecules/Menu/MenuBtn.js +22 -1
- package/molecules/Menu/MenuBtn.js.map +7 -0
- package/molecules/Menu/MenuList.cjs +9 -9
- package/molecules/Menu/MenuList.cjs.map +7 -0
- package/molecules/Menu/MenuList.d.ts +16 -53
- package/molecules/Menu/MenuList.js +104 -1
- package/molecules/Menu/MenuList.js.map +7 -0
- package/molecules/Menu/index.cjs +6 -16
- package/molecules/Menu/index.cjs.map +7 -0
- package/molecules/Menu/index.d.ts +3 -3
- package/molecules/Menu/index.js +4 -1
- package/molecules/Menu/index.js.map +7 -0
- package/molecules/Modal/Modal.cjs +35 -13
- package/molecules/Modal/Modal.cjs.map +7 -0
- package/molecules/Modal/Modal.d.ts +69 -140
- package/molecules/Modal/Modal.js +150 -1
- package/molecules/Modal/Modal.js.map +7 -0
- package/molecules/Modal/ModalWithTransition.cjs +5 -7
- package/molecules/Modal/ModalWithTransition.cjs.map +7 -0
- package/molecules/Modal/ModalWithTransition.d.ts +6 -22
- package/molecules/Modal/ModalWithTransition.js +41 -1
- package/molecules/Modal/ModalWithTransition.js.map +7 -0
- package/molecules/Modal/index.cjs +22 -0
- package/molecules/Modal/index.cjs.map +7 -0
- package/molecules/Modal/index.d.ts +2 -0
- package/molecules/Modal/index.js +3 -0
- package/molecules/Modal/index.js.map +7 -0
- package/molecules/Panel/Panel.cjs +38 -26
- package/molecules/Panel/Panel.cjs.map +7 -0
- package/molecules/Panel/Panel.d.ts +22 -21
- package/molecules/Panel/Panel.js +98 -1
- package/molecules/Panel/Panel.js.map +7 -0
- package/molecules/Panel/index.cjs +21 -0
- package/molecules/Panel/index.cjs.map +7 -0
- package/molecules/Panel/index.d.ts +1 -0
- package/molecules/Panel/index.js +2 -0
- package/molecules/Panel/index.js.map +7 -0
- package/molecules/Slider/AbstractSliderChild.cjs +8 -9
- package/molecules/Slider/AbstractSliderChild.cjs.map +7 -0
- package/molecules/Slider/AbstractSliderChild.d.ts +11 -30
- package/molecules/Slider/AbstractSliderChild.js +43 -1
- package/molecules/Slider/AbstractSliderChild.js.map +7 -0
- package/molecules/Slider/Slider.cjs +31 -18
- package/molecules/Slider/Slider.cjs.map +7 -0
- package/molecules/Slider/Slider.d.ts +40 -157
- package/molecules/Slider/Slider.js +271 -1
- package/molecules/Slider/Slider.js.map +7 -0
- package/molecules/Slider/SliderBtn.cjs +5 -7
- package/molecules/Slider/SliderBtn.cjs.map +7 -0
- package/molecules/Slider/SliderBtn.d.ts +12 -23
- package/molecules/Slider/SliderBtn.js +29 -1
- package/molecules/Slider/SliderBtn.js.map +7 -0
- package/molecules/Slider/SliderCount.cjs +5 -7
- package/molecules/Slider/SliderCount.cjs.map +7 -0
- package/molecules/Slider/SliderCount.d.ts +10 -16
- package/molecules/Slider/SliderCount.js +14 -1
- package/molecules/Slider/SliderCount.js.map +7 -0
- package/molecules/Slider/SliderDots.cjs +5 -7
- package/molecules/Slider/SliderDots.cjs.map +7 -0
- package/molecules/Slider/SliderDots.d.ts +11 -31
- package/molecules/Slider/SliderDots.js +24 -1
- package/molecules/Slider/SliderDots.js.map +7 -0
- package/molecules/Slider/SliderDrag.cjs +3 -2
- package/molecules/Slider/SliderDrag.cjs.map +7 -0
- package/molecules/Slider/SliderDrag.d.ts +12 -30
- package/molecules/Slider/SliderDrag.js +29 -1
- package/molecules/Slider/SliderDrag.js.map +7 -0
- package/molecules/Slider/SliderItem.cjs +7 -3
- package/molecules/Slider/SliderItem.cjs.map +7 -0
- package/molecules/Slider/SliderItem.d.ts +21 -33
- package/molecules/Slider/SliderItem.js +85 -1
- package/molecules/Slider/SliderItem.js.map +7 -0
- package/molecules/Slider/SliderProgress.cjs +5 -7
- package/molecules/Slider/SliderProgress.cjs.map +7 -0
- package/molecules/Slider/SliderProgress.d.ts +10 -25
- package/molecules/Slider/SliderProgress.js +21 -1
- package/molecules/Slider/SliderProgress.js.map +7 -0
- package/molecules/Slider/index.cjs +11 -26
- package/molecules/Slider/index.cjs.map +7 -0
- package/molecules/Slider/index.d.ts +8 -8
- package/molecules/Slider/index.js +9 -1
- package/molecules/Slider/index.js.map +7 -0
- package/molecules/Sticky/Sticky.cjs +12 -8
- package/molecules/Sticky/Sticky.cjs.map +7 -0
- package/molecules/Sticky/Sticky.d.ts +30 -68
- package/molecules/Sticky/Sticky.js +101 -1
- package/molecules/Sticky/Sticky.js.map +7 -0
- package/molecules/Sticky/index.cjs +21 -0
- package/molecules/Sticky/index.cjs.map +7 -0
- package/molecules/Sticky/index.d.ts +1 -0
- package/molecules/Sticky/index.js +2 -0
- package/molecules/Sticky/index.js.map +7 -0
- package/molecules/TableOfContent/TableOfContent.cjs +6 -8
- package/molecules/TableOfContent/TableOfContent.cjs.map +7 -0
- package/molecules/TableOfContent/TableOfContent.d.ts +19 -41
- package/molecules/TableOfContent/TableOfContent.js +37 -1
- package/molecules/TableOfContent/TableOfContent.js.map +7 -0
- package/molecules/TableOfContent/TableOfContentAnchor.cjs +7 -5
- package/molecules/TableOfContent/TableOfContentAnchor.cjs.map +7 -0
- package/molecules/TableOfContent/TableOfContentAnchor.d.ts +14 -17
- package/molecules/TableOfContent/TableOfContentAnchor.js +35 -1
- package/molecules/TableOfContent/TableOfContentAnchor.js.map +7 -0
- package/molecules/TableOfContent/index.cjs +5 -14
- package/molecules/TableOfContent/index.cjs.map +7 -0
- package/molecules/TableOfContent/index.d.ts +2 -2
- package/molecules/TableOfContent/index.js +3 -1
- package/molecules/TableOfContent/index.js.map +7 -0
- package/molecules/Tabs/Tabs.cjs +40 -22
- package/molecules/Tabs/Tabs.cjs.map +7 -0
- package/molecules/Tabs/Tabs.d.ts +28 -90
- package/molecules/Tabs/Tabs.js +115 -1
- package/molecules/Tabs/Tabs.js.map +7 -0
- package/molecules/Tabs/index.cjs +21 -0
- package/molecules/Tabs/index.cjs.map +7 -0
- package/molecules/Tabs/index.d.ts +1 -0
- package/molecules/Tabs/index.js +2 -0
- package/molecules/Tabs/index.js.map +7 -0
- package/molecules/index.cjs +8 -24
- package/molecules/index.cjs.map +7 -0
- package/molecules/index.d.ts +9 -10
- package/molecules/index.js +10 -1
- package/molecules/index.js.map +7 -0
- package/organisms/Frame/Frame.cjs +21 -43
- package/organisms/Frame/Frame.cjs.map +7 -0
- package/organisms/Frame/Frame.d.ts +21 -98
- package/organisms/Frame/Frame.js +155 -1
- package/organisms/Frame/Frame.js.map +7 -0
- package/organisms/Frame/FrameAnchor.cjs +3 -2
- package/organisms/Frame/FrameAnchor.cjs.map +7 -0
- package/organisms/Frame/FrameAnchor.d.ts +7 -16
- package/organisms/Frame/FrameAnchor.js +13 -1
- package/organisms/Frame/FrameAnchor.js.map +7 -0
- package/organisms/Frame/FrameForm.cjs +3 -2
- package/organisms/Frame/FrameForm.cjs.map +7 -0
- package/organisms/Frame/FrameForm.d.ts +10 -16
- package/organisms/Frame/FrameForm.js +13 -1
- package/organisms/Frame/FrameForm.js.map +7 -0
- package/organisms/Frame/FrameTarget.cjs +15 -9
- package/organisms/Frame/FrameTarget.cjs.map +7 -0
- package/organisms/Frame/FrameTarget.d.ts +17 -26
- package/organisms/Frame/FrameTarget.js +70 -1
- package/organisms/Frame/FrameTarget.js.map +7 -0
- package/organisms/Frame/index.cjs +7 -18
- package/organisms/Frame/index.cjs.map +7 -0
- package/organisms/Frame/index.d.ts +4 -4
- package/organisms/Frame/index.js +5 -1
- package/organisms/Frame/index.js.map +7 -0
- package/organisms/index.cjs +2 -1
- package/organisms/index.cjs.map +7 -0
- package/organisms/index.d.ts +1 -1
- package/organisms/index.js +2 -1
- package/organisms/index.js.map +7 -0
- package/package.json +2 -2
- package/primitives/Draggable/Draggable.cjs +3 -2
- package/primitives/Draggable/Draggable.cjs.map +7 -0
- package/primitives/Draggable/Draggable.d.ts +10 -11
- package/primitives/Draggable/Draggable.js +25 -1
- package/primitives/Draggable/Draggable.js.map +7 -0
- package/primitives/Draggable/index.cjs +21 -0
- package/primitives/Draggable/index.cjs.map +7 -0
- package/primitives/Draggable/index.d.ts +1 -0
- package/primitives/Draggable/index.js +2 -0
- package/primitives/Draggable/index.js.map +7 -0
- package/primitives/Sentinel/Sentinel.cjs +3 -2
- package/primitives/Sentinel/Sentinel.cjs.map +7 -0
- package/primitives/Sentinel/Sentinel.d.ts +6 -5
- package/primitives/Sentinel/Sentinel.js +10 -1
- package/primitives/Sentinel/Sentinel.js.map +7 -0
- package/primitives/Sentinel/index.cjs +21 -0
- package/primitives/Sentinel/index.cjs.map +7 -0
- package/primitives/Sentinel/index.d.ts +1 -0
- package/primitives/Sentinel/index.js +2 -0
- package/primitives/Sentinel/index.js.map +7 -0
- package/primitives/Transition/Transition.cjs +13 -3
- package/primitives/Transition/Transition.cjs.map +7 -0
- package/primitives/Transition/Transition.d.ts +13 -7
- package/primitives/Transition/Transition.js +11 -1
- package/primitives/Transition/Transition.js.map +7 -0
- package/primitives/Transition/index.cjs +21 -0
- package/primitives/Transition/index.cjs.map +7 -0
- package/primitives/Transition/index.d.ts +1 -0
- package/primitives/Transition/index.js +2 -0
- package/primitives/Transition/index.js.map +7 -0
- package/primitives/index.cjs +6 -16
- package/primitives/index.cjs.map +7 -0
- package/primitives/index.d.ts +3 -3
- package/primitives/index.js +4 -1
- package/primitives/index.js.map +7 -0
|
@@ -1,58 +1,38 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
* dots: HTMLButtonElement[],
|
|
10
|
-
* }
|
|
11
|
-
* }} SliderDotsInterface
|
|
12
|
-
*/
|
|
1
|
+
import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';
|
|
2
|
+
import { AbstractSliderChild } from './AbstractSliderChild.js';
|
|
3
|
+
export interface SliderDotsProps extends BaseProps {
|
|
4
|
+
$refs: {
|
|
5
|
+
dots: HTMLButtonElement[];
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
declare const SliderDots_base: import("@studiometa/js-toolkit").BaseDecorator<import("../../decorators/withTransition.js").TransitionInterface, AbstractSliderChild<BaseProps>, import("../../decorators/withTransition.js").TransitionProps>;
|
|
13
9
|
/**
|
|
14
10
|
* SliderDots class.
|
|
15
11
|
*/
|
|
16
|
-
export
|
|
12
|
+
export declare class SliderDots<T extends BaseProps = BaseProps> extends SliderDots_base<T & SliderDotsProps> {
|
|
17
13
|
/**
|
|
18
14
|
* Config.
|
|
19
15
|
*/
|
|
20
|
-
static config:
|
|
21
|
-
name: string;
|
|
22
|
-
refs: string[];
|
|
23
|
-
};
|
|
16
|
+
static config: BaseConfig;
|
|
24
17
|
/**
|
|
25
18
|
* Get target.
|
|
26
|
-
* @this {SliderDotsInterface}
|
|
27
19
|
* @returns {HTMLButtonElement[]}
|
|
28
20
|
*/
|
|
29
21
|
get target(): HTMLButtonElement[];
|
|
30
22
|
/**
|
|
31
23
|
* The current active index.
|
|
32
|
-
* @type {number}
|
|
33
24
|
*/
|
|
34
25
|
currentIndex: number;
|
|
35
26
|
/**
|
|
36
27
|
* Update dots classes according to the new index.
|
|
37
28
|
*
|
|
38
|
-
* @this {SliderDotsInterface}
|
|
39
29
|
* @param {number} index
|
|
40
30
|
* @returns {void}
|
|
41
31
|
*/
|
|
42
|
-
update(
|
|
32
|
+
update(index: number): void;
|
|
43
33
|
/**
|
|
44
34
|
* Go to the given index on dot click.
|
|
45
|
-
*
|
|
46
|
-
* @param {MouseEvent} event
|
|
47
|
-
* @param {number} index
|
|
48
|
-
* @returns {void}
|
|
49
35
|
*/
|
|
50
36
|
onDotsClick(event: MouseEvent, index: number): void;
|
|
51
37
|
}
|
|
52
|
-
export type SliderDotsInterface = SliderDots & {
|
|
53
|
-
$refs: {
|
|
54
|
-
dots: HTMLButtonElement[];
|
|
55
|
-
};
|
|
56
|
-
};
|
|
57
|
-
import AbstractSliderChild from "./AbstractSliderChild.js";
|
|
58
38
|
export {};
|
|
@@ -1 +1,24 @@
|
|
|
1
|
-
import{withTransition
|
|
1
|
+
import { withTransition } from "../../decorators/index.js";
|
|
2
|
+
import { AbstractSliderChild } from "./AbstractSliderChild.js";
|
|
3
|
+
class SliderDots extends withTransition(AbstractSliderChild) {
|
|
4
|
+
static config = {
|
|
5
|
+
name: "SliderDots",
|
|
6
|
+
refs: ["dots[]"]
|
|
7
|
+
};
|
|
8
|
+
get target() {
|
|
9
|
+
return this.$refs.dots;
|
|
10
|
+
}
|
|
11
|
+
currentIndex = 0;
|
|
12
|
+
update(index) {
|
|
13
|
+
this.leave(this.$refs.dots[this.currentIndex]);
|
|
14
|
+
this.enter(this.$refs.dots[index]);
|
|
15
|
+
this.currentIndex = index;
|
|
16
|
+
}
|
|
17
|
+
onDotsClick(event, index) {
|
|
18
|
+
this.$parent.goTo(index);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export {
|
|
22
|
+
SliderDots
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=SliderDots.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderDots.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { withTransition } from '../../decorators/index.js';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderDotsProps extends BaseProps {\n $refs: {\n dots: HTMLButtonElement[];\n };\n}\n\n/**\n * SliderDots class.\n */\nexport class SliderDots<\n T extends BaseProps = BaseProps,\n> extends withTransition<AbstractSliderChild>(AbstractSliderChild)<T & SliderDotsProps> {\n /**\n * Config.\n */\n static config:BaseConfig = {\n name: 'SliderDots',\n refs: ['dots[]'],\n };\n\n /**\n * Get target.\n * @returns {HTMLButtonElement[]}\n */\n get target() {\n return this.$refs.dots;\n }\n\n /**\n * The current active index.\n */\n currentIndex = 0;\n\n /**\n * Update dots classes according to the new index.\n *\n * @param {number} index\n * @returns {void}\n */\n update(index:number) {\n this.leave(this.$refs.dots[this.currentIndex]);\n this.enter(this.$refs.dots[index]);\n this.currentIndex = index;\n }\n\n /**\n * Go to the given index on dot click.\n */\n onDotsClick(event:MouseEvent, index:number) {\n this.$parent.goTo(index);\n }\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,sBAAsB;AAC/B,SAAS,2BAA2B;AAW7B,MAAM,mBAEH,eAAoC,mBAAmB,EAAuB;AAAA,EAItF,OAAO,SAAoB;AAAA,IACzB,MAAM;AAAA,IACN,MAAM,CAAC,QAAQ;AAAA,EACjB;AAAA,EAMA,IAAI,SAAS;AACX,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAKA,eAAe;AAAA,EAQf,OAAO,OAAc;AACnB,SAAK,MAAM,KAAK,MAAM,KAAK,KAAK,aAAa;AAC7C,SAAK,MAAM,KAAK,MAAM,KAAK,MAAM;AACjC,SAAK,eAAe;AAAA,EACtB;AAAA,EAKA,YAAY,OAAkB,OAAc;AAC1C,SAAK,QAAQ,KAAK,KAAK;AAAA,EACzB;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -21,10 +21,10 @@ var __publicField = (obj, key, value) => {
|
|
|
21
21
|
return value;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
|
-
// packages/ui/molecules/Slider/SliderDrag.
|
|
24
|
+
// packages/ui/molecules/Slider/SliderDrag.ts
|
|
25
25
|
var SliderDrag_exports = {};
|
|
26
26
|
__export(SliderDrag_exports, {
|
|
27
|
-
|
|
27
|
+
SliderDrag: () => SliderDrag
|
|
28
28
|
});
|
|
29
29
|
module.exports = __toCommonJS(SliderDrag_exports);
|
|
30
30
|
var import_js_toolkit = require("@studiometa/js-toolkit");
|
|
@@ -53,3 +53,4 @@ __publicField(SliderDrag, "config", {
|
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
55
|
if (module.exports.default) module.exports = module.exports.default;
|
|
56
|
+
//# sourceMappingURL=SliderDrag.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderDrag.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseProps, BaseConfig, DragServiceProps } from '@studiometa/js-toolkit';\nimport { Base, withDrag } from '@studiometa/js-toolkit';\n\nexport interface SliderDragProps extends BaseProps {\n $options: {\n scrollLockThreshold: number;\n };\n}\n\n/**\n * SliderDrag class.\n */\nexport class SliderDrag<T extends BaseProps = BaseProps> extends withDrag(Base)<\n T & SliderDragProps\n> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderDrag',\n emits: ['start', 'drag', 'drop', 'inertia', 'stop'],\n options: {\n scrollLockThreshold: {\n type: Number,\n default: 10,\n },\n },\n };\n\n /**\n * Test if the scroll should be blocked. Used with the touchmove event to prevent\n * scrolling vertically when trying to drag the slider.\n */\n get shouldPreventScroll() {\n const { distance } = this.$services.get('dragged') as DragServiceProps;\n return (\n Math.abs(distance.x) > this.$options.scrollLockThreshold &&\n Math.abs(distance.x) > Math.abs(distance.y)\n );\n }\n\n /**\n * Touchmove handler.\n * @param {TouchEvent} event\n * @returns {void}\n */\n onTouchmove(event:TouchEvent) {\n if (this.shouldPreventScroll) {\n event.preventDefault();\n }\n }\n\n /**\n * Emit drag events.\n */\n dragged(props:DragServiceProps) {\n this.$emit(props.mode, props);\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA+B;AAWxB,IAAM,aAAN,kBAA0D,4BAAS,sBAAI,EAE5E;AAAA,EAmBA,IAAI,sBAAsB;AACxB,UAAM,EAAE,SAAS,IAAI,KAAK,UAAU,IAAI,SAAS;AACjD,WACE,KAAK,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,uBACrC,KAAK,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,SAAS,CAAC;AAAA,EAE9C;AAAA,EAOA,YAAY,OAAkB;AAC5B,QAAI,KAAK,qBAAqB;AAC5B,YAAM,eAAe;AAAA,IACvB;AAAA,EACF;AAAA,EAKA,QAAQ,OAAwB;AAC9B,SAAK,MAAM,MAAM,MAAM,KAAK;AAAA,EAC9B;AACF;AAxCE,cANW,YAMJ,UAAqB;AAAA,EAC1B,MAAM;AAAA,EACN,OAAO,CAAC,SAAS,QAAQ,QAAQ,WAAW,MAAM;AAAA,EAClD,SAAS;AAAA,IACP,qBAAqB;AAAA,MACnB,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,33 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import type { BaseProps, BaseConfig, DragServiceProps } from '@studiometa/js-toolkit';
|
|
2
|
+
import { Base } from '@studiometa/js-toolkit';
|
|
3
|
+
export interface SliderDragProps extends BaseProps {
|
|
4
|
+
$options: {
|
|
5
|
+
scrollLockThreshold: number;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
declare const SliderDrag_base: import("@studiometa/js-toolkit").BaseDecorator<import("@studiometa/js-toolkit").BaseInterface, Base<BaseProps>, BaseProps>;
|
|
8
9
|
/**
|
|
9
10
|
* SliderDrag class.
|
|
10
11
|
*/
|
|
11
|
-
export
|
|
12
|
+
export declare class SliderDrag<T extends BaseProps = BaseProps> extends SliderDrag_base<T & SliderDragProps> {
|
|
12
13
|
/**
|
|
13
14
|
* Config.
|
|
14
15
|
*/
|
|
15
|
-
static config:
|
|
16
|
-
name: string;
|
|
17
|
-
emits: string[];
|
|
18
|
-
options: {
|
|
19
|
-
scrollLockThreshold: {
|
|
20
|
-
type: NumberConstructor;
|
|
21
|
-
default: number;
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
};
|
|
16
|
+
static config: BaseConfig;
|
|
25
17
|
/**
|
|
26
18
|
* Test if the scroll should be blocked. Used with the touchmove event to prevent
|
|
27
19
|
* scrolling vertically when trying to drag the slider.
|
|
28
|
-
*
|
|
29
|
-
* @this {SliderDragInterface}
|
|
30
|
-
* @returns {boolean}
|
|
31
20
|
*/
|
|
32
21
|
get shouldPreventScroll(): boolean;
|
|
33
22
|
/**
|
|
@@ -38,14 +27,7 @@ export default class SliderDrag extends Base {
|
|
|
38
27
|
onTouchmove(event: TouchEvent): void;
|
|
39
28
|
/**
|
|
40
29
|
* Emit drag events.
|
|
41
|
-
* @param {import('@studiometa/js-toolkit/services/drag').DragServiceProps} props
|
|
42
|
-
* @returns {void}
|
|
43
30
|
*/
|
|
44
|
-
dragged(props:
|
|
31
|
+
dragged(props: DragServiceProps): void;
|
|
45
32
|
}
|
|
46
|
-
export
|
|
47
|
-
$options: {
|
|
48
|
-
scrollLockThreshold: number;
|
|
49
|
-
};
|
|
50
|
-
};
|
|
51
|
-
import { Base } from "@studiometa/js-toolkit";
|
|
33
|
+
export {};
|
|
@@ -1 +1,29 @@
|
|
|
1
|
-
import{Base
|
|
1
|
+
import { Base, withDrag } from "@studiometa/js-toolkit";
|
|
2
|
+
class SliderDrag extends withDrag(Base) {
|
|
3
|
+
static config = {
|
|
4
|
+
name: "SliderDrag",
|
|
5
|
+
emits: ["start", "drag", "drop", "inertia", "stop"],
|
|
6
|
+
options: {
|
|
7
|
+
scrollLockThreshold: {
|
|
8
|
+
type: Number,
|
|
9
|
+
default: 10
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
get shouldPreventScroll() {
|
|
14
|
+
const { distance } = this.$services.get("dragged");
|
|
15
|
+
return Math.abs(distance.x) > this.$options.scrollLockThreshold && Math.abs(distance.x) > Math.abs(distance.y);
|
|
16
|
+
}
|
|
17
|
+
onTouchmove(event) {
|
|
18
|
+
if (this.shouldPreventScroll) {
|
|
19
|
+
event.preventDefault();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
dragged(props) {
|
|
23
|
+
this.$emit(props.mode, props);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
SliderDrag
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=SliderDrag.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderDrag.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseProps, BaseConfig, DragServiceProps } from '@studiometa/js-toolkit';\nimport { Base, withDrag } from '@studiometa/js-toolkit';\n\nexport interface SliderDragProps extends BaseProps {\n $options: {\n scrollLockThreshold: number;\n };\n}\n\n/**\n * SliderDrag class.\n */\nexport class SliderDrag<T extends BaseProps = BaseProps> extends withDrag(Base)<\n T & SliderDragProps\n> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderDrag',\n emits: ['start', 'drag', 'drop', 'inertia', 'stop'],\n options: {\n scrollLockThreshold: {\n type: Number,\n default: 10,\n },\n },\n };\n\n /**\n * Test if the scroll should be blocked. Used with the touchmove event to prevent\n * scrolling vertically when trying to drag the slider.\n */\n get shouldPreventScroll() {\n const { distance } = this.$services.get('dragged') as DragServiceProps;\n return (\n Math.abs(distance.x) > this.$options.scrollLockThreshold &&\n Math.abs(distance.x) > Math.abs(distance.y)\n );\n }\n\n /**\n * Touchmove handler.\n * @param {TouchEvent} event\n * @returns {void}\n */\n onTouchmove(event:TouchEvent) {\n if (this.shouldPreventScroll) {\n event.preventDefault();\n }\n }\n\n /**\n * Emit drag events.\n */\n dragged(props:DragServiceProps) {\n this.$emit(props.mode, props);\n }\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,MAAM,gBAAgB;AAWxB,MAAM,mBAAoD,SAAS,IAAI,EAE5E;AAAA,EAIA,OAAO,SAAqB;AAAA,IAC1B,MAAM;AAAA,IACN,OAAO,CAAC,SAAS,QAAQ,QAAQ,WAAW,MAAM;AAAA,IAClD,SAAS;AAAA,MACP,qBAAqB;AAAA,QACnB,MAAM;AAAA,QACN,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF;AAAA,EAMA,IAAI,sBAAsB;AACxB,UAAM,EAAE,SAAS,IAAI,KAAK,UAAU,IAAI,SAAS;AACjD,WACE,KAAK,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,uBACrC,KAAK,IAAI,SAAS,CAAC,IAAI,KAAK,IAAI,SAAS,CAAC;AAAA,EAE9C;AAAA,EAOA,YAAY,OAAkB;AAC5B,QAAI,KAAK,qBAAqB;AAC5B,YAAM,eAAe;AAAA,IACvB;AAAA,EACF;AAAA,EAKA,QAAQ,OAAwB;AAC9B,SAAK,MAAM,MAAM,MAAM,KAAK;AAAA,EAC9B;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -21,18 +21,21 @@ var __publicField = (obj, key, value) => {
|
|
|
21
21
|
return value;
|
|
22
22
|
};
|
|
23
23
|
|
|
24
|
-
// packages/ui/molecules/Slider/SliderItem.
|
|
24
|
+
// packages/ui/molecules/Slider/SliderItem.ts
|
|
25
25
|
var SliderItem_exports = {};
|
|
26
26
|
__export(SliderItem_exports, {
|
|
27
|
-
|
|
27
|
+
SliderItem: () => SliderItem
|
|
28
28
|
});
|
|
29
29
|
module.exports = __toCommonJS(SliderItem_exports);
|
|
30
30
|
var import_js_toolkit = require("@studiometa/js-toolkit");
|
|
31
31
|
var import_utils = require("@studiometa/js-toolkit/utils");
|
|
32
|
-
var SliderItem = class extends (0, import_js_toolkit.withIntersectionObserver)(import_js_toolkit.Base, {
|
|
32
|
+
var SliderItem = class extends (0, import_js_toolkit.withIntersectionObserver)(import_js_toolkit.Base, {
|
|
33
|
+
threshold: [0, 1]
|
|
34
|
+
}) {
|
|
33
35
|
isVisible = false;
|
|
34
36
|
x = 0;
|
|
35
37
|
dampedX = 0;
|
|
38
|
+
rect;
|
|
36
39
|
mounted() {
|
|
37
40
|
this.updateRectAdjustedWithX();
|
|
38
41
|
}
|
|
@@ -106,3 +109,4 @@ __publicField(SliderItem, "config", {
|
|
|
106
109
|
emits: ["is-fully-visible", "is-partially-visible", "is-hidden"]
|
|
107
110
|
});
|
|
108
111
|
if (module.exports.default) module.exports = module.exports.default;
|
|
112
|
+
//# sourceMappingURL=SliderItem.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderItem.ts"],
|
|
4
|
+
"sourcesContent": ["import { Base, withIntersectionObserver } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { damp, domScheduler, transform } from '@studiometa/js-toolkit/utils';\n\n/**\n * Manage a slider item and its state transition.\n */\nexport class SliderItem<T extends BaseProps = BaseProps> extends withIntersectionObserver(Base, {\n threshold: [0, 1],\n})<T> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderItem',\n emits: ['is-fully-visible', 'is-partially-visible', 'is-hidden'],\n };\n\n /**\n * Wether the SliderItem is visible or not.\n * @type {boolean}\n */\n isVisible = false;\n\n /**\n * The SliderItem `x` position.\n * @type {number}\n */\n x = 0;\n\n /**\n * The smoothed `x` position.\n * @type {number}\n */\n dampedX = 0;\n\n /**\n * Item original position.\n */\n rect:{\n x: number;\n y: number;\n top: number;\n right: number;\n bottom: number;\n left: number;\n width: number;\n height: number;\n };\n\n /**\n * Set SliderItem bounding rectangle on mount.\n */\n mounted() {\n this.updateRectAdjustedWithX();\n }\n\n /**\n * Update SliderItem bounding rectangle on resize.\n */\n resized() {\n this.updateRectAdjustedWithX();\n }\n\n /**\n * Reset position to `0` on destroy.\n */\n destroyed() {\n this.moveInstantly(0);\n }\n\n /**\n * Intersected hook.\n */\n intersected([{ intersectionRatio, isIntersecting }]:IntersectionObserverEntry[]) {\n if (intersectionRatio >= 1) {\n this.$emit('is-fully-visible');\n this.$el.setAttribute('aria-hidden', 'false');\n } else if (intersectionRatio > 0) {\n this.$emit('is-partially-visible');\n this.$el.setAttribute('aria-hidden', 'true');\n } else {\n this.$emit('is-hidden');\n this.$el.setAttribute('aria-hidden', 'true');\n }\n\n this.isVisible = isIntersecting;\n }\n\n /**\n * Ticked hook.\n *\n * @todo create AbstractSliderItem with `render` method\n * @todo add state to SliderItem\n * @todo add origin to SliderItem\n * @returns {void}\n */\n ticked() {\n this.dampedX = damp(this.x, this.dampedX, 0.1, 0.00001);\n this.render();\n\n if (this.dampedX === this.x) {\n this.$services.disable('ticked');\n }\n }\n\n /**\n * Enable the SliderItem.\n */\n activate() {\n this.$el.classList.add('is-active');\n }\n\n /**\n * Disable the SliderItem.\n */\n disactivate() {\n this.$el.classList.remove('is-active');\n }\n\n /**\n * Move the SliderItem to the given target position.\n */\n move(targetPosition:number) {\n this.x = targetPosition;\n\n if (!this.$services.has('ticked')) {\n this.$services.enable('ticked');\n }\n }\n\n /**\n * Move the SliderItem instantly to the given target position.\n */\n moveInstantly(targetPosition:number) {\n this.x = targetPosition;\n this.dampedX = targetPosition;\n this.render();\n }\n\n /**\n * Render the component.\n */\n render() {\n domScheduler.write(() => {\n transform(this.$el, { x: this.dampedX });\n });\n }\n\n /**\n * Check if SliderItem is partially visible for the given target position.\n */\n willBeVisible(targetPosition:number) {\n return (\n this.rect.x + targetPosition < window.innerWidth * 1.5 &&\n this.rect.x + targetPosition + this.rect.width > window.innerWidth * -0.5\n );\n }\n\n /**\n * Check if SliderItem is fully visible for the given target position.\n *\n * @param {number} targetPosition\n * @returns {boolean}\n */\n willBeFullyVisible(targetPosition) {\n return (\n this.rect.x + targetPosition < window.innerWidth &&\n this.rect.x + targetPosition > 0 &&\n this.rect.x + targetPosition + this.rect.width < window.innerWidth &&\n this.rect.x + targetPosition + this.rect.width > 0\n );\n }\n\n /**\n * Update the bounding rectangle values without the current transformation.\n *\n * @returns {void}\n */\n updateRectAdjustedWithX() {\n const x = this.x * -1;\n const rect:this['rect'] = this.$el.getBoundingClientRect().toJSON();\n\n this.rect = {\n ...rect,\n left: rect.left + x,\n right: rect.left + x + rect.width,\n x: rect.left + x,\n };\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAA+C;AAE/C,mBAA8C;AAKvC,IAAM,aAAN,kBAA0D,4CAAyB,wBAAM;AAAA,EAC9F,WAAW,CAAC,GAAG,CAAC;AAClB,CAAC,EAAK;AAAA,EAaJ,YAAY;AAAA,EAMZ,IAAI;AAAA,EAMJ,UAAU;AAAA,EAKV;AAAA,EAcA,UAAU;AACR,SAAK,wBAAwB;AAAA,EAC/B;AAAA,EAKA,UAAU;AACR,SAAK,wBAAwB;AAAA,EAC/B;AAAA,EAKA,YAAY;AACV,SAAK,cAAc,CAAC;AAAA,EACtB;AAAA,EAKA,YAAY,CAAC,EAAE,mBAAmB,eAAe,CAAC,GAA+B;AAC/E,QAAI,qBAAqB,GAAG;AAC1B,WAAK,MAAM,kBAAkB;AAC7B,WAAK,IAAI,aAAa,eAAe,OAAO;AAAA,IAC9C,WAAW,oBAAoB,GAAG;AAChC,WAAK,MAAM,sBAAsB;AACjC,WAAK,IAAI,aAAa,eAAe,MAAM;AAAA,IAC7C,OAAO;AACL,WAAK,MAAM,WAAW;AACtB,WAAK,IAAI,aAAa,eAAe,MAAM;AAAA,IAC7C;AAEA,SAAK,YAAY;AAAA,EACnB;AAAA,EAUA,SAAS;AACP,SAAK,cAAU,mBAAK,KAAK,GAAG,KAAK,SAAS,KAAK,IAAO;AACtD,SAAK,OAAO;AAEZ,QAAI,KAAK,YAAY,KAAK,GAAG;AAC3B,WAAK,UAAU,QAAQ,QAAQ;AAAA,IACjC;AAAA,EACF;AAAA,EAKA,WAAW;AACT,SAAK,IAAI,UAAU,IAAI,WAAW;AAAA,EACpC;AAAA,EAKA,cAAc;AACZ,SAAK,IAAI,UAAU,OAAO,WAAW;AAAA,EACvC;AAAA,EAKA,KAAK,gBAAuB;AAC1B,SAAK,IAAI;AAET,QAAI,CAAC,KAAK,UAAU,IAAI,QAAQ,GAAG;AACjC,WAAK,UAAU,OAAO,QAAQ;AAAA,IAChC;AAAA,EACF;AAAA,EAKA,cAAc,gBAAuB;AACnC,SAAK,IAAI;AACT,SAAK,UAAU;AACf,SAAK,OAAO;AAAA,EACd;AAAA,EAKA,SAAS;AACP,8BAAa,MAAM,MAAM;AACvB,kCAAU,KAAK,KAAK,EAAE,GAAG,KAAK,QAAQ,CAAC;AAAA,IACzC,CAAC;AAAA,EACH;AAAA,EAKA,cAAc,gBAAuB;AACnC,WACE,KAAK,KAAK,IAAI,iBAAiB,OAAO,aAAa,OACnD,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ,OAAO,aAAa;AAAA,EAEzE;AAAA,EAQA,mBAAmB,gBAAgB;AACjC,WACE,KAAK,KAAK,IAAI,iBAAiB,OAAO,cACtC,KAAK,KAAK,IAAI,iBAAiB,KAC/B,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ,OAAO,cACxD,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ;AAAA,EAErD;AAAA,EAOA,0BAA0B;AACxB,UAAM,IAAI,KAAK,IAAI;AACnB,UAAM,OAAoB,KAAK,IAAI,sBAAsB,EAAE,OAAO;AAElE,SAAK,OAAO;AAAA,MACV,GAAG;AAAA,MACH,MAAM,KAAK,OAAO;AAAA,MAClB,OAAO,KAAK,OAAO,IAAI,KAAK;AAAA,MAC5B,GAAG,KAAK,OAAO;AAAA,IACjB;AAAA,EACF;AACF;AAjLE,cANW,YAMJ,UAAqB;AAAA,EAC1B,MAAM;AAAA,EACN,OAAO,CAAC,oBAAoB,wBAAwB,WAAW;AACjE;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import { Base } from '@studiometa/js-toolkit';
|
|
2
|
+
import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';
|
|
3
|
+
declare const SliderItem_base: import("@studiometa/js-toolkit").BaseDecorator<import("@studiometa/js-toolkit").WithIntersectionObserverInterface, Base<BaseProps>, import("@studiometa/js-toolkit").WithIntersectionObserverProps>;
|
|
1
4
|
/**
|
|
2
5
|
* Manage a slider item and its state transition.
|
|
3
6
|
*/
|
|
4
|
-
export
|
|
7
|
+
export declare class SliderItem<T extends BaseProps = BaseProps> extends SliderItem_base<T> {
|
|
5
8
|
/**
|
|
6
9
|
* Config.
|
|
7
10
|
*/
|
|
8
|
-
static config:
|
|
9
|
-
name: string;
|
|
10
|
-
emits: string[];
|
|
11
|
-
};
|
|
11
|
+
static config: BaseConfig;
|
|
12
12
|
/**
|
|
13
13
|
* Wether the SliderItem is visible or not.
|
|
14
|
-
* @type {
|
|
14
|
+
* @type {boolean}
|
|
15
15
|
*/
|
|
16
16
|
isVisible: boolean;
|
|
17
17
|
/**
|
|
@@ -24,29 +24,33 @@ export default class SliderItem extends Base {
|
|
|
24
24
|
* @type {number}
|
|
25
25
|
*/
|
|
26
26
|
dampedX: number;
|
|
27
|
+
/**
|
|
28
|
+
* Item original position.
|
|
29
|
+
*/
|
|
30
|
+
rect: {
|
|
31
|
+
x: number;
|
|
32
|
+
y: number;
|
|
33
|
+
top: number;
|
|
34
|
+
right: number;
|
|
35
|
+
bottom: number;
|
|
36
|
+
left: number;
|
|
37
|
+
width: number;
|
|
38
|
+
height: number;
|
|
39
|
+
};
|
|
27
40
|
/**
|
|
28
41
|
* Set SliderItem bounding rectangle on mount.
|
|
29
|
-
*
|
|
30
|
-
* @returns {void}
|
|
31
42
|
*/
|
|
32
43
|
mounted(): void;
|
|
33
44
|
/**
|
|
34
45
|
* Update SliderItem bounding rectangle on resize.
|
|
35
|
-
*
|
|
36
|
-
* @returns {void}
|
|
37
46
|
*/
|
|
38
47
|
resized(): void;
|
|
39
48
|
/**
|
|
40
49
|
* Reset position to `0` on destroy.
|
|
41
|
-
*
|
|
42
|
-
* @returns {void}
|
|
43
50
|
*/
|
|
44
51
|
destroyed(): void;
|
|
45
52
|
/**
|
|
46
53
|
* Intersected hook.
|
|
47
|
-
*
|
|
48
|
-
* @param {IntersectionObserverEntry[]} entries
|
|
49
|
-
* @returns {void}
|
|
50
54
|
*/
|
|
51
55
|
intersected([{ intersectionRatio, isIntersecting }]: IntersectionObserverEntry[]): void;
|
|
52
56
|
/**
|
|
@@ -60,41 +64,26 @@ export default class SliderItem extends Base {
|
|
|
60
64
|
ticked(): void;
|
|
61
65
|
/**
|
|
62
66
|
* Enable the SliderItem.
|
|
63
|
-
*
|
|
64
|
-
* @returns {void}
|
|
65
67
|
*/
|
|
66
68
|
activate(): void;
|
|
67
69
|
/**
|
|
68
70
|
* Disable the SliderItem.
|
|
69
|
-
*
|
|
70
|
-
* @returns {void}
|
|
71
71
|
*/
|
|
72
72
|
disactivate(): void;
|
|
73
73
|
/**
|
|
74
74
|
* Move the SliderItem to the given target position.
|
|
75
|
-
*
|
|
76
|
-
* @param {number} targetPosition
|
|
77
|
-
* @returns {void}
|
|
78
75
|
*/
|
|
79
76
|
move(targetPosition: number): void;
|
|
80
77
|
/**
|
|
81
78
|
* Move the SliderItem instantly to the given target position.
|
|
82
|
-
*
|
|
83
|
-
* @param {number} targetPosition
|
|
84
|
-
* @returns {void}
|
|
85
79
|
*/
|
|
86
80
|
moveInstantly(targetPosition: number): void;
|
|
87
81
|
/**
|
|
88
82
|
* Render the component.
|
|
89
|
-
*
|
|
90
|
-
* @returns {void}
|
|
91
83
|
*/
|
|
92
84
|
render(): void;
|
|
93
85
|
/**
|
|
94
86
|
* Check if SliderItem is partially visible for the given target position.
|
|
95
|
-
*
|
|
96
|
-
* @param {number} targetPosition
|
|
97
|
-
* @returns {boolean}
|
|
98
87
|
*/
|
|
99
88
|
willBeVisible(targetPosition: number): boolean;
|
|
100
89
|
/**
|
|
@@ -103,13 +92,12 @@ export default class SliderItem extends Base {
|
|
|
103
92
|
* @param {number} targetPosition
|
|
104
93
|
* @returns {boolean}
|
|
105
94
|
*/
|
|
106
|
-
willBeFullyVisible(targetPosition:
|
|
95
|
+
willBeFullyVisible(targetPosition: any): boolean;
|
|
107
96
|
/**
|
|
108
97
|
* Update the bounding rectangle values without the current transformation.
|
|
109
98
|
*
|
|
110
99
|
* @returns {void}
|
|
111
100
|
*/
|
|
112
101
|
updateRectAdjustedWithX(): void;
|
|
113
|
-
rect: any;
|
|
114
102
|
}
|
|
115
|
-
|
|
103
|
+
export {};
|
|
@@ -1 +1,85 @@
|
|
|
1
|
-
import{Base
|
|
1
|
+
import { Base, withIntersectionObserver } from "@studiometa/js-toolkit";
|
|
2
|
+
import { damp, domScheduler, transform } from "@studiometa/js-toolkit/utils";
|
|
3
|
+
class SliderItem extends withIntersectionObserver(Base, {
|
|
4
|
+
threshold: [0, 1]
|
|
5
|
+
}) {
|
|
6
|
+
static config = {
|
|
7
|
+
name: "SliderItem",
|
|
8
|
+
emits: ["is-fully-visible", "is-partially-visible", "is-hidden"]
|
|
9
|
+
};
|
|
10
|
+
isVisible = false;
|
|
11
|
+
x = 0;
|
|
12
|
+
dampedX = 0;
|
|
13
|
+
rect;
|
|
14
|
+
mounted() {
|
|
15
|
+
this.updateRectAdjustedWithX();
|
|
16
|
+
}
|
|
17
|
+
resized() {
|
|
18
|
+
this.updateRectAdjustedWithX();
|
|
19
|
+
}
|
|
20
|
+
destroyed() {
|
|
21
|
+
this.moveInstantly(0);
|
|
22
|
+
}
|
|
23
|
+
intersected([{ intersectionRatio, isIntersecting }]) {
|
|
24
|
+
if (intersectionRatio >= 1) {
|
|
25
|
+
this.$emit("is-fully-visible");
|
|
26
|
+
this.$el.setAttribute("aria-hidden", "false");
|
|
27
|
+
} else if (intersectionRatio > 0) {
|
|
28
|
+
this.$emit("is-partially-visible");
|
|
29
|
+
this.$el.setAttribute("aria-hidden", "true");
|
|
30
|
+
} else {
|
|
31
|
+
this.$emit("is-hidden");
|
|
32
|
+
this.$el.setAttribute("aria-hidden", "true");
|
|
33
|
+
}
|
|
34
|
+
this.isVisible = isIntersecting;
|
|
35
|
+
}
|
|
36
|
+
ticked() {
|
|
37
|
+
this.dampedX = damp(this.x, this.dampedX, 0.1, 1e-5);
|
|
38
|
+
this.render();
|
|
39
|
+
if (this.dampedX === this.x) {
|
|
40
|
+
this.$services.disable("ticked");
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
activate() {
|
|
44
|
+
this.$el.classList.add("is-active");
|
|
45
|
+
}
|
|
46
|
+
disactivate() {
|
|
47
|
+
this.$el.classList.remove("is-active");
|
|
48
|
+
}
|
|
49
|
+
move(targetPosition) {
|
|
50
|
+
this.x = targetPosition;
|
|
51
|
+
if (!this.$services.has("ticked")) {
|
|
52
|
+
this.$services.enable("ticked");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
moveInstantly(targetPosition) {
|
|
56
|
+
this.x = targetPosition;
|
|
57
|
+
this.dampedX = targetPosition;
|
|
58
|
+
this.render();
|
|
59
|
+
}
|
|
60
|
+
render() {
|
|
61
|
+
domScheduler.write(() => {
|
|
62
|
+
transform(this.$el, { x: this.dampedX });
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
willBeVisible(targetPosition) {
|
|
66
|
+
return this.rect.x + targetPosition < window.innerWidth * 1.5 && this.rect.x + targetPosition + this.rect.width > window.innerWidth * -0.5;
|
|
67
|
+
}
|
|
68
|
+
willBeFullyVisible(targetPosition) {
|
|
69
|
+
return this.rect.x + targetPosition < window.innerWidth && this.rect.x + targetPosition > 0 && this.rect.x + targetPosition + this.rect.width < window.innerWidth && this.rect.x + targetPosition + this.rect.width > 0;
|
|
70
|
+
}
|
|
71
|
+
updateRectAdjustedWithX() {
|
|
72
|
+
const x = this.x * -1;
|
|
73
|
+
const rect = this.$el.getBoundingClientRect().toJSON();
|
|
74
|
+
this.rect = {
|
|
75
|
+
...rect,
|
|
76
|
+
left: rect.left + x,
|
|
77
|
+
right: rect.left + x + rect.width,
|
|
78
|
+
x: rect.left + x
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
export {
|
|
83
|
+
SliderItem
|
|
84
|
+
};
|
|
85
|
+
//# sourceMappingURL=SliderItem.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderItem.ts"],
|
|
4
|
+
"sourcesContent": ["import { Base, withIntersectionObserver } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { damp, domScheduler, transform } from '@studiometa/js-toolkit/utils';\n\n/**\n * Manage a slider item and its state transition.\n */\nexport class SliderItem<T extends BaseProps = BaseProps> extends withIntersectionObserver(Base, {\n threshold: [0, 1],\n})<T> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderItem',\n emits: ['is-fully-visible', 'is-partially-visible', 'is-hidden'],\n };\n\n /**\n * Wether the SliderItem is visible or not.\n * @type {boolean}\n */\n isVisible = false;\n\n /**\n * The SliderItem `x` position.\n * @type {number}\n */\n x = 0;\n\n /**\n * The smoothed `x` position.\n * @type {number}\n */\n dampedX = 0;\n\n /**\n * Item original position.\n */\n rect:{\n x: number;\n y: number;\n top: number;\n right: number;\n bottom: number;\n left: number;\n width: number;\n height: number;\n };\n\n /**\n * Set SliderItem bounding rectangle on mount.\n */\n mounted() {\n this.updateRectAdjustedWithX();\n }\n\n /**\n * Update SliderItem bounding rectangle on resize.\n */\n resized() {\n this.updateRectAdjustedWithX();\n }\n\n /**\n * Reset position to `0` on destroy.\n */\n destroyed() {\n this.moveInstantly(0);\n }\n\n /**\n * Intersected hook.\n */\n intersected([{ intersectionRatio, isIntersecting }]:IntersectionObserverEntry[]) {\n if (intersectionRatio >= 1) {\n this.$emit('is-fully-visible');\n this.$el.setAttribute('aria-hidden', 'false');\n } else if (intersectionRatio > 0) {\n this.$emit('is-partially-visible');\n this.$el.setAttribute('aria-hidden', 'true');\n } else {\n this.$emit('is-hidden');\n this.$el.setAttribute('aria-hidden', 'true');\n }\n\n this.isVisible = isIntersecting;\n }\n\n /**\n * Ticked hook.\n *\n * @todo create AbstractSliderItem with `render` method\n * @todo add state to SliderItem\n * @todo add origin to SliderItem\n * @returns {void}\n */\n ticked() {\n this.dampedX = damp(this.x, this.dampedX, 0.1, 0.00001);\n this.render();\n\n if (this.dampedX === this.x) {\n this.$services.disable('ticked');\n }\n }\n\n /**\n * Enable the SliderItem.\n */\n activate() {\n this.$el.classList.add('is-active');\n }\n\n /**\n * Disable the SliderItem.\n */\n disactivate() {\n this.$el.classList.remove('is-active');\n }\n\n /**\n * Move the SliderItem to the given target position.\n */\n move(targetPosition:number) {\n this.x = targetPosition;\n\n if (!this.$services.has('ticked')) {\n this.$services.enable('ticked');\n }\n }\n\n /**\n * Move the SliderItem instantly to the given target position.\n */\n moveInstantly(targetPosition:number) {\n this.x = targetPosition;\n this.dampedX = targetPosition;\n this.render();\n }\n\n /**\n * Render the component.\n */\n render() {\n domScheduler.write(() => {\n transform(this.$el, { x: this.dampedX });\n });\n }\n\n /**\n * Check if SliderItem is partially visible for the given target position.\n */\n willBeVisible(targetPosition:number) {\n return (\n this.rect.x + targetPosition < window.innerWidth * 1.5 &&\n this.rect.x + targetPosition + this.rect.width > window.innerWidth * -0.5\n );\n }\n\n /**\n * Check if SliderItem is fully visible for the given target position.\n *\n * @param {number} targetPosition\n * @returns {boolean}\n */\n willBeFullyVisible(targetPosition) {\n return (\n this.rect.x + targetPosition < window.innerWidth &&\n this.rect.x + targetPosition > 0 &&\n this.rect.x + targetPosition + this.rect.width < window.innerWidth &&\n this.rect.x + targetPosition + this.rect.width > 0\n );\n }\n\n /**\n * Update the bounding rectangle values without the current transformation.\n *\n * @returns {void}\n */\n updateRectAdjustedWithX() {\n const x = this.x * -1;\n const rect:this['rect'] = this.$el.getBoundingClientRect().toJSON();\n\n this.rect = {\n ...rect,\n left: rect.left + x,\n right: rect.left + x + rect.width,\n x: rect.left + x,\n };\n }\n}\n"],
|
|
5
|
+
"mappings": "AAAA,SAAS,MAAM,gCAAgC;AAE/C,SAAS,MAAM,cAAc,iBAAiB;AAKvC,MAAM,mBAAoD,yBAAyB,MAAM;AAAA,EAC9F,WAAW,CAAC,GAAG,CAAC;AAClB,CAAC,EAAK;AAAA,EAIJ,OAAO,SAAqB;AAAA,IAC1B,MAAM;AAAA,IACN,OAAO,CAAC,oBAAoB,wBAAwB,WAAW;AAAA,EACjE;AAAA,EAMA,YAAY;AAAA,EAMZ,IAAI;AAAA,EAMJ,UAAU;AAAA,EAKV;AAAA,EAcA,UAAU;AACR,SAAK,wBAAwB;AAAA,EAC/B;AAAA,EAKA,UAAU;AACR,SAAK,wBAAwB;AAAA,EAC/B;AAAA,EAKA,YAAY;AACV,SAAK,cAAc,CAAC;AAAA,EACtB;AAAA,EAKA,YAAY,CAAC,EAAE,mBAAmB,eAAe,CAAC,GAA+B;AAC/E,QAAI,qBAAqB,GAAG;AAC1B,WAAK,MAAM,kBAAkB;AAC7B,WAAK,IAAI,aAAa,eAAe,OAAO;AAAA,IAC9C,WAAW,oBAAoB,GAAG;AAChC,WAAK,MAAM,sBAAsB;AACjC,WAAK,IAAI,aAAa,eAAe,MAAM;AAAA,IAC7C,OAAO;AACL,WAAK,MAAM,WAAW;AACtB,WAAK,IAAI,aAAa,eAAe,MAAM;AAAA,IAC7C;AAEA,SAAK,YAAY;AAAA,EACnB;AAAA,EAUA,SAAS;AACP,SAAK,UAAU,KAAK,KAAK,GAAG,KAAK,SAAS,KAAK,IAAO;AACtD,SAAK,OAAO;AAEZ,QAAI,KAAK,YAAY,KAAK,GAAG;AAC3B,WAAK,UAAU,QAAQ,QAAQ;AAAA,IACjC;AAAA,EACF;AAAA,EAKA,WAAW;AACT,SAAK,IAAI,UAAU,IAAI,WAAW;AAAA,EACpC;AAAA,EAKA,cAAc;AACZ,SAAK,IAAI,UAAU,OAAO,WAAW;AAAA,EACvC;AAAA,EAKA,KAAK,gBAAuB;AAC1B,SAAK,IAAI;AAET,QAAI,CAAC,KAAK,UAAU,IAAI,QAAQ,GAAG;AACjC,WAAK,UAAU,OAAO,QAAQ;AAAA,IAChC;AAAA,EACF;AAAA,EAKA,cAAc,gBAAuB;AACnC,SAAK,IAAI;AACT,SAAK,UAAU;AACf,SAAK,OAAO;AAAA,EACd;AAAA,EAKA,SAAS;AACP,iBAAa,MAAM,MAAM;AACvB,gBAAU,KAAK,KAAK,EAAE,GAAG,KAAK,QAAQ,CAAC;AAAA,IACzC,CAAC;AAAA,EACH;AAAA,EAKA,cAAc,gBAAuB;AACnC,WACE,KAAK,KAAK,IAAI,iBAAiB,OAAO,aAAa,OACnD,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ,OAAO,aAAa;AAAA,EAEzE;AAAA,EAQA,mBAAmB,gBAAgB;AACjC,WACE,KAAK,KAAK,IAAI,iBAAiB,OAAO,cACtC,KAAK,KAAK,IAAI,iBAAiB,KAC/B,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ,OAAO,cACxD,KAAK,KAAK,IAAI,iBAAiB,KAAK,KAAK,QAAQ;AAAA,EAErD;AAAA,EAOA,0BAA0B;AACxB,UAAM,IAAI,KAAK,IAAI;AACnB,UAAM,OAAoB,KAAK,IAAI,sBAAsB,EAAE,OAAO;AAElE,SAAK,OAAO;AAAA,MACV,GAAG;AAAA,MACH,MAAM,KAAK,OAAO;AAAA,MAClB,OAAO,KAAK,OAAO,IAAI,KAAK;AAAA,MAC5B,GAAG,KAAK,OAAO;AAAA,IACjB;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
5
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
6
|
var __export = (target, all) => {
|
|
@@ -17,22 +15,21 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
15
|
}
|
|
18
16
|
return to;
|
|
19
17
|
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
21
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
19
|
var __publicField = (obj, key, value) => {
|
|
23
20
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
24
21
|
return value;
|
|
25
22
|
};
|
|
26
23
|
|
|
27
|
-
// packages/ui/molecules/Slider/SliderProgress.
|
|
24
|
+
// packages/ui/molecules/Slider/SliderProgress.ts
|
|
28
25
|
var SliderProgress_exports = {};
|
|
29
26
|
__export(SliderProgress_exports, {
|
|
30
|
-
|
|
27
|
+
SliderProgress: () => SliderProgress
|
|
31
28
|
});
|
|
32
29
|
module.exports = __toCommonJS(SliderProgress_exports);
|
|
33
30
|
var import_utils = require("@studiometa/js-toolkit/utils");
|
|
34
|
-
var import_AbstractSliderChild =
|
|
35
|
-
var SliderProgress = class extends import_AbstractSliderChild.
|
|
31
|
+
var import_AbstractSliderChild = require("./AbstractSliderChild.cjs");
|
|
32
|
+
var SliderProgress = class extends import_AbstractSliderChild.AbstractSliderChild {
|
|
36
33
|
update(index) {
|
|
37
34
|
import_utils.domScheduler.read(() => {
|
|
38
35
|
const { progress } = this.$refs;
|
|
@@ -48,3 +45,4 @@ __publicField(SliderProgress, "config", {
|
|
|
48
45
|
refs: ["progress"]
|
|
49
46
|
});
|
|
50
47
|
if (module.exports.default) module.exports = module.exports.default;
|
|
48
|
+
//# sourceMappingURL=SliderProgress.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../packages/ui/molecules/Slider/SliderProgress.ts"],
|
|
4
|
+
"sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { transform, map, domScheduler } from '@studiometa/js-toolkit/utils';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderProgressProps extends BaseProps {\n $refs: {\n progress: HTMLElement;\n };\n}\n\n/**\n * SliderProgress class.\n */\nexport class SliderProgress<T extends BaseProps = BaseProps> extends AbstractSliderChild<\n T & SliderProgressProps\n> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderProgress',\n refs: ['progress'],\n };\n\n /**\n * Update the progress indicator.\n */\n update(index:number) {\n domScheduler.read(() => {\n const { progress } = this.$refs;\n const x = map(index, 0, this.$parent.indexMax, progress.clientWidth * -1, 0);\n domScheduler.write(() => {\n transform(progress, { x });\n });\n });\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAA6C;AAC7C,iCAAoC;AAW7B,IAAM,iBAAN,cAA8D,+CAEnE;AAAA,EAYA,OAAO,OAAc;AACnB,8BAAa,KAAK,MAAM;AACtB,YAAM,EAAE,SAAS,IAAI,KAAK;AAC1B,YAAM,QAAI,kBAAI,OAAO,GAAG,KAAK,QAAQ,UAAU,SAAS,cAAc,IAAI,CAAC;AAC3E,gCAAa,MAAM,MAAM;AACvB,oCAAU,UAAU,EAAE,EAAE,CAAC;AAAA,MAC3B,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AACF;AAjBE,cANW,gBAMJ,UAAqB;AAAA,EAC1B,MAAM;AAAA,EACN,MAAM,CAAC,UAAU;AACnB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,35 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*/
|
|
1
|
+
import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';
|
|
2
|
+
import { AbstractSliderChild } from './AbstractSliderChild.js';
|
|
3
|
+
export interface SliderProgressProps extends BaseProps {
|
|
4
|
+
$refs: {
|
|
5
|
+
progress: HTMLElement;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
9
8
|
/**
|
|
10
9
|
* SliderProgress class.
|
|
11
10
|
*/
|
|
12
|
-
export
|
|
11
|
+
export declare class SliderProgress<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderProgressProps> {
|
|
13
12
|
/**
|
|
14
13
|
* Config.
|
|
15
14
|
*/
|
|
16
|
-
static config:
|
|
17
|
-
name: string;
|
|
18
|
-
refs: string[];
|
|
19
|
-
};
|
|
15
|
+
static config: BaseConfig;
|
|
20
16
|
/**
|
|
21
17
|
* Update the progress indicator.
|
|
22
|
-
*
|
|
23
|
-
* @this {SliderProgressInterface}
|
|
24
|
-
* @param {number} index The new active index.
|
|
25
|
-
* @returns {void}
|
|
26
18
|
*/
|
|
27
|
-
update(
|
|
19
|
+
update(index: number): void;
|
|
28
20
|
}
|
|
29
|
-
export type SliderProgressInterface = SliderProgress & {
|
|
30
|
-
$refs: {
|
|
31
|
-
progress: HTMLElement;
|
|
32
|
-
};
|
|
33
|
-
$parent: import('./Slider.js').default;
|
|
34
|
-
};
|
|
35
|
-
import AbstractSliderChild from "./AbstractSliderChild.js";
|
|
@@ -1 +1,21 @@
|
|
|
1
|
-
import{transform
|
|
1
|
+
import { transform, map, domScheduler } from "@studiometa/js-toolkit/utils";
|
|
2
|
+
import { AbstractSliderChild } from "./AbstractSliderChild.js";
|
|
3
|
+
class SliderProgress extends AbstractSliderChild {
|
|
4
|
+
static config = {
|
|
5
|
+
name: "SliderProgress",
|
|
6
|
+
refs: ["progress"]
|
|
7
|
+
};
|
|
8
|
+
update(index) {
|
|
9
|
+
domScheduler.read(() => {
|
|
10
|
+
const { progress } = this.$refs;
|
|
11
|
+
const x = map(index, 0, this.$parent.indexMax, progress.clientWidth * -1, 0);
|
|
12
|
+
domScheduler.write(() => {
|
|
13
|
+
transform(progress, { x });
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
SliderProgress
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=SliderProgress.js.map
|