pds-dev-kit-web-test 2.7.346 → 2.7.348
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/sub/DynamicLayout/{mock_fade.json → mock_section.json} +619 -5095
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +1 -0
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.js +42 -14
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/components/progressConfigs.js +7 -4
- package/package.json +1 -1
|
@@ -159,6 +159,7 @@ function ContentsCarousel(props) {
|
|
|
159
159
|
if (mode === 'EDIT') {
|
|
160
160
|
style.visibility = 'visible';
|
|
161
161
|
}
|
|
162
|
+
console.log('contentsCarouselStyle', contentsCarouselNormalStyle);
|
|
162
163
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEditModeAndHidden && (0, jsx_runtime_1.jsx)(S_HiddenCover_1.S_HiddenCover, {}), Object.entries(componentGroups).map(function (_a) {
|
|
163
164
|
var position = _a[0], groupComponents = _a[1];
|
|
164
165
|
return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-contentscarousel-button-group ccb-elements ".concat(position), ref: function (el) {
|
|
@@ -42,21 +42,47 @@ var react_2 = require("swiper/react");
|
|
|
42
42
|
var StyledSwiper_1 = __importDefault(require("../../../StyledSwiper/StyledSwiper"));
|
|
43
43
|
var ContentsCarouselCore = (0, react_1.forwardRef)(function (_a, ref) {
|
|
44
44
|
var styles = _a.styles, slidesPerView = _a.slidesPerView, children = _a.children, allowTouchMove = _a.allowTouchMove, props = __rest(_a, ["styles", "slidesPerView", "children", "allowTouchMove"]);
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
45
|
+
var childrenArray = (0, react_1.useMemo)(function () {
|
|
46
|
+
return Array.isArray(children) ? children : [children];
|
|
47
|
+
}, [children]);
|
|
48
|
+
// 1. 원본 슬라이드 배열
|
|
49
|
+
var originalChildren = (0, react_1.useMemo)(function () {
|
|
50
|
+
return Array.isArray(children) ? children : [children];
|
|
51
|
+
}, [children]);
|
|
52
|
+
// 2. (수정) 루프와 slidesPerView 문제를 해결하기 위한 배열
|
|
53
|
+
var loopedChildren = (0, react_1.useMemo)(function () {
|
|
54
|
+
// 루프가 아니거나, slidesPerView가 1이하이면 원본 반환
|
|
55
|
+
if (!styles.loop || typeof slidesPerView !== 'number' || slidesPerView <= 1) {
|
|
56
|
+
return originalChildren;
|
|
55
57
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
+
// 3. (핵심) 루프가 필요한데 슬라이드 수가 (slidesPerView * 2)보다 적은 경우
|
|
59
|
+
if (originalChildren.length > 0 && originalChildren.length < slidesPerView * 2) {
|
|
60
|
+
// 원본 배열을 2번 (혹은 3번) 반복하여 강제로 개수를 늘림
|
|
61
|
+
// 최소 8개(slidesPerView*2)는 넘겨야 하므로, 5개일 경우 10개로 만듦
|
|
62
|
+
return __spreadArray(__spreadArray([], originalChildren, true), originalChildren, true);
|
|
63
|
+
}
|
|
64
|
+
// 슬라이드 수가 충분하면 원본 반환
|
|
65
|
+
return originalChildren;
|
|
66
|
+
}, [originalChildren, styles.loop, slidesPerView]);
|
|
58
67
|
var finalSlidesPerView = props.effect === 'cards' ? 1 : slidesPerView;
|
|
59
|
-
var useAutoplay = !!styles.useAutoplay &&
|
|
68
|
+
var useAutoplay = !!styles.useAutoplay && childrenArray.length > 1;
|
|
69
|
+
// const slidesWithEmpty = useMemo(() => {
|
|
70
|
+
// const childrenArray = Array.isArray(children) ? children : [children];
|
|
71
|
+
// if (
|
|
72
|
+
// slidesPerView === styles.slidesPerGroup &&
|
|
73
|
+
// styles.slidesPerGroup &&
|
|
74
|
+
// styles.slidesPerGroup > 1
|
|
75
|
+
// ) {
|
|
76
|
+
// const remainder = childrenArray.length % styles.slidesPerGroup;
|
|
77
|
+
// if (remainder !== 0) {
|
|
78
|
+
// const emptyCount = styles.slidesPerGroup - remainder;
|
|
79
|
+
// return [...childrenArray, ...Array(emptyCount).fill(null)];
|
|
80
|
+
// }
|
|
81
|
+
// }
|
|
82
|
+
// return childrenArray;
|
|
83
|
+
// }, [children, slidesPerView, styles.slidesPerGroup]);
|
|
84
|
+
// const finalSlidesPerView = props.effect === 'cards' ? 1 : slidesPerView;
|
|
85
|
+
// const useAutoplay = !!styles.useAutoplay && Array.isArray(children) && children.length > 1;
|
|
60
86
|
return ((0, jsx_runtime_1.jsx)(StyledSwiper_1.default, __assign({ id: "styled-swiper-wrapper" }, { children: (0, jsx_runtime_1.jsx)(react_2.Swiper, __assign({ ref: ref, style: {
|
|
61
87
|
width: '100%',
|
|
62
88
|
height: '100%'
|
|
@@ -71,7 +97,9 @@ var ContentsCarouselCore = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
71
97
|
swiper_1.EffectCards,
|
|
72
98
|
swiper_1.EffectCoverflow,
|
|
73
99
|
swiper_1.EffectFlip
|
|
74
|
-
], slidesPerView: finalSlidesPerView, scrollbar: styles.scrollbar, slidesPerGroup: styles.slidesPerGroup, spaceBetween: styles.spaceBetween, freeMode: styles.freeMode, autoplay: useAutoplay ? styles.autoplay : false, loop: styles.loop, allowTouchMove: allowTouchMove
|
|
100
|
+
], slidesPerView: finalSlidesPerView, scrollbar: styles.scrollbar, slidesPerGroup: styles.slidesPerGroup, spaceBetween: styles.spaceBetween, freeMode: styles.freeMode, autoplay: useAutoplay ? styles.autoplay : false, loop: styles.loop, allowTouchMove: allowTouchMove,
|
|
101
|
+
// cnrk
|
|
102
|
+
observer: true, observeParents: true }, props, { children: loopedChildren.map(function (slide, index) { return ((0, jsx_runtime_1.jsx)(react_2.SwiperSlide, __assign({ style: { pointerEvents: allowTouchMove ? 'auto' : 'none' } }, { children: slide || (0, jsx_runtime_1.jsx)("div", { className: "swiper-slide-empty" }) }), index)); }) })) })));
|
|
75
103
|
});
|
|
76
104
|
ContentsCarouselCore.displayName = 'ContentsCarouselCore';
|
|
77
105
|
exports.default = ContentsCarouselCore;
|
|
@@ -157,12 +157,15 @@ var S_ProgressDesign5 = styled_components_1.default.div(templateObject_5 || (tem
|
|
|
157
157
|
var barColor = _a.barColor;
|
|
158
158
|
return barColor;
|
|
159
159
|
});
|
|
160
|
-
var S_ProgressDesign6 = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n align-items: center;\n color: ", ";\n display: flex;\n flex-direction: column;\n font-weight: bold;\n width: ", "px;\n\n .progress-bar-container {\n background-color:
|
|
161
|
-
var
|
|
162
|
-
return
|
|
163
|
-
}, function (props) { return SIZE_ENUM_TO_NUM_BAR[props.size].width; }, function (
|
|
160
|
+
var S_ProgressDesign6 = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n align-items: center;\n color: ", ";\n display: flex;\n flex-direction: column;\n font-weight: bold;\n width: ", "px;\n\n .progress-bar-container {\n background-color: ", ";\n border-radius: 3px;\n height: ", "px;\n overflow: hidden;\n position: relative;\n width: 100%;\n }\n\n .progress-bar-fill {\n background-color: ", ";\n border-radius: 3px;\n height: 100%;\n transition: width 0.1s ease-out;\n width: calc(var(--progress) * 100%);\n }\n"], ["\n align-items: center;\n color: ", ";\n display: flex;\n flex-direction: column;\n font-weight: bold;\n width: ", "px;\n\n .progress-bar-container {\n background-color: ", ";\n border-radius: 3px;\n height: ", "px;\n overflow: hidden;\n position: relative;\n width: 100%;\n }\n\n .progress-bar-fill {\n background-color: ", ";\n border-radius: 3px;\n height: 100%;\n transition: width 0.1s ease-out;\n width: calc(var(--progress) * 100%);\n }\n"])), function (_a) {
|
|
161
|
+
var barColor = _a.barColor;
|
|
162
|
+
return barColor;
|
|
163
|
+
}, function (props) { return SIZE_ENUM_TO_NUM_BAR[props.size].width; }, function (_a) {
|
|
164
164
|
var bgColor = _a.bgColor;
|
|
165
165
|
return bgColor;
|
|
166
|
+
}, function (props) { return SIZE_ENUM_TO_NUM_BAR[props.size].height; }, function (_a) {
|
|
167
|
+
var barColor = _a.barColor;
|
|
168
|
+
return barColor;
|
|
166
169
|
});
|
|
167
170
|
var S_ProgressDesign7 = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n align-items: center;\n color: ", ";\n display: flex;\n flex-direction: column;\n font-weight: bold;\n width: ", "px;\n\n .progress-bar-container {\n background-color: ", ";\n height: ", "px;\n overflow: hidden;\n position: relative;\n width: 100%;\n }\n\n .progress-bar-fill {\n background-color: ", ";\n height: 100%;\n transition: width 0.1s ease-out;\n width: calc(var(--progress) * 100%);\n }\n"], ["\n align-items: center;\n color: ", ";\n display: flex;\n flex-direction: column;\n font-weight: bold;\n width: ", "px;\n\n .progress-bar-container {\n background-color: ", ";\n height: ", "px;\n overflow: hidden;\n position: relative;\n width: 100%;\n }\n\n .progress-bar-fill {\n background-color: ", ";\n height: 100%;\n transition: width 0.1s ease-out;\n width: calc(var(--progress) * 100%);\n }\n"])), function (_a) {
|
|
168
171
|
var barColor = _a.barColor;
|