@cntrl-site/components 0.1.0-alpha.18 → 0.1.0-alpha.19

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.
@@ -95,5 +95,31 @@ type LightboxSettings = {
95
95
  caption: Caption;
96
96
  };
97
97
  };
98
- type LightboxStyles = {};
98
+ type LightboxStyles = {
99
+ caption: CaptionStyles;
100
+ };
101
+ type CaptionStyles = {
102
+ fontSettings: {
103
+ fontFamily: string;
104
+ fontWeight: number;
105
+ fontStyle: string;
106
+ };
107
+ widthSettings: {
108
+ width: number;
109
+ sizing: 'auto' | 'manual';
110
+ };
111
+ letterSpacing: number;
112
+ textAlign: 'left' | 'center' | 'right';
113
+ wordSpacing: number;
114
+ fontSizeLineHeight: {
115
+ fontSize: number;
116
+ lineHeight: number;
117
+ };
118
+ textAppearance: {
119
+ textTransform: 'none' | 'uppercase' | 'lowercase';
120
+ textDecoration: 'none' | 'underline';
121
+ fontVariant: 'normal' | 'small-caps';
122
+ };
123
+ color: string;
124
+ };
99
125
  export {};
@@ -0,0 +1,6 @@
1
+ export declare function getDisplayedImageRect(img: HTMLImageElement): {
2
+ x: number;
3
+ y: number;
4
+ width: number;
5
+ height: number;
6
+ };
@@ -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}.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__background___wf1Ii{position:absolute;z-index:9998;width:100%;height:100%;top:0;left:0}.Lightbox-module__backdropStyle___y7avj{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:9999}.Lightbox-module__editor___Vh82D{width:var(--cntrl-article-width)!important;margin-left:auto;margin-right:auto}.Lightbox-module__contentStyle___FzFaW{position:relative;width:100%;max-width:100vw;max-height:100vh;height:100vh;overflow:auto;background:transparent;box-sizing:border-box}.Lightbox-module__imageStyle___Qb7f5{position:relative;display:block;cursor:pointer;background-color:transparent;width:fit-content;height:fit-content}.Lightbox-module__imgWrapper___cdytV{position:relative;display:flex;width:100%;height:100%;overflow:hidden;box-sizing:border-box}.Lightbox-module__contain___5gATW{object-fit:contain;max-width:100%;max-height:100%}.Lightbox-module__cover___8HZy7{width:100%;height:100%;object-fit:cover;max-width:100%;max-height:100%}.Lightbox-module__caption___3e-22{position:absolute;display:flex}.Lightbox-module__caption___3e-22:hover{color:var(--link-hover-color)!important}.Lightbox-module__lightboxSplide___yMC4v.splide,.Lightbox-module__lightboxSplide___yMC4v .splide__track{height:100%}.Lightbox-module__arrow___s3Bn2{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___s3Bn2.Lightbox-module__arrowVertical___6ztxz{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___i23DU{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___i23DU.Lightbox-module__arrowVertical___6ztxz{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___Mm3xe{all:unset;cursor:pointer;width:100%;height:100%}.Lightbox-module__arrowInner___Mm3xe:hover .Lightbox-module__arrowIcon___UpzOt path{fill:var(--arrow-hover-color)!important}.Lightbox-module__arrowImg___UxHPR{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.Lightbox-module__mirror___50NCE{transform:translate(-50%,-50%) scaleX(-1)!important}.Lightbox-module__arrowVertical___6ztxz.Lightbox-module__mirror___50NCE{transform:translate(-50%,-50%) scaleY(-1)!important}.Lightbox-module__thumbsContainerVertical___lVaf-{flex-direction:column;display:flex}.Lightbox-module__thumbsContainer___DqOCP{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:auto}.Lightbox-module__thumbsAlignStart___uiFIV{align-items:flex-start}.Lightbox-module__thumbsAlignCenter___sbUPA{align-items:center}.Lightbox-module__thumbsAlignEnd___OA9N4{align-items:flex-end}.Lightbox-module__thumbsContainerVertical___lVaf-.Lightbox-module__thumbsAlignStart___uiFIV{align-items:center;justify-content:flex-start}.Lightbox-module__thumbsContainerVertical___lVaf-.Lightbox-module__thumbsAlignCenter___sbUPA{align-items:center;justify-content:center}.Lightbox-module__thumbsContainerVertical___lVaf-.Lightbox-module__thumbsAlignEnd___OA9N4{align-items:center;justify-content:flex-end}.Lightbox-module__thumbItem___zROyu{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___zROyu:hover{opacity:var(--thumb-hover)!important}.Lightbox-module__thumbImage___xGakV{display:block;height:100%;width:calc(var(--is-editor, 0) * 5.5555555556vw / var(--cntrl-reverse-layout-deviation, 1) + (1 - var(--is-editor, 0)) * 5.5555555556vw)}.Lightbox-module__closeButton___r3Dur{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___3xoHQ{0%{opacity:0}to{opacity:1}}.Lightbox-module__fadeIn___sHwRK{animation-name:Lightbox-module__lbFadeIn___3xoHQ}@keyframes Lightbox-module__lbSlideInLeft___vgE9-{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes Lightbox-module__lbSlideInRight___nByIA{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes Lightbox-module__lbSlideInTop___hI5ju{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes Lightbox-module__lbSlideInBottom___M6-9o{0%{transform:translateY(100%)}to{transform:translateY(0)}}.Lightbox-module__slideInLeft___P-XRo{animation-name:Lightbox-module__lbSlideInLeft___vgE9-}.Lightbox-module__slideInRight___ZQqFi{animation-name:Lightbox-module__lbSlideInRight___nByIA}.Lightbox-module__slideInTop___XRKCs{animation-name:Lightbox-module__lbSlideInTop___hI5ju}.Lightbox-module__slideInBottom___TYOBS{animation-name:Lightbox-module__lbSlideInBottom___M6-9o}.Lightbox-module__lightboxSplide___yMC4v.splide--fade .Lightbox-module__scaleSlide___wS7d4{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___yMC4v.splide--fade .splide__slide.is-active .Lightbox-module__scaleSlide___wS7d4{opacity:1!important;transform:var(--position-transform, none) scale(1)!important}.Lightbox-module__lightboxSplide___yMC4v.splide--fade .splide__slide:not(.is-active) .Lightbox-module__scaleSlide___wS7d4{opacity:0!important;transform:var(--position-transform, none) scale(1.1)!important}.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}@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__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports (outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports (outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}
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}.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__background___wf1Ii{position:absolute;z-index:9997;width:100%;height:100%;top:0;left:0}.Lightbox-module__backdropStyle___y7avj{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:9998}.Lightbox-module__editor___Vh82D{width:var(--cntrl-article-width)!important;margin-left:auto;margin-right:auto}.Lightbox-module__contentStyle___FzFaW{position:relative;width:100%;max-width:100vw;max-height:100vh;height:100vh;overflow:auto;background:transparent;box-sizing:border-box}.Lightbox-module__imageStyle___Qb7f5{position:relative;display:block;cursor:pointer;background-color:transparent;max-width:100%;max-height:100%;width:auto;height:auto}.Lightbox-module__imgWrapper___cdytV{position:relative;display:flex;width:100%;height:100%;overflow:hidden;box-sizing:border-box}.Lightbox-module__contain___5gATW{object-fit:contain;max-width:100%;max-height:100%}.Lightbox-module__cover___8HZy7{width:100%;height:100%;object-fit:cover}.Lightbox-module__caption___3e-22{z-index:9999;position:absolute;display:flex}.Lightbox-module__caption___3e-22:hover{color:var(--link-hover-color)!important}.Lightbox-module__captionBlock___7wXOq{pointer-events:none;position:absolute;top:0;z-index:1;left:0;right:0;bottom:0}.Lightbox-module__captionTextWrapper___uDnh6{position:relative;width:100%;height:100%}.Lightbox-module__captionText___6zbmg{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}.Lightbox-module__captionText___6zbmg.Lightbox-module__active___u7Yu8{opacity:1}.Lightbox-module__lightboxSplide___yMC4v.splide,.Lightbox-module__lightboxSplide___yMC4v .splide__track{height:100%}.Lightbox-module__arrow___s3Bn2{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___s3Bn2.Lightbox-module__arrowVertical___6ztxz{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___i23DU{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___i23DU.Lightbox-module__arrowVertical___6ztxz{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___Mm3xe{all:unset;cursor:pointer;width:100%;height:100%}.Lightbox-module__arrowInner___Mm3xe:hover .Lightbox-module__arrowIcon___UpzOt path{fill:var(--arrow-hover-color)!important}.Lightbox-module__arrowImg___UxHPR{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.Lightbox-module__mirror___50NCE{transform:translate(-50%,-50%) scaleX(-1)!important}.Lightbox-module__arrowVertical___6ztxz.Lightbox-module__mirror___50NCE{transform:translate(-50%,-50%) scaleY(-1)!important}.Lightbox-module__thumbsContainerVertical___lVaf-{flex-direction:column;display:flex}.Lightbox-module__thumbsContainer___DqOCP{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:auto}.Lightbox-module__thumbsAlignStart___uiFIV{align-items:flex-start}.Lightbox-module__thumbsAlignCenter___sbUPA{align-items:center}.Lightbox-module__thumbsAlignEnd___OA9N4{align-items:flex-end}.Lightbox-module__thumbItem___zROyu{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___zROyu:hover{opacity:var(--thumb-hover)!important}.Lightbox-module__closeButton___r3Dur{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___3xoHQ{0%{opacity:0}to{opacity:1}}.Lightbox-module__fadeIn___sHwRK{animation-name:Lightbox-module__lbFadeIn___3xoHQ}@keyframes Lightbox-module__lbSlideInLeft___vgE9-{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes Lightbox-module__lbSlideInRight___nByIA{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes Lightbox-module__lbSlideInTop___hI5ju{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes Lightbox-module__lbSlideInBottom___M6-9o{0%{transform:translateY(100%)}to{transform:translateY(0)}}.Lightbox-module__slideInLeft___P-XRo{animation-name:Lightbox-module__lbSlideInLeft___vgE9-}.Lightbox-module__slideInRight___ZQqFi{animation-name:Lightbox-module__lbSlideInRight___nByIA}.Lightbox-module__slideInTop___XRKCs{animation-name:Lightbox-module__lbSlideInTop___hI5ju}.Lightbox-module__slideInBottom___TYOBS{animation-name:Lightbox-module__lbSlideInBottom___M6-9o}.Lightbox-module__lightboxSplide___yMC4v.splide--fade .Lightbox-module__scaleSlide___wS7d4{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___yMC4v.splide--fade .splide__slide.is-active .Lightbox-module__scaleSlide___wS7d4{opacity:1!important;transform:var(--position-transform, none) scale(1)!important}.Lightbox-module__lightboxSplide___yMC4v.splide--fade .splide__slide:not(.is-active) .Lightbox-module__scaleSlide___wS7d4{opacity:0!important;transform:var(--position-transform, none) scale(1.1)!important}.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}@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__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover:not(:disabled){opacity:.9}.splide__arrow:disabled{opacity:.3}.splide__arrow:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide.is-focus-in .splide__arrow:focus{outline:3px solid #0bf;outline-offset:3px}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;position:relative;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4);z-index:1}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__pagination__page:focus{outline:3px solid #0bf;outline-offset:3px}.splide__progress__bar{background:#ccc;height:3px}.splide__slide{-webkit-tap-highlight-color:rgba(0,0,0,0)}.splide__slide:focus{outline:0}@supports (outline-offset:-3px){.splide__slide:focus-visible{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide__slide:focus-visible{border:3px solid #0bf}}@supports (outline-offset:-3px){.splide.is-focus-in .splide__slide:focus{outline:3px solid #0bf;outline-offset:-3px}}@media screen and (-ms-high-contrast:none){.splide.is-focus-in .splide__slide:focus{border:3px solid #0bf}.splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{border-color:#0bf}}.splide__toggle{cursor:pointer}.splide__toggle:focus-visible{outline:3px solid #0bf;outline-offset:3px}.splide.is-focus-in .splide__toggle:focus{outline:3px solid #0bf;outline-offset:3px}.splide__track--nav>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide__track--nav>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide__arrows--rtl .splide__arrow--prev{left:auto;right:1em}.splide__arrows--rtl .splide__arrow--prev svg{transform:scaleX(1)}.splide__arrows--rtl .splide__arrow--next{left:1em;right:auto}.splide__arrows--rtl .splide__arrow--next svg{transform:scaleX(-1)}.splide__arrows--ttb .splide__arrow{left:50%;transform:translate(-50%)}.splide__arrows--ttb .splide__arrow--prev{top:1em}.splide__arrows--ttb .splide__arrow--prev svg{transform:rotate(-90deg)}.splide__arrows--ttb .splide__arrow--next{bottom:1em;top:auto}.splide__arrows--ttb .splide__arrow--next svg{transform:rotate(90deg)}.splide__pagination--ttb{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}
package/dist/index.js CHANGED
@@ -1503,7 +1503,6 @@ const thumbsAlignStart = "Lightbox-module__thumbsAlignStart___uiFIV";
1503
1503
  const thumbsAlignCenter = "Lightbox-module__thumbsAlignCenter___sbUPA";
1504
1504
  const thumbsAlignEnd = "Lightbox-module__thumbsAlignEnd___OA9N4";
1505
1505
  const thumbItem = "Lightbox-module__thumbItem___zROyu";
1506
- const thumbImage = "Lightbox-module__thumbImage___xGakV";
1507
1506
  const closeButton = "Lightbox-module__closeButton___r3Dur";
1508
1507
  const fadeIn = "Lightbox-module__fadeIn___sHwRK";
1509
1508
  const slideInLeft = "Lightbox-module__slideInLeft___P-XRo";
@@ -1534,7 +1533,6 @@ const styles = {
1534
1533
  thumbsAlignCenter,
1535
1534
  thumbsAlignEnd,
1536
1535
  thumbItem,
1537
- thumbImage,
1538
1536
  closeButton,
1539
1537
  fadeIn,
1540
1538
  slideInLeft,
@@ -1577,6 +1575,31 @@ const getPositionStyles = (position, offset, isEditor) => {
1577
1575
  }
1578
1576
  return styles2;
1579
1577
  };
1578
+ function getDisplayedImageRect(img2) {
1579
+ const container = img2.getBoundingClientRect();
1580
+ const containerW = container.width;
1581
+ const containerH = container.height;
1582
+ const imgW = img2.naturalWidth;
1583
+ const imgH = img2.naturalHeight;
1584
+ const containerRatio = containerW / containerH;
1585
+ const imgRatio = imgW / imgH;
1586
+ let renderedW, renderedH;
1587
+ if (imgRatio > containerRatio) {
1588
+ renderedW = containerW;
1589
+ renderedH = containerW / imgRatio;
1590
+ } else {
1591
+ renderedH = containerH;
1592
+ renderedW = containerH * imgRatio;
1593
+ }
1594
+ const offsetX = (containerW - renderedW) / 2 + container.left;
1595
+ const offsetY = (containerH - renderedH) / 2 + container.top;
1596
+ return {
1597
+ x: offsetX,
1598
+ y: offsetY,
1599
+ width: renderedW,
1600
+ height: renderedH
1601
+ };
1602
+ }
1580
1603
  function LightboxGallery({ settings, content, styles: styles2, portalId, activeEvent, isEditor }) {
1581
1604
  const [open, setOpen] = React.useState(false);
1582
1605
  const { url } = settings.thumbnailBlock.cover;
@@ -1598,13 +1621,16 @@ function LightboxGallery({ settings, content, styles: styles2, portalId, activeE
1598
1621
  onClick: () => setOpen(true)
1599
1622
  }
1600
1623
  ),
1601
- /* @__PURE__ */ jsxRuntime.jsx(Lightbox, { isOpen: open, onClose: () => setOpen(false), content, settings, portalId, isEditor })
1624
+ /* @__PURE__ */ jsxRuntime.jsx(Lightbox, { isOpen: open, onClose: () => setOpen(false), content, settings, styles: styles2, portalId, isEditor })
1602
1625
  ] });
1603
1626
  }
1604
- const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = true, closeOnEsc = true, portalId, isEditor }) => {
1627
+ const Lightbox = ({ isOpen, onClose, content, styles: lightboxStyles, settings, closeOnBackdropClick = true, closeOnEsc = true, portalId, isEditor }) => {
1628
+ const { widthSettings, fontSettings, letterSpacing, textAlign, wordSpacing, fontSizeLineHeight, textAppearance, color } = lightboxStyles.caption;
1605
1629
  const [currentIndex, setCurrentIndex] = React.useState(0);
1630
+ const [splideKey, setSplideKey] = React.useState(0);
1606
1631
  const lightboxRef = React.useRef(null);
1607
- const resizeObserverRef = React.useRef(null);
1632
+ const prevSliderTypeRef = React.useRef(null);
1633
+ const imageRef = React.useRef(null);
1608
1634
  const { appear, triggers, slider, thumbnail, controls, area, caption: caption2, layout } = settings.lightboxBlock;
1609
1635
  const handleBackdropClick = (e) => {
1610
1636
  if (!closeOnBackdropClick) return;
@@ -1634,6 +1660,13 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1634
1660
  };
1635
1661
  const onImageClick = (e) => {
1636
1662
  var _a, _b;
1663
+ const rect = imageRef.current ? getDisplayedImageRect(imageRef.current) : null;
1664
+ if (!rect) return;
1665
+ const inside = e.clientX >= rect.x && e.clientX <= rect.x + rect.width && e.clientY >= rect.y && e.clientY <= rect.y + rect.height;
1666
+ if (!inside) {
1667
+ onClose();
1668
+ return;
1669
+ }
1637
1670
  if (triggers.type === "click" && triggers.switch === "image") {
1638
1671
  e.stopPropagation();
1639
1672
  (_a = lightboxRef.current) == null ? void 0 : _a.go("+1");
@@ -1641,11 +1674,11 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1641
1674
  if (triggers.type === "click" && triggers.switch === "50/50") {
1642
1675
  e.stopPropagation();
1643
1676
  const img2 = e.currentTarget;
1644
- const rect = img2.getBoundingClientRect();
1645
- const clickX = e.clientX - rect.left;
1646
- const clickY = e.clientY - rect.top;
1647
- const imgWidth = rect.width;
1648
- const imgHeight = rect.height;
1677
+ const rect2 = img2.getBoundingClientRect();
1678
+ const clickX = e.clientX - rect2.left;
1679
+ const clickY = e.clientY - rect2.top;
1680
+ const imgWidth = rect2.width;
1681
+ const imgHeight = rect2.height;
1649
1682
  let dir;
1650
1683
  if (slider.direction === "horiz") {
1651
1684
  dir = clickX < imgWidth / 2 ? "-1" : "+1";
@@ -1678,6 +1711,12 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1678
1711
  React.useEffect(() => {
1679
1712
  if (isOpen) setCurrentIndex(0);
1680
1713
  }, [isOpen]);
1714
+ React.useEffect(() => {
1715
+ if (prevSliderTypeRef.current !== null && prevSliderTypeRef.current !== slider.type) {
1716
+ setSplideKey((prev) => prev + 1);
1717
+ }
1718
+ prevSliderTypeRef.current = slider.type;
1719
+ }, [slider.type]);
1681
1720
  React.useEffect(() => {
1682
1721
  if (!isOpen) return;
1683
1722
  const originalOverflow = document.body.style.overflow;
@@ -1691,51 +1730,6 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1691
1730
  document.body.style.backgroundColor = "";
1692
1731
  };
1693
1732
  }, [isOpen]);
1694
- React.useEffect(() => {
1695
- if (!isOpen) return;
1696
- if (resizeObserverRef.current) {
1697
- resizeObserverRef.current.disconnect();
1698
- resizeObserverRef.current = null;
1699
- }
1700
- const timeoutId = setTimeout(() => {
1701
- const activeSlide = document.querySelector(".splide__slide.is-active");
1702
- if (!activeSlide) return;
1703
- const img2 = activeSlide.querySelector("img");
1704
- const container = activeSlide.querySelector(`.${styles.imgWrapper}`);
1705
- if (!img2 || !container) return;
1706
- const updateImageSize = () => {
1707
- if (!img2.naturalWidth || !img2.naturalHeight) return;
1708
- const imageAspectRatio = img2.naturalWidth / img2.naturalHeight;
1709
- const containerWidth = container.clientWidth;
1710
- const containerHeight = container.clientHeight;
1711
- const containerAspectRatio = containerWidth / containerHeight;
1712
- if (imageAspectRatio > containerAspectRatio) {
1713
- img2.style.width = "100%";
1714
- img2.style.height = "";
1715
- } else {
1716
- img2.style.height = "100%";
1717
- img2.style.width = "";
1718
- }
1719
- };
1720
- if (img2.complete) {
1721
- updateImageSize();
1722
- } else {
1723
- img2.onload = updateImageSize;
1724
- }
1725
- resizeObserverRef.current = new ResizeObserver(() => {
1726
- updateImageSize();
1727
- });
1728
- resizeObserverRef.current.observe(container);
1729
- resizeObserverRef.current.observe(img2);
1730
- }, 0);
1731
- return () => {
1732
- clearTimeout(timeoutId);
1733
- if (resizeObserverRef.current) {
1734
- resizeObserverRef.current.disconnect();
1735
- resizeObserverRef.current = null;
1736
- }
1737
- };
1738
- }, [isOpen, currentIndex, content]);
1739
1733
  const handleArrowClick = (dir) => {
1740
1734
  var _a;
1741
1735
  (_a = lightboxRef.current) == null ? void 0 : _a.go(dir);
@@ -1802,6 +1796,7 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1802
1796
  style: { ...isEditor && { backgroundColor: area.color, backdropFilter: `blur(${area.blur}px)` } },
1803
1797
  onClick: handleBackdropClick,
1804
1798
  onTouchEnd: handleBackdropClick,
1799
+ onTouchStart: handleBackdropClick,
1805
1800
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1806
1801
  "div",
1807
1802
  {
@@ -1855,6 +1850,7 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1855
1850
  children: /* @__PURE__ */ jsxRuntime.jsx(
1856
1851
  "img",
1857
1852
  {
1853
+ ref: imageRef,
1858
1854
  className: cn(styles.imageStyle, {
1859
1855
  [styles.contain]: item.image.objectFit === "contain",
1860
1856
  [styles.cover]: item.image.objectFit === "cover",
@@ -1869,9 +1865,10 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1869
1865
  }
1870
1866
  ) }, index);
1871
1867
  })
1872
- }
1868
+ },
1869
+ splideKey
1873
1870
  ),
1874
- controls.isActive && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1871
+ controls.isActive && controls.arrowsImgUrl && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1875
1872
  /* @__PURE__ */ jsxRuntime.jsx(
1876
1873
  "div",
1877
1874
  {
@@ -1953,10 +1950,33 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1953
1950
  className: styles.caption,
1954
1951
  style: {
1955
1952
  ...getPositionStyles(caption2.alignment, caption2.offset, isEditor),
1956
- ["--link-hover-color"]: caption2.hover
1953
+ fontFamily: fontSettings.fontFamily,
1954
+ fontWeight: fontSettings.fontWeight,
1955
+ fontStyle: fontSettings.fontStyle,
1956
+ width: widthSettings.sizing === "auto" ? "max-content" : scalingValue(widthSettings.width, isEditor),
1957
+ letterSpacing: scalingValue(letterSpacing, isEditor),
1958
+ wordSpacing: scalingValue(wordSpacing, isEditor),
1959
+ textAlign,
1960
+ fontSize: scalingValue(fontSizeLineHeight.fontSize, isEditor),
1961
+ lineHeight: scalingValue(fontSizeLineHeight.lineHeight, isEditor),
1962
+ textTransform: textAppearance.textTransform ?? "none",
1963
+ textDecoration: textAppearance.textDecoration ?? "none",
1964
+ fontVariant: textAppearance.fontVariant ?? "normal",
1965
+ color,
1966
+ transitionDuration: slider.duration ? `${Math.round(parseInt(slider.duration) / 2)}ms` : "500ms"
1957
1967
  },
1958
1968
  onClick: (e) => e.stopPropagation(),
1959
- children: /* @__PURE__ */ jsxRuntime.jsx(RichTextRenderer, { content: content[currentIndex].imageCaption })
1969
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1970
+ "div",
1971
+ {
1972
+ "data-styles": "caption",
1973
+ className: styles.captionTextInner,
1974
+ style: {
1975
+ position: "relative"
1976
+ },
1977
+ children: /* @__PURE__ */ jsxRuntime.jsx(RichTextRenderer, { content: content[currentIndex].imageCaption })
1978
+ }
1979
+ )
1960
1980
  }
1961
1981
  ),
1962
1982
  thumbnail.isActive && /* @__PURE__ */ jsxRuntime.jsx(
@@ -2001,11 +2021,9 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
2001
2021
  {
2002
2022
  src: item.image.url,
2003
2023
  alt: item.image.name ?? "",
2004
- className: styles.thumbImage,
2005
2024
  style: {
2006
2025
  objectFit: thumbnail.fit === "cover" ? "cover" : "contain",
2007
- ...thumbnail.fit === "fit" && slider.direction === "horiz" ? { width: "fit-content" } : {},
2008
- ...thumbnail.fit === "fit" && slider.direction === "vert" ? { height: "fit-content" } : {},
2026
+ ...thumbnail.fit === "fit" ? { maxWidth: "100%", maxHeight: "100%", objectFit: "contain" } : {},
2009
2027
  ...thumbnail.fit === "cover" && slider.direction === "horiz" ? { width: "100%", height: "100%" } : {}
2010
2028
  }
2011
2029
  }
@@ -2034,8 +2052,8 @@ const LightboxComponent = {
2034
2052
  url: "https://cdn.cntrl.site/projects/01GJ2SPDSH73MC92WW7ZA2CWBY/articles-assets/01KA24CHYZXJBZ0Q714B05A7VD.mp4"
2035
2053
  },
2036
2054
  defaultSize: {
2037
- width: 400,
2038
- height: 400
2055
+ width: 440,
2056
+ height: 550
2039
2057
  },
2040
2058
  schema: {
2041
2059
  type: "object",
@@ -2730,47 +2748,27 @@ const LightboxComponent = {
2730
2748
  name: "properties.lightboxBlock.properties.appear.properties.direction.display.visible",
2731
2749
  value: false
2732
2750
  }
2733
- },
2734
- {
2735
- if: {
2736
- name: "lightboxBlock.triggers.type",
2737
- value: "click"
2738
- },
2739
- then: {
2740
- name: "properties.lightboxBlock.properties.slider.properties.duration.display.visible",
2741
- value: true
2742
- }
2743
- },
2744
- {
2745
- if: {
2746
- name: "lightboxBlock.triggers.type",
2747
- value: "click"
2748
- },
2749
- then: {
2750
- name: "properties.lightboxBlock.properties.slider.properties.switch.display.visible",
2751
- value: true
2752
- }
2753
- },
2754
- {
2755
- if: {
2756
- name: "lightboxBlock.triggers.type",
2757
- value: "drag"
2758
- },
2759
- then: {
2760
- name: "properties.lightboxBlock.properties.slider.properties.duration.display.visible",
2761
- value: false
2762
- }
2763
- },
2764
- {
2765
- if: {
2766
- name: "lightboxBlock.triggers.type",
2767
- value: "drag"
2768
- },
2769
- then: {
2770
- name: "properties.lightboxBlock.properties.slider.properties.switch.display.visible",
2771
- value: false
2772
- }
2773
2751
  }
2752
+ // {
2753
+ // if: {
2754
+ // name: 'lightboxBlock.triggers.type',
2755
+ // value: 'click'
2756
+ // },
2757
+ // then: {
2758
+ // name: 'properties.lightboxBlock.properties.slider.properties.switch.display.visible',
2759
+ // value: true
2760
+ // }
2761
+ // },
2762
+ // {
2763
+ // if: {
2764
+ // name: 'lightboxBlock.triggers.type',
2765
+ // value: 'drag'
2766
+ // },
2767
+ // then: {
2768
+ // name: 'properties.lightboxBlock.properties.slider.properties.switch.display.visible',
2769
+ // value: false
2770
+ // }
2771
+ // }
2774
2772
  ]
2775
2773
  },
2776
2774
  content: {
package/dist/index.mjs CHANGED
@@ -1501,7 +1501,6 @@ const thumbsAlignStart = "Lightbox-module__thumbsAlignStart___uiFIV";
1501
1501
  const thumbsAlignCenter = "Lightbox-module__thumbsAlignCenter___sbUPA";
1502
1502
  const thumbsAlignEnd = "Lightbox-module__thumbsAlignEnd___OA9N4";
1503
1503
  const thumbItem = "Lightbox-module__thumbItem___zROyu";
1504
- const thumbImage = "Lightbox-module__thumbImage___xGakV";
1505
1504
  const closeButton = "Lightbox-module__closeButton___r3Dur";
1506
1505
  const fadeIn = "Lightbox-module__fadeIn___sHwRK";
1507
1506
  const slideInLeft = "Lightbox-module__slideInLeft___P-XRo";
@@ -1532,7 +1531,6 @@ const styles = {
1532
1531
  thumbsAlignCenter,
1533
1532
  thumbsAlignEnd,
1534
1533
  thumbItem,
1535
- thumbImage,
1536
1534
  closeButton,
1537
1535
  fadeIn,
1538
1536
  slideInLeft,
@@ -1575,6 +1573,31 @@ const getPositionStyles = (position, offset, isEditor) => {
1575
1573
  }
1576
1574
  return styles2;
1577
1575
  };
1576
+ function getDisplayedImageRect(img2) {
1577
+ const container = img2.getBoundingClientRect();
1578
+ const containerW = container.width;
1579
+ const containerH = container.height;
1580
+ const imgW = img2.naturalWidth;
1581
+ const imgH = img2.naturalHeight;
1582
+ const containerRatio = containerW / containerH;
1583
+ const imgRatio = imgW / imgH;
1584
+ let renderedW, renderedH;
1585
+ if (imgRatio > containerRatio) {
1586
+ renderedW = containerW;
1587
+ renderedH = containerW / imgRatio;
1588
+ } else {
1589
+ renderedH = containerH;
1590
+ renderedW = containerH * imgRatio;
1591
+ }
1592
+ const offsetX = (containerW - renderedW) / 2 + container.left;
1593
+ const offsetY = (containerH - renderedH) / 2 + container.top;
1594
+ return {
1595
+ x: offsetX,
1596
+ y: offsetY,
1597
+ width: renderedW,
1598
+ height: renderedH
1599
+ };
1600
+ }
1578
1601
  function LightboxGallery({ settings, content, styles: styles2, portalId, activeEvent, isEditor }) {
1579
1602
  const [open, setOpen] = React.useState(false);
1580
1603
  const { url } = settings.thumbnailBlock.cover;
@@ -1596,13 +1619,16 @@ function LightboxGallery({ settings, content, styles: styles2, portalId, activeE
1596
1619
  onClick: () => setOpen(true)
1597
1620
  }
1598
1621
  ),
1599
- /* @__PURE__ */ jsx(Lightbox, { isOpen: open, onClose: () => setOpen(false), content, settings, portalId, isEditor })
1622
+ /* @__PURE__ */ jsx(Lightbox, { isOpen: open, onClose: () => setOpen(false), content, settings, styles: styles2, portalId, isEditor })
1600
1623
  ] });
1601
1624
  }
1602
- const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = true, closeOnEsc = true, portalId, isEditor }) => {
1625
+ const Lightbox = ({ isOpen, onClose, content, styles: lightboxStyles, settings, closeOnBackdropClick = true, closeOnEsc = true, portalId, isEditor }) => {
1626
+ const { widthSettings, fontSettings, letterSpacing, textAlign, wordSpacing, fontSizeLineHeight, textAppearance, color } = lightboxStyles.caption;
1603
1627
  const [currentIndex, setCurrentIndex] = React.useState(0);
1628
+ const [splideKey, setSplideKey] = React.useState(0);
1604
1629
  const lightboxRef = useRef(null);
1605
- const resizeObserverRef = useRef(null);
1630
+ const prevSliderTypeRef = useRef(null);
1631
+ const imageRef = useRef(null);
1606
1632
  const { appear, triggers, slider, thumbnail, controls, area, caption: caption2, layout } = settings.lightboxBlock;
1607
1633
  const handleBackdropClick = (e) => {
1608
1634
  if (!closeOnBackdropClick) return;
@@ -1632,6 +1658,13 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1632
1658
  };
1633
1659
  const onImageClick = (e) => {
1634
1660
  var _a, _b;
1661
+ const rect = imageRef.current ? getDisplayedImageRect(imageRef.current) : null;
1662
+ if (!rect) return;
1663
+ const inside = e.clientX >= rect.x && e.clientX <= rect.x + rect.width && e.clientY >= rect.y && e.clientY <= rect.y + rect.height;
1664
+ if (!inside) {
1665
+ onClose();
1666
+ return;
1667
+ }
1635
1668
  if (triggers.type === "click" && triggers.switch === "image") {
1636
1669
  e.stopPropagation();
1637
1670
  (_a = lightboxRef.current) == null ? void 0 : _a.go("+1");
@@ -1639,11 +1672,11 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1639
1672
  if (triggers.type === "click" && triggers.switch === "50/50") {
1640
1673
  e.stopPropagation();
1641
1674
  const img2 = e.currentTarget;
1642
- const rect = img2.getBoundingClientRect();
1643
- const clickX = e.clientX - rect.left;
1644
- const clickY = e.clientY - rect.top;
1645
- const imgWidth = rect.width;
1646
- const imgHeight = rect.height;
1675
+ const rect2 = img2.getBoundingClientRect();
1676
+ const clickX = e.clientX - rect2.left;
1677
+ const clickY = e.clientY - rect2.top;
1678
+ const imgWidth = rect2.width;
1679
+ const imgHeight = rect2.height;
1647
1680
  let dir;
1648
1681
  if (slider.direction === "horiz") {
1649
1682
  dir = clickX < imgWidth / 2 ? "-1" : "+1";
@@ -1676,6 +1709,12 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1676
1709
  useEffect(() => {
1677
1710
  if (isOpen) setCurrentIndex(0);
1678
1711
  }, [isOpen]);
1712
+ useEffect(() => {
1713
+ if (prevSliderTypeRef.current !== null && prevSliderTypeRef.current !== slider.type) {
1714
+ setSplideKey((prev) => prev + 1);
1715
+ }
1716
+ prevSliderTypeRef.current = slider.type;
1717
+ }, [slider.type]);
1679
1718
  useEffect(() => {
1680
1719
  if (!isOpen) return;
1681
1720
  const originalOverflow = document.body.style.overflow;
@@ -1689,51 +1728,6 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1689
1728
  document.body.style.backgroundColor = "";
1690
1729
  };
1691
1730
  }, [isOpen]);
1692
- useEffect(() => {
1693
- if (!isOpen) return;
1694
- if (resizeObserverRef.current) {
1695
- resizeObserverRef.current.disconnect();
1696
- resizeObserverRef.current = null;
1697
- }
1698
- const timeoutId = setTimeout(() => {
1699
- const activeSlide = document.querySelector(".splide__slide.is-active");
1700
- if (!activeSlide) return;
1701
- const img2 = activeSlide.querySelector("img");
1702
- const container = activeSlide.querySelector(`.${styles.imgWrapper}`);
1703
- if (!img2 || !container) return;
1704
- const updateImageSize = () => {
1705
- if (!img2.naturalWidth || !img2.naturalHeight) return;
1706
- const imageAspectRatio = img2.naturalWidth / img2.naturalHeight;
1707
- const containerWidth = container.clientWidth;
1708
- const containerHeight = container.clientHeight;
1709
- const containerAspectRatio = containerWidth / containerHeight;
1710
- if (imageAspectRatio > containerAspectRatio) {
1711
- img2.style.width = "100%";
1712
- img2.style.height = "";
1713
- } else {
1714
- img2.style.height = "100%";
1715
- img2.style.width = "";
1716
- }
1717
- };
1718
- if (img2.complete) {
1719
- updateImageSize();
1720
- } else {
1721
- img2.onload = updateImageSize;
1722
- }
1723
- resizeObserverRef.current = new ResizeObserver(() => {
1724
- updateImageSize();
1725
- });
1726
- resizeObserverRef.current.observe(container);
1727
- resizeObserverRef.current.observe(img2);
1728
- }, 0);
1729
- return () => {
1730
- clearTimeout(timeoutId);
1731
- if (resizeObserverRef.current) {
1732
- resizeObserverRef.current.disconnect();
1733
- resizeObserverRef.current = null;
1734
- }
1735
- };
1736
- }, [isOpen, currentIndex, content]);
1737
1731
  const handleArrowClick = (dir) => {
1738
1732
  var _a;
1739
1733
  (_a = lightboxRef.current) == null ? void 0 : _a.go(dir);
@@ -1800,6 +1794,7 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1800
1794
  style: { ...isEditor && { backgroundColor: area.color, backdropFilter: `blur(${area.blur}px)` } },
1801
1795
  onClick: handleBackdropClick,
1802
1796
  onTouchEnd: handleBackdropClick,
1797
+ onTouchStart: handleBackdropClick,
1803
1798
  children: /* @__PURE__ */ jsxs(
1804
1799
  "div",
1805
1800
  {
@@ -1853,6 +1848,7 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1853
1848
  children: /* @__PURE__ */ jsx(
1854
1849
  "img",
1855
1850
  {
1851
+ ref: imageRef,
1856
1852
  className: cn(styles.imageStyle, {
1857
1853
  [styles.contain]: item.image.objectFit === "contain",
1858
1854
  [styles.cover]: item.image.objectFit === "cover",
@@ -1867,9 +1863,10 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1867
1863
  }
1868
1864
  ) }, index);
1869
1865
  })
1870
- }
1866
+ },
1867
+ splideKey
1871
1868
  ),
1872
- controls.isActive && /* @__PURE__ */ jsxs(Fragment, { children: [
1869
+ controls.isActive && controls.arrowsImgUrl && /* @__PURE__ */ jsxs(Fragment, { children: [
1873
1870
  /* @__PURE__ */ jsx(
1874
1871
  "div",
1875
1872
  {
@@ -1951,10 +1948,33 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1951
1948
  className: styles.caption,
1952
1949
  style: {
1953
1950
  ...getPositionStyles(caption2.alignment, caption2.offset, isEditor),
1954
- ["--link-hover-color"]: caption2.hover
1951
+ fontFamily: fontSettings.fontFamily,
1952
+ fontWeight: fontSettings.fontWeight,
1953
+ fontStyle: fontSettings.fontStyle,
1954
+ width: widthSettings.sizing === "auto" ? "max-content" : scalingValue(widthSettings.width, isEditor),
1955
+ letterSpacing: scalingValue(letterSpacing, isEditor),
1956
+ wordSpacing: scalingValue(wordSpacing, isEditor),
1957
+ textAlign,
1958
+ fontSize: scalingValue(fontSizeLineHeight.fontSize, isEditor),
1959
+ lineHeight: scalingValue(fontSizeLineHeight.lineHeight, isEditor),
1960
+ textTransform: textAppearance.textTransform ?? "none",
1961
+ textDecoration: textAppearance.textDecoration ?? "none",
1962
+ fontVariant: textAppearance.fontVariant ?? "normal",
1963
+ color,
1964
+ transitionDuration: slider.duration ? `${Math.round(parseInt(slider.duration) / 2)}ms` : "500ms"
1955
1965
  },
1956
1966
  onClick: (e) => e.stopPropagation(),
1957
- children: /* @__PURE__ */ jsx(RichTextRenderer, { content: content[currentIndex].imageCaption })
1967
+ children: /* @__PURE__ */ jsx(
1968
+ "div",
1969
+ {
1970
+ "data-styles": "caption",
1971
+ className: styles.captionTextInner,
1972
+ style: {
1973
+ position: "relative"
1974
+ },
1975
+ children: /* @__PURE__ */ jsx(RichTextRenderer, { content: content[currentIndex].imageCaption })
1976
+ }
1977
+ )
1958
1978
  }
1959
1979
  ),
1960
1980
  thumbnail.isActive && /* @__PURE__ */ jsx(
@@ -1999,11 +2019,9 @@ const Lightbox = ({ isOpen, onClose, content, settings, closeOnBackdropClick = t
1999
2019
  {
2000
2020
  src: item.image.url,
2001
2021
  alt: item.image.name ?? "",
2002
- className: styles.thumbImage,
2003
2022
  style: {
2004
2023
  objectFit: thumbnail.fit === "cover" ? "cover" : "contain",
2005
- ...thumbnail.fit === "fit" && slider.direction === "horiz" ? { width: "fit-content" } : {},
2006
- ...thumbnail.fit === "fit" && slider.direction === "vert" ? { height: "fit-content" } : {},
2024
+ ...thumbnail.fit === "fit" ? { maxWidth: "100%", maxHeight: "100%", objectFit: "contain" } : {},
2007
2025
  ...thumbnail.fit === "cover" && slider.direction === "horiz" ? { width: "100%", height: "100%" } : {}
2008
2026
  }
2009
2027
  }
@@ -2032,8 +2050,8 @@ const LightboxComponent = {
2032
2050
  url: "https://cdn.cntrl.site/projects/01GJ2SPDSH73MC92WW7ZA2CWBY/articles-assets/01KA24CHYZXJBZ0Q714B05A7VD.mp4"
2033
2051
  },
2034
2052
  defaultSize: {
2035
- width: 400,
2036
- height: 400
2053
+ width: 440,
2054
+ height: 550
2037
2055
  },
2038
2056
  schema: {
2039
2057
  type: "object",
@@ -2728,47 +2746,27 @@ const LightboxComponent = {
2728
2746
  name: "properties.lightboxBlock.properties.appear.properties.direction.display.visible",
2729
2747
  value: false
2730
2748
  }
2731
- },
2732
- {
2733
- if: {
2734
- name: "lightboxBlock.triggers.type",
2735
- value: "click"
2736
- },
2737
- then: {
2738
- name: "properties.lightboxBlock.properties.slider.properties.duration.display.visible",
2739
- value: true
2740
- }
2741
- },
2742
- {
2743
- if: {
2744
- name: "lightboxBlock.triggers.type",
2745
- value: "click"
2746
- },
2747
- then: {
2748
- name: "properties.lightboxBlock.properties.slider.properties.switch.display.visible",
2749
- value: true
2750
- }
2751
- },
2752
- {
2753
- if: {
2754
- name: "lightboxBlock.triggers.type",
2755
- value: "drag"
2756
- },
2757
- then: {
2758
- name: "properties.lightboxBlock.properties.slider.properties.duration.display.visible",
2759
- value: false
2760
- }
2761
- },
2762
- {
2763
- if: {
2764
- name: "lightboxBlock.triggers.type",
2765
- value: "drag"
2766
- },
2767
- then: {
2768
- name: "properties.lightboxBlock.properties.slider.properties.switch.display.visible",
2769
- value: false
2770
- }
2771
2749
  }
2750
+ // {
2751
+ // if: {
2752
+ // name: 'lightboxBlock.triggers.type',
2753
+ // value: 'click'
2754
+ // },
2755
+ // then: {
2756
+ // name: 'properties.lightboxBlock.properties.slider.properties.switch.display.visible',
2757
+ // value: true
2758
+ // }
2759
+ // },
2760
+ // {
2761
+ // if: {
2762
+ // name: 'lightboxBlock.triggers.type',
2763
+ // value: 'drag'
2764
+ // },
2765
+ // then: {
2766
+ // name: 'properties.lightboxBlock.properties.slider.properties.switch.display.visible',
2767
+ // value: false
2768
+ // }
2769
+ // }
2772
2770
  ]
2773
2771
  },
2774
2772
  content: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cntrl-site/components",
3
- "version": "0.1.0-alpha.18",
3
+ "version": "0.1.0-alpha.19",
4
4
  "description": "Custom components for control editor and public websites.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",