@cntrl-site/components 0.1.6-20 → 0.1.7-1
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/LICENSE +21 -21
- package/README.md +2 -2
- package/dist/Components/ControlSlider/ControlSlider.d.ts +2 -1
- package/dist/Components/ControlSlider/ControlSliderComponent.d.ts +9 -0
- package/dist/Components/ImageRevealSlider/ControlImageRevealSliderComponent.d.ts +2 -31
- package/dist/Components/ImageRevealSlider/ImageRevealSlider.d.ts +1 -3
- package/dist/Components/Lightbox/Lightbox.d.ts +1 -1
- package/dist/components.css +1 -1
- package/dist/index.js +63 -188
- package/dist/index.mjs +63 -188
- package/dist/types/Component.d.ts +2 -2
- package/package.json +68 -68
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2025 GX Platform
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 GX Platform
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
# Control Components
|
|
2
|
-
|
|
1
|
+
# Control Components
|
|
2
|
+
|
|
3
3
|
This is custom components for control editor and public websites.
|
|
@@ -4,7 +4,7 @@ interface SliderProps {
|
|
|
4
4
|
styles: SliderStyles;
|
|
5
5
|
isEditor?: boolean;
|
|
6
6
|
}
|
|
7
|
-
export declare function ControlSlider({ settings, content, styles: sliderStyles, isEditor }: SliderProps):
|
|
7
|
+
export declare function ControlSlider({ settings, content, styles: sliderStyles, isEditor }: SliderProps): JSX.Element;
|
|
8
8
|
type SliderItem = {
|
|
9
9
|
image: {
|
|
10
10
|
url: string;
|
|
@@ -21,6 +21,7 @@ type SliderControls = {
|
|
|
21
21
|
arrowsImgUrl: string | null;
|
|
22
22
|
isActive: boolean;
|
|
23
23
|
color: string;
|
|
24
|
+
show: 'on hover' | 'always';
|
|
24
25
|
hover: string;
|
|
25
26
|
offset: Offset;
|
|
26
27
|
scale: number;
|
|
@@ -162,6 +162,14 @@ export declare const ControlSliderComponent: {
|
|
|
162
162
|
format: string;
|
|
163
163
|
};
|
|
164
164
|
};
|
|
165
|
+
show: {
|
|
166
|
+
title: string;
|
|
167
|
+
type: string;
|
|
168
|
+
display: {
|
|
169
|
+
type: string;
|
|
170
|
+
};
|
|
171
|
+
enum: string[];
|
|
172
|
+
};
|
|
165
173
|
};
|
|
166
174
|
};
|
|
167
175
|
pagination: {
|
|
@@ -316,6 +324,7 @@ export declare const ControlSliderComponent: {
|
|
|
316
324
|
scale: number;
|
|
317
325
|
color: string;
|
|
318
326
|
hover: string;
|
|
327
|
+
show: string;
|
|
319
328
|
};
|
|
320
329
|
transition: {
|
|
321
330
|
type: string;
|
|
@@ -80,17 +80,6 @@ export declare const ControlImageRevealSliderComponent: {
|
|
|
80
80
|
visible: boolean;
|
|
81
81
|
};
|
|
82
82
|
};
|
|
83
|
-
defaultCursorScale: {
|
|
84
|
-
type: string;
|
|
85
|
-
title: string;
|
|
86
|
-
min: number;
|
|
87
|
-
max: number;
|
|
88
|
-
step: number;
|
|
89
|
-
display: {
|
|
90
|
-
type: string;
|
|
91
|
-
visible: boolean;
|
|
92
|
-
};
|
|
93
|
-
};
|
|
94
83
|
hoverCursor: {
|
|
95
84
|
type: string[];
|
|
96
85
|
title: string;
|
|
@@ -99,17 +88,6 @@ export declare const ControlImageRevealSliderComponent: {
|
|
|
99
88
|
visible: boolean;
|
|
100
89
|
};
|
|
101
90
|
};
|
|
102
|
-
hoverCursorScale: {
|
|
103
|
-
type: string;
|
|
104
|
-
title: string;
|
|
105
|
-
min: number;
|
|
106
|
-
max: number;
|
|
107
|
-
step: number;
|
|
108
|
-
display: {
|
|
109
|
-
type: string;
|
|
110
|
-
visible: boolean;
|
|
111
|
-
};
|
|
112
|
-
};
|
|
113
91
|
};
|
|
114
92
|
};
|
|
115
93
|
position: {
|
|
@@ -154,9 +132,7 @@ export declare const ControlImageRevealSliderComponent: {
|
|
|
154
132
|
cursor: {
|
|
155
133
|
cursorType: string;
|
|
156
134
|
defaultCursor: null;
|
|
157
|
-
defaultCursorScale: number;
|
|
158
135
|
hoverCursor: null;
|
|
159
|
-
hoverCursorScale: number;
|
|
160
136
|
};
|
|
161
137
|
position: {
|
|
162
138
|
revealPosition: string;
|
|
@@ -174,15 +150,10 @@ export declare const ControlImageRevealSliderComponent: {
|
|
|
174
150
|
value: boolean;
|
|
175
151
|
};
|
|
176
152
|
} | {
|
|
177
|
-
if:
|
|
153
|
+
if: {
|
|
178
154
|
name: string;
|
|
179
155
|
value: string;
|
|
180
|
-
|
|
181
|
-
} | {
|
|
182
|
-
name: string;
|
|
183
|
-
value: null;
|
|
184
|
-
isNotEqual: boolean;
|
|
185
|
-
})[];
|
|
156
|
+
}[];
|
|
186
157
|
then: {
|
|
187
158
|
name: string;
|
|
188
159
|
value: boolean;
|
|
@@ -14,9 +14,7 @@ type ImageRevealSliderImageSize = {
|
|
|
14
14
|
};
|
|
15
15
|
type ImageRevealSliderCursor = {
|
|
16
16
|
cursorType: 'system' | 'custom';
|
|
17
|
-
defaultCursorScale: number;
|
|
18
17
|
defaultCursor: string | null;
|
|
19
|
-
hoverCursorScale: number;
|
|
20
18
|
hoverCursor: string | null;
|
|
21
19
|
};
|
|
22
20
|
type ImageRevealSliderPosition = {
|
|
@@ -36,5 +34,5 @@ type ImageRevealSliderItem = {
|
|
|
36
34
|
};
|
|
37
35
|
link: string;
|
|
38
36
|
};
|
|
39
|
-
export declare function ImageRevealSlider({ settings, content, isEditor }: ImageRevealSliderProps):
|
|
37
|
+
export declare function ImageRevealSlider({ settings, content, isEditor }: ImageRevealSliderProps): JSX.Element;
|
|
40
38
|
export {};
|
|
@@ -7,7 +7,7 @@ type LightboxGalleryProps = {
|
|
|
7
7
|
activeEvent: 'close' | 'open';
|
|
8
8
|
isEditor?: boolean;
|
|
9
9
|
};
|
|
10
|
-
export declare const LightboxGallery: ({ settings, content, styles, portalId, activeEvent, isEditor }: LightboxGalleryProps) =>
|
|
10
|
+
export declare const LightboxGallery: ({ settings, content, styles, portalId, activeEvent, isEditor }: LightboxGalleryProps) => JSX.Element;
|
|
11
11
|
type LightboxImage = {
|
|
12
12
|
image: {
|
|
13
13
|
url: string;
|
package/dist/components.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ControlSlider-module__wrapper___sHEkd{position:relative;width:100%;height:100%}.ControlSlider-module__slider___R3i9-{width:100%;height:100%}.ControlSlider-module__sliderItems___1MgPL{display:flex;overflow:hidden;width:100%;height:100%;transition:transform .3s ease-in-out}.ControlSlider-module__sliderItem___QQSkR{width:100%;height:100%;display:flex;position:relative}.ControlSlider-module__sliderImage___9hRl-{width:100%;height:100%;object-fit:cover}.ControlSlider-module__arrow___05ghY{position:absolute;display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;top:50%;left:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);z-index:1;transform:translate(-50%,-50%);padding:0;width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}.ControlSlider-module__arrow___05ghY.ControlSlider-module__arrowVertical___tBfVN{left:50%;top:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(-50%,-50%)}.ControlSlider-module__nextArrow___-30Yc{left:unset;right:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(50%,-50%)}.ControlSlider-module__nextArrow___-30Yc.ControlSlider-module__arrowVertical___tBfVN{left:50%;right:unset;top:unset;bottom:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(-50%,50%)}.ControlSlider-module__arrowInner___aEra3{all:unset;cursor:pointer;width:100%;height:100%}.ControlSlider-module__arrowInner___aEra3:hover .ControlSlider-module__arrowIcon___S4ztF path{fill:var(--arrow-hover-color)!important}.ControlSlider-module__arrowImg___2dwJW{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ControlSlider-module__arrowIcon___S4ztF{width:100%;height:100%}.ControlSlider-module__arrowIcon___S4ztF path{transition:fill .15s ease-in-out}.ControlSlider-module__mirror___brd6U{transform:translate(-50%,-50%) scaleX(-1)!important}.ControlSlider-module__arrowVertical___tBfVN.ControlSlider-module__mirror___brd6U{transform:translate(-50%,-50%) scaleY(-1)!important}.ControlSlider-module__pagination___bicLF{position:absolute;z-index:1;border-radius:50%}.ControlSlider-module__paginationInner___bT-P-{display:flex;gap:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);padding-top:calc(var(--is-editor, 0) * .6944444444vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * .6944444444vw);padding-bottom:calc(var(--is-editor, 0) * .6944444444vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * .6944444444vw);padding-left:calc(var(--is-editor, 0) * 1.25vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.25vw);padding-right:calc(var(--is-editor, 0) * 1.25vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.25vw);border-radius:calc(var(--is-editor, 0) * 2.3611111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.3611111111vw)}.ControlSlider-module__paginationVertical___zYqKw{flex-direction:column}.ControlSlider-module__paginationItem___nTRbk{all:unset;flex-shrink:0;position:relative;width:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);height:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);cursor:pointer}.ControlSlider-module__paginationItem___nTRbk:hover .ControlSlider-module__dot___p1Qun{background-color:var(--pagination-hover-color)!important}.ControlSlider-module__dot___p1Qun{border-radius:50%;scale:.5;transition:background-color .3s ease-in-out,transform .3s ease-in-out;width:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);height:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw)}.ControlSlider-module__activeDot___LHFaj{transform:scale(2)}.ControlSlider-module__paginationInsideBottom___R3FWn{bottom:0;left:50%;transform:translate(-50%)}.ControlSlider-module__paginationInsideTop___V-qb-{left:50%;transform:translate(-50%);top:0}.ControlSlider-module__paginationOutsideBottom___14w8D{left:50%;transform:translate(-50%);bottom:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationOutsideTop___SCLqB{left:50%;transform:translate(-50%);top:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationInsideLeft___yOBRZ{top:50%;transform:translateY(-50%);left:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationInsideRight___Rtt3o{top:50%;transform:translateY(-50%);right:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationOutsideLeft___lahaw{top:50%;transform:translateY(-50%);left:calc(var(--is-editor, 0) * -5.4861111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -5.4861111111vw)}.ControlSlider-module__paginationOutsideRight___EtuQa{top:50%;transform:translateY(-50%);right:calc(var(--is-editor, 0) * -5.4861111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -5.4861111111vw)}.ControlSlider-module__imgWrapper___UjEgB,.ControlSlider-module__wrapperInner___DLAWV{width:100%;height:100%}.ControlSlider-module__captionBlock___dJ6-j{pointer-events:none;position:absolute;top:0;z-index:1;left:0;right:0;bottom:0}.ControlSlider-module__captionTextWrapper___HFlpf{position:relative;width:100%;height:100%}.ControlSlider-module__captionText___uGBVc{pointer-events:none;max-width:100%;transition-property:opacity;transition-timing-function:ease-in-out;position:absolute;display:inline-block;white-space:pre-wrap;overflow-wrap:break-word;opacity:0}.ControlSlider-module__captionText___uGBVc.ControlSlider-module__active___WZK4G{opacity:1}.ControlSlider-module__withPointerEvents___t-18M{pointer-events:auto}.ControlSlider-module__absolute___KxmYB{position:absolute}.ControlSlider-module__topLeftAlignment___zjnGM{top:0;left:0}.ControlSlider-module__topCenterAlignment___gD1xW{top:0;left:50%;transform:translate(-50%)}.ControlSlider-module__topRightAlignment___NMapS{top:0;right:0}.ControlSlider-module__middleLeftAlignment___OnUrY{top:50%;transform:translateY(-50%);left:0}.ControlSlider-module__middleCenterAlignment___Tdkl0{top:50%;transform:translate(-50%,-50%);left:50%}.ControlSlider-module__middleRightAlignment___wEbfX{top:50%;transform:translateY(-50%);right:0}.ControlSlider-module__bottomLeftAlignment___cTP2-{bottom:0;left:0}.ControlSlider-module__bottomCenterAlignment___c54fB{bottom:0;left:50%;transform:translate(-50%)}.ControlSlider-module__bottomRightAlignment___kEwrz{bottom:0;right:0}.ControlSlider-module__clickOverlay___DZA28{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.ControlSlider-module__contain___pLyq7{object-fit:contain}.ControlSlider-module__cover___KdDat{object-fit:cover}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.RichTextRenderer-module__link___BWeZ2{color:inherit;cursor:pointer;pointer-events:auto;transition:color .2s ease}.RichTextRenderer-module__link___BWeZ2:hover{color:var(--link-hover-color)}.SvgImage-module__svg___q3xE-{width:100%;height:100%;color:transparent;display:inline-block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--fill);transition:background-color .2s;-webkit-mask:var(--svg) no-repeat center/contain;mask:var(--svg) no-repeat center/contain}.SvgImage-module__svg___q3xE-:hover{background-color:var(--hover-fill)}.SvgImage-module__img___VsTm-{width:100%;height:100%;object-fit:contain}.ImageRevealSlider-module__imageRevealSlider___UE5Ob{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.ImageRevealSlider-module__image___Qjt-e{display:block;width:100%;height:100%;object-fit:cover;position:relative;-webkit-user-select:none;user-select:none;pointer-events:none}.ImageRevealSlider-module__link___N-iLG{width:100%;height:100%;display:block}.ImageRevealSlider-module__cursor___2U03d{position:absolute;top:0;left:0;pointer-events:none}.LightBox-module__heroImage___sTxNF{width:100%;height:100%;cursor:pointer;object-fit:cover}.LightBox-module__background___rm9ml{position:fixed;z-index:9997;top:0;left:0;right:0;bottom:0;width:100%;height:100%}.LightBox-module__editor___4ACaY{width:var(--cntrl-article-width)!important;margin-left:auto;margin-right:auto}.LightBox-module__contentStyle___Bgnsq{position:fixed;z-index:9999;top:0;left:0;right:0;bottom:0;overflow:auto;background:transparent;box-sizing:border-box}.LightBox-module__imageStyle___tLIlB{position:relative;display:block;cursor:pointer;background-color:transparent;max-width:100%;max-height:100%;width:auto;height:auto}.LightBox-module__imgWrapper___LuFUp{position:relative;display:flex;width:100%;height:100%;overflow:hidden;box-sizing:border-box}.LightBox-module__contain___8-yaS{object-fit:contain;max-width:100%;max-height:100%}.LightBox-module__cover___hNvOG{width:100%;height:100%;object-fit:cover}.LightBox-module__caption___b6L2I{z-index:9999;position:absolute;display:flex}.LightBox-module__captionTextInner___rCGNH{position:relative}.LightBox-module__lightboxSplide___XFuWC.splide,.LightBox-module__lightboxSplide___XFuWC .splide__track{height:100%}.LightBox-module__arrow___iz38X{position:absolute;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;background-color:transparent;top:50%;z-index:1;transform:translate(-50%,-50%);padding:0;left:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}.LightBox-module__arrow___iz38X.LightBox-module__arrowVertical___Zfz81{left:50%;top:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(-50%,-50%)}.LightBox-module__nextArrow___zkAQN{left:unset;right:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(50%,-50%)}.LightBox-module__nextArrow___zkAQN.LightBox-module__arrowVertical___Zfz81{left:50%;right:unset;top:unset;bottom:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(-50%,50%)}.LightBox-module__arrowInner___p48sW{all:unset;cursor:pointer;width:100%;height:100%}.LightBox-module__arrowInner___p48sW:hover .LightBox-module__arrowIcon___3VaFf path{fill:var(--arrow-hover-color)!important}.LightBox-module__arrowImg___pNV88{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.LightBox-module__mirror___pjeXc{transform:translate(-50%,-50%) scaleX(-1)!important}.LightBox-module__arrowVertical___Zfz81.LightBox-module__mirror___pjeXc{transform:translate(-50%,-50%) scaleY(-1)!important}.LightBox-module__thumbsContainerVertical___wttk5{flex-direction:column;display:flex}.LightBox-module__thumbsContainer___osSma{display:flex;align-items:center;justify-content:center;pointer-events:auto}.LightBox-module__thumbsAlignStart___MO6tY{align-items:flex-start}.LightBox-module__thumbsAlignCenter___Q4sUx{align-items:center}.LightBox-module__thumbsAlignEnd___p4y9R{align-items:flex-end}.LightBox-module__thumbItem___HvnF3{all:unset;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:transform .1s ease,opacity .1s ease}.LightBox-module__thumbItem___HvnF3:hover{opacity:var(--thumb-hover)!important}.LightBox-module__closeButton___g2khP{all:unset;cursor:pointer;position:absolute;width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}@keyframes LightBox-module__lbFadeIn___P8mx0{0%{opacity:0}to{opacity:1}}.LightBox-module__fadeIn___0m5GW{animation-name:LightBox-module__lbFadeIn___P8mx0}@keyframes LightBox-module__lbSlideInLeft___ygsXZ{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes LightBox-module__lbSlideInRight___w2YKV{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes LightBox-module__lbSlideInTop___W7CSQ{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes LightBox-module__lbSlideInBottom___7kiT2{0%{transform:translateY(100%)}to{transform:translateY(0)}}.LightBox-module__slideInLeft___gPYwC{animation-name:LightBox-module__lbSlideInLeft___ygsXZ}.LightBox-module__slideInRight___S-pPp{animation-name:LightBox-module__lbSlideInRight___w2YKV}.LightBox-module__slideInTop___DFdAj{animation-name:LightBox-module__lbSlideInTop___W7CSQ}.LightBox-module__slideInBottom___m27kZ{animation-name:LightBox-module__lbSlideInBottom___7kiT2}@keyframes LightBox-module__lbFadeOut___MhEeN{0%{opacity:1}to{opacity:0}}.LightBox-module__fadeOut___55qBR{animation-name:LightBox-module__lbFadeOut___MhEeN!important}@keyframes LightBox-module__lbSlideOutLeft___xM4sO{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes LightBox-module__lbSlideOutRight___Jppgj{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes LightBox-module__lbSlideOutTop___pvscE{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes LightBox-module__lbSlideOutBottom___oFjPG{0%{transform:translateY(0)}to{transform:translateY(100%)}}.LightBox-module__slideOutLeft___NvU7P{animation-name:LightBox-module__lbSlideOutLeft___xM4sO!important}.LightBox-module__slideOutRight___SK7eC{animation-name:LightBox-module__lbSlideOutRight___Jppgj!important}.LightBox-module__slideOutTop___Vgg0z{animation-name:LightBox-module__lbSlideOutTop___pvscE!important}.LightBox-module__slideOutBottom___nJ0Ef{animation-name:LightBox-module__lbSlideOutBottom___oFjPG!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .LightBox-module__scaleSlide___vZriG{opacity:0!important;transform:var(--position-transform, none) scale(.9)!important;transition:opacity var(--splide-speed, .5s) ease,transform var(--splide-speed, .5s) ease!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .splide__slide.is-active .LightBox-module__scaleSlide___vZriG{opacity:1!important;transform:var(--position-transform, none) scale(1)!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .splide__slide:not(.is-active) .LightBox-module__scaleSlide___vZriG{opacity:0!important;transform:var(--position-transform, none) scale(1.1)!important}
|
|
1
|
+
.ControlSlider-module__wrapper___sHEkd{position:relative;width:100%;height:100%}.ControlSlider-module__wrapper___sHEkd:hover .ControlSlider-module__hoverArrow___A-dOH{opacity:1!important}.ControlSlider-module__slider___R3i9-{width:100%;height:100%}.ControlSlider-module__sliderItems___1MgPL{display:flex;overflow:hidden;width:100%;height:100%;transition:transform .3s ease-in-out}.ControlSlider-module__sliderItem___QQSkR{width:100%;height:100%;display:flex;position:relative}.ControlSlider-module__sliderImage___9hRl-{width:100%;height:100%;object-fit:cover}.ControlSlider-module__arrow___05ghY{position:absolute;display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;top:50%;left:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);z-index:1;transform:translate(-50%,-50%);padding:0;width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}.ControlSlider-module__arrow___05ghY.ControlSlider-module__arrowVertical___tBfVN{left:50%;top:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(-50%,-50%)}.ControlSlider-module__nextArrow___-30Yc{left:unset;right:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(50%,-50%)}.ControlSlider-module__nextArrow___-30Yc.ControlSlider-module__arrowVertical___tBfVN{left:50%;right:unset;top:unset;bottom:calc(var(--is-editor, 0) * -1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -1.3888888889vw);transform:translate(-50%,50%)}.ControlSlider-module__arrowInner___aEra3{all:unset;cursor:pointer;width:100%;height:100%}.ControlSlider-module__arrowInner___aEra3:hover .ControlSlider-module__arrowIcon___S4ztF path{fill:var(--arrow-hover-color)!important}.ControlSlider-module__arrowImg___2dwJW{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ControlSlider-module__arrowIcon___S4ztF{width:100%;height:100%}.ControlSlider-module__arrowIcon___S4ztF path{transition:fill .15s ease-in-out}.ControlSlider-module__mirror___brd6U{transform:translate(-50%,-50%) scaleX(-1)!important}.ControlSlider-module__arrowVertical___tBfVN.ControlSlider-module__mirror___brd6U{transform:translate(-50%,-50%) scaleY(-1)!important}.ControlSlider-module__hoverArrow___A-dOH{opacity:0;transition:opacity .15s ease-in-out}.ControlSlider-module__hoverArrow___A-dOH:hover{opacity:1}.ControlSlider-module__pagination___bicLF{position:absolute;z-index:1;border-radius:50%}.ControlSlider-module__paginationInner___bT-P-{display:flex;gap:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);padding-top:calc(var(--is-editor, 0) * .6944444444vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * .6944444444vw);padding-bottom:calc(var(--is-editor, 0) * .6944444444vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * .6944444444vw);padding-left:calc(var(--is-editor, 0) * 1.25vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.25vw);padding-right:calc(var(--is-editor, 0) * 1.25vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.25vw);border-radius:calc(var(--is-editor, 0) * 2.3611111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.3611111111vw)}.ControlSlider-module__paginationVertical___zYqKw{flex-direction:column}.ControlSlider-module__paginationItem___nTRbk{all:unset;flex-shrink:0;position:relative;width:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);height:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);cursor:pointer}.ControlSlider-module__paginationItem___nTRbk:hover .ControlSlider-module__dot___p1Qun{background-color:var(--pagination-hover-color)!important}.ControlSlider-module__dot___p1Qun{border-radius:50%;scale:.5;transition:background-color .3s ease-in-out,transform .3s ease-in-out;width:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw);height:calc(var(--is-editor, 0) * 1.1111111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.1111111111vw)}.ControlSlider-module__activeDot___LHFaj{transform:scale(2)}.ControlSlider-module__paginationInsideBottom___R3FWn{bottom:0;left:50%;transform:translate(-50%)}.ControlSlider-module__paginationInsideTop___V-qb-{left:50%;transform:translate(-50%);top:0}.ControlSlider-module__paginationOutsideBottom___14w8D{left:50%;transform:translate(-50%);bottom:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationOutsideTop___SCLqB{left:50%;transform:translate(-50%);top:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationInsideLeft___yOBRZ{top:50%;transform:translateY(-50%);left:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationInsideRight___Rtt3o{top:50%;transform:translateY(-50%);right:calc(var(--is-editor, 0) * -2.4305555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -2.4305555556vw)}.ControlSlider-module__paginationOutsideLeft___lahaw{top:50%;transform:translateY(-50%);left:calc(var(--is-editor, 0) * -5.4861111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -5.4861111111vw)}.ControlSlider-module__paginationOutsideRight___EtuQa{top:50%;transform:translateY(-50%);right:calc(var(--is-editor, 0) * -5.4861111111vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * -5.4861111111vw)}.ControlSlider-module__imgWrapper___UjEgB,.ControlSlider-module__wrapperInner___DLAWV{width:100%;height:100%}.ControlSlider-module__captionBlock___dJ6-j{pointer-events:none;position:absolute;top:0;z-index:1;left:0;right:0;bottom:0}.ControlSlider-module__captionTextWrapper___HFlpf{position:relative;width:100%;height:100%}.ControlSlider-module__captionText___uGBVc{pointer-events:none;max-width:100%;transition-property:opacity;transition-timing-function:ease-in-out;position:absolute;display:inline-block;white-space:pre-wrap;overflow-wrap:break-word;opacity:0}.ControlSlider-module__captionText___uGBVc.ControlSlider-module__active___WZK4G{opacity:1}.ControlSlider-module__withPointerEvents___t-18M{pointer-events:auto}.ControlSlider-module__absolute___KxmYB{position:absolute}.ControlSlider-module__topLeftAlignment___zjnGM{top:0;left:0}.ControlSlider-module__topCenterAlignment___gD1xW{top:0;left:50%;transform:translate(-50%)}.ControlSlider-module__topRightAlignment___NMapS{top:0;right:0}.ControlSlider-module__middleLeftAlignment___OnUrY{top:50%;transform:translateY(-50%);left:0}.ControlSlider-module__middleCenterAlignment___Tdkl0{top:50%;transform:translate(-50%,-50%);left:50%}.ControlSlider-module__middleRightAlignment___wEbfX{top:50%;transform:translateY(-50%);right:0}.ControlSlider-module__bottomLeftAlignment___cTP2-{bottom:0;left:0}.ControlSlider-module__bottomCenterAlignment___c54fB{bottom:0;left:50%;transform:translate(-50%)}.ControlSlider-module__bottomRightAlignment___kEwrz{bottom:0;right:0}.ControlSlider-module__clickOverlay___DZA28{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.ControlSlider-module__contain___pLyq7{object-fit:contain}.ControlSlider-module__cover___KdDat{object-fit:cover}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}.RichTextRenderer-module__link___BWeZ2{color:inherit;cursor:pointer;pointer-events:auto;transition:color .2s ease}.RichTextRenderer-module__link___BWeZ2:hover{color:var(--link-hover-color)}.SvgImage-module__svg___q3xE-{width:100%;height:100%;color:transparent;display:inline-block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:var(--fill);transition:background-color .2s;-webkit-mask:var(--svg) no-repeat center/contain;mask:var(--svg) no-repeat center/contain}.SvgImage-module__svg___q3xE-:hover{background-color:var(--hover-fill)}.SvgImage-module__img___VsTm-{width:100%;height:100%;object-fit:contain}.ImageRevealSlider-module__imageRevealSlider___UE5Ob{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.ImageRevealSlider-module__image___Qjt-e{width:100%;height:100%;object-fit:cover;position:relative;-webkit-user-select:none;user-select:none;pointer-events:none}.ImageRevealSlider-module__link___N-iLG{width:100%;height:100%;display:block}.LightBox-module__heroImage___sTxNF{width:100%;height:100%;cursor:pointer;object-fit:cover}.LightBox-module__background___rm9ml{position:fixed;z-index:9997;top:0;left:0;right:0;bottom:0;width:100%;height:100%}.LightBox-module__editor___4ACaY{width:var(--cntrl-article-width)!important;margin-left:auto;margin-right:auto}.LightBox-module__contentStyle___Bgnsq{position:fixed;z-index:9999;top:0;left:0;right:0;bottom:0;overflow:auto;background:transparent;box-sizing:border-box}.LightBox-module__imageStyle___tLIlB{position:relative;display:block;cursor:pointer;background-color:transparent;max-width:100%;max-height:100%;width:auto;height:auto}.LightBox-module__imgWrapper___LuFUp{position:relative;display:flex;width:100%;height:100%;overflow:hidden;box-sizing:border-box}.LightBox-module__contain___8-yaS{object-fit:contain;max-width:100%;max-height:100%}.LightBox-module__cover___hNvOG{width:100%;height:100%;object-fit:cover}.LightBox-module__caption___b6L2I{z-index:9999;position:absolute;display:flex}.LightBox-module__captionTextInner___rCGNH{position:relative}.LightBox-module__lightboxSplide___XFuWC.splide,.LightBox-module__lightboxSplide___XFuWC .splide__track{height:100%}.LightBox-module__arrow___iz38X{position:absolute;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;background-color:transparent;top:50%;z-index:1;transform:translate(-50%,-50%);padding:0;left:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}.LightBox-module__arrow___iz38X.LightBox-module__arrowVertical___Zfz81{left:50%;top:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(-50%,-50%)}.LightBox-module__nextArrow___zkAQN{left:unset;right:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(50%,-50%)}.LightBox-module__nextArrow___zkAQN.LightBox-module__arrowVertical___Zfz81{left:50%;right:unset;top:unset;bottom:calc(var(--is-editor, 0) * 1.3888888889vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 1.3888888889vw);transform:translate(-50%,50%)}.LightBox-module__arrowInner___p48sW{all:unset;cursor:pointer;width:100%;height:100%}.LightBox-module__arrowInner___p48sW:hover .LightBox-module__arrowIcon___3VaFf path{fill:var(--arrow-hover-color)!important}.LightBox-module__arrowImg___pNV88{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.LightBox-module__mirror___pjeXc{transform:translate(-50%,-50%) scaleX(-1)!important}.LightBox-module__arrowVertical___Zfz81.LightBox-module__mirror___pjeXc{transform:translate(-50%,-50%) scaleY(-1)!important}.LightBox-module__thumbsContainerVertical___wttk5{flex-direction:column;display:flex}.LightBox-module__thumbsContainer___osSma{display:flex;align-items:center;justify-content:center;pointer-events:auto}.LightBox-module__thumbsAlignStart___MO6tY{align-items:flex-start}.LightBox-module__thumbsAlignCenter___Q4sUx{align-items:center}.LightBox-module__thumbsAlignEnd___p4y9R{align-items:flex-end}.LightBox-module__thumbItem___HvnF3{all:unset;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:transform .1s ease,opacity .1s ease}.LightBox-module__thumbItem___HvnF3:hover{opacity:var(--thumb-hover)!important}.LightBox-module__closeButton___g2khP{all:unset;cursor:pointer;position:absolute;width:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw);height:calc(var(--is-editor, 0) * 2.0833333333vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 2.0833333333vw)}@keyframes LightBox-module__lbFadeIn___P8mx0{0%{opacity:0}to{opacity:1}}.LightBox-module__fadeIn___0m5GW{animation-name:LightBox-module__lbFadeIn___P8mx0}@keyframes LightBox-module__lbSlideInLeft___ygsXZ{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes LightBox-module__lbSlideInRight___w2YKV{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes LightBox-module__lbSlideInTop___W7CSQ{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes LightBox-module__lbSlideInBottom___7kiT2{0%{transform:translateY(100%)}to{transform:translateY(0)}}.LightBox-module__slideInLeft___gPYwC{animation-name:LightBox-module__lbSlideInLeft___ygsXZ}.LightBox-module__slideInRight___S-pPp{animation-name:LightBox-module__lbSlideInRight___w2YKV}.LightBox-module__slideInTop___DFdAj{animation-name:LightBox-module__lbSlideInTop___W7CSQ}.LightBox-module__slideInBottom___m27kZ{animation-name:LightBox-module__lbSlideInBottom___7kiT2}@keyframes LightBox-module__lbFadeOut___MhEeN{0%{opacity:1}to{opacity:0}}.LightBox-module__fadeOut___55qBR{animation-name:LightBox-module__lbFadeOut___MhEeN!important}@keyframes LightBox-module__lbSlideOutLeft___xM4sO{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes LightBox-module__lbSlideOutRight___Jppgj{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes LightBox-module__lbSlideOutTop___pvscE{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes LightBox-module__lbSlideOutBottom___oFjPG{0%{transform:translateY(0)}to{transform:translateY(100%)}}.LightBox-module__slideOutLeft___NvU7P{animation-name:LightBox-module__lbSlideOutLeft___xM4sO!important}.LightBox-module__slideOutRight___SK7eC{animation-name:LightBox-module__lbSlideOutRight___Jppgj!important}.LightBox-module__slideOutTop___Vgg0z{animation-name:LightBox-module__lbSlideOutTop___pvscE!important}.LightBox-module__slideOutBottom___nJ0Ef{animation-name:LightBox-module__lbSlideOutBottom___oFjPG!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .LightBox-module__scaleSlide___vZriG{opacity:0!important;transform:var(--position-transform, none) scale(.9)!important;transition:opacity var(--splide-speed, .5s) ease,transform var(--splide-speed, .5s) ease!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .splide__slide.is-active .LightBox-module__scaleSlide___vZriG{opacity:1!important;transform:var(--position-transform, none) scale(1)!important}.LightBox-module__lightboxSplide___XFuWC.splide--fade .splide__slide:not(.is-active) .LightBox-module__scaleSlide___vZriG{opacity:0!important;transform:var(--position-transform, none) scale(1.1)!important}
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,7 @@ const reactSplide = require("@splidejs/react-splide");
|
|
|
6
6
|
const cn = require("classnames");
|
|
7
7
|
const reactDom = require("react-dom");
|
|
8
8
|
const wrapper = "ControlSlider-module__wrapper___sHEkd";
|
|
9
|
+
const hoverArrow = "ControlSlider-module__hoverArrow___A-dOH";
|
|
9
10
|
const sliderItem = "ControlSlider-module__sliderItem___QQSkR";
|
|
10
11
|
const sliderImage = "ControlSlider-module__sliderImage___9hRl-";
|
|
11
12
|
const arrow$1 = "ControlSlider-module__arrow___05ghY";
|
|
@@ -49,6 +50,7 @@ const contain$1 = "ControlSlider-module__contain___pLyq7";
|
|
|
49
50
|
const cover$1 = "ControlSlider-module__cover___KdDat";
|
|
50
51
|
const styles$3 = {
|
|
51
52
|
wrapper,
|
|
53
|
+
hoverArrow,
|
|
52
54
|
sliderItem,
|
|
53
55
|
sliderImage,
|
|
54
56
|
arrow: arrow$1,
|
|
@@ -316,7 +318,8 @@ function ControlSlider({ settings, content, styles: sliderStyles, isEditor }) {
|
|
|
316
318
|
"div",
|
|
317
319
|
{
|
|
318
320
|
className: cn(styles$3.arrow, {
|
|
319
|
-
[styles$3.arrowVertical]: direction === "vert"
|
|
321
|
+
[styles$3.arrowVertical]: direction === "vert",
|
|
322
|
+
[styles$3.hoverArrow]: controls.show === "on hover"
|
|
320
323
|
}),
|
|
321
324
|
style: {
|
|
322
325
|
color: controls.color,
|
|
@@ -352,7 +355,8 @@ function ControlSlider({ settings, content, styles: sliderStyles, isEditor }) {
|
|
|
352
355
|
"div",
|
|
353
356
|
{
|
|
354
357
|
className: cn(styles$3.arrow, styles$3.nextArrow, {
|
|
355
|
-
[styles$3.arrowVertical]: direction === "vert"
|
|
358
|
+
[styles$3.arrowVertical]: direction === "vert",
|
|
359
|
+
[styles$3.hoverArrow]: controls.show === "on hover"
|
|
356
360
|
}),
|
|
357
361
|
style: {
|
|
358
362
|
color: controls.color,
|
|
@@ -613,6 +617,14 @@ const ControlSliderComponent = {
|
|
|
613
617
|
type: "settings-color-picker",
|
|
614
618
|
format: "single"
|
|
615
619
|
}
|
|
620
|
+
},
|
|
621
|
+
show: {
|
|
622
|
+
title: "Show",
|
|
623
|
+
type: "string",
|
|
624
|
+
display: {
|
|
625
|
+
type: "ratio-group"
|
|
626
|
+
},
|
|
627
|
+
enum: ["always", "on hover"]
|
|
616
628
|
}
|
|
617
629
|
}
|
|
618
630
|
},
|
|
@@ -767,7 +779,8 @@ const ControlSliderComponent = {
|
|
|
767
779
|
},
|
|
768
780
|
scale: 100,
|
|
769
781
|
color: "#000000",
|
|
770
|
-
hover: "#cccccc"
|
|
782
|
+
hover: "#cccccc",
|
|
783
|
+
show: "always"
|
|
771
784
|
},
|
|
772
785
|
transition: {
|
|
773
786
|
type: "slide",
|
|
@@ -1087,85 +1100,14 @@ async function calculateImageWidthHeight(imgUrl, sizeType, customWidth, randomRa
|
|
|
1087
1100
|
return { width, height, finalWidth: `${width}px` };
|
|
1088
1101
|
}
|
|
1089
1102
|
function ImageRevealSlider({ settings, content, isEditor }) {
|
|
1090
|
-
const
|
|
1103
|
+
const divRef = React.useRef(null);
|
|
1091
1104
|
const [placedImages, setPlacedImages] = React.useState([]);
|
|
1092
1105
|
const [counter, setCounter] = React.useState(0);
|
|
1093
1106
|
const imageIdCounter = React.useRef(0);
|
|
1094
|
-
const
|
|
1095
|
-
const [cursorPos, setCursorPos] = React.useState({ x: -100, y: -100 });
|
|
1096
|
-
const [cursorSize, setCursorSize] = React.useState({ w: 32, h: 32 });
|
|
1097
|
-
const [customCursorImg, setCustomCursorImg] = React.useState("none");
|
|
1098
|
-
const lastMousePos = React.useRef({ x: 0, y: 0 });
|
|
1099
|
-
const [isInside, setIsInside] = React.useState(false);
|
|
1100
|
-
React.useEffect(() => {
|
|
1101
|
-
if (!divRef) return;
|
|
1102
|
-
const updateCursorPosition = (clientX, clientY) => {
|
|
1103
|
-
const rect = divRef.getBoundingClientRect();
|
|
1104
|
-
setCursorPos({
|
|
1105
|
-
x: clientX - cursorSize.w / 2 - rect.left,
|
|
1106
|
-
y: clientY - cursorSize.h / 2 - rect.top
|
|
1107
|
-
});
|
|
1108
|
-
};
|
|
1109
|
-
const mouseMove = (e) => {
|
|
1110
|
-
e.stopPropagation();
|
|
1111
|
-
lastMousePos.current = { x: e.clientX, y: e.clientY };
|
|
1112
|
-
updateCursorPosition(e.clientX, e.clientY);
|
|
1113
|
-
};
|
|
1114
|
-
const handleScroll = () => {
|
|
1115
|
-
if (!isInside) return;
|
|
1116
|
-
updateCursorPosition(lastMousePos.current.x, lastMousePos.current.y);
|
|
1117
|
-
};
|
|
1118
|
-
divRef.addEventListener("mousemove", mouseMove);
|
|
1119
|
-
window.addEventListener("scroll", handleScroll, true);
|
|
1120
|
-
return () => {
|
|
1121
|
-
divRef.removeEventListener("mousemove", mouseMove);
|
|
1122
|
-
window.removeEventListener("scroll", handleScroll, true);
|
|
1123
|
-
};
|
|
1124
|
-
}, [divRef, cursorSize, isInside]);
|
|
1125
|
-
React.useEffect(() => {
|
|
1126
|
-
if (!isInside) {
|
|
1127
|
-
setCustomCursorImg("none");
|
|
1128
|
-
setCursorSize({ w: 0, h: 0 });
|
|
1129
|
-
}
|
|
1130
|
-
}, [isInside]);
|
|
1107
|
+
const defaultImageCount = 1;
|
|
1131
1108
|
const { sizeType, imageWidth: customWidth, randomRangeImageWidth: randomRange } = settings.imageSize;
|
|
1132
1109
|
const { revealPosition, visible, target } = settings.position;
|
|
1133
|
-
const { cursorType,
|
|
1134
|
-
React.useEffect(() => {
|
|
1135
|
-
const updateCursor = () => {
|
|
1136
|
-
if (!divRef) return;
|
|
1137
|
-
if (cursorType === "system") {
|
|
1138
|
-
setCustomCursorImg("none");
|
|
1139
|
-
setCursorSize({ w: defaultScale, h: defaultScale });
|
|
1140
|
-
return;
|
|
1141
|
-
}
|
|
1142
|
-
const cx = cursorPos.x + cursorSize.w / 2;
|
|
1143
|
-
const cy = cursorPos.y + cursorSize.h / 2;
|
|
1144
|
-
const rect = divRef.getBoundingClientRect();
|
|
1145
|
-
const el = document.elementFromPoint(
|
|
1146
|
-
rect.left + cx,
|
|
1147
|
-
rect.top + cy
|
|
1148
|
-
);
|
|
1149
|
-
if (el && el.closest("a")) {
|
|
1150
|
-
setCustomCursorImg("none");
|
|
1151
|
-
setCursorSize({ w: defaultScale, h: defaultScale });
|
|
1152
|
-
return;
|
|
1153
|
-
}
|
|
1154
|
-
const next = isMouseOverImage(cx, cy, placedImages) || target === "area" ? { img: hoverCursor ?? "none", w: defaultScale * (hoverCursorScale || 1), h: defaultScale * (hoverCursorScale || 1) } : { img: defaultCursor ?? "none", w: defaultScale * (defaultCursorScale || 1), h: defaultScale * (defaultCursorScale || 1) };
|
|
1155
|
-
setCustomCursorImg(next.img);
|
|
1156
|
-
setCursorSize({ w: next.w, h: next.h });
|
|
1157
|
-
};
|
|
1158
|
-
updateCursor();
|
|
1159
|
-
}, [
|
|
1160
|
-
cursorPos,
|
|
1161
|
-
cursorType,
|
|
1162
|
-
target,
|
|
1163
|
-
hoverCursor,
|
|
1164
|
-
defaultCursor,
|
|
1165
|
-
hoverCursorScale,
|
|
1166
|
-
defaultCursorScale,
|
|
1167
|
-
placedImages
|
|
1168
|
-
]);
|
|
1110
|
+
const { cursorType, defaultCursor, hoverCursor } = settings.cursor;
|
|
1169
1111
|
const createNewImage = async (imgData, containerWidth, containerHeight, position = {}) => {
|
|
1170
1112
|
const { width, height, finalWidth } = await calculateImageWidthHeight(
|
|
1171
1113
|
imgData.image.url,
|
|
@@ -1194,34 +1136,34 @@ function ImageRevealSlider({ settings, content, isEditor }) {
|
|
|
1194
1136
|
};
|
|
1195
1137
|
};
|
|
1196
1138
|
const defaultContentUrls = React.useMemo(() => {
|
|
1197
|
-
const defaultContentLength = Math.min(content.length,
|
|
1139
|
+
const defaultContentLength = Math.min(content.length, defaultImageCount);
|
|
1198
1140
|
return content.filter((_, i) => i < defaultContentLength).map((c) => c.image.url).join("-");
|
|
1199
1141
|
}, [content]);
|
|
1200
1142
|
React.useEffect(() => {
|
|
1201
|
-
if (!divRef || content.length === 0) return;
|
|
1202
|
-
const rect = divRef.getBoundingClientRect();
|
|
1143
|
+
if (!divRef.current || content.length === 0) return;
|
|
1144
|
+
const rect = divRef.current.getBoundingClientRect();
|
|
1203
1145
|
const containerWidth = rect.width;
|
|
1204
1146
|
const containerHeight = rect.height;
|
|
1205
1147
|
const defaultPlaced = [];
|
|
1206
1148
|
const placeImages = async () => {
|
|
1207
|
-
for (let i = 0; i <
|
|
1149
|
+
for (let i = 0; i < defaultImageCount && i < content.length; i++) {
|
|
1208
1150
|
const imgData = content[i];
|
|
1209
1151
|
const newImg = await createNewImage(imgData, containerWidth, containerHeight);
|
|
1210
1152
|
defaultPlaced.push(newImg);
|
|
1211
1153
|
}
|
|
1212
1154
|
setPlacedImages(defaultPlaced);
|
|
1213
|
-
setCounter(
|
|
1155
|
+
setCounter(defaultImageCount % content.length);
|
|
1214
1156
|
};
|
|
1215
1157
|
placeImages();
|
|
1216
|
-
}, [defaultContentUrls, sizeType, customWidth, randomRange, revealPosition
|
|
1158
|
+
}, [defaultContentUrls, sizeType, customWidth, randomRange, revealPosition]);
|
|
1217
1159
|
React.useEffect(() => {
|
|
1218
1160
|
if (visible === "last One") {
|
|
1219
1161
|
setPlacedImages((prev) => prev.length > 0 ? [prev[prev.length - 1]] : []);
|
|
1220
1162
|
}
|
|
1221
1163
|
}, [visible]);
|
|
1222
1164
|
const handleClick = async (e) => {
|
|
1223
|
-
if (!divRef) return;
|
|
1224
|
-
const rect = divRef.getBoundingClientRect();
|
|
1165
|
+
if (!divRef.current) return;
|
|
1166
|
+
const rect = divRef.current.getBoundingClientRect();
|
|
1225
1167
|
const clickX = e.clientX - rect.left;
|
|
1226
1168
|
const clickY = e.clientY - rect.top;
|
|
1227
1169
|
if (target === "image" && !isMouseOverImage(clickX, clickY, placedImages)) return;
|
|
@@ -1241,68 +1183,46 @@ function ImageRevealSlider({ settings, content, isEditor }) {
|
|
|
1241
1183
|
setPlacedImages((prev) => visible === "all" ? [...prev, newImage] : [newImage]);
|
|
1242
1184
|
setCounter((prev) => prev >= content.length - 1 ? 0 : prev + 1);
|
|
1243
1185
|
};
|
|
1244
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
1186
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1245
1187
|
"div",
|
|
1246
1188
|
{
|
|
1247
|
-
ref:
|
|
1189
|
+
ref: divRef,
|
|
1248
1190
|
onClick: handleClick,
|
|
1249
|
-
onMouseEnter: () => setIsInside(true),
|
|
1250
|
-
onMouseLeave: () => setIsInside(false),
|
|
1251
1191
|
className: styles.imageRevealSlider,
|
|
1252
|
-
style: { cursor:
|
|
1253
|
-
children:
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
cursor: customCursorImg === "none" ? "default" : "none"
|
|
1266
|
-
},
|
|
1267
|
-
children: target === "area" && img2.link ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: img2.link, target: "_blank", className: styles.link, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1268
|
-
"img",
|
|
1269
|
-
{
|
|
1270
|
-
src: img2.url,
|
|
1271
|
-
alt: img2.name,
|
|
1272
|
-
className: styles.image
|
|
1273
|
-
},
|
|
1274
|
-
img2.id
|
|
1275
|
-
) }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1276
|
-
"img",
|
|
1277
|
-
{
|
|
1278
|
-
src: img2.url,
|
|
1279
|
-
alt: img2.name,
|
|
1280
|
-
className: styles.image
|
|
1281
|
-
},
|
|
1282
|
-
img2.id
|
|
1283
|
-
)
|
|
1192
|
+
style: { cursor: cursorType !== "system" && defaultCursor ? `url(${target === "area" ? hoverCursor : defaultCursor}), auto` : "default" },
|
|
1193
|
+
children: placedImages.map((img2) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1194
|
+
"div",
|
|
1195
|
+
{
|
|
1196
|
+
className: styles.wrapper,
|
|
1197
|
+
style: {
|
|
1198
|
+
top: `${img2.y}px`,
|
|
1199
|
+
left: `${img2.x}px`,
|
|
1200
|
+
position: "absolute",
|
|
1201
|
+
transform: "translate(-50%, -50%)",
|
|
1202
|
+
width: img2.width ?? "auto",
|
|
1203
|
+
height: "auto",
|
|
1204
|
+
cursor: cursorType !== "system" && hoverCursor ? `url(${hoverCursor}), auto` : "default"
|
|
1284
1205
|
},
|
|
1285
|
-
img2.
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
]
|
|
1206
|
+
children: target === "area" && img2.link ? /* @__PURE__ */ jsxRuntime.jsx("a", { href: img2.link, target: "_blank", className: styles.link, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1207
|
+
"img",
|
|
1208
|
+
{
|
|
1209
|
+
src: img2.url,
|
|
1210
|
+
alt: img2.name,
|
|
1211
|
+
className: styles.image
|
|
1212
|
+
},
|
|
1213
|
+
img2.id
|
|
1214
|
+
) }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
1215
|
+
"img",
|
|
1216
|
+
{
|
|
1217
|
+
src: img2.url,
|
|
1218
|
+
alt: img2.name,
|
|
1219
|
+
className: styles.image
|
|
1220
|
+
},
|
|
1221
|
+
img2.id
|
|
1222
|
+
)
|
|
1223
|
+
},
|
|
1224
|
+
img2.id
|
|
1225
|
+
))
|
|
1306
1226
|
}
|
|
1307
1227
|
);
|
|
1308
1228
|
}
|
|
@@ -1387,17 +1307,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1387
1307
|
visible: false
|
|
1388
1308
|
}
|
|
1389
1309
|
},
|
|
1390
|
-
defaultCursorScale: {
|
|
1391
|
-
type: "number",
|
|
1392
|
-
title: "Scale",
|
|
1393
|
-
min: 1,
|
|
1394
|
-
max: 5,
|
|
1395
|
-
step: 0.1,
|
|
1396
|
-
display: {
|
|
1397
|
-
type: "range-control",
|
|
1398
|
-
visible: false
|
|
1399
|
-
}
|
|
1400
|
-
},
|
|
1401
1310
|
hoverCursor: {
|
|
1402
1311
|
type: ["string", "null"],
|
|
1403
1312
|
title: "Hover",
|
|
@@ -1405,17 +1314,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1405
1314
|
type: "settings-image-input",
|
|
1406
1315
|
visible: false
|
|
1407
1316
|
}
|
|
1408
|
-
},
|
|
1409
|
-
hoverCursorScale: {
|
|
1410
|
-
type: "number",
|
|
1411
|
-
title: "Scale",
|
|
1412
|
-
min: 1,
|
|
1413
|
-
max: 5,
|
|
1414
|
-
step: 0.1,
|
|
1415
|
-
display: {
|
|
1416
|
-
type: "range-control",
|
|
1417
|
-
visible: false
|
|
1418
|
-
}
|
|
1419
1317
|
}
|
|
1420
1318
|
}
|
|
1421
1319
|
},
|
|
@@ -1461,9 +1359,7 @@ const ControlImageRevealSliderComponent = {
|
|
|
1461
1359
|
cursor: {
|
|
1462
1360
|
cursorType: "system",
|
|
1463
1361
|
defaultCursor: null,
|
|
1464
|
-
|
|
1465
|
-
hoverCursor: null,
|
|
1466
|
-
hoverCursorScale: 2
|
|
1362
|
+
hoverCursor: null
|
|
1467
1363
|
},
|
|
1468
1364
|
position: {
|
|
1469
1365
|
revealPosition: "random",
|
|
@@ -1502,17 +1398,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1502
1398
|
value: true
|
|
1503
1399
|
}
|
|
1504
1400
|
},
|
|
1505
|
-
{
|
|
1506
|
-
if: [
|
|
1507
|
-
{ name: "position.target", value: "image" },
|
|
1508
|
-
{ name: "cursor.cursorType", value: "custom" },
|
|
1509
|
-
{ name: "cursor.defaultCursor", value: null, isNotEqual: true }
|
|
1510
|
-
],
|
|
1511
|
-
then: {
|
|
1512
|
-
name: "properties.cursor.properties.defaultCursorScale.display.visible",
|
|
1513
|
-
value: true
|
|
1514
|
-
}
|
|
1515
|
-
},
|
|
1516
1401
|
{
|
|
1517
1402
|
if: {
|
|
1518
1403
|
name: "cursor.cursorType",
|
|
@@ -1522,16 +1407,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1522
1407
|
name: "properties.cursor.properties.hoverCursor.display.visible",
|
|
1523
1408
|
value: true
|
|
1524
1409
|
}
|
|
1525
|
-
},
|
|
1526
|
-
{
|
|
1527
|
-
if: [
|
|
1528
|
-
{ name: "cursor.cursorType", value: "custom" },
|
|
1529
|
-
{ name: "cursor.hoverCursor", value: null, isNotEqual: true }
|
|
1530
|
-
],
|
|
1531
|
-
then: {
|
|
1532
|
-
name: "properties.cursor.properties.hoverCursorScale.display.visible",
|
|
1533
|
-
value: true
|
|
1534
|
-
}
|
|
1535
1410
|
}
|
|
1536
1411
|
]
|
|
1537
1412
|
},
|
package/dist/index.mjs
CHANGED
|
@@ -4,6 +4,7 @@ import { Splide, SplideSlide } from "@splidejs/react-splide";
|
|
|
4
4
|
import cn from "classnames";
|
|
5
5
|
import { createPortal } from "react-dom";
|
|
6
6
|
const wrapper = "ControlSlider-module__wrapper___sHEkd";
|
|
7
|
+
const hoverArrow = "ControlSlider-module__hoverArrow___A-dOH";
|
|
7
8
|
const sliderItem = "ControlSlider-module__sliderItem___QQSkR";
|
|
8
9
|
const sliderImage = "ControlSlider-module__sliderImage___9hRl-";
|
|
9
10
|
const arrow$1 = "ControlSlider-module__arrow___05ghY";
|
|
@@ -47,6 +48,7 @@ const contain$1 = "ControlSlider-module__contain___pLyq7";
|
|
|
47
48
|
const cover$1 = "ControlSlider-module__cover___KdDat";
|
|
48
49
|
const styles$3 = {
|
|
49
50
|
wrapper,
|
|
51
|
+
hoverArrow,
|
|
50
52
|
sliderItem,
|
|
51
53
|
sliderImage,
|
|
52
54
|
arrow: arrow$1,
|
|
@@ -314,7 +316,8 @@ function ControlSlider({ settings, content, styles: sliderStyles, isEditor }) {
|
|
|
314
316
|
"div",
|
|
315
317
|
{
|
|
316
318
|
className: cn(styles$3.arrow, {
|
|
317
|
-
[styles$3.arrowVertical]: direction === "vert"
|
|
319
|
+
[styles$3.arrowVertical]: direction === "vert",
|
|
320
|
+
[styles$3.hoverArrow]: controls.show === "on hover"
|
|
318
321
|
}),
|
|
319
322
|
style: {
|
|
320
323
|
color: controls.color,
|
|
@@ -350,7 +353,8 @@ function ControlSlider({ settings, content, styles: sliderStyles, isEditor }) {
|
|
|
350
353
|
"div",
|
|
351
354
|
{
|
|
352
355
|
className: cn(styles$3.arrow, styles$3.nextArrow, {
|
|
353
|
-
[styles$3.arrowVertical]: direction === "vert"
|
|
356
|
+
[styles$3.arrowVertical]: direction === "vert",
|
|
357
|
+
[styles$3.hoverArrow]: controls.show === "on hover"
|
|
354
358
|
}),
|
|
355
359
|
style: {
|
|
356
360
|
color: controls.color,
|
|
@@ -611,6 +615,14 @@ const ControlSliderComponent = {
|
|
|
611
615
|
type: "settings-color-picker",
|
|
612
616
|
format: "single"
|
|
613
617
|
}
|
|
618
|
+
},
|
|
619
|
+
show: {
|
|
620
|
+
title: "Show",
|
|
621
|
+
type: "string",
|
|
622
|
+
display: {
|
|
623
|
+
type: "ratio-group"
|
|
624
|
+
},
|
|
625
|
+
enum: ["always", "on hover"]
|
|
614
626
|
}
|
|
615
627
|
}
|
|
616
628
|
},
|
|
@@ -765,7 +777,8 @@ const ControlSliderComponent = {
|
|
|
765
777
|
},
|
|
766
778
|
scale: 100,
|
|
767
779
|
color: "#000000",
|
|
768
|
-
hover: "#cccccc"
|
|
780
|
+
hover: "#cccccc",
|
|
781
|
+
show: "always"
|
|
769
782
|
},
|
|
770
783
|
transition: {
|
|
771
784
|
type: "slide",
|
|
@@ -1085,85 +1098,14 @@ async function calculateImageWidthHeight(imgUrl, sizeType, customWidth, randomRa
|
|
|
1085
1098
|
return { width, height, finalWidth: `${width}px` };
|
|
1086
1099
|
}
|
|
1087
1100
|
function ImageRevealSlider({ settings, content, isEditor }) {
|
|
1088
|
-
const
|
|
1101
|
+
const divRef = useRef(null);
|
|
1089
1102
|
const [placedImages, setPlacedImages] = useState([]);
|
|
1090
1103
|
const [counter, setCounter] = useState(0);
|
|
1091
1104
|
const imageIdCounter = useRef(0);
|
|
1092
|
-
const
|
|
1093
|
-
const [cursorPos, setCursorPos] = useState({ x: -100, y: -100 });
|
|
1094
|
-
const [cursorSize, setCursorSize] = useState({ w: 32, h: 32 });
|
|
1095
|
-
const [customCursorImg, setCustomCursorImg] = useState("none");
|
|
1096
|
-
const lastMousePos = useRef({ x: 0, y: 0 });
|
|
1097
|
-
const [isInside, setIsInside] = useState(false);
|
|
1098
|
-
useEffect(() => {
|
|
1099
|
-
if (!divRef) return;
|
|
1100
|
-
const updateCursorPosition = (clientX, clientY) => {
|
|
1101
|
-
const rect = divRef.getBoundingClientRect();
|
|
1102
|
-
setCursorPos({
|
|
1103
|
-
x: clientX - cursorSize.w / 2 - rect.left,
|
|
1104
|
-
y: clientY - cursorSize.h / 2 - rect.top
|
|
1105
|
-
});
|
|
1106
|
-
};
|
|
1107
|
-
const mouseMove = (e) => {
|
|
1108
|
-
e.stopPropagation();
|
|
1109
|
-
lastMousePos.current = { x: e.clientX, y: e.clientY };
|
|
1110
|
-
updateCursorPosition(e.clientX, e.clientY);
|
|
1111
|
-
};
|
|
1112
|
-
const handleScroll = () => {
|
|
1113
|
-
if (!isInside) return;
|
|
1114
|
-
updateCursorPosition(lastMousePos.current.x, lastMousePos.current.y);
|
|
1115
|
-
};
|
|
1116
|
-
divRef.addEventListener("mousemove", mouseMove);
|
|
1117
|
-
window.addEventListener("scroll", handleScroll, true);
|
|
1118
|
-
return () => {
|
|
1119
|
-
divRef.removeEventListener("mousemove", mouseMove);
|
|
1120
|
-
window.removeEventListener("scroll", handleScroll, true);
|
|
1121
|
-
};
|
|
1122
|
-
}, [divRef, cursorSize, isInside]);
|
|
1123
|
-
useEffect(() => {
|
|
1124
|
-
if (!isInside) {
|
|
1125
|
-
setCustomCursorImg("none");
|
|
1126
|
-
setCursorSize({ w: 0, h: 0 });
|
|
1127
|
-
}
|
|
1128
|
-
}, [isInside]);
|
|
1105
|
+
const defaultImageCount = 1;
|
|
1129
1106
|
const { sizeType, imageWidth: customWidth, randomRangeImageWidth: randomRange } = settings.imageSize;
|
|
1130
1107
|
const { revealPosition, visible, target } = settings.position;
|
|
1131
|
-
const { cursorType,
|
|
1132
|
-
useEffect(() => {
|
|
1133
|
-
const updateCursor = () => {
|
|
1134
|
-
if (!divRef) return;
|
|
1135
|
-
if (cursorType === "system") {
|
|
1136
|
-
setCustomCursorImg("none");
|
|
1137
|
-
setCursorSize({ w: defaultScale, h: defaultScale });
|
|
1138
|
-
return;
|
|
1139
|
-
}
|
|
1140
|
-
const cx = cursorPos.x + cursorSize.w / 2;
|
|
1141
|
-
const cy = cursorPos.y + cursorSize.h / 2;
|
|
1142
|
-
const rect = divRef.getBoundingClientRect();
|
|
1143
|
-
const el = document.elementFromPoint(
|
|
1144
|
-
rect.left + cx,
|
|
1145
|
-
rect.top + cy
|
|
1146
|
-
);
|
|
1147
|
-
if (el && el.closest("a")) {
|
|
1148
|
-
setCustomCursorImg("none");
|
|
1149
|
-
setCursorSize({ w: defaultScale, h: defaultScale });
|
|
1150
|
-
return;
|
|
1151
|
-
}
|
|
1152
|
-
const next = isMouseOverImage(cx, cy, placedImages) || target === "area" ? { img: hoverCursor ?? "none", w: defaultScale * (hoverCursorScale || 1), h: defaultScale * (hoverCursorScale || 1) } : { img: defaultCursor ?? "none", w: defaultScale * (defaultCursorScale || 1), h: defaultScale * (defaultCursorScale || 1) };
|
|
1153
|
-
setCustomCursorImg(next.img);
|
|
1154
|
-
setCursorSize({ w: next.w, h: next.h });
|
|
1155
|
-
};
|
|
1156
|
-
updateCursor();
|
|
1157
|
-
}, [
|
|
1158
|
-
cursorPos,
|
|
1159
|
-
cursorType,
|
|
1160
|
-
target,
|
|
1161
|
-
hoverCursor,
|
|
1162
|
-
defaultCursor,
|
|
1163
|
-
hoverCursorScale,
|
|
1164
|
-
defaultCursorScale,
|
|
1165
|
-
placedImages
|
|
1166
|
-
]);
|
|
1108
|
+
const { cursorType, defaultCursor, hoverCursor } = settings.cursor;
|
|
1167
1109
|
const createNewImage = async (imgData, containerWidth, containerHeight, position = {}) => {
|
|
1168
1110
|
const { width, height, finalWidth } = await calculateImageWidthHeight(
|
|
1169
1111
|
imgData.image.url,
|
|
@@ -1192,34 +1134,34 @@ function ImageRevealSlider({ settings, content, isEditor }) {
|
|
|
1192
1134
|
};
|
|
1193
1135
|
};
|
|
1194
1136
|
const defaultContentUrls = useMemo(() => {
|
|
1195
|
-
const defaultContentLength = Math.min(content.length,
|
|
1137
|
+
const defaultContentLength = Math.min(content.length, defaultImageCount);
|
|
1196
1138
|
return content.filter((_, i) => i < defaultContentLength).map((c) => c.image.url).join("-");
|
|
1197
1139
|
}, [content]);
|
|
1198
1140
|
useEffect(() => {
|
|
1199
|
-
if (!divRef || content.length === 0) return;
|
|
1200
|
-
const rect = divRef.getBoundingClientRect();
|
|
1141
|
+
if (!divRef.current || content.length === 0) return;
|
|
1142
|
+
const rect = divRef.current.getBoundingClientRect();
|
|
1201
1143
|
const containerWidth = rect.width;
|
|
1202
1144
|
const containerHeight = rect.height;
|
|
1203
1145
|
const defaultPlaced = [];
|
|
1204
1146
|
const placeImages = async () => {
|
|
1205
|
-
for (let i = 0; i <
|
|
1147
|
+
for (let i = 0; i < defaultImageCount && i < content.length; i++) {
|
|
1206
1148
|
const imgData = content[i];
|
|
1207
1149
|
const newImg = await createNewImage(imgData, containerWidth, containerHeight);
|
|
1208
1150
|
defaultPlaced.push(newImg);
|
|
1209
1151
|
}
|
|
1210
1152
|
setPlacedImages(defaultPlaced);
|
|
1211
|
-
setCounter(
|
|
1153
|
+
setCounter(defaultImageCount % content.length);
|
|
1212
1154
|
};
|
|
1213
1155
|
placeImages();
|
|
1214
|
-
}, [defaultContentUrls, sizeType, customWidth, randomRange, revealPosition
|
|
1156
|
+
}, [defaultContentUrls, sizeType, customWidth, randomRange, revealPosition]);
|
|
1215
1157
|
useEffect(() => {
|
|
1216
1158
|
if (visible === "last One") {
|
|
1217
1159
|
setPlacedImages((prev) => prev.length > 0 ? [prev[prev.length - 1]] : []);
|
|
1218
1160
|
}
|
|
1219
1161
|
}, [visible]);
|
|
1220
1162
|
const handleClick = async (e) => {
|
|
1221
|
-
if (!divRef) return;
|
|
1222
|
-
const rect = divRef.getBoundingClientRect();
|
|
1163
|
+
if (!divRef.current) return;
|
|
1164
|
+
const rect = divRef.current.getBoundingClientRect();
|
|
1223
1165
|
const clickX = e.clientX - rect.left;
|
|
1224
1166
|
const clickY = e.clientY - rect.top;
|
|
1225
1167
|
if (target === "image" && !isMouseOverImage(clickX, clickY, placedImages)) return;
|
|
@@ -1239,68 +1181,46 @@ function ImageRevealSlider({ settings, content, isEditor }) {
|
|
|
1239
1181
|
setPlacedImages((prev) => visible === "all" ? [...prev, newImage] : [newImage]);
|
|
1240
1182
|
setCounter((prev) => prev >= content.length - 1 ? 0 : prev + 1);
|
|
1241
1183
|
};
|
|
1242
|
-
return /* @__PURE__ */
|
|
1184
|
+
return /* @__PURE__ */ jsx(
|
|
1243
1185
|
"div",
|
|
1244
1186
|
{
|
|
1245
|
-
ref:
|
|
1187
|
+
ref: divRef,
|
|
1246
1188
|
onClick: handleClick,
|
|
1247
|
-
onMouseEnter: () => setIsInside(true),
|
|
1248
|
-
onMouseLeave: () => setIsInside(false),
|
|
1249
1189
|
className: styles.imageRevealSlider,
|
|
1250
|
-
style: { cursor:
|
|
1251
|
-
children:
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
cursor: customCursorImg === "none" ? "default" : "none"
|
|
1264
|
-
},
|
|
1265
|
-
children: target === "area" && img2.link ? /* @__PURE__ */ jsx("a", { href: img2.link, target: "_blank", className: styles.link, children: /* @__PURE__ */ jsx(
|
|
1266
|
-
"img",
|
|
1267
|
-
{
|
|
1268
|
-
src: img2.url,
|
|
1269
|
-
alt: img2.name,
|
|
1270
|
-
className: styles.image
|
|
1271
|
-
},
|
|
1272
|
-
img2.id
|
|
1273
|
-
) }) : /* @__PURE__ */ jsx(
|
|
1274
|
-
"img",
|
|
1275
|
-
{
|
|
1276
|
-
src: img2.url,
|
|
1277
|
-
alt: img2.name,
|
|
1278
|
-
className: styles.image
|
|
1279
|
-
},
|
|
1280
|
-
img2.id
|
|
1281
|
-
)
|
|
1190
|
+
style: { cursor: cursorType !== "system" && defaultCursor ? `url(${target === "area" ? hoverCursor : defaultCursor}), auto` : "default" },
|
|
1191
|
+
children: placedImages.map((img2) => /* @__PURE__ */ jsx(
|
|
1192
|
+
"div",
|
|
1193
|
+
{
|
|
1194
|
+
className: styles.wrapper,
|
|
1195
|
+
style: {
|
|
1196
|
+
top: `${img2.y}px`,
|
|
1197
|
+
left: `${img2.x}px`,
|
|
1198
|
+
position: "absolute",
|
|
1199
|
+
transform: "translate(-50%, -50%)",
|
|
1200
|
+
width: img2.width ?? "auto",
|
|
1201
|
+
height: "auto",
|
|
1202
|
+
cursor: cursorType !== "system" && hoverCursor ? `url(${hoverCursor}), auto` : "default"
|
|
1282
1203
|
},
|
|
1283
|
-
img2.
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
]
|
|
1204
|
+
children: target === "area" && img2.link ? /* @__PURE__ */ jsx("a", { href: img2.link, target: "_blank", className: styles.link, children: /* @__PURE__ */ jsx(
|
|
1205
|
+
"img",
|
|
1206
|
+
{
|
|
1207
|
+
src: img2.url,
|
|
1208
|
+
alt: img2.name,
|
|
1209
|
+
className: styles.image
|
|
1210
|
+
},
|
|
1211
|
+
img2.id
|
|
1212
|
+
) }) : /* @__PURE__ */ jsx(
|
|
1213
|
+
"img",
|
|
1214
|
+
{
|
|
1215
|
+
src: img2.url,
|
|
1216
|
+
alt: img2.name,
|
|
1217
|
+
className: styles.image
|
|
1218
|
+
},
|
|
1219
|
+
img2.id
|
|
1220
|
+
)
|
|
1221
|
+
},
|
|
1222
|
+
img2.id
|
|
1223
|
+
))
|
|
1304
1224
|
}
|
|
1305
1225
|
);
|
|
1306
1226
|
}
|
|
@@ -1385,17 +1305,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1385
1305
|
visible: false
|
|
1386
1306
|
}
|
|
1387
1307
|
},
|
|
1388
|
-
defaultCursorScale: {
|
|
1389
|
-
type: "number",
|
|
1390
|
-
title: "Scale",
|
|
1391
|
-
min: 1,
|
|
1392
|
-
max: 5,
|
|
1393
|
-
step: 0.1,
|
|
1394
|
-
display: {
|
|
1395
|
-
type: "range-control",
|
|
1396
|
-
visible: false
|
|
1397
|
-
}
|
|
1398
|
-
},
|
|
1399
1308
|
hoverCursor: {
|
|
1400
1309
|
type: ["string", "null"],
|
|
1401
1310
|
title: "Hover",
|
|
@@ -1403,17 +1312,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1403
1312
|
type: "settings-image-input",
|
|
1404
1313
|
visible: false
|
|
1405
1314
|
}
|
|
1406
|
-
},
|
|
1407
|
-
hoverCursorScale: {
|
|
1408
|
-
type: "number",
|
|
1409
|
-
title: "Scale",
|
|
1410
|
-
min: 1,
|
|
1411
|
-
max: 5,
|
|
1412
|
-
step: 0.1,
|
|
1413
|
-
display: {
|
|
1414
|
-
type: "range-control",
|
|
1415
|
-
visible: false
|
|
1416
|
-
}
|
|
1417
1315
|
}
|
|
1418
1316
|
}
|
|
1419
1317
|
},
|
|
@@ -1459,9 +1357,7 @@ const ControlImageRevealSliderComponent = {
|
|
|
1459
1357
|
cursor: {
|
|
1460
1358
|
cursorType: "system",
|
|
1461
1359
|
defaultCursor: null,
|
|
1462
|
-
|
|
1463
|
-
hoverCursor: null,
|
|
1464
|
-
hoverCursorScale: 2
|
|
1360
|
+
hoverCursor: null
|
|
1465
1361
|
},
|
|
1466
1362
|
position: {
|
|
1467
1363
|
revealPosition: "random",
|
|
@@ -1500,17 +1396,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1500
1396
|
value: true
|
|
1501
1397
|
}
|
|
1502
1398
|
},
|
|
1503
|
-
{
|
|
1504
|
-
if: [
|
|
1505
|
-
{ name: "position.target", value: "image" },
|
|
1506
|
-
{ name: "cursor.cursorType", value: "custom" },
|
|
1507
|
-
{ name: "cursor.defaultCursor", value: null, isNotEqual: true }
|
|
1508
|
-
],
|
|
1509
|
-
then: {
|
|
1510
|
-
name: "properties.cursor.properties.defaultCursorScale.display.visible",
|
|
1511
|
-
value: true
|
|
1512
|
-
}
|
|
1513
|
-
},
|
|
1514
1399
|
{
|
|
1515
1400
|
if: {
|
|
1516
1401
|
name: "cursor.cursorType",
|
|
@@ -1520,16 +1405,6 @@ const ControlImageRevealSliderComponent = {
|
|
|
1520
1405
|
name: "properties.cursor.properties.hoverCursor.display.visible",
|
|
1521
1406
|
value: true
|
|
1522
1407
|
}
|
|
1523
|
-
},
|
|
1524
|
-
{
|
|
1525
|
-
if: [
|
|
1526
|
-
{ name: "cursor.cursorType", value: "custom" },
|
|
1527
|
-
{ name: "cursor.hoverCursor", value: null, isNotEqual: true }
|
|
1528
|
-
],
|
|
1529
|
-
then: {
|
|
1530
|
-
name: "properties.cursor.properties.hoverCursorScale.display.visible",
|
|
1531
|
-
value: true
|
|
1532
|
-
}
|
|
1533
1408
|
}
|
|
1534
1409
|
]
|
|
1535
1410
|
},
|
package/package.json
CHANGED
|
@@ -1,68 +1,68 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@cntrl-site/components",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Custom components for control editor and public websites.",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"module": "dist/index.mjs",
|
|
7
|
-
"types": "dist/index.d.ts",
|
|
8
|
-
"style": "dist/components.css",
|
|
9
|
-
"sideEffects": [
|
|
10
|
-
"**/*.css"
|
|
11
|
-
],
|
|
12
|
-
"exports": {
|
|
13
|
-
".": {
|
|
14
|
-
"types": "./dist/index.d.ts",
|
|
15
|
-
"import": "./dist/index.mjs",
|
|
16
|
-
"require": "./dist/index.js"
|
|
17
|
-
},
|
|
18
|
-
"./style/components.css": {
|
|
19
|
-
"default": "./dist/components.css"
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
"scripts": {
|
|
23
|
-
"test": "jest",
|
|
24
|
-
"dev": "vite development",
|
|
25
|
-
"prebuild": "rimraf ./dist",
|
|
26
|
-
"build": "vite build",
|
|
27
|
-
"prepublishOnly": "cross-env NODE_ENV=production npm run build"
|
|
28
|
-
},
|
|
29
|
-
"files": [
|
|
30
|
-
"dist",
|
|
31
|
-
"resources"
|
|
32
|
-
],
|
|
33
|
-
"repository": {
|
|
34
|
-
"type": "git",
|
|
35
|
-
"url": "git+https://github.com/cntrl-site/components.git"
|
|
36
|
-
},
|
|
37
|
-
"author": "arsen@momdesign.nyc",
|
|
38
|
-
"license": "MIT",
|
|
39
|
-
"bugs": {
|
|
40
|
-
"url": "https://github.com/cntrl-site/components/issues"
|
|
41
|
-
},
|
|
42
|
-
"homepage": "https://github.com/cntrl-site/components#readme",
|
|
43
|
-
"directories": {
|
|
44
|
-
"lib": "dist"
|
|
45
|
-
},
|
|
46
|
-
"dependencies": {
|
|
47
|
-
"@antfu/eslint-config": "^3.16.0",
|
|
48
|
-
"@splidejs/react-splide": "^0.7.12",
|
|
49
|
-
"classnames": "^2.5.1",
|
|
50
|
-
"ts-node": "^10.9.1"
|
|
51
|
-
},
|
|
52
|
-
"devDependencies": {
|
|
53
|
-
"@tsconfig/node16": "^1.0.3",
|
|
54
|
-
"@tsconfig/recommended": "^1.0.1",
|
|
55
|
-
"@types/node": "^18.11.7",
|
|
56
|
-
"@types/react": "^18.2.0",
|
|
57
|
-
"@types/react-dom": "^18.2.0",
|
|
58
|
-
"@vitejs/plugin-react": "^4.3.4",
|
|
59
|
-
"cross-env": "^10.1.0",
|
|
60
|
-
"react": "^18.2.0",
|
|
61
|
-
"react-dom": "^18.2.0",
|
|
62
|
-
"rimraf": "^6.0.1",
|
|
63
|
-
"sass": "^1.86.3",
|
|
64
|
-
"typescript": "^5.2.2",
|
|
65
|
-
"vite": "^6.2.5",
|
|
66
|
-
"vite-plugin-dts": "^4.5.3"
|
|
67
|
-
}
|
|
68
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@cntrl-site/components",
|
|
3
|
+
"version": "0.1.7-1",
|
|
4
|
+
"description": "Custom components for control editor and public websites.",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.mjs",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"style": "dist/components.css",
|
|
9
|
+
"sideEffects": [
|
|
10
|
+
"**/*.css"
|
|
11
|
+
],
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/index.mjs",
|
|
16
|
+
"require": "./dist/index.js"
|
|
17
|
+
},
|
|
18
|
+
"./style/components.css": {
|
|
19
|
+
"default": "./dist/components.css"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"scripts": {
|
|
23
|
+
"test": "jest",
|
|
24
|
+
"dev": "vite development",
|
|
25
|
+
"prebuild": "rimraf ./dist",
|
|
26
|
+
"build": "vite build",
|
|
27
|
+
"prepublishOnly": "cross-env NODE_ENV=production npm run build"
|
|
28
|
+
},
|
|
29
|
+
"files": [
|
|
30
|
+
"dist",
|
|
31
|
+
"resources"
|
|
32
|
+
],
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "git+https://github.com/cntrl-site/components.git"
|
|
36
|
+
},
|
|
37
|
+
"author": "arsen@momdesign.nyc",
|
|
38
|
+
"license": "MIT",
|
|
39
|
+
"bugs": {
|
|
40
|
+
"url": "https://github.com/cntrl-site/components/issues"
|
|
41
|
+
},
|
|
42
|
+
"homepage": "https://github.com/cntrl-site/components#readme",
|
|
43
|
+
"directories": {
|
|
44
|
+
"lib": "dist"
|
|
45
|
+
},
|
|
46
|
+
"dependencies": {
|
|
47
|
+
"@antfu/eslint-config": "^3.16.0",
|
|
48
|
+
"@splidejs/react-splide": "^0.7.12",
|
|
49
|
+
"classnames": "^2.5.1",
|
|
50
|
+
"ts-node": "^10.9.1"
|
|
51
|
+
},
|
|
52
|
+
"devDependencies": {
|
|
53
|
+
"@tsconfig/node16": "^1.0.3",
|
|
54
|
+
"@tsconfig/recommended": "^1.0.1",
|
|
55
|
+
"@types/node": "^18.11.7",
|
|
56
|
+
"@types/react": "^18.2.0",
|
|
57
|
+
"@types/react-dom": "^18.2.0",
|
|
58
|
+
"@vitejs/plugin-react": "^4.3.4",
|
|
59
|
+
"cross-env": "^10.1.0",
|
|
60
|
+
"react": "^18.2.0",
|
|
61
|
+
"react-dom": "^18.2.0",
|
|
62
|
+
"rimraf": "^6.0.1",
|
|
63
|
+
"sass": "^1.86.3",
|
|
64
|
+
"typescript": "^5.2.2",
|
|
65
|
+
"vite": "^6.2.5",
|
|
66
|
+
"vite-plugin-dts": "^4.5.3"
|
|
67
|
+
}
|
|
68
|
+
}
|