pds-dev-kit-web-test 2.5.347 → 2.5.349

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.
Files changed (15) hide show
  1. package/dist/src/sub/DynamicLayout/CompositionRenderer/{CompositionRenderer.js → createCompositions.js} +7 -2
  2. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.js +1 -1
  3. package/dist/src/sub/DynamicLayout/mock_slideBanner.js +1 -1
  4. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Button/Button.js +17 -2
  5. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +4 -6
  6. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +16 -10
  7. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Image/Image.js +31 -3
  8. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +27 -20
  9. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +15 -2
  10. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/types.d.ts +6 -2
  11. package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/replaceUndefinedValues.js +1 -1
  12. package/package.json +1 -1
  13. package/dist/src/sub/DynamicLayout/CompositionRenderer/connectedDataHelpers.d.ts +0 -9
  14. package/dist/src/sub/DynamicLayout/CompositionRenderer/connectedDataHelpers.js +0 -29
  15. /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 = (0, connectedDataHelpers_1.parseQueryPath)(queryPath);
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
- CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE: 'DATA',
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
- CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUE_TYPE: 'DATA',
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 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_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
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: CB_CONTENT_PROP_CLINK_SPEC_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 CompositionRenderer_1 = require("../../../../../../../DynamicLayout/CompositionRenderer/CompositionRenderer");
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, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE, CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA = _b.CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA,
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, CompositionRenderer_1.createCompositions)({
143
- valueType: CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE,
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 Composition_1 = __importDefault(require("../../../../../../../DynamicLayout/CompositionRenderer/Composition"));
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 device = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext).device;
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 _a = (0, react_1.useState)(false), isHovered = _a[0], setIsHovered = _a[1];
36
- var _b = (0, react_1.useState)(1), currentPage = _b[0], setCurrentPage = _b[1];
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 _c = (0, util_1.parseProperties)(props, device), style = _c.style, hoverStyle = _c.hoverStyle, layout = _c.layout, effect = _c.effect;
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 _d = (0, contentsListUtils_1.parseGridStyleProp)({
44
+ var _e = (0, contentsListUtils_1.parseGridStyleProp)({
44
45
  props: CB_STYLE_PROP_CONTENTSLIST,
45
46
  device: device
46
- }), stylePropCss = _d.stylePropCss, hoverStylePropCss = _d.hoverStylePropCss;
47
- var _e = (0, contentsListUtils_1.parsePaginationStyleProp)({
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 = _e.normalStyle, paginationHoverStyle = _e.hoverStyle;
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: compositions.slice(startIndex, endIndex).map(function (composition) { return ((0, jsx_runtime_1.jsx)(Composition_1.default, __assign({}, composition), composition.id)); }) })) })) })), (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
+ 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 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_STYLE_PROP_SHADOW = props.CB_STYLE_PROP_SHADOW, CB_EFFECT_PROP_ENTANIM = props.CB_EFFECT_PROP_ENTANIM;
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: CB_CONTENT_PROP_CLINK_SPEC_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
- 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: CB_CONTENT_PROP_IMAGE.CB_CONTENT_PROP_IMAGE_SPEC_SELECTOR, normalStyle: __assign({}, imgStyle.normal), hoverStyle: __assign({}, imgStyle.hover) }) })) })) }))] }));
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 Composition_1 = __importDefault(require("../../../../../../../DynamicLayout/CompositionRenderer/Composition"));
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, CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS = props.CB_CONTENT_PROP_SLIDEBANNER.CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS,
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 _b = (0, react_1.useState)(false), isHovered = _b[0], setIsHovered = _b[1];
46
- var _c = (0, react_1.useState)(1), currentSlide = _c[0], setCurrentSlide = _c[1];
47
- var _d = (0, react_1.useState)(0), totalPages = _d[0], setTotalPages = _d[1];
48
- var _e = (0, react_1.useState)(true), isBeginning = _e[0], setIsBeginning = _e[1];
49
- var _f = (0, react_1.useState)(false), isEnd = _f[0], setIsEnd = _f[1];
50
- var _g = (0, react_1.useState)(0), progress = _g[0], setProgress = _g[1];
51
- var _h = (0, react_1.useState)(0), leftTime = _h[0], setLeftTime = _h[1];
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 _j = (0, slideBannerUtils_1.parseSlideBannerStyleToSlideBannerCoreProp)({
55
+ var _k = (0, slideBannerUtils_1.parseSlideBannerStyleToSlideBannerCoreProp)({
54
56
  props: CB_STYLE_PROP_SLIDEBANNER,
55
57
  device: device
56
- }), slideBannerNormalStyle = _j.normalStyle, slideBannerHoverStyle = _j.hoverStyle;
57
- var _k = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomPaginationProp)({
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 = _k.normalStyle, customPaginationHoverStyle = _k.hoverStyle;
61
- var _l = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomNavigationProp)({
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 = _l.normalStyle, customNavigationHoverStyle = _l.hoverStyle;
65
- var _m = (0, slideBannerUtils_1.parseSlideBannerStyleToCustomProgressbarProp)({
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 = _m.normalStyle, customProgressbarHoverStyle = _m.hoverStyle;
69
- var _o = (0, util_1.parseProperties)(props, device), style = _o.style, hoverStyle = _o.hoverStyle, layout = _o.layout, effect = _o.effect;
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: compositions.map(function (composition) { return ((0, jsx_runtime_1.jsx)(Composition_1.default, __assign({}, composition), composition.id)); }) })), (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
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: CB_CONTENT_PROP_CLINK_SPEC_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
- CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE: VALUE_TYPE;
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
- CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUE_TYPE: VALUE_TYPE;
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;
@@ -38,7 +38,7 @@ function replaceUndefinedValues(jsonData) {
38
38
  }
39
39
  }
40
40
  return __assign({}, accSpecs);
41
- }, currentProps);
41
+ }, __assign({}, currentProps));
42
42
  return __assign(__assign({}, acc), (_a = {}, _a[currentPropKey] = specs, _a));
43
43
  }
44
44
  return acc;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pds-dev-kit-web-test",
3
- "version": "2.5.347",
3
+ "version": "2.5.349",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "dist/index.js",
@@ -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;