pds-dev-kit-web-test 2.5.347 → 2.5.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/CompositionRenderer/{CompositionRenderer.js → createCompositions.js} +7 -2
- package/dist/src/sub/DynamicLayout/mock_contentsCarousel.js +1 -1
- package/dist/src/sub/DynamicLayout/mock_slideBanner.js +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Button/Button.js +17 -2
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +4 -6
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +16 -10
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Image/Image.js +31 -3
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +27 -20
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +15 -2
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/types.d.ts +6 -2
- package/package.json +1 -1
- package/dist/src/sub/DynamicLayout/CompositionRenderer/connectedDataHelpers.d.ts +0 -9
- package/dist/src/sub/DynamicLayout/CompositionRenderer/connectedDataHelpers.js +0 -29
- /package/dist/src/sub/DynamicLayout/CompositionRenderer/{CompositionRenderer.d.ts → createCompositions.d.ts} +0 -0
@@ -19,16 +19,21 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
19
|
require("react");
|
20
20
|
var compositionQueryContext_1 = require("../compositionQueryContext");
|
21
21
|
var Composition_1 = __importDefault(require("./Composition"));
|
22
|
-
var connectedDataHelpers_1 = require("./connectedDataHelpers");
|
23
22
|
function createCompositions(_a) {
|
24
23
|
var valueType = _a.valueType, queryPath = _a.queryPath, queryData = _a.queryData, compositions = _a.compositions;
|
25
24
|
var isQueryDataConnected = valueType === 'DATA';
|
26
25
|
if (!isQueryDataConnected || !queryPath || !queryData) {
|
27
26
|
return compositions.map(function (composition) { return (0, jsx_runtime_1.jsx)(Composition_1.default, __assign({}, composition), composition.id); });
|
28
27
|
}
|
29
|
-
var parsedQueryPath = (
|
28
|
+
var parsedQueryPath = convertSlashToUnderscores(queryPath);
|
30
29
|
var queryDataValue = queryData[parsedQueryPath];
|
31
30
|
var queryComposition = compositions.find(function (composition) { return composition.isDefault; });
|
31
|
+
if (!queryDataValue) {
|
32
|
+
return [(0, jsx_runtime_1.jsxs)("div", { children: ["NOT FOUND QUERYDATA: ", parsedQueryPath] }, "not-found")];
|
33
|
+
}
|
32
34
|
return queryDataValue.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)) }), index)); });
|
33
35
|
}
|
34
36
|
exports.createCompositions = createCompositions;
|
37
|
+
function convertSlashToUnderscores(queryPath) {
|
38
|
+
return queryPath.replace(/\//g, '_');
|
39
|
+
}
|
@@ -101,7 +101,7 @@ exports.SAMPLE_CONTENTSCAROUSEL_CB = {
|
|
101
101
|
'CB_STYLE_PROP_CONTENTSCAROUSEL_SPEC_INFINITESCROLL:MOBILE:HOVER': true
|
102
102
|
},
|
103
103
|
CB_CONTENT_PROP_CONTENTSCAROUSEL: {
|
104
|
-
|
104
|
+
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE: 'DATA',
|
105
105
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA: 'PAPPQUERY/C00007/VOD/CLASS/TOTAL',
|
106
106
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DATASORTING: '최신순',
|
107
107
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_OFFSET: 1,
|
@@ -93,7 +93,7 @@ exports.SAMPLE_SLIDEBANNER_CB = {
|
|
93
93
|
'CB_STYLE_PROP_SLIDEBANNER_SPEC_INFINITESCROLL:MOBILE:HOVER': false
|
94
94
|
},
|
95
95
|
CB_CONTENT_PROP_SLIDEBANNER: {
|
96
|
-
|
96
|
+
CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE: 'DATA',
|
97
97
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA: '아티클:포스트',
|
98
98
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_DATASORTING: '최신순',
|
99
99
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_OFFSET: 1,
|
@@ -29,6 +29,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
29
29
|
/* eslint-disable react/destructuring-assignment */
|
30
30
|
var react_1 = require("react");
|
31
31
|
var DynamicLayout_1 = require("../../../../../../../DynamicLayout");
|
32
|
+
var compositionQueryContext_1 = require("../../../../../../../DynamicLayout/compositionQueryContext");
|
32
33
|
var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
|
33
34
|
var useGoogleFonts_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks/useGoogleFonts");
|
34
35
|
var newUtils_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/newUtils");
|
@@ -40,9 +41,23 @@ var S_HiddenCover_1 = require("../components/S_HiddenCover");
|
|
40
41
|
var useCLINK_1 = __importDefault(require("../hooks/useCLINK"));
|
41
42
|
function Button(props) {
|
42
43
|
var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
|
43
|
-
var
|
44
|
+
var queryContext = (0, compositionQueryContext_1.useCCBQueryPath)();
|
45
|
+
var index = props.index, CB_STYLE_PROP_COLOR = props.CB_STYLE_PROP_COLOR, _b = props.CB_CONTENT_PROP_CLINK, CB_CONTENT_PROP_CLINK_SPEC_SRC = _b.CB_CONTENT_PROP_CLINK_SPEC_SRC, CB_CONTENT_PROP_CLINK_SPEC_TYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_TYPE, CB_CONTENT_PROP_CLINK_SPEC_NEWTAB = _b.CB_CONTENT_PROP_CLINK_SPEC_NEWTAB, CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC = _b.CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC, CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE, CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA = _b.CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, CB_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
|
46
|
+
var cLinkValue = function () {
|
47
|
+
if (CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE === 'DATA') {
|
48
|
+
if (!(queryContext === null || queryContext === void 0 ? void 0 : queryContext.queryData)) {
|
49
|
+
return "ERROR: QueryData NOT FOUND";
|
50
|
+
}
|
51
|
+
var link = queryContext.queryData[CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA];
|
52
|
+
if (!link) {
|
53
|
+
return "ERROR: ".concat(CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, " NOT found from queryData");
|
54
|
+
}
|
55
|
+
return link;
|
56
|
+
}
|
57
|
+
return CB_CONTENT_PROP_CLINK_SPEC_SRC;
|
58
|
+
};
|
44
59
|
var _c = (0, useCLINK_1.default)({
|
45
|
-
src:
|
60
|
+
src: cLinkValue(),
|
46
61
|
type: CB_CONTENT_PROP_CLINK_SPEC_TYPE,
|
47
62
|
openNewTab: CB_CONTENT_PROP_CLINK_SPEC_NEWTAB,
|
48
63
|
internalSrc: String(CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC)
|
@@ -23,12 +23,11 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
23
23
|
var react_1 = require("react");
|
24
24
|
require("../../../../../../../DynamicLayout/compositionQueryContext");
|
25
25
|
require("../../../../../../../DynamicLayout/CompositionRenderer/Composition");
|
26
|
-
var
|
26
|
+
var createCompositions_1 = require("../../../../../../../DynamicLayout/CompositionRenderer/createCompositions");
|
27
27
|
var dynamicLayoutContext_1 = require("../../../../../../../DynamicLayout/dynamicLayoutContext");
|
28
28
|
var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
|
29
29
|
var util_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/util");
|
30
30
|
var styled_components_1 = __importDefault(require("styled-components"));
|
31
|
-
require("../../../../../../CompositionRenderer/connectedDataHelpers");
|
32
31
|
var S_CB_AnimationObserverBox_1 = require("../components/S_CB_AnimationObserverBox");
|
33
32
|
var S_CB_BoxWithShadow_1 = require("../components/S_CB_BoxWithShadow");
|
34
33
|
var CustomNavigation_1 = require("./components/CustomNavigation");
|
@@ -40,7 +39,7 @@ function ContentsCarousel(props) {
|
|
40
39
|
var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, mode = _a.mode, queryData = _a.queryData;
|
41
40
|
var index = props.index,
|
42
41
|
// // CONTENT : 캐로셀
|
43
|
-
_b = props.CB_CONTENT_PROP_CONTENTSCAROUSEL, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS,
|
42
|
+
_b = props.CB_CONTENT_PROP_CONTENTSCAROUSEL, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA,
|
44
43
|
// STYLE: 캐로셀
|
45
44
|
CB_STYLE_PROP_CONTENTSCAROUSEL = props.CB_STYLE_PROP_CONTENTSCAROUSEL,
|
46
45
|
// STYLE: 그림자
|
@@ -128,7 +127,6 @@ function ContentsCarousel(props) {
|
|
128
127
|
swiperRef.current.swiper.slideNext();
|
129
128
|
}
|
130
129
|
};
|
131
|
-
var queryComposition = compositions.find(function (composition) { return composition.isDefault; });
|
132
130
|
return ((0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { position: 'relative', overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { position: 'relative', overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsxs)(S_SwiperWrapper, __assign({ customStyle: isHovered
|
133
131
|
? contentsCarouselHoverStyle === null || contentsCarouselHoverStyle === void 0 ? void 0 : contentsCarouselHoverStyle.customStyle
|
134
132
|
: contentsCarouselNormalStyle === null || contentsCarouselNormalStyle === void 0 ? void 0 : contentsCarouselNormalStyle.customStyle }, { children: [(0, jsx_runtime_1.jsx)(ContentsCarouselCore_1.default, __assign({ ref: swiperRef, className: "contents-carousel-core", onSwiper: handleSwiper, onSlideChange: handleSlideChange, onAutoplayTimeLeft: handleAutoplayTimeLeft, slidesPerView: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS, scrollbar: isHovered
|
@@ -139,8 +137,8 @@ function ContentsCarousel(props) {
|
|
139
137
|
? contentsCarouselHoverStyle.spaceBetween
|
140
138
|
: contentsCarouselNormalStyle.spaceBetween, freeMode: isHovered ? contentsCarouselHoverStyle.freeMode : contentsCarouselNormalStyle.freeMode, autoplay: isHovered ? contentsCarouselHoverStyle.autoplay : contentsCarouselNormalStyle.autoplay, useAutoplay: isHovered
|
141
139
|
? contentsCarouselHoverStyle.useAutoplay
|
142
|
-
: contentsCarouselNormalStyle.useAutoplay, loop: isHovered ? contentsCarouselHoverStyle.loop : contentsCarouselNormalStyle.loop }, { children: (0,
|
143
|
-
valueType:
|
140
|
+
: contentsCarouselNormalStyle.useAutoplay, loop: isHovered ? contentsCarouselHoverStyle.loop : contentsCarouselNormalStyle.loop }, { children: (0, createCompositions_1.createCompositions)({
|
141
|
+
valueType: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE,
|
144
142
|
queryPath: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA,
|
145
143
|
queryData: queryData,
|
146
144
|
compositions: compositions
|
@@ -20,7 +20,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
21
21
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
22
22
|
var react_1 = require("react");
|
23
|
-
var
|
23
|
+
var createCompositions_1 = require("../../../../../../../DynamicLayout/CompositionRenderer/createCompositions");
|
24
24
|
var dynamicLayoutContext_1 = require("../../../../../../../DynamicLayout/dynamicLayoutContext");
|
25
25
|
var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
|
26
26
|
var util_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/util");
|
@@ -30,24 +30,25 @@ var S_CB_BoxWithShadow_1 = require("../components/S_CB_BoxWithShadow");
|
|
30
30
|
var CustomPagination_1 = require("./components/CustomPagination");
|
31
31
|
var contentsListUtils_1 = require("./contentsListUtils");
|
32
32
|
function ContentsList(props) {
|
33
|
-
var
|
33
|
+
var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, queryData = _a.queryData;
|
34
34
|
var index = props.index, compositions = props.compositions, CB_CONTENT_PROP_CONTENTSLIST = props.CB_CONTENT_PROP_CONTENTSLIST, CB_STYLE_PROP_CONTENTSLIST = props.CB_STYLE_PROP_CONTENTSLIST, CB_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
|
35
|
-
var
|
36
|
-
var _b = (0, react_1.useState)(
|
35
|
+
var CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE = CB_CONTENT_PROP_CONTENTSLIST.CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE, CB_CONTENT_PROP_CONTENTSLIST_SPEC_CONNECTDATA = CB_CONTENT_PROP_CONTENTSLIST.CB_CONTENT_PROP_CONTENTSLIST_SPEC_CONNECTDATA;
|
36
|
+
var _b = (0, react_1.useState)(false), isHovered = _b[0], setIsHovered = _b[1];
|
37
|
+
var _c = (0, react_1.useState)(1), currentPage = _c[0], setCurrentPage = _c[1];
|
37
38
|
var itemCounts = CB_CONTENT_PROP_CONTENTSLIST.CB_CONTENT_PROP_CONTENTSLIST_SPEC_ITEMCOUNTS;
|
38
39
|
var totalPage = Math.ceil(compositions.length / itemCounts);
|
39
|
-
var
|
40
|
+
var _d = (0, util_1.parseProperties)(props, device), style = _d.style, hoverStyle = _d.hoverStyle, layout = _d.layout, effect = _d.effect;
|
40
41
|
var contentPropCss = (0, contentsListUtils_1.parseGridContentProp)({
|
41
42
|
props: CB_CONTENT_PROP_CONTENTSLIST
|
42
43
|
}).contentPropCss;
|
43
|
-
var
|
44
|
+
var _e = (0, contentsListUtils_1.parseGridStyleProp)({
|
44
45
|
props: CB_STYLE_PROP_CONTENTSLIST,
|
45
46
|
device: device
|
46
|
-
}), stylePropCss =
|
47
|
-
var
|
47
|
+
}), stylePropCss = _e.stylePropCss, hoverStylePropCss = _e.hoverStylePropCss;
|
48
|
+
var _f = (0, contentsListUtils_1.parsePaginationStyleProp)({
|
48
49
|
props: CB_STYLE_PROP_CONTENTSLIST,
|
49
50
|
device: device
|
50
|
-
}), paginationNormalStyle =
|
51
|
+
}), paginationNormalStyle = _f.normalStyle, paginationHoverStyle = _f.hoverStyle;
|
51
52
|
var cbRef = (0, react_1.useRef)(null);
|
52
53
|
var entry = (0, hooks_1.useIntersectionObserver)(cbRef, { threshold: 0.2, freezeOnceVisible: false }, [
|
53
54
|
index
|
@@ -78,7 +79,12 @@ function ContentsList(props) {
|
|
78
79
|
};
|
79
80
|
var startIndex = (currentPage - 1) * itemCounts;
|
80
81
|
var endIndex = startIndex + itemCounts;
|
81
|
-
return ((0, jsx_runtime_1.jsxs)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: [(0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ id: "contentslist-box", className: "cb-layout-box", normalStyle: __assign(__assign(__assign({}, style), layout), effectCssProperties), hoverStyle: hoverStyle, cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListWrapper, __assign({ id: "contentslist-wrapper" }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListGrid, __assign({ id: "contentslist-grid", contentPropCss: contentPropCss, stylePropCss: isHovered ? hoverStylePropCss : stylePropCss }, { children:
|
82
|
+
return ((0, jsx_runtime_1.jsxs)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: [(0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ id: "contentslist-box", className: "cb-layout-box", normalStyle: __assign(__assign(__assign({}, style), layout), effectCssProperties), hoverStyle: hoverStyle, cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListWrapper, __assign({ id: "contentslist-wrapper" }, { children: (0, jsx_runtime_1.jsx)(S_ContentsListGrid, __assign({ id: "contentslist-grid", contentPropCss: contentPropCss, stylePropCss: isHovered ? hoverStylePropCss : stylePropCss }, { children: (0, createCompositions_1.createCompositions)({
|
83
|
+
valueType: CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE,
|
84
|
+
queryPath: CB_CONTENT_PROP_CONTENTSLIST_SPEC_CONNECTDATA,
|
85
|
+
queryData: queryData,
|
86
|
+
compositions: compositions
|
87
|
+
}).slice(startIndex, endIndex) })) })) })), (0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { effectVisibleStyle: effectVisibleStyle, type: isHovered ? paginationHoverStyle.type : paginationNormalStyle.type, offset: isHovered ? paginationHoverStyle.offset : paginationNormalStyle.offset, current: currentPage, total: totalPage, size: isHovered ? paginationHoverStyle.size : paginationNormalStyle.size, onBulletClick: handleBulletClick })] })));
|
82
88
|
}
|
83
89
|
var S_ContentsListWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: 100%;\n position: relative;\n width: 100%;\n"], ["\n height: 100%;\n position: relative;\n width: 100%;\n"])));
|
84
90
|
var S_ContentsListGrid = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: grid;\n height: 100%;\n\n ", "\n ", "\n"], ["\n display: grid;\n height: 100%;\n\n ", "\n ", "\n"])), function (_a) {
|
@@ -44,6 +44,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
44
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
45
45
|
var react_1 = require("react");
|
46
46
|
var DynamicLayout_1 = require("../../../../../../../DynamicLayout");
|
47
|
+
var compositionQueryContext_1 = require("../../../../../../../DynamicLayout/compositionQueryContext");
|
47
48
|
var styled_components_1 = __importStar(require("styled-components"));
|
48
49
|
var hooks_1 = require("../../../../hooks");
|
49
50
|
var util_1 = require("../../../../util");
|
@@ -53,9 +54,23 @@ var S_HiddenCover_1 = require("../components/S_HiddenCover");
|
|
53
54
|
var useCLINK_1 = __importDefault(require("../hooks/useCLINK"));
|
54
55
|
function Image(props) {
|
55
56
|
var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
|
56
|
-
var
|
57
|
+
var queryContext = (0, compositionQueryContext_1.useCCBQueryPath)();
|
58
|
+
var index = props.index, CB_CONTENT_PROP_IMAGE = props.CB_CONTENT_PROP_IMAGE, _b = props.CB_CONTENT_PROP_CLINK, CB_CONTENT_PROP_CLINK_SPEC_SRC = _b.CB_CONTENT_PROP_CLINK_SPEC_SRC, CB_CONTENT_PROP_CLINK_SPEC_TYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_TYPE, CB_CONTENT_PROP_CLINK_SPEC_NEWTAB = _b.CB_CONTENT_PROP_CLINK_SPEC_NEWTAB, CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC = _b.CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC, CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE, CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA = _b.CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, CB_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
|
59
|
+
var cLinkValue = function () {
|
60
|
+
if (CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE === 'DATA') {
|
61
|
+
if (!(queryContext === null || queryContext === void 0 ? void 0 : queryContext.queryData)) {
|
62
|
+
return "ERROR: QueryData NOT FOUND";
|
63
|
+
}
|
64
|
+
var link = queryContext.queryData[CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA];
|
65
|
+
if (!link) {
|
66
|
+
return "ERROR: ".concat(CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, " NOT found from queryData");
|
67
|
+
}
|
68
|
+
return link;
|
69
|
+
}
|
70
|
+
return CB_CONTENT_PROP_CLINK_SPEC_SRC;
|
71
|
+
};
|
57
72
|
var _c = (0, useCLINK_1.default)({
|
58
|
-
src:
|
73
|
+
src: cLinkValue(),
|
59
74
|
type: CB_CONTENT_PROP_CLINK_SPEC_TYPE,
|
60
75
|
openNewTab: CB_CONTENT_PROP_CLINK_SPEC_NEWTAB,
|
61
76
|
internalSrc: String(CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC)
|
@@ -74,7 +89,20 @@ function Image(props) {
|
|
74
89
|
: CB_EFFECT_PROP_ENTANIM['CB_EFFECT_PROP_ENTANIM_SPEC_TYPE:MOBILE'] === 'NONE';
|
75
90
|
var hasEffect = !isNoneEffectType;
|
76
91
|
var effectVisibleStyle = hasEffect ? { opacity: isVisible ? 1 : 0 } : {};
|
77
|
-
|
92
|
+
var imgSrc = function () {
|
93
|
+
var isDataConnected = CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_VALUETYPE === 'DATA';
|
94
|
+
if (!isDataConnected) {
|
95
|
+
return CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_SELECTOR;
|
96
|
+
}
|
97
|
+
if (!(queryContext === null || queryContext === void 0 ? void 0 : queryContext.queryData)) {
|
98
|
+
return 'ERROR: No query data found';
|
99
|
+
}
|
100
|
+
if (!queryContext.queryData[CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_CONNECTDATA]) {
|
101
|
+
return "ERROR: ".concat(CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_CONNECTDATA, " NOT found in query data");
|
102
|
+
}
|
103
|
+
return queryContext.queryData[CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_CONNECTDATA];
|
104
|
+
};
|
105
|
+
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.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_ImageWrapper, __assign({ style: __assign({}, effectCssProperties) }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign({}, layout), { overflow: 'hidden' }), boxStyle.normal), { cursor: CLINKCursor }), hoverStyle: __assign({}, boxStyle.hover), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onClick: onClickCLINK }, { children: (0, jsx_runtime_1.jsx)(S_Image, { src: imgSrc(), normalStyle: __assign({}, imgStyle.normal), hoverStyle: __assign({}, imgStyle.hover) }) })) })) }))] }));
|
78
106
|
}
|
79
107
|
function parseImageCBStyle(style, hoverStyle, mode) {
|
80
108
|
var boxStyle = {
|
@@ -20,7 +20,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
21
21
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
22
22
|
var react_1 = require("react");
|
23
|
-
var
|
23
|
+
var createCompositions_1 = require("../../../../../../../DynamicLayout/CompositionRenderer/createCompositions");
|
24
24
|
var dynamicLayoutContext_1 = require("../../../../../../../DynamicLayout/dynamicLayoutContext");
|
25
25
|
var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
|
26
26
|
var util_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/util");
|
@@ -33,8 +33,10 @@ var CustomProgressbar_1 = require("./components/CustomProgressbar");
|
|
33
33
|
var SlideBannerCore_1 = __importDefault(require("./SlideBannerCore"));
|
34
34
|
var slideBannerUtils_1 = require("./slideBannerUtils");
|
35
35
|
function SlideBanner(props) {
|
36
|
-
var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
|
37
|
-
var index = props.index,
|
36
|
+
var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, mode = _a.mode, queryData = _a.queryData;
|
37
|
+
var index = props.index,
|
38
|
+
// CONTENT : 슬라이드배너
|
39
|
+
_b = props.CB_CONTENT_PROP_SLIDEBANNER, CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS = _b.CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS, CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE = _b.CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE, CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA = _b.CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA,
|
38
40
|
// STYLE: 슬라이드배너
|
39
41
|
CB_STYLE_PROP_SLIDEBANNER = props.CB_STYLE_PROP_SLIDEBANNER,
|
40
42
|
// STYLE: 그림자
|
@@ -42,31 +44,31 @@ function SlideBanner(props) {
|
|
42
44
|
// EFFECT: 진입
|
43
45
|
CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
|
44
46
|
var compositions = props.compositions;
|
45
|
-
var
|
46
|
-
var
|
47
|
-
var
|
48
|
-
var
|
49
|
-
var
|
50
|
-
var
|
51
|
-
var
|
47
|
+
var _c = (0, react_1.useState)(false), isHovered = _c[0], setIsHovered = _c[1];
|
48
|
+
var _d = (0, react_1.useState)(1), currentSlide = _d[0], setCurrentSlide = _d[1];
|
49
|
+
var _e = (0, react_1.useState)(0), totalPages = _e[0], setTotalPages = _e[1];
|
50
|
+
var _f = (0, react_1.useState)(true), isBeginning = _f[0], setIsBeginning = _f[1];
|
51
|
+
var _g = (0, react_1.useState)(false), isEnd = _g[0], setIsEnd = _g[1];
|
52
|
+
var _h = (0, react_1.useState)(0), progress = _h[0], setProgress = _h[1];
|
53
|
+
var _j = (0, react_1.useState)(0), leftTime = _j[0], setLeftTime = _j[1];
|
52
54
|
var swiperRef = (0, react_1.useRef)(null);
|
53
|
-
var
|
55
|
+
var _k = (0, slideBannerUtils_1.parseSlideBannerStyleToSlideBannerCoreProp)({
|
54
56
|
props: CB_STYLE_PROP_SLIDEBANNER,
|
55
57
|
device: device
|
56
|
-
}), slideBannerNormalStyle =
|
57
|
-
var
|
58
|
+
}), slideBannerNormalStyle = _k.normalStyle, slideBannerHoverStyle = _k.hoverStyle;
|
59
|
+
var _l = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomPaginationProp)({
|
58
60
|
props: CB_STYLE_PROP_SLIDEBANNER,
|
59
61
|
device: device
|
60
|
-
}), customPaginationNormalStyle =
|
61
|
-
var
|
62
|
+
}), customPaginationNormalStyle = _l.normalStyle, customPaginationHoverStyle = _l.hoverStyle;
|
63
|
+
var _m = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomNavigationProp)({
|
62
64
|
props: CB_STYLE_PROP_SLIDEBANNER,
|
63
65
|
device: device
|
64
|
-
}), customNavigationNormalStyle =
|
65
|
-
var
|
66
|
+
}), customNavigationNormalStyle = _m.normalStyle, customNavigationHoverStyle = _m.hoverStyle;
|
67
|
+
var _o = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomProgressbarProp)({
|
66
68
|
props: CB_STYLE_PROP_SLIDEBANNER,
|
67
69
|
device: device
|
68
|
-
}), customProgressbarNormalStyle =
|
69
|
-
var
|
70
|
+
}), customProgressbarNormalStyle = _o.normalStyle, customProgressbarHoverStyle = _o.hoverStyle;
|
71
|
+
var _p = (0, util_1.parseProperties)(props, device), style = _p.style, hoverStyle = _p.hoverStyle, layout = _p.layout, effect = _p.effect;
|
70
72
|
// NOTE: edit모드에서는 그리드의 이벤트만 작동하도록 CB의 포인터 이벤트는 막습니다.
|
71
73
|
var editModeStyle = mode === 'EDIT' ? { pointerEvents: 'none' } : {};
|
72
74
|
// NOTE: EFFECT와 관련된 함수들입니다.
|
@@ -121,7 +123,12 @@ function SlideBanner(props) {
|
|
121
123
|
swiperRef.current.swiper.slideNext();
|
122
124
|
}
|
123
125
|
};
|
124
|
-
return ((0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { position: 'relative', overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { position: 'relative', overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsxs)(S_SwiperWrapper, __assign({ 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, onSwiper: handleSwiper, onSlideChange: handleSlideChange, onAutoplayTimeLeft: handleAutoplayTimeLeft, slidesPerView: CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS, scrollbar: isHovered ? slideBannerHoverStyle.scrollbar : slideBannerNormalStyle.scrollbar, freeMode: isHovered ? slideBannerHoverStyle.freeMode : slideBannerNormalStyle.freeMode, autoplay: isHovered ? slideBannerHoverStyle.autoplay : slideBannerNormalStyle.autoplay, useAutoplay: isHovered ? slideBannerHoverStyle.useAutoplay : slideBannerNormalStyle.useAutoplay, loop: isHovered ? slideBannerHoverStyle.loop : slideBannerNormalStyle.loop }, { children:
|
126
|
+
return ((0, jsx_runtime_1.jsx)(S_CB_AnimationObserverBox_1.S_CB_AnimationObserverBox, __assign({ ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_BoxWithShadow_1.S_CB_BoxWithShadow, __assign({ className: "cb-layout-box", normalStyle: __assign(__assign(__assign(__assign(__assign({}, style), layout), effectCssProperties), editModeStyle), { position: 'relative', overflow: 'hidden' }), hoverStyle: __assign(__assign({}, hoverStyle), { position: 'relative', overflow: 'hidden' }), cbStylePropsShadowSpecs: CB_STYLE_PROP_SHADOW, device: device, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); } }, { children: (0, jsx_runtime_1.jsxs)(S_SwiperWrapper, __assign({ 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, onSwiper: handleSwiper, onSlideChange: handleSlideChange, onAutoplayTimeLeft: handleAutoplayTimeLeft, slidesPerView: CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS, scrollbar: isHovered ? slideBannerHoverStyle.scrollbar : slideBannerNormalStyle.scrollbar, freeMode: isHovered ? slideBannerHoverStyle.freeMode : slideBannerNormalStyle.freeMode, autoplay: isHovered ? slideBannerHoverStyle.autoplay : slideBannerNormalStyle.autoplay, useAutoplay: isHovered ? slideBannerHoverStyle.useAutoplay : slideBannerNormalStyle.useAutoplay, loop: isHovered ? slideBannerHoverStyle.loop : slideBannerNormalStyle.loop }, { children: (0, createCompositions_1.createCompositions)({
|
127
|
+
valueType: CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE,
|
128
|
+
queryPath: CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA,
|
129
|
+
queryData: queryData,
|
130
|
+
compositions: compositions
|
131
|
+
}) })), (0, jsx_runtime_1.jsx)(CustomPagination_1.CustomPagination, { type: isHovered ? customPaginationHoverStyle.type : customPaginationNormalStyle.type, offset: isHovered ? customPaginationHoverStyle.offset : customPaginationNormalStyle.offset, current: currentSlide, total: totalPages, size: isHovered ? customPaginationHoverStyle.size : customPaginationNormalStyle.size, onBulletClick: handleBulletClick }), (0, jsx_runtime_1.jsx)(CustomNavigation_1.CustomNavigation, { prevBtnDisabled: isBeginning, prevBtnType: isHovered
|
125
132
|
? customNavigationHoverStyle.prevBtnType
|
126
133
|
: customNavigationNormalStyle.prevBtnType, prevBtnOffset: isHovered
|
127
134
|
? customNavigationHoverStyle.prevBtnOffset
|
@@ -31,9 +31,22 @@ var useCLINK_1 = __importDefault(require("../hooks/useCLINK"));
|
|
31
31
|
function Text(props) {
|
32
32
|
var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
|
33
33
|
var queryContext = (0, compositionQueryContext_1.useCCBQueryPath)();
|
34
|
-
var index = props.index, _b = props.CB_CONTENT_PROP_CLINK, CB_CONTENT_PROP_CLINK_SPEC_SRC = _b.CB_CONTENT_PROP_CLINK_SPEC_SRC, CB_CONTENT_PROP_CLINK_SPEC_TYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_TYPE, CB_CONTENT_PROP_CLINK_SPEC_NEWTAB = _b.CB_CONTENT_PROP_CLINK_SPEC_NEWTAB, CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC = _b.CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM, _c = props.CB_CONTENT_PROP_TEXT, CB_CONTENT_PROP_TEXT_SPEC_VALUETYPE = _c.CB_CONTENT_PROP_TEXT_SPEC_VALUETYPE, CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA_NAME = _c.CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA_NAME;
|
34
|
+
var index = props.index, _b = props.CB_CONTENT_PROP_CLINK, CB_CONTENT_PROP_CLINK_SPEC_SRC = _b.CB_CONTENT_PROP_CLINK_SPEC_SRC, CB_CONTENT_PROP_CLINK_SPEC_TYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_TYPE, CB_CONTENT_PROP_CLINK_SPEC_NEWTAB = _b.CB_CONTENT_PROP_CLINK_SPEC_NEWTAB, CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC = _b.CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC, CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE = _b.CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE, CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA = _b.CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM, _c = props.CB_CONTENT_PROP_TEXT, CB_CONTENT_PROP_TEXT_SPEC_VALUETYPE = _c.CB_CONTENT_PROP_TEXT_SPEC_VALUETYPE, CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA_NAME = _c.CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA_NAME;
|
35
|
+
var cLinkValue = function () {
|
36
|
+
if (CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE === 'DATA') {
|
37
|
+
if (!(queryContext === null || queryContext === void 0 ? void 0 : queryContext.queryData)) {
|
38
|
+
return "ERROR: QueryData NOT FOUND";
|
39
|
+
}
|
40
|
+
var link = queryContext.queryData[CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA];
|
41
|
+
if (!link) {
|
42
|
+
return "ERROR: ".concat(CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA, " NOT found from queryData");
|
43
|
+
}
|
44
|
+
return link;
|
45
|
+
}
|
46
|
+
return CB_CONTENT_PROP_CLINK_SPEC_SRC;
|
47
|
+
};
|
35
48
|
var _d = (0, useCLINK_1.default)({
|
36
|
-
src:
|
49
|
+
src: cLinkValue(),
|
37
50
|
type: CB_CONTENT_PROP_CLINK_SPEC_TYPE,
|
38
51
|
openNewTab: CB_CONTENT_PROP_CLINK_SPEC_NEWTAB,
|
39
52
|
internalSrc: String(CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC)
|
@@ -15,9 +15,13 @@ export type CB_CONTENT_PROP_CLINK = {
|
|
15
15
|
CB_CONTENT_PROP_CLINK_SPEC_SRC: STRING_PLAIN;
|
16
16
|
CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC: STRING_PLAIN;
|
17
17
|
CB_CONTENT_PROP_CLINK_SPEC_NEWTAB: boolean;
|
18
|
+
CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE: VALUE_TYPE;
|
19
|
+
CB_CONTENT_PROP_CLINK_SPEC_CONNECTDATA: STRING_PLAIN;
|
18
20
|
};
|
19
21
|
export type CB_CONTENT_PROP_IMAGE = {
|
20
22
|
CB_CONTENT_PROP_IMAGE_SPEC_SELECTOR: STRING_PLAIN;
|
23
|
+
CB_CONTENT_PROP_IMAGE_SPEC_VALUETYPE: VALUE_TYPE;
|
24
|
+
CB_CONTENT_PROP_IMAGE_SPEC_CONNECTDATA: STRING_PLAIN;
|
21
25
|
};
|
22
26
|
export type CB_CONTENT_PROP_TWITTER = {
|
23
27
|
CB_CONTENT_PROP_TWITTER_SPEC_SRC: STRING_PLAIN;
|
@@ -26,7 +30,7 @@ export type CB_CONTENT_PROP_CODEBLOCK = {
|
|
26
30
|
CB_CONTENT_PROP_CODEBLOCK_SPEC_CODE: STRING_PLAIN;
|
27
31
|
};
|
28
32
|
export type CB_CONTENT_PROP_CONTENTSCAROUSEL = {
|
29
|
-
|
33
|
+
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUETYPE: VALUE_TYPE;
|
30
34
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA: STRING_PLAIN;
|
31
35
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DATASORTING: STRING_PLAIN;
|
32
36
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_OFFSET: NUMBER_INTEGER;
|
@@ -35,7 +39,7 @@ export type CB_CONTENT_PROP_CONTENTSCAROUSEL = {
|
|
35
39
|
CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS: NUMBER_INTEGER;
|
36
40
|
};
|
37
41
|
export type CB_CONTENT_PROP_SLIDEBANNER = {
|
38
|
-
|
42
|
+
CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUETYPE: VALUE_TYPE;
|
39
43
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA: STRING_PLAIN;
|
40
44
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_DATASORTING: STRING_PLAIN;
|
41
45
|
CB_CONTENT_PROP_SLIDEBANNER_SPEC_OFFSET: NUMBER_INTEGER;
|
package/package.json
CHANGED
@@ -1,9 +0,0 @@
|
|
1
|
-
import type { VALUE_TYPE } from '../sections/CustomSection/util/types';
|
2
|
-
import type { IComposition, QueryData } from '../../DynamicLayout/types';
|
3
|
-
export declare function parseQueryPath(queryPath: string): string;
|
4
|
-
export declare function queryManagerHelper({ valueType, queryPath, queryData, compositions }: {
|
5
|
-
valueType: VALUE_TYPE;
|
6
|
-
queryPath: string;
|
7
|
-
queryData: QueryData | undefined;
|
8
|
-
compositions: IComposition[];
|
9
|
-
}): Record<string, unknown>[] | null;
|
@@ -1,29 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.queryManagerHelper = exports.parseQueryPath = void 0;
|
4
|
-
function isConnectedData(valueType) {
|
5
|
-
return valueType === 'DATA';
|
6
|
-
}
|
7
|
-
// NOTE: queryPath란 CB_CONTENT_PROP_X_SPEC_CONNECT_DATA 이런것.
|
8
|
-
function parseQueryPath(queryPath) {
|
9
|
-
return convertSlashToUnderscores(queryPath);
|
10
|
-
}
|
11
|
-
exports.parseQueryPath = parseQueryPath;
|
12
|
-
function convertSlashToUnderscores(input) {
|
13
|
-
return input.replace(/\//g, '_');
|
14
|
-
}
|
15
|
-
function queryManagerHelper(_a) {
|
16
|
-
var valueType = _a.valueType, queryPath = _a.queryPath, queryData = _a.queryData, compositions = _a.compositions;
|
17
|
-
var isQueryDataConnected = isConnectedData(valueType);
|
18
|
-
if (!isQueryDataConnected || !queryPath || !queryData) {
|
19
|
-
return null;
|
20
|
-
}
|
21
|
-
var parsedQueryPath = parseQueryPath(queryPath);
|
22
|
-
var queryDataValue = queryData[parsedQueryPath];
|
23
|
-
if (!queryDataValue) {
|
24
|
-
return null;
|
25
|
-
}
|
26
|
-
var queryComposition = compositions.find(function (composition) { return composition.isDefault; });
|
27
|
-
return queryDataValue;
|
28
|
-
}
|
29
|
-
exports.queryManagerHelper = queryManagerHelper;
|
File without changes
|