pds-dev-kit-web-test 2.7.497 → 2.7.499
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/common/services/i18n/resources/en.json +4 -1
- package/dist/src/common/services/i18n/resources/es.json +4 -1
- package/dist/src/common/services/i18n/resources/fil.json +4 -1
- package/dist/src/common/services/i18n/resources/index.d.ts +21 -0
- package/dist/src/common/services/i18n/resources/ja.json +4 -1
- package/dist/src/common/services/i18n/resources/ko.json +4 -1
- package/dist/src/common/services/i18n/resources/zh-cn.json +4 -1
- package/dist/src/common/services/i18n/resources/zh-tw.json +4 -1
- package/dist/src/sub/DynamicLayout/CompositionRenderer/createCompositions.js +3 -45
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +57 -35
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +50 -28
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +52 -34
- package/package.json +1 -1
|
@@ -106,6 +106,9 @@
|
|
|
106
106
|
"str_reaction": "Reaction",
|
|
107
107
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
108
108
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
109
|
-
"str_grid_height_variable": "Variable"
|
|
109
|
+
"str_grid_height_variable": "Variable",
|
|
110
|
+
"str_10476": "Loading data information.",
|
|
111
|
+
"str_10477": "Data value not linked",
|
|
112
|
+
"str_10478": "No data values to link."
|
|
110
113
|
}
|
|
111
114
|
}
|
|
@@ -106,6 +106,9 @@
|
|
|
106
106
|
"str_reaction": "Reaction",
|
|
107
107
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
108
108
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
109
|
-
"str_grid_height_variable": "Variable"
|
|
109
|
+
"str_grid_height_variable": "Variable",
|
|
110
|
+
"str_10476": "Loading data information.",
|
|
111
|
+
"str_10477": "Data value not linked",
|
|
112
|
+
"str_10478": "No data values to link."
|
|
110
113
|
}
|
|
111
114
|
}
|
|
@@ -99,6 +99,9 @@
|
|
|
99
99
|
"str_reaction": "Reaction",
|
|
100
100
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
101
101
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
102
|
-
"str_grid_height_variable": "Variable"
|
|
102
|
+
"str_grid_height_variable": "Variable",
|
|
103
|
+
"str_10476": "Loading data information.",
|
|
104
|
+
"str_10477": "Data value not linked",
|
|
105
|
+
"str_10478": "No data values to link."
|
|
103
106
|
}
|
|
104
107
|
}
|
|
@@ -109,6 +109,9 @@ declare const locale: {
|
|
|
109
109
|
str_9806: string;
|
|
110
110
|
str_10106: string;
|
|
111
111
|
str_grid_height_variable: string;
|
|
112
|
+
str_10476: string;
|
|
113
|
+
str_10477: string;
|
|
114
|
+
str_10478: string;
|
|
112
115
|
};
|
|
113
116
|
};
|
|
114
117
|
readonly en: {
|
|
@@ -220,6 +223,9 @@ declare const locale: {
|
|
|
220
223
|
str_9806: string;
|
|
221
224
|
str_10106: string;
|
|
222
225
|
str_grid_height_variable: string;
|
|
226
|
+
str_10476: string;
|
|
227
|
+
str_10477: string;
|
|
228
|
+
str_10478: string;
|
|
223
229
|
};
|
|
224
230
|
};
|
|
225
231
|
readonly ja: {
|
|
@@ -331,6 +337,9 @@ declare const locale: {
|
|
|
331
337
|
str_9806: string;
|
|
332
338
|
str_10106: string;
|
|
333
339
|
str_grid_height_variable: string;
|
|
340
|
+
str_10476: string;
|
|
341
|
+
str_10477: string;
|
|
342
|
+
str_10478: string;
|
|
334
343
|
};
|
|
335
344
|
};
|
|
336
345
|
readonly es: {
|
|
@@ -442,6 +451,9 @@ declare const locale: {
|
|
|
442
451
|
str_9806: string;
|
|
443
452
|
str_10106: string;
|
|
444
453
|
str_grid_height_variable: string;
|
|
454
|
+
str_10476: string;
|
|
455
|
+
str_10477: string;
|
|
456
|
+
str_10478: string;
|
|
445
457
|
};
|
|
446
458
|
};
|
|
447
459
|
readonly 'zh-cn': {
|
|
@@ -553,6 +565,9 @@ declare const locale: {
|
|
|
553
565
|
str_9806: string;
|
|
554
566
|
str_10106: string;
|
|
555
567
|
str_grid_height_variable: string;
|
|
568
|
+
str_10476: string;
|
|
569
|
+
str_10477: string;
|
|
570
|
+
str_10478: string;
|
|
556
571
|
};
|
|
557
572
|
};
|
|
558
573
|
readonly 'zh-tw': {
|
|
@@ -664,6 +679,9 @@ declare const locale: {
|
|
|
664
679
|
str_9806: string;
|
|
665
680
|
str_10106: string;
|
|
666
681
|
str_grid_height_variable: string;
|
|
682
|
+
str_10476: string;
|
|
683
|
+
str_10477: string;
|
|
684
|
+
str_10478: string;
|
|
667
685
|
};
|
|
668
686
|
};
|
|
669
687
|
readonly fil: {
|
|
@@ -768,6 +786,9 @@ declare const locale: {
|
|
|
768
786
|
str_9806: string;
|
|
769
787
|
str_10106: string;
|
|
770
788
|
str_grid_height_variable: string;
|
|
789
|
+
str_10476: string;
|
|
790
|
+
str_10477: string;
|
|
791
|
+
str_10478: string;
|
|
771
792
|
};
|
|
772
793
|
};
|
|
773
794
|
};
|
|
@@ -106,6 +106,9 @@
|
|
|
106
106
|
"str_reaction": "Reaction",
|
|
107
107
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
108
108
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
109
|
-
"str_grid_height_variable": "Variable"
|
|
109
|
+
"str_grid_height_variable": "Variable",
|
|
110
|
+
"str_10476": "Loading data information.",
|
|
111
|
+
"str_10477": "Data value not linked",
|
|
112
|
+
"str_10478": "No data values to link."
|
|
110
113
|
}
|
|
111
114
|
}
|
|
@@ -107,6 +107,9 @@
|
|
|
107
107
|
"str_reaction": "반응",
|
|
108
108
|
"str_9806": "아직 추가된 항목이 없어요. 항목을 추가하고 편집해주세요!",
|
|
109
109
|
"str_10106": "내용에 따라 높이가 조절됩니다.",
|
|
110
|
-
"str_grid_height_variable": "가변"
|
|
110
|
+
"str_grid_height_variable": "가변",
|
|
111
|
+
"str_10476": "데이터 정보를 불러오는 중입니다.",
|
|
112
|
+
"str_10477": "데이터 값 연결되지 않음",
|
|
113
|
+
"str_10478": "연결할 데이터 값이 없습니다."
|
|
111
114
|
}
|
|
112
115
|
}
|
|
@@ -106,6 +106,9 @@
|
|
|
106
106
|
"str_reaction": "Reaction",
|
|
107
107
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
108
108
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
109
|
-
"str_grid_height_variable": "Variable"
|
|
109
|
+
"str_grid_height_variable": "Variable",
|
|
110
|
+
"str_10476": "Loading data information.",
|
|
111
|
+
"str_10477": "Data value not linked",
|
|
112
|
+
"str_10478": "No data values to link."
|
|
110
113
|
}
|
|
111
114
|
}
|
|
@@ -106,6 +106,9 @@
|
|
|
106
106
|
"str_reaction": "Reaction",
|
|
107
107
|
"str_9806": "There are no items added yet. Please add and edit items!",
|
|
108
108
|
"str_10106": "The height is adjusted\naccording to the content.",
|
|
109
|
-
"str_grid_height_variable": "Variable"
|
|
109
|
+
"str_grid_height_variable": "Variable",
|
|
110
|
+
"str_10476": "Loading data information.",
|
|
111
|
+
"str_10477": "Data value not linked",
|
|
112
|
+
"str_10478": "No data values to link."
|
|
110
113
|
}
|
|
111
114
|
}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
-
return cooked;
|
|
5
|
-
};
|
|
6
2
|
var __assign = (this && this.__assign) || function () {
|
|
7
3
|
__assign = Object.assign || function(t) {
|
|
8
4
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -20,9 +16,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
20
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
17
|
exports.createCompositions = void 0;
|
|
22
18
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
23
|
-
require("react");
|
|
24
|
-
var react_i18next_1 = require("react-i18next");
|
|
25
|
-
var styled_components_1 = __importDefault(require("styled-components"));
|
|
26
19
|
var compositionQueryContext_1 = require("../compositionQueryContext");
|
|
27
20
|
var Composition_1 = __importDefault(require("./Composition"));
|
|
28
21
|
function createCompositions(_a) {
|
|
@@ -31,47 +24,12 @@ function createCompositions(_a) {
|
|
|
31
24
|
// 직접 입력 유형인 경우
|
|
32
25
|
if (!isQueryDataConnected) {
|
|
33
26
|
var valueTypeCompositions = compositions.filter(function (composition) { return !!(composition === null || composition === void 0 ? void 0 : composition.ccbManualItemUuid); });
|
|
34
|
-
// MANUAL ITEM이 없는 경우
|
|
35
|
-
if (!valueTypeCompositions.length) {
|
|
36
|
-
return [(0, jsx_runtime_1.jsx)(EmptyString, {}, "empty-manual-item")];
|
|
37
|
-
}
|
|
38
27
|
return valueTypeCompositions.map(function (composition) { return ((0, jsx_runtime_1.jsx)(Composition_1.default, __assign({}, composition, { ccbCode: componentBlockCode }), composition.id)); });
|
|
39
28
|
}
|
|
40
|
-
|
|
41
|
-
return [(0, jsx_runtime_1.jsx)("div", { children: "EMPTY TEXT" }, "empty")];
|
|
42
|
-
}
|
|
43
|
-
// 데이터 연결 유형이나, 쿼리 데이터나 키가 없는 경우
|
|
44
|
-
if (queryPath === 'NONE' || !queryPath || !queryData) {
|
|
45
|
-
return [(0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: "\uC544\uC9C1 \uC5F0\uACB0\uB41C \uCFFC\uB9AC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }, "no-query")];
|
|
46
|
-
}
|
|
47
|
-
var queryDataValue = queryData[queryPath];
|
|
29
|
+
var queryDataValue = queryData === null || queryData === void 0 ? void 0 : queryData[queryPath];
|
|
48
30
|
var queryComposition = compositions.find(function (composition) { return !composition.ccbManualItemUuid; });
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return [(0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: "\uC5F0\uACB0\uB41C \uB370\uC774\uD130\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4." }, "not-found")];
|
|
52
|
-
}
|
|
53
|
-
// 쿼리 데이터와 키가 있으나, 쿼리 데이터에 결과가 빈 경우
|
|
54
|
-
if (!queryDataValue.length) {
|
|
55
|
-
return [(0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: "\uC544\uC9C1 \uBCF4\uC5EC\uC904 \uCF58\uD150\uCE20\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4." }, "empty-item")];
|
|
56
|
-
}
|
|
31
|
+
if (!queryDataValue)
|
|
32
|
+
return [(0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {})];
|
|
57
33
|
return queryDataValue.slice(0, limit).map(function (query, index) { return ((0, jsx_runtime_1.jsx)(compositionQueryContext_1.CCBQueryPathContext.Provider, __assign({ value: { queryData: query } }, { children: (0, jsx_runtime_1.jsx)(Composition_1.default, __assign({}, queryComposition, { ccbCode: componentBlockCode })) }), index)); });
|
|
58
34
|
}
|
|
59
35
|
exports.createCompositions = createCompositions;
|
|
60
|
-
function EmptyString() {
|
|
61
|
-
var t = (0, react_i18next_1.useTranslation)('translation').t;
|
|
62
|
-
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t('str_9806') });
|
|
63
|
-
}
|
|
64
|
-
var S_EmptyLayer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.6);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n padding: ", ";\n text-align: center;\n word-break: keep-all;\n"], ["\n background-color: rgba(0, 0, 0, 0.6);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n line-height: ", ";\n padding: ", ";\n text-align: center;\n word-break: keep-all;\n"])), function (_a) {
|
|
65
|
-
var theme = _a.theme;
|
|
66
|
-
return theme.desktopFontSize.body2;
|
|
67
|
-
}, function (_a) {
|
|
68
|
-
var theme = _a.theme;
|
|
69
|
-
return theme.fontWeight.bold;
|
|
70
|
-
}, function (_a) {
|
|
71
|
-
var theme = _a.theme;
|
|
72
|
-
return theme.desktopLineHeight.body2;
|
|
73
|
-
}, function (_a) {
|
|
74
|
-
var theme = _a.theme;
|
|
75
|
-
return theme.spacing.spacingE;
|
|
76
|
-
});
|
|
77
|
-
var templateObject_1;
|
|
@@ -138,18 +138,6 @@ function ContentsCarousel(props) {
|
|
|
138
138
|
bottom: '0px',
|
|
139
139
|
left: '0px'
|
|
140
140
|
};
|
|
141
|
-
var renderElements = function (component, style) {
|
|
142
|
-
switch (component.type) {
|
|
143
|
-
case 'PREV':
|
|
144
|
-
return ((0, jsx_runtime_1.jsx)(CustomNavigationPrevBtn_1.CustomNavigationPrevBtn, { isDisabled: loop ? false : isBeginning, hoverStyles: customNavigationHoverStyle, onClick: onClickPrevBtn, styles: customNavigationNormalStyle, style: __assign({}, style) }));
|
|
145
|
-
case 'NEXT':
|
|
146
|
-
return ((0, jsx_runtime_1.jsx)(CustomNavigationNextBtn_1.CustomNavigationNextBtn, { isDisabled: loop ? false : isEnd, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickNextBtn, style: __assign({}, style) }));
|
|
147
|
-
case 'PROGRESSBAR':
|
|
148
|
-
return ((0, jsx_runtime_1.jsx)(CustomProgressbar_1.CustomProgressbar, { slidesLength: orderedCompositions.length, progressRef: progressRef, leftTimeMsRef: leftTimeMsRef, styles: isHovered ? customProgressbarHoverStyle : customProgressbarNormalStyle }));
|
|
149
|
-
default:
|
|
150
|
-
return null;
|
|
151
|
-
}
|
|
152
|
-
};
|
|
153
141
|
// NOTE: edit환경에서 hover가 작동하지 않아서 제외함 필요시 추가..
|
|
154
142
|
var columnGapEnum = device === 'DESKTOP'
|
|
155
143
|
? CB_STYLE_PROP_CONTENTSCAROUSELDESIGN.CB_STYLE_PROP_CONTENTSCAROUSELDESIGN_SPEC_ITEMSPACING
|
|
@@ -164,6 +152,54 @@ function ContentsCarousel(props) {
|
|
|
164
152
|
if (mode === 'EDIT') {
|
|
165
153
|
style.visibility = 'visible';
|
|
166
154
|
}
|
|
155
|
+
var renderElements = function (component, style, slidesLength) {
|
|
156
|
+
switch (component.type) {
|
|
157
|
+
case 'PREV':
|
|
158
|
+
return ((0, jsx_runtime_1.jsx)(CustomNavigationPrevBtn_1.CustomNavigationPrevBtn, { isDisabled: loop ? false : isBeginning, hoverStyles: customNavigationHoverStyle, onClick: onClickPrevBtn, styles: customNavigationNormalStyle, style: __assign({}, style) }));
|
|
159
|
+
case 'NEXT':
|
|
160
|
+
return ((0, jsx_runtime_1.jsx)(CustomNavigationNextBtn_1.CustomNavigationNextBtn, { isDisabled: loop ? false : isEnd, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickNextBtn, style: __assign({}, style) }));
|
|
161
|
+
case 'PROGRESSBAR':
|
|
162
|
+
return ((0, jsx_runtime_1.jsx)(CustomProgressbar_1.CustomProgressbar, { slidesLength: slidesLength, progressRef: progressRef, leftTimeMsRef: leftTimeMsRef, styles: isHovered ? customProgressbarHoverStyle : customProgressbarNormalStyle }));
|
|
163
|
+
default:
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
var renderSwiper = function (compositions) {
|
|
168
|
+
return ((0, jsx_runtime_1.jsx)(S_SwiperLayout, __assign({ className: "cb-contentscarousel-layout-box", ref: layoutRef, style: __assign({}, pointerEventsObj) }, { children: (0, jsx_runtime_1.jsx)(S_SwiperWrapper, __assign({ className: "cb-contentscarousel-wrapper", ccbInset: ccbInset, customStyle: isHovered
|
|
169
|
+
? contentsCarouselHoverStyle === null || contentsCarouselHoverStyle === void 0 ? void 0 : contentsCarouselHoverStyle.customStyle
|
|
170
|
+
: contentsCarouselNormalStyle === null || contentsCarouselNormalStyle === void 0 ? void 0 : contentsCarouselNormalStyle.customStyle, style: {
|
|
171
|
+
display: layout.display,
|
|
172
|
+
flexDirection: layout.flexDirection,
|
|
173
|
+
justifyContent: layout.justifyContent
|
|
174
|
+
} }, { children: (0, jsx_runtime_1.jsx)(ContentsCarouselCore_1.default, __assign({ ref: swiperRef, className: "cb-contentscarousel", allowTouchMove: mode !== 'EDIT' ? true : false, onSwiper: onSwiper, onSlideChangeTransitionEnd: onSlideChangeTransitionEnd, onAutoplayTimeLeft: onAutoplayTimeLeft, slidesPerView: displayCounts, styles: isHovered ? contentsCarouselHoverStyle : contentsCarouselNormalStyle, effect: CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE === null || CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE === void 0 ? void 0 : CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE.toLowerCase(), loop: loop, displayCounts: displayCounts }, { children: (0, createCompositions_1.createCompositions)({
|
|
175
|
+
valueType: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE,
|
|
176
|
+
queryPath: queryPath,
|
|
177
|
+
limit: displayCounts,
|
|
178
|
+
queryData: queryData,
|
|
179
|
+
compositions: compositions,
|
|
180
|
+
componentBlockCode: types_1.CB_ALL_CODES.CB_CONTENTSCAROUSEL
|
|
181
|
+
}) }), CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE +
|
|
182
|
+
autoPlayEnabled +
|
|
183
|
+
compositions.length) })) })));
|
|
184
|
+
};
|
|
185
|
+
var renderCompositions = function (compositions) {
|
|
186
|
+
// 직접 연결
|
|
187
|
+
if (CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE === 'VALUE') {
|
|
188
|
+
if (!compositions.length)
|
|
189
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_9806" });
|
|
190
|
+
return renderSwiper(compositions);
|
|
191
|
+
}
|
|
192
|
+
// 데이터 연결
|
|
193
|
+
if (queryPath === 'NONE' || !queryPath || !queryData) {
|
|
194
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10477" }, "no-query");
|
|
195
|
+
}
|
|
196
|
+
var queryDataValue = queryData[queryPath];
|
|
197
|
+
// 쿼리 데이터와 키가 있으나, 쿼리 데이터에 결과가 빈 경우
|
|
198
|
+
if (!(queryDataValue === null || queryDataValue === void 0 ? void 0 : queryDataValue.length)) {
|
|
199
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10478" }, "empty-item");
|
|
200
|
+
}
|
|
201
|
+
return renderSwiper(compositions);
|
|
202
|
+
};
|
|
167
203
|
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) {
|
|
168
204
|
var position = _a[0], groupComponents = _a[1];
|
|
169
205
|
return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-contentscarousel-button-group ccb-elements ".concat(position), ref: function (el) {
|
|
@@ -174,43 +210,29 @@ function ContentsCarousel(props) {
|
|
|
174
210
|
delete positionRefs.current[position];
|
|
175
211
|
}
|
|
176
212
|
}, style: __assign(__assign({}, getPositionStyle(position, ccbInset, 'GROUP', 'GROUP', 'GROUP')), { zIndex: 3, position: 'absolute' }) }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-contentscarousel-button-layout-box", style: getComponentGroupLayout(groupComponents, position) }, { children: groupComponents.map(function (component) {
|
|
177
|
-
return renderElements(component, getPositionStyle(position, ccbInset, component.designType, component.size, component.type));
|
|
213
|
+
return renderElements(component, getPositionStyle(position, ccbInset, component.designType, component.size, component.type), orderedCompositions.length);
|
|
178
214
|
}) })) }), position));
|
|
179
215
|
}), (0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsxs)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box ccb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () {
|
|
180
216
|
setIsHovered(true);
|
|
181
|
-
}, onMouseLeave: function () { return setIsHovered(false); }, "data-number-of-columns": displayCounts, "data-number-of-items": displayCounts, "data-column-gap": columnGap, "data-cols": displayCounts, "data-inset-top": parseFloat(ccbInset.top), "data-inset-bottom": parseFloat(ccbInset.bottom) }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), orderedCompositions
|
|
182
|
-
? contentsCarouselHoverStyle === null || contentsCarouselHoverStyle === void 0 ? void 0 : contentsCarouselHoverStyle.customStyle
|
|
183
|
-
: contentsCarouselNormalStyle === null || contentsCarouselNormalStyle === void 0 ? void 0 : contentsCarouselNormalStyle.customStyle, style: {
|
|
184
|
-
display: layout.display,
|
|
185
|
-
flexDirection: layout.flexDirection,
|
|
186
|
-
justifyContent: layout.justifyContent
|
|
187
|
-
} }, { children: (0, jsx_runtime_1.jsx)(ContentsCarouselCore_1.default, __assign({ ref: swiperRef, className: "cb-contentscarousel", allowTouchMove: mode !== 'EDIT' ? true : false, onSwiper: onSwiper, onSlideChangeTransitionEnd: onSlideChangeTransitionEnd, onAutoplayTimeLeft: onAutoplayTimeLeft, slidesPerView: displayCounts, styles: isHovered ? contentsCarouselHoverStyle : contentsCarouselNormalStyle, effect: CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE === null || CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE === void 0 ? void 0 : CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE.toLowerCase(), loop: loop, displayCounts: displayCounts }, { children: (0, createCompositions_1.createCompositions)({
|
|
188
|
-
valueType: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE,
|
|
189
|
-
queryPath: queryPath,
|
|
190
|
-
limit: displayCounts,
|
|
191
|
-
queryData: queryData,
|
|
192
|
-
compositions: orderedCompositions,
|
|
193
|
-
componentBlockCode: types_1.CB_ALL_CODES.CB_CONTENTSCAROUSEL
|
|
194
|
-
}) }), CB_EFFECT_PROP_CONTENTSCAROUSEL_SPEC_TRANSITIONTYPE +
|
|
195
|
-
autoPlayEnabled +
|
|
196
|
-
orderedCompositions.length) })) }))) : ((0, jsx_runtime_1.jsx)(EmptyString, {}))] })) }))] }));
|
|
217
|
+
}, onMouseLeave: function () { return setIsHovered(false); }, "data-number-of-columns": displayCounts, "data-number-of-items": displayCounts, "data-column-gap": columnGap, "data-cols": displayCounts, "data-inset-top": parseFloat(ccbInset.top), "data-inset-bottom": parseFloat(ccbInset.bottom) }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), renderCompositions(orderedCompositions)] })) }))] }));
|
|
197
218
|
}
|
|
198
|
-
function EmptyString() {
|
|
219
|
+
function EmptyString(_a) {
|
|
220
|
+
var stringKey = _a.stringKey;
|
|
199
221
|
var t = (0, react_i18next_1.useTranslation)('translation').t;
|
|
200
|
-
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(
|
|
222
|
+
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(stringKey) });
|
|
201
223
|
}
|
|
202
|
-
var S_EmptyLayer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.
|
|
224
|
+
var S_EmptyLayer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"], ["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"])), function (_a) {
|
|
203
225
|
var theme = _a.theme;
|
|
204
|
-
return theme.desktopFontSize.
|
|
226
|
+
return theme.desktopFontSize.caption1;
|
|
205
227
|
}, function (_a) {
|
|
206
228
|
var theme = _a.theme;
|
|
207
229
|
return theme.fontWeight.bold;
|
|
208
230
|
}, function (_a) {
|
|
209
231
|
var theme = _a.theme;
|
|
210
|
-
return theme.desktopLineHeight.
|
|
232
|
+
return theme.desktopLineHeight.caption1;
|
|
211
233
|
}, function (_a) {
|
|
212
234
|
var theme = _a.theme;
|
|
213
|
-
return theme.spacing.
|
|
235
|
+
return theme.spacing.spacingD;
|
|
214
236
|
});
|
|
215
237
|
var S_Overlay = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-radius: inherit;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n"], ["\n border-radius: inherit;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n"])));
|
|
216
238
|
function getIsBgMedia(isMobile, specs) {
|
|
@@ -154,14 +154,6 @@ function ContentsList(props) {
|
|
|
154
154
|
left: '0px'
|
|
155
155
|
};
|
|
156
156
|
var t = (0, react_i18next_1.useTranslation)('translation').t;
|
|
157
|
-
var renderElements = function (component, positionStyle) {
|
|
158
|
-
switch (component.type) {
|
|
159
|
-
case 'PAGINATION':
|
|
160
|
-
return ((0, jsx_runtime_1.jsx)("div", __assign({ style: positionStyle }, { children: (0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { styles: isHovered ? paginationHoverStyle : paginationNormalStyle, current: currentPage, total: totalPage, onPageClick: handlePageClick, style: positionStyle }) })));
|
|
161
|
-
default:
|
|
162
|
-
return null;
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
157
|
var backgroundRef = (0, react_1.useRef)(null);
|
|
166
158
|
var isMobile = device === 'MOBILE';
|
|
167
159
|
var isBgMedia = getIsBgMedia(isMobile, CB_STYLE_PROP_BGMEDIA);
|
|
@@ -181,6 +173,48 @@ function ContentsList(props) {
|
|
|
181
173
|
if (mode === 'EDIT') {
|
|
182
174
|
style.visibility = 'visible';
|
|
183
175
|
}
|
|
176
|
+
var renderElements = function (component, positionStyle) {
|
|
177
|
+
switch (component.type) {
|
|
178
|
+
case 'PAGINATION':
|
|
179
|
+
return ((0, jsx_runtime_1.jsx)("div", __assign({ style: positionStyle }, { children: (0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { styles: isHovered ? paginationHoverStyle : paginationNormalStyle, current: currentPage, total: totalPage, onPageClick: handlePageClick, style: positionStyle }) })));
|
|
180
|
+
default:
|
|
181
|
+
return null;
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
var renderList = function (compositions) {
|
|
185
|
+
return ((0, jsx_runtime_1.jsx)(S_ContentsListLayout, __assign({ className: "cb-contentslist-layout-box", ref: layoutRef, style: {
|
|
186
|
+
display: layout.display,
|
|
187
|
+
flexDirection: layout.flexDirection,
|
|
188
|
+
justifyContent: layout.justifyContent
|
|
189
|
+
} }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListWrapper, __assign({ className: "cb-contentslist-wrapper", ccbInset: ccbInset, contentPropCss: contentPropCss, stylePropCss: isHovered ? hoverStylePropCss : stylePropCss,
|
|
190
|
+
// NOTE: 위 CSS 프롭과 정리
|
|
191
|
+
style: { gridTemplateRows: "repeat(".concat(numberOfRows, ", 1fr)") } }, { children: (0, createCompositions_1.createCompositions)({
|
|
192
|
+
valueType: CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE,
|
|
193
|
+
queryPath: queryPath,
|
|
194
|
+
limit: displayCounts,
|
|
195
|
+
queryData: queryData,
|
|
196
|
+
compositions: compositions,
|
|
197
|
+
componentBlockCode: types_1.CB_ALL_CODES.CB_LIST
|
|
198
|
+
}).slice(startIndex, endIndex + 1) })) })));
|
|
199
|
+
};
|
|
200
|
+
var renderCompositions = function (compositions) {
|
|
201
|
+
// 직접 연결
|
|
202
|
+
if (CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE === 'VALUE') {
|
|
203
|
+
if (!compositions.length)
|
|
204
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_9806" });
|
|
205
|
+
return renderList(compositions);
|
|
206
|
+
}
|
|
207
|
+
// 데이터 연결
|
|
208
|
+
if (queryPath === 'NONE' || !queryPath || !queryData) {
|
|
209
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10477" }, "no-query");
|
|
210
|
+
}
|
|
211
|
+
var queryDataValue = queryData[queryPath];
|
|
212
|
+
// 쿼리 데이터와 키가 있으나, 쿼리 데이터에 결과가 빈 경우
|
|
213
|
+
if (!(queryDataValue === null || queryDataValue === void 0 ? void 0 : queryDataValue.length)) {
|
|
214
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10478" }, "empty-item");
|
|
215
|
+
}
|
|
216
|
+
return renderList(compositions);
|
|
217
|
+
};
|
|
184
218
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEditModeAndHidden && (0, jsx_runtime_1.jsx)(S_HiddenCover_1.S_HiddenCover, {}), isEditModeAndHeightFitContent && ((0, jsx_runtime_1.jsx)(S_HeightFitContentCover_1.S_HeightFitContentCover, { className: "height-fit-content-cover", bottomText: t('str_10106') })), Object.entries(componentGroups).map(function (_a) {
|
|
185
219
|
var position = _a[0], groupComponents = _a[1];
|
|
186
220
|
return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-contentslist-button-group ccb-elements", ref: function (el) {
|
|
@@ -193,20 +227,7 @@ function ContentsList(props) {
|
|
|
193
227
|
}, style: __assign(__assign({}, getPositionStyle(position, ccbInset, 'GROUP', 'GROUP', 'GROUP')), { zIndex: 3, position: 'absolute' }) }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-contentslist-button-layout-box", style: getComponentGroupLayout(groupComponents, position) }, { children: groupComponents.map(function (component) {
|
|
194
228
|
return renderElements(component, getPositionStyle(position, ccbInset, component.designType, component.size, component.type));
|
|
195
229
|
}) })) }), position));
|
|
196
|
-
}), (0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsxs)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ id: "contentslist-box", className: "cb-layout-box ccb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, "data-number-of-items": CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length, "data-number-of-columns": Math.min(numberOfColumns, CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length), "data-row-gap": rowGap, "data-column-gap": columnGap, "data-cols": Math.min(numberOfColumns, CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length), "data-min-width": listMinWidth, "data-min-height": listMinHeight, "data-inset-top": parseFloat(ccbInset.top), "data-inset-bottom": parseFloat(ccbInset.bottom) }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), orderedCompositions
|
|
197
|
-
display: layout.display,
|
|
198
|
-
flexDirection: layout.flexDirection,
|
|
199
|
-
justifyContent: layout.justifyContent
|
|
200
|
-
} }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListWrapper, __assign({ className: "cb-contentslist-wrapper", ccbInset: ccbInset, contentPropCss: contentPropCss, stylePropCss: isHovered ? hoverStylePropCss : stylePropCss,
|
|
201
|
-
// NOTE: 위 CSS 프롭과 정리
|
|
202
|
-
style: { gridTemplateRows: "repeat(".concat(numberOfRows, ", 1fr)") } }, { children: (0, createCompositions_1.createCompositions)({
|
|
203
|
-
valueType: CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE,
|
|
204
|
-
queryPath: queryPath,
|
|
205
|
-
limit: displayCounts,
|
|
206
|
-
queryData: queryData,
|
|
207
|
-
compositions: orderedCompositions,
|
|
208
|
-
componentBlockCode: types_1.CB_ALL_CODES.CB_LIST
|
|
209
|
-
}).slice(startIndex, endIndex + 1) })) }))) : ((0, jsx_runtime_1.jsx)(EmptyString, {}))] })) }))] }));
|
|
230
|
+
}), (0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsxs)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ id: "contentslist-box", className: "cb-layout-box ccb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, "data-number-of-items": CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length, "data-number-of-columns": Math.min(numberOfColumns, CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length), "data-row-gap": rowGap, "data-column-gap": columnGap, "data-cols": Math.min(numberOfColumns, CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS.length), "data-min-width": listMinWidth, "data-min-height": listMinHeight, "data-inset-top": parseFloat(ccbInset.top), "data-inset-bottom": parseFloat(ccbInset.bottom) }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), renderList(orderedCompositions)] })) }))] }));
|
|
210
231
|
}
|
|
211
232
|
function getIsBgMedia(isMobile, specs) {
|
|
212
233
|
if (!specs) {
|
|
@@ -292,22 +313,23 @@ function getCompositionMinValue(composition, device) {
|
|
|
292
313
|
};
|
|
293
314
|
}
|
|
294
315
|
}
|
|
295
|
-
function EmptyString() {
|
|
316
|
+
function EmptyString(_a) {
|
|
317
|
+
var stringKey = _a.stringKey;
|
|
296
318
|
var t = (0, react_i18next_1.useTranslation)('translation').t;
|
|
297
|
-
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(
|
|
319
|
+
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(stringKey) });
|
|
298
320
|
}
|
|
299
|
-
var S_EmptyLayer = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.
|
|
321
|
+
var S_EmptyLayer = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"], ["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"])), function (_a) {
|
|
300
322
|
var theme = _a.theme;
|
|
301
|
-
return theme.desktopFontSize.
|
|
323
|
+
return theme.desktopFontSize.caption1;
|
|
302
324
|
}, function (_a) {
|
|
303
325
|
var theme = _a.theme;
|
|
304
326
|
return theme.fontWeight.bold;
|
|
305
327
|
}, function (_a) {
|
|
306
328
|
var theme = _a.theme;
|
|
307
|
-
return theme.desktopLineHeight.
|
|
329
|
+
return theme.desktopLineHeight.caption1;
|
|
308
330
|
}, function (_a) {
|
|
309
331
|
var theme = _a.theme;
|
|
310
|
-
return theme.spacing.
|
|
332
|
+
return theme.spacing.spacingD;
|
|
311
333
|
});
|
|
312
334
|
exports.default = ContentsList;
|
|
313
335
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -127,21 +127,6 @@ function SlideBanner(props) {
|
|
|
127
127
|
}
|
|
128
128
|
].filter(function (component) { return component !== undefined; });
|
|
129
129
|
var _l = (0, useFlexGridLayout_1.useFlexGridLayout)({ components: components }), layoutRef = _l.layoutRef, positionRefs = _l.positionRefs, ccbInset = _l.ccbInset, componentGroups = _l.componentGroups, getPositionStyle = _l.getPositionStyle, getComponentGroupLayout = _l.getComponentGroupLayout;
|
|
130
|
-
var renderElements = function (component, positionStyle) {
|
|
131
|
-
var _a;
|
|
132
|
-
switch (component.type) {
|
|
133
|
-
case 'PREV':
|
|
134
|
-
return ((0, jsx_runtime_1.jsx)(CustomNavigationPrevBtn_1.CustomNavigationPrevBtn, { isDisabled: loop ? false : isBeginning, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickPrevBtn, style: __assign(__assign({}, positionStyle), { visibility: mode === 'EDIT' ? 'visible' : isHovered ? 'visible' : 'hidden' }) }));
|
|
135
|
-
case 'NEXT':
|
|
136
|
-
return ((0, jsx_runtime_1.jsx)(CustomNavigationNextBtn_1.CustomNavigationNextBtn, { isDisabled: loop ? false : isEnd, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickNextBtn, style: __assign(__assign({}, positionStyle), { visibility: mode === 'EDIT' ? 'visible' : isHovered ? 'visible' : 'hidden' }) }));
|
|
137
|
-
case 'PAGINATION':
|
|
138
|
-
return ((0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { styles: isHovered ? customPaginationHoverStyle : customPaginationNormalStyle, current: currentSlide, isPrevBtnDisabled: loop ? false : isBeginning, isNextBtnDisabled: loop ? false : isEnd, total: ((_a = swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slides.length) || 0, onBulletClick: onClickBullet, onPrevBtnClick: onClickPrevBtn, onNextBtnClick: onClickNextBtn, style: positionStyle }));
|
|
139
|
-
case 'PROGRESSBAR':
|
|
140
|
-
return ((0, jsx_runtime_1.jsx)(CustomProgressbar_1.CustomProgressbar, { slidesLength: orderedCompositions.length, progressRef: progressRef, leftTimeMsRef: leftTimeMsRef, styles: isHovered ? customProgressbarHoverStyle : customProgressbarNormalStyle }));
|
|
141
|
-
default:
|
|
142
|
-
return null;
|
|
143
|
-
}
|
|
144
|
-
};
|
|
145
130
|
var backgroundRef = (0, react_1.useRef)(null);
|
|
146
131
|
var isMobile = device === 'MOBILE';
|
|
147
132
|
var isBgMedia = getIsBgMedia(isMobile, CB_STYLE_PROP_BGMEDIA);
|
|
@@ -158,6 +143,49 @@ function SlideBanner(props) {
|
|
|
158
143
|
if (mode === 'EDIT') {
|
|
159
144
|
style.visibility = 'visible';
|
|
160
145
|
}
|
|
146
|
+
var renderElements = function (component, positionStyle, slidesLength) {
|
|
147
|
+
var _a;
|
|
148
|
+
switch (component.type) {
|
|
149
|
+
case 'PREV':
|
|
150
|
+
return ((0, jsx_runtime_1.jsx)(CustomNavigationPrevBtn_1.CustomNavigationPrevBtn, { isDisabled: loop ? false : isBeginning, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickPrevBtn, style: __assign(__assign({}, positionStyle), { visibility: mode === 'EDIT' ? 'visible' : isHovered ? 'visible' : 'hidden' }) }));
|
|
151
|
+
case 'NEXT':
|
|
152
|
+
return ((0, jsx_runtime_1.jsx)(CustomNavigationNextBtn_1.CustomNavigationNextBtn, { isDisabled: loop ? false : isEnd, styles: customNavigationNormalStyle, hoverStyles: customNavigationHoverStyle, onClick: onClickNextBtn, style: __assign(__assign({}, positionStyle), { visibility: mode === 'EDIT' ? 'visible' : isHovered ? 'visible' : 'hidden' }) }));
|
|
153
|
+
case 'PAGINATION':
|
|
154
|
+
return ((0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { styles: isHovered ? customPaginationHoverStyle : customPaginationNormalStyle, current: currentSlide, isPrevBtnDisabled: loop ? false : isBeginning, isNextBtnDisabled: loop ? false : isEnd, total: ((_a = swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slides.length) || 0, onBulletClick: onClickBullet, onPrevBtnClick: onClickPrevBtn, onNextBtnClick: onClickNextBtn, style: positionStyle }));
|
|
155
|
+
case 'PROGRESSBAR':
|
|
156
|
+
return ((0, jsx_runtime_1.jsx)(CustomProgressbar_1.CustomProgressbar, { slidesLength: slidesLength, progressRef: progressRef, leftTimeMsRef: leftTimeMsRef, styles: isHovered ? customProgressbarHoverStyle : customProgressbarNormalStyle }));
|
|
157
|
+
default:
|
|
158
|
+
return null;
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
var renderSwiper = function (compositions) {
|
|
162
|
+
return ((0, jsx_runtime_1.jsx)(S_SwiperLayout, __assign({ className: "cb-slidebanner-layout-box", ref: layoutRef }, { children: (0, jsx_runtime_1.jsx)(S_SwiperWrapper, __assign({ className: "cb-slidebanner-wrapper", ccbInset: ccbInset, customStyle: isHovered ? slideBannerHoverStyle === null || slideBannerHoverStyle === void 0 ? void 0 : slideBannerHoverStyle.customStyle : slideBannerNormalStyle === null || slideBannerNormalStyle === void 0 ? void 0 : slideBannerNormalStyle.customStyle }, { children: (0, jsx_runtime_1.jsx)(SlideBannerCore_1.default, __assign({ ref: swiperRef, className: "cb-slidebanner", onSwiper: onSwiper, onSlideChangeTransitionEnd: onSlideChangeTransitionEnd, onAutoplayTimeLeft: onAutoplayTimeLeft, slidesPerView: 1, styles: isHovered ? slideBannerHoverStyle : slideBannerNormalStyle, effect: CB_EFFECT_PROP_SLIDEBANNER_SPEC_TRANSITIONTYPE.toLowerCase() }, { children: (0, createCompositions_1.createCompositions)({
|
|
163
|
+
valueType: CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE,
|
|
164
|
+
queryPath: queryPath,
|
|
165
|
+
limit: CB_CONTENT_PROP_SLIDEBANNER_SPEC_ITEMCOUNTS,
|
|
166
|
+
queryData: queryData,
|
|
167
|
+
compositions: compositions,
|
|
168
|
+
componentBlockCode: types_1.CB_ALL_CODES.CB_SLIDEBANNER
|
|
169
|
+
}) }), CB_EFFECT_PROP_SLIDEBANNER_SPEC_TRANSITIONTYPE + autoPlayEnabled + compositions.length) })) })));
|
|
170
|
+
};
|
|
171
|
+
var renderCompositions = function (compositions) {
|
|
172
|
+
// 직접 연결
|
|
173
|
+
if (CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE === 'VALUE') {
|
|
174
|
+
if (!compositions.length)
|
|
175
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_9806" });
|
|
176
|
+
return renderSwiper(compositions);
|
|
177
|
+
}
|
|
178
|
+
// 데이터 연결
|
|
179
|
+
if (queryPath === 'NONE' || !queryPath || !queryData) {
|
|
180
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10477" }, "no-query");
|
|
181
|
+
}
|
|
182
|
+
var queryDataValue = queryData[queryPath];
|
|
183
|
+
// 쿼리 데이터와 키가 있으나, 쿼리 데이터에 결과가 빈 경우
|
|
184
|
+
if (!(queryDataValue === null || queryDataValue === void 0 ? void 0 : queryDataValue.length)) {
|
|
185
|
+
return (0, jsx_runtime_1.jsx)(EmptyString, { stringKey: "str_10478" }, "empty-item");
|
|
186
|
+
}
|
|
187
|
+
return renderSwiper(compositions);
|
|
188
|
+
};
|
|
161
189
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEditModeAndHidden && (0, jsx_runtime_1.jsx)(S_HiddenCover_1.S_HiddenCover, {}), (0, jsx_runtime_1.jsxs)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: [Object.entries(componentGroups).map(function (_a) {
|
|
162
190
|
var position = _a[0], groupComponents = _a[1];
|
|
163
191
|
return ((0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-slidebanner-button-group ccb-elements ".concat(position), ref: function (el) {
|
|
@@ -168,37 +196,27 @@ function SlideBanner(props) {
|
|
|
168
196
|
delete positionRefs.current[position];
|
|
169
197
|
}
|
|
170
198
|
}, style: __assign(__assign({}, getPositionStyle(position, ccbInset, 'GROUP', 'GROUP', 'GROUP')), { zIndex: 3, position: 'absolute' }) }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: "cb-slidebanner-button-layout-box", style: getComponentGroupLayout(groupComponents, position) }, { children: groupComponents.map(function (component) {
|
|
171
|
-
return renderElements(component, getPositionStyle(position, ccbInset, component.designType, component.size, component.type));
|
|
199
|
+
return renderElements(component, getPositionStyle(position, ccbInset, component.designType, component.size, component.type), orderedCompositions.length);
|
|
172
200
|
}) })) }), position));
|
|
173
|
-
}), (0, jsx_runtime_1.jsxs)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box ccb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), orderedCompositions
|
|
174
|
-
? slideBannerHoverStyle === null || slideBannerHoverStyle === void 0 ? void 0 : slideBannerHoverStyle.customStyle
|
|
175
|
-
: slideBannerNormalStyle === null || slideBannerNormalStyle === void 0 ? void 0 : slideBannerNormalStyle.customStyle }, { children: (0, jsx_runtime_1.jsx)(SlideBannerCore_1.default, __assign({ ref: swiperRef, className: "cb-slidebanner", onSwiper: onSwiper, onSlideChangeTransitionEnd: onSlideChangeTransitionEnd, onAutoplayTimeLeft: onAutoplayTimeLeft, slidesPerView: 1, styles: isHovered ? slideBannerHoverStyle : slideBannerNormalStyle, effect: CB_EFFECT_PROP_SLIDEBANNER_SPEC_TRANSITIONTYPE.toLowerCase() }, { children: (0, createCompositions_1.createCompositions)({
|
|
176
|
-
valueType: CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE,
|
|
177
|
-
queryPath: queryPath,
|
|
178
|
-
limit: CB_CONTENT_PROP_SLIDEBANNER_SPEC_ITEMCOUNTS,
|
|
179
|
-
queryData: queryData,
|
|
180
|
-
compositions: orderedCompositions,
|
|
181
|
-
componentBlockCode: types_1.CB_ALL_CODES.CB_SLIDEBANNER
|
|
182
|
-
}) }), CB_EFFECT_PROP_SLIDEBANNER_SPEC_TRANSITIONTYPE +
|
|
183
|
-
autoPlayEnabled +
|
|
184
|
-
orderedCompositions.length) })) }))) : ((0, jsx_runtime_1.jsx)(EmptyString, {}))] }))] }))] }));
|
|
201
|
+
}), (0, jsx_runtime_1.jsxs)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box ccb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device }, { children: [(0, jsx_runtime_1.jsx)(S_CustomBackgroundWrapper, __assign({ ref: backgroundRef, style: __assign(__assign({}, effect), { background: style.background }) }, { children: isBgMedia && CB_STYLE_PROP_BGMEDIA && ((0, jsx_runtime_1.jsx)(CustomSectionBackgroundMedia_1.CustomSectionBackgroundMedia, { specs: CB_STYLE_PROP_BGMEDIA, componentStyle: style, playerId: index, mediaType: mediaType || 'NONE', device: isMobile ? 'MOBILE' : 'DESKTOP', backgroundRef: backgroundRef })) })), (0, jsx_runtime_1.jsx)(S_Overlay, { style: overlayStyle }), renderCompositions(orderedCompositions)] }))] }))] }));
|
|
185
202
|
}
|
|
186
|
-
function EmptyString() {
|
|
203
|
+
function EmptyString(_a) {
|
|
204
|
+
var stringKey = _a.stringKey;
|
|
187
205
|
var t = (0, react_i18next_1.useTranslation)('translation').t;
|
|
188
|
-
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(
|
|
206
|
+
return (0, jsx_runtime_1.jsx)(S_EmptyLayer, { children: t(stringKey) });
|
|
189
207
|
}
|
|
190
|
-
var S_EmptyLayer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.
|
|
208
|
+
var S_EmptyLayer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"], ["\n background-color: rgba(0, 0, 0, 0.5);\n color: white;\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n justify-content: center;\n line-height: ", ";\n margin: auto;\n padding: ", ";\n text-align: center;\n width: 100%;\n word-break: keep-all;\n"])), function (_a) {
|
|
191
209
|
var theme = _a.theme;
|
|
192
|
-
return theme.desktopFontSize.
|
|
210
|
+
return theme.desktopFontSize.caption1;
|
|
193
211
|
}, function (_a) {
|
|
194
212
|
var theme = _a.theme;
|
|
195
213
|
return theme.fontWeight.bold;
|
|
196
214
|
}, function (_a) {
|
|
197
215
|
var theme = _a.theme;
|
|
198
|
-
return theme.desktopLineHeight.
|
|
216
|
+
return theme.desktopLineHeight.caption1;
|
|
199
217
|
}, function (_a) {
|
|
200
218
|
var theme = _a.theme;
|
|
201
|
-
return theme.spacing.
|
|
219
|
+
return theme.spacing.spacingD;
|
|
202
220
|
});
|
|
203
221
|
var S_Overlay = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n border-radius: inherit;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n"], ["\n border-radius: inherit;\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n"])));
|
|
204
222
|
var S_CustomBackgroundWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n align-items: center;\n border-radius: inherit;\n bottom: 0;\n display: flex;\n justify-content: center;\n left: 0;\n overflow: hidden;\n position: absolute;\n right: 0;\n top: 0;\n z-index: -2;\n"], ["\n align-items: center;\n border-radius: inherit;\n bottom: 0;\n display: flex;\n justify-content: center;\n left: 0;\n overflow: hidden;\n position: absolute;\n right: 0;\n top: 0;\n z-index: -2;\n"])));
|