pds-dev-kit-web-test 2.5.341 → 2.5.343

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 (29) hide show
  1. package/dist/src/sub/DynamicLayout/CompositionRenderer/ComponentBlockMatcher.js +3 -0
  2. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.js +20 -18
  3. package/dist/src/sub/DynamicLayout/mock_contentsCarousel.js +2 -2
  4. package/dist/src/sub/DynamicLayout/mock_contentsList.d.ts +2 -0
  5. package/dist/src/sub/DynamicLayout/mock_contentsList.js +300 -0
  6. package/dist/src/sub/DynamicLayout/mock_slideBanner.js +3 -3
  7. package/dist/src/sub/DynamicLayout/mocks.d.ts +3 -1
  8. package/dist/src/sub/DynamicLayout/mocks.js +14 -2
  9. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/ComponentBlockMatcher.js +5 -0
  10. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.d.ts +8 -0
  11. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +92 -0
  12. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.d.ts +17 -0
  13. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsListCore.js +39 -0
  14. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.d.ts +27 -0
  15. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.js +188 -0
  16. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.d.ts +30 -0
  17. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/contentsListUtils.js +357 -0
  18. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/index.d.ts +1 -0
  19. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/index.js +8 -0
  20. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.d.ts +46 -0
  21. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/types.js +2 -0
  22. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/types.d.ts +15 -4
  23. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.d.ts +11 -3
  24. package/dist/src/sub/DynamicLayout/sections/CustomSection/types.js +1 -0
  25. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parseProperties.d.ts +2 -2
  26. package/dist/src/sub/DynamicLayout/sections/CustomSection/util/types.d.ts +16 -1
  27. package/package.json +1 -1
  28. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditorContext.d.ts +0 -4
  29. package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditorContext.js +0 -8
@@ -49,6 +49,9 @@ function ComponentBlockMatcher(_a) {
49
49
  case types_1.CB_ALL_CODES.CB_CONTENTSCAROUSEL: {
50
50
  return (0, jsx_runtime_1.jsx)("div", { children: "NOT SUPPORTED NESTED CAROUSEL" });
51
51
  }
52
+ case types_1.CB_ALL_CODES.CB_LIST: {
53
+ return (0, jsx_runtime_1.jsx)("div", { children: "NOT SUPPORTED NESTED CONTENTSLIST" });
54
+ }
52
55
  default:
53
56
  return (0, jsx_runtime_1.jsx)("div", { children: "Error: not supported CB" });
54
57
  }
@@ -182,26 +182,28 @@ var Composition = (0, react_1.forwardRef)(function CustomSection(props, ref) {
182
182
  }
183
183
  return 16;
184
184
  })();
185
- return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(gleStyles_1.S_gleStyles, __assign({ style: { width: '100%', height: '100%' } }, { children: (0, jsx_runtime_1.jsx)(S_COMPOSITIONWrapper, __assign({ ref: gleRef, "x-dlayout-section-type": "NO_NAME", onClick: onClickSection, style: {
186
- width: '100%',
187
- height: '100%'
188
- } }, { children: (0, jsx_runtime_1.jsx)(CompositionBackground_1.default, __assign({}, props, { isMobile: isMobile, overrideStyles: {
189
- // minHeight: customSectionStyles.minHeight,
190
- paddingTop: padding.top,
191
- paddingBottom: padding.bottom,
192
- paddingRight: padding.right,
193
- paddingLeft: padding.left,
185
+ return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(dynamicLayoutContext_1.dynamicLayoutContext.Provider, __assign({ value: {
186
+ device: device
187
+ } }, { children: (0, jsx_runtime_1.jsx)(gleStyles_1.S_gleStyles, __assign({ style: { width: '100%', height: '100%' } }, { children: (0, jsx_runtime_1.jsx)(S_COMPOSITIONWrapper, __assign({ ref: gleRef, "x-dlayout-section-type": "NO_NAME", onClick: onClickSection, style: {
194
188
  width: '100%',
195
189
  height: '100%'
196
- } }, { children: (0, jsx_runtime_1.jsx)(GridContainer, __assign({ ref: containerRef, cols: cols, rowHeight: rowHeight, sectionRow: rows, style: {
197
- width: customSectionStyles.width,
198
- maxWidth: customSectionStyles.maxWidth,
199
- // minWidth: isMobile ? GLE_MIN_WIDTH_MOBILE_PX : GLE_MIN_WIDTH_DESKTOP_PX,
200
- fontSize: "".concat(baseFontSize, "px")
201
- } }, { children: (_e = props.componentBlocks) === null || _e === void 0 ? void 0 : _e.map(function (cb, index) {
202
- var _a;
203
- return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(FlexGridItem_1.default, { cb: cb, index: index, device: device, rowHeight: rowHeight, zIndex: (_a = zOrders === null || zOrders === void 0 ? void 0 : zOrders[device === 'DESKTOP' ? 'desktop' : 'mobile'][cb.id]) !== null && _a !== void 0 ? _a : 0 }) }, cb.id));
204
- }) })) })) })) })) }));
190
+ } }, { children: (0, jsx_runtime_1.jsx)(CompositionBackground_1.default, __assign({}, props, { isMobile: isMobile, overrideStyles: {
191
+ // minHeight: customSectionStyles.minHeight,
192
+ paddingTop: padding.top,
193
+ paddingBottom: padding.bottom,
194
+ paddingRight: padding.right,
195
+ paddingLeft: padding.left,
196
+ width: '100%',
197
+ height: '100%'
198
+ } }, { children: (0, jsx_runtime_1.jsx)(GridContainer, __assign({ ref: containerRef, cols: cols, rowHeight: rowHeight, sectionRow: rows, style: {
199
+ width: customSectionStyles.width,
200
+ maxWidth: customSectionStyles.maxWidth,
201
+ // minWidth: isMobile ? GLE_MIN_WIDTH_MOBILE_PX : GLE_MIN_WIDTH_DESKTOP_PX,
202
+ fontSize: "".concat(baseFontSize, "px")
203
+ } }, { children: (_e = props.componentBlocks) === null || _e === void 0 ? void 0 : _e.map(function (cb, index) {
204
+ var _a;
205
+ return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(FlexGridItem_1.default, { cb: cb, index: index, device: device, rowHeight: rowHeight, zIndex: (_a = zOrders === null || zOrders === void 0 ? void 0 : zOrders[device === 'DESKTOP' ? 'desktop' : 'mobile'][cb.id]) !== null && _a !== void 0 ? _a : 0 }) }, cb.id));
206
+ }) })) })) })) })) })) }));
205
207
  });
206
208
  var GridContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: grid; /* Space between grid items */\n gap: 10px;\n grid-auto-rows: minmax(", ", auto);\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: repeat(", ", minmax(", ", 1fr));\n height: 100%;\n padding: 10px 10px;\n width: 100%;\n\n * {\n box-sizing: border-box;\n }\n"], ["\n display: grid; /* Space between grid items */\n gap: 10px;\n grid-auto-rows: minmax(", ", auto);\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: repeat(", ", minmax(", ", 1fr));\n height: 100%;\n padding: 10px 10px;\n width: 100%;\n\n * {\n box-sizing: border-box;\n }\n"])), function (props) { return "".concat(props.rowHeight, "px"); }, function (props) { return props.cols; }, function (props) { return props.sectionRow; }, function (props) { return "".concat(0, "px"); });
207
209
  var S_COMPOSITIONWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
@@ -104,8 +104,8 @@ exports.SAMPLE_CONTENTSCAROUSEL_CB = {
104
104
  CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_VALUE_TYPE: 'A',
105
105
  CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_CONNECT_DATA: '아티클:포스트',
106
106
  CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DATASORTING: '최신순',
107
- CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_OFFSET: '1',
108
- CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_MENUALITEM: [],
107
+ CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_OFFSET: 1,
108
+ CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_MANUALITEMS: [],
109
109
  CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_ITEMCOUNTS: 50,
110
110
  CB_CONTENT_PROP_CONTENTSCAROUSEL_SPEC_DISPLAYCOUNTS: 1
111
111
  },
@@ -0,0 +1,2 @@
1
+ import type { CB_LIST } from './sections/CustomSection/types';
2
+ export declare const SAMPLE_LIST_CB: CB_LIST;
@@ -0,0 +1,300 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SAMPLE_LIST_CB = void 0;
4
+ var mock_composition_1 = require("./mock_composition");
5
+ var types_1 = require("./sections/CustomSection/types");
6
+ exports.SAMPLE_LIST_CB = {
7
+ availablePlugins: [],
8
+ componentBlockCode: types_1.CB_ALL_CODES.CB_LIST,
9
+ dynamicLayoutSectionId: 18661,
10
+ type: 'GENERAL',
11
+ id: 188292,
12
+ blockId: 'CB_188292',
13
+ jsonProperties: {
14
+ data: {
15
+ CB_PLACEMENT_PROP_PLACEMENT: {
16
+ CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS: 7,
17
+ 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS:MOBILE': 8,
18
+ CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS: 16,
19
+ 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE': 20,
20
+ CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX: 5,
21
+ 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX:MOBILE': 0,
22
+ CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY: 0,
23
+ 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY:MOBILE': 0,
24
+ CB_PLACEMENT_PROP_PLACEMENT_SPEC_ZINDEX: 3,
25
+ 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_ZINDEX:MOBILE': 2
26
+ // 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_LATEST_LOCKED_STARTY:MOBILE': 2,
27
+ // 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_LOCKSTATUS:MOBILE': 'FALLBACK_TO_SYNC'
28
+ },
29
+ CB_STYLE_PROP_CONTENTSLIST: {
30
+ // Base properties
31
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_STYLE: 'DESIGN1',
32
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMSPACING: 'NORMAL',
33
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMLINEHEIGHT: 10,
34
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMHEIGHTFITCONTENT: false,
35
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_INFINITESCROLL: 'NONE',
36
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSTYLE: 'DESIGN1',
37
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONLOCATION: 'OUTSET8',
38
+ CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSIZE: 'MEDIUM',
39
+ // Hover state
40
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_STYLE:HOVER': 'DESIGN1',
41
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMSPACING:HOVER': 'NORMAL',
42
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMLINEHEIGHT:HOVER': 10,
43
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMHEIGHTFITCONTENT:HOVER': false,
44
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_INFINITESCROLL:HOVER': 'NONE',
45
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSTYLE:HOVER': 'DESIGN1',
46
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONLOCATION:HOVER': 'OUTSET8',
47
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSIZE:HOVER': 'MEDIUM',
48
+ // Mobile state
49
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_STYLE:MOBILE': 'DESIGN1',
50
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMSPACING:MOBILE': 'NORMAL',
51
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMLINEHEIGHT:MOBILE': 10,
52
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMHEIGHTFITCONTENT:MOBILE': false,
53
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_INFINITESCROLL:MOBILE': 'NONE',
54
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSTYLE:MOBILE': 'DESIGN1',
55
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONLOCATION:MOBILE': 'OUTSET8',
56
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSIZE:MOBILE': 'MEDIUM',
57
+ // Mobile hover state
58
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_STYLE:MOBILE:HOVER': 'DESIGN1',
59
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMSPACING:MOBILE:HOVER': 'NORMAL',
60
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMLINEHEIGHT:MOBILE:HOVER': 10,
61
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_ITEMHEIGHTFITCONTENT:MOBILE:HOVER': false,
62
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_INFINITESCROLL:MOBILE:HOVER': 'NONE',
63
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSTYLE:MOBILE:HOVER': 'DESIGN1',
64
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONLOCATION:MOBILE:HOVER': 'OUTSET8',
65
+ 'CB_STYLE_PROP_CONTENTSLIST_SPEC_PAGINATIONSIZE:MOBILE:HOVER': 'MEDIUM'
66
+ },
67
+ CB_CONTENT_PROP_CONTENTSLIST: {
68
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_VALUETYPE: 'OPT_VALUE',
69
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_CONNECTDATA: '아티클:포스트',
70
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_DATASORTING: '최신순',
71
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_DATAFILTER: 'NONE',
72
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_OFFSET: 0,
73
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_MANUALITEMS: [],
74
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_EDITCOMMONITEM: null,
75
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_COLUMNS: 1,
76
+ CB_CONTENT_PROP_CONTENTSLIST_SPEC_ITEMCOUNTS: 1
77
+ },
78
+ CB_STYLE_PROP_BORDER: {
79
+ CB_STYLE_PROP_BORDER_SPEC_STYLE: 'SOLID',
80
+ 'CB_STYLE_PROP_BORDER_SPEC_STYLE:HOVER': 'SOLID',
81
+ 'CB_STYLE_PROP_BORDER_SPEC_STYLE:MOBILE': 'DASHED',
82
+ 'CB_STYLE_PROP_BORDER_SPEC_STYLE:MOBILE:HOVER': 'DOTTED',
83
+ CB_STYLE_PROP_BORDER_SPEC_WIDTH: 0,
84
+ 'CB_STYLE_PROP_BORDER_SPEC_WIDTH:HOVER': 0,
85
+ 'CB_STYLE_PROP_BORDER_SPEC_WIDTH:MOBILE': 0,
86
+ 'CB_STYLE_PROP_BORDER_SPEC_WIDTH:MOBILE:HOVER': 0,
87
+ CB_STYLE_PROP_BORDER_SPEC_COLOR: '#FF573300',
88
+ 'CB_STYLE_PROP_BORDER_SPEC_COLOR:HOVER': '#FF573300',
89
+ 'CB_STYLE_PROP_BORDER_SPEC_COLOR:MOBILE': '#00FF5733',
90
+ 'CB_STYLE_PROP_BORDER_SPEC_COLOR:MOBILE:HOVER': '#5733FF00',
91
+ CB_STYLE_PROP_BORDER_SPEC_RADIUS: { tl: 5, tr: 5, bl: 5, br: 5 },
92
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUS:HOVER': { tl: 5, tr: 5, bl: 5, br: 5 },
93
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUS:MOBILE': { tl: 10, tr: 10, bl: 10, br: 10 },
94
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUS:MOBILE:HOVER': { tl: 15, tr: 15, bl: 15, br: 15 },
95
+ CB_STYLE_PROP_BORDER_SPEC_RADIUSFIX: true,
96
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUSFIX:HOVER': true,
97
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUSFIX:MOBILE': false,
98
+ 'CB_STYLE_PROP_BORDER_SPEC_RADIUSFIX:MOBILE:HOVER': true
99
+ },
100
+ CB_STYLE_PROP_SHADOW: {
101
+ CB_STYLE_PROP_SHADOW_SPEC_BLUR: 24,
102
+ 'CB_STYLE_PROP_SHADOW_SPEC_BLUR:HOVER': 24,
103
+ 'CB_STYLE_PROP_SHADOW_SPEC_BLUR:MOBILE': null,
104
+ 'CB_STYLE_PROP_SHADOW_SPEC_BLUR:MOBILE:HOVER': null,
105
+ CB_STYLE_PROP_SHADOW_SPEC_COLOR: '#000000',
106
+ 'CB_STYLE_PROP_SHADOW_SPEC_COLOR:HOVER': '#000000',
107
+ 'CB_STYLE_PROP_SHADOW_SPEC_COLOR:MOBILE': null,
108
+ 'CB_STYLE_PROP_SHADOW_SPEC_COLOR:MOBILE:HOVER': null,
109
+ CB_STYLE_PROP_SHADOW_SPEC_OPACITY: 30,
110
+ 'CB_STYLE_PROP_SHADOW_SPEC_OPACITY:HOVER': 30,
111
+ 'CB_STYLE_PROP_SHADOW_SPEC_OPACITY:MOBILE': null,
112
+ 'CB_STYLE_PROP_SHADOW_SPEC_OPACITY:MOBILE:HOVER': null,
113
+ CB_STYLE_PROP_SHADOW_SPEC_SPREAD: 2,
114
+ 'CB_STYLE_PROP_SHADOW_SPEC_SPREAD:HOVER': 2,
115
+ 'CB_STYLE_PROP_SHADOW_SPEC_SPREAD:MOBILE': null,
116
+ 'CB_STYLE_PROP_SHADOW_SPEC_SPREAD:MOBILE:HOVER': null,
117
+ CB_STYLE_PROP_SHADOW_SPEC_TYPE: 'OUTSET',
118
+ 'CB_STYLE_PROP_SHADOW_SPEC_TYPE:HOVER': 'OUTSET',
119
+ 'CB_STYLE_PROP_SHADOW_SPEC_TYPE:MOBILE': null,
120
+ 'CB_STYLE_PROP_SHADOW_SPEC_TYPE:MOBILE:HOVER': null,
121
+ CB_STYLE_PROP_SHADOW_SPEC_X: 0,
122
+ 'CB_STYLE_PROP_SHADOW_SPEC_X:HOVER': 0,
123
+ 'CB_STYLE_PROP_SHADOW_SPEC_X:MOBILE': null,
124
+ 'CB_STYLE_PROP_SHADOW_SPEC_X:MOBILE:HOVER': null,
125
+ CB_STYLE_PROP_SHADOW_SPEC_Y: 12,
126
+ 'CB_STYLE_PROP_SHADOW_SPEC_Y:HOVER': 12,
127
+ 'CB_STYLE_PROP_SHADOW_SPEC_Y:MOBILE': null,
128
+ 'CB_STYLE_PROP_SHADOW_SPEC_Y:MOBILE:HOVER': null
129
+ },
130
+ CB_STYLE_PROP_OPACITY: {
131
+ CB_STYLE_PROP_OPACITY_SPEC_OPACITY: 100,
132
+ 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:HOVER': 100,
133
+ 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:MOBILE': null,
134
+ 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:MOBILE:HOVER': null
135
+ },
136
+ CB_STYLE_PROP_BGCOLOR: {
137
+ CB_STYLE_PROP_BGCOLOR_SPEC_ANGLE: 90,
138
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ANGLE:HOVER': 90,
139
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ANGLE:MOBILE': null,
140
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ANGLE:MOBILE:HOVER': null,
141
+ CB_STYLE_PROP_BGCOLOR_SPEC_COLOR: '#455EEFFF',
142
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_COLOR:HOVER': '#455EEFFF',
143
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_COLOR:MOBILE': null,
144
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_COLOR:MOBILE:HOVER': null,
145
+ CB_STYLE_PROP_BGCOLOR_SPEC_ENDCOLOR: '#ff0000',
146
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDCOLOR:HOVER': '#27FFBFFF',
147
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDCOLOR:MOBILE': null,
148
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDCOLOR:MOBILE:HOVER': null,
149
+ CB_STYLE_PROP_BGCOLOR_SPEC_ENDLOC: 100,
150
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDLOC:HOVER': 100,
151
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDLOC:MOBILE': null,
152
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_ENDLOC:MOBILE:HOVER': null,
153
+ CB_STYLE_PROP_BGCOLOR_SPEC_GRADIENT: 'NONE',
154
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_GRADIENT:HOVER': 'NONE',
155
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_GRADIENT:MOBILE': null,
156
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_GRADIENT:MOBILE:HOVER': null,
157
+ CB_STYLE_PROP_BGCOLOR_SPEC_STARTCOLOR: 'NONE',
158
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTCOLOR:HOVER': 'NONE',
159
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTCOLOR:MOBILE': null,
160
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTCOLOR:MOBILE:HOVER': null,
161
+ CB_STYLE_PROP_BGCOLOR_SPEC_STARTLOC: 0,
162
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTLOC:HOVER': 0,
163
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTLOC:MOBILE': null,
164
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_STARTLOC:MOBILE:HOVER': null,
165
+ CB_STYLE_PROP_BGCOLOR_SPEC_TYPE: 'SOLID',
166
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_TYPE:HOVER': 'SOLID',
167
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_TYPE:MOBILE': null,
168
+ 'CB_STYLE_PROP_BGCOLOR_SPEC_TYPE:MOBILE:HOVER': null
169
+ },
170
+ CB_STYLE_PROP_BGOVERLAY: {
171
+ CB_STYLE_PROP_BGOVERLAY_SPEC_ANGLE: 45,
172
+ CB_STYLE_PROP_BGOVERLAY_SPEC_COLOR: '#FF573300',
173
+ CB_STYLE_PROP_BGOVERLAY_SPEC_ENDCOLOR: '#00FF5733',
174
+ CB_STYLE_PROP_BGOVERLAY_SPEC_ENDLOC: 80,
175
+ CB_STYLE_PROP_BGOVERLAY_SPEC_GRADIENT: 'LINEAR',
176
+ CB_STYLE_PROP_BGOVERLAY_SPEC_STARTCOLOR: '#5733FF00',
177
+ CB_STYLE_PROP_BGOVERLAY_SPEC_STARTLOC: 20,
178
+ CB_STYLE_PROP_BGOVERLAY_SPEC_TYPE: 'OVERLAY',
179
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ANGLE:HOVER': 60,
180
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ANGLE:MOBILE': 30,
181
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ANGLE:MOBILE:HOVER': 90,
182
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_COLOR:HOVER': '#AA573300',
183
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_COLOR:MOBILE': '#BBFF5733',
184
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_COLOR:MOBILE:HOVER': '#CC5733FF',
185
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDCOLOR:HOVER': '#DD573300',
186
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDCOLOR:MOBILE': '#EEFF5733',
187
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDCOLOR:MOBILE:HOVER': '#FF5733FF',
188
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDLOC:HOVER': 85,
189
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDLOC:MOBILE': 75,
190
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_ENDLOC:MOBILE:HOVER': 95,
191
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_GRADIENT:HOVER': 'RADIAL',
192
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_GRADIENT:MOBILE': 'LINEAR',
193
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_GRADIENT:MOBILE:HOVER': 'CONIC',
194
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTCOLOR:HOVER': '#11573300',
195
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTCOLOR:MOBILE': '#225733FF',
196
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTCOLOR:MOBILE:HOVER': '#3357FF00',
197
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTLOC:HOVER': 25,
198
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTLOC:MOBILE': 15,
199
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_STARTLOC:MOBILE:HOVER': 35,
200
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_TYPE:HOVER': 'BLEND',
201
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_TYPE:MOBILE': 'MIX',
202
+ 'CB_STYLE_PROP_BGOVERLAY_SPEC_TYPE:MOBILE:HOVER': 'OVERLAY'
203
+ },
204
+ CB_STYLE_PROP_BGMEDIA: {
205
+ // Base properties
206
+ CB_STYLE_PROP_BGMEDIA_SPEC_YSRC: 'https://example.com/video.mp4',
207
+ CB_STYLE_PROP_BGMEDIA_SPEC_TYPE: 'video',
208
+ CB_STYLE_PROP_BGMEDIA_SPEC_SCROLL: true,
209
+ CB_STYLE_PROP_BGMEDIA_SPEC_STARTTIME: 0,
210
+ CB_STYLE_PROP_BGMEDIA_SPEC_REPLAY: false,
211
+ CB_STYLE_PROP_BGMEDIA_SPEC_MPLAY: true,
212
+ CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEPOSITION: 'center',
213
+ CB_STYLE_PROP_BGMEDIA_SPEC_IMAGESELECTOR: '.background-image',
214
+ CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEFIT: 'cover',
215
+ CB_STYLE_PROP_BGMEDIA_SPEC_ENDTIME: 60,
216
+ // Hover state
217
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_ENDTIME:HOVER': 65,
218
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEFIT:HOVER': 'contain',
219
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGESELECTOR:HOVER': '.bg-hover',
220
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEPOSITION:HOVER': 'top',
221
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_REPLAY:HOVER': true,
222
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_STARTTIME:HOVER': 5,
223
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_SCROLL:HOVER': false,
224
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_TYPE:HOVER': 'gif',
225
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_YSRC:HOVER': 'https://example.com/hover-video.mp4',
226
+ // Mobile state
227
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_ENDTIME:MOBILE': 55,
228
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEFIT:MOBILE': 'fill',
229
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGESELECTOR:MOBILE': '.bg-mobile',
230
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEPOSITION:MOBILE': 'bottom',
231
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_MPLAY:MOBILE': false,
232
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_REPLAY:MOBILE': true,
233
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_STARTTIME:MOBILE': 10,
234
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_SCROLL:MOBILE': true,
235
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_TYPE:MOBILE': 'image',
236
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_YSRC:MOBILE': 'https://example.com/mobile-video.mp4',
237
+ // Mobile hover state
238
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_ENDTIME:MOBILE:HOVER': 70,
239
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEFIT:MOBILE:HOVER': 'scale-down',
240
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGESELECTOR:MOBILE:HOVER': '.bg-mobile-hover',
241
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_IMAGEPOSITION:MOBILE:HOVER': 'left',
242
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_REPLAY:MOBILE:HOVER': false,
243
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_STARTTIME:MOBILE:HOVER': 15,
244
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_SCROLL:MOBILE:HOVER': false,
245
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_TYPE:MOBILE:HOVER': 'video',
246
+ 'CB_STYLE_PROP_BGMEDIA_SPEC_YSRC:MOBILE:HOVER': 'https://example.com/mobile-hover-video.mp4'
247
+ },
248
+ CB_LAYOUT_PROP_PADDING: {
249
+ CB_LAYOUT_PROP_PADDING_SPEC_PADDING: {
250
+ top: 0,
251
+ right: 0,
252
+ bottom: 0,
253
+ left: 0
254
+ },
255
+ 'CB_LAYOUT_PROP_PADDING_SPEC_PADDING:MOBILE': {
256
+ top: 0,
257
+ right: 0,
258
+ bottom: 0,
259
+ left: 0
260
+ },
261
+ CB_LAYOUT_PROP_PADDING_SPEC_FIX: true,
262
+ 'CB_LAYOUT_PROP_PADDING_SPEC_FIX:MOBILE': false
263
+ },
264
+ CB_CONTENT_PROP_HOVER: {
265
+ CB_CONTENT_PROP_HOVER_SPEC_MUSE: true
266
+ },
267
+ CB_LAYOUT_PROP_ARRANGE: {
268
+ CB_LAYOUT_PROP_ARRANGE_SPEC_HORIZONTAL: 'CENTER',
269
+ 'CB_LAYOUT_PROP_ARRANGE_SPEC_HORIZONTAL:MOBILE': 'CENTER',
270
+ CB_LAYOUT_PROP_ARRANGE_SPEC_VERTICAL: 'MIDDLE',
271
+ 'CB_LAYOUT_PROP_ARRANGE_SPEC_VERTICAL:MOBILE': undefined
272
+ },
273
+ CB_CONTENT_PROP_VISIBILITY: {
274
+ CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: true,
275
+ CB_CONTENT_PROP_VISIBILITY_SPEC_MOBILEWEB: true
276
+ },
277
+ CB_EFFECT_PROP_ENTANIM: {
278
+ CB_EFFECT_PROP_ENTANIM_SPEC_TYPE: 'SLIDEINLEFT',
279
+ 'CB_EFFECT_PROP_ENTANIM_SPEC_TYPE:MOBILE': 'SLIDEINLEFT',
280
+ CB_EFFECT_PROP_ENTANIM_SPEC_DURATION: 1,
281
+ 'CB_EFFECT_PROP_ENTANIM_SPEC_DURATION:MOBILE': undefined,
282
+ CB_EFFECT_PROP_ENTANIM_SPEC_REPEAT: 1,
283
+ 'CB_EFFECT_PROP_ENTANIM_SPEC_REPEAT:MOBILE': undefined,
284
+ CB_EFFECT_PROP_ENTANIM_SPEC_TFUNC: 'EASEINOUT',
285
+ 'CB_EFFECT_PROP_ENTANIM_SPEC_TFUNC:MOBILE': undefined
286
+ }
287
+ }
288
+ },
289
+ queryableDefinitionPreset: 'N/A',
290
+ queryableTapSrc: 'N/A',
291
+ compositions: [
292
+ mock_composition_1.sampleMockComposition1,
293
+ mock_composition_1.sampleMockComposition1,
294
+ mock_composition_1.sampleMockComposition1,
295
+ mock_composition_1.sampleMockComposition1,
296
+ mock_composition_1.sampleMockComposition1,
297
+ mock_composition_1.sampleMockComposition1,
298
+ mock_composition_1.sampleMockComposition1
299
+ ]
300
+ };
@@ -6,7 +6,7 @@ var types_1 = require("./sections/CustomSection/types");
6
6
  exports.SAMPLE_SLIDEBANNER_CB = {
7
7
  availablePlugins: [],
8
8
  componentBlockCode: types_1.CB_ALL_CODES.CB_SLIDEBANNER,
9
- dynamicLayoutSectionId: 18662,
9
+ dynamicLayoutSectionId: 18661,
10
10
  type: 'GENERAL',
11
11
  id: 188291,
12
12
  blockId: 'CB_188291',
@@ -96,8 +96,8 @@ exports.SAMPLE_SLIDEBANNER_CB = {
96
96
  CB_CONTENT_PROP_SLIDEBANNER_SPEC_VALUE_TYPE: 'A',
97
97
  CB_CONTENT_PROP_SLIDEBANNER_SPEC_CONNECT_DATA: '아티클:포스트',
98
98
  CB_CONTENT_PROP_SLIDEBANNER_SPEC_DATASORTING: '최신순',
99
- CB_CONTENT_PROP_SLIDEBANNER_SPEC_OFFSET: '1',
100
- CB_CONTENT_PROP_SLIDEBANNER_SPEC_MENUALITEM: [],
99
+ CB_CONTENT_PROP_SLIDEBANNER_SPEC_OFFSET: 1,
100
+ CB_CONTENT_PROP_SLIDEBANNER_SPEC_MENUALITEMS: [],
101
101
  CB_CONTENT_PROP_SLIDEBANNER_SPEC_ITEMCOUNTS: 50,
102
102
  CB_CONTENT_PROP_SLIDEBANNER_SPEC_DISPLAYCOUNTS: 1
103
103
  },
@@ -1,7 +1,7 @@
1
1
  export declare const MOCK_SECTIONS: {
2
2
  administrativeTitle: string;
3
3
  appearanceTemplate: string;
4
- componentBlocks: (import("./sections/CustomSection/types").CB_CONTENTSCAROUSEL | import("./sections/CustomSection/types").CB_SLIDEBANNER | {
4
+ componentBlocks: (import("./sections/CustomSection/types").CB_LIST | import("./sections/CustomSection/types").CB_CONTENTSCAROUSEL | import("./sections/CustomSection/types").CB_SLIDEBANNER | {
5
5
  availablePlugins: never[];
6
6
  blockId: string;
7
7
  componentBlockCode: string;
@@ -999,6 +999,7 @@ export declare const MOCK_SECTIONS: {
999
999
  '188287': number;
1000
1000
  '188290': number;
1001
1001
  '188291': number;
1002
+ '188292': number;
1002
1003
  };
1003
1004
  mobile: {
1004
1005
  '188262': number;
@@ -1029,6 +1030,7 @@ export declare const MOCK_SECTIONS: {
1029
1030
  '188287': number;
1030
1031
  '188290': number;
1031
1032
  '188291': number;
1033
+ '188292': number;
1032
1034
  };
1033
1035
  };
1034
1036
  };
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MOCK_SECTIONS = void 0;
4
4
  var mock_contentsCarousel_1 = require("./mock_contentsCarousel");
5
+ var mock_contentsList_1 = require("./mock_contentsList");
5
6
  var mock_slideBanner_1 = require("./mock_slideBanner");
6
7
  exports.MOCK_SECTIONS = [
7
8
  {
@@ -10,6 +11,7 @@ exports.MOCK_SECTIONS = [
10
11
  componentBlocks: [
11
12
  mock_slideBanner_1.SAMPLE_SLIDEBANNER_CB,
12
13
  mock_contentsCarousel_1.SAMPLE_CONTENTSCAROUSEL_CB,
14
+ mock_contentsList_1.SAMPLE_LIST_CB,
13
15
  {
14
16
  availablePlugins: [],
15
17
  blockId: 'CB_188265',
@@ -4644,6 +4646,14 @@ exports.MOCK_SECTIONS = [
4644
4646
  type: 'COMPONENT_BLOCK',
4645
4647
  zOrderDesktopInternal: 28,
4646
4648
  zOrderMobileInternal: 28
4649
+ },
4650
+ {
4651
+ blockId: 'CB_188292',
4652
+ children: [],
4653
+ componentBlockId: 188292,
4654
+ type: 'COMPONENT_BLOCK',
4655
+ zOrderDesktopInternal: 28,
4656
+ zOrderMobileInternal: 28
4647
4657
  }
4648
4658
  ],
4649
4659
  componentBlockId: null,
@@ -4681,7 +4691,8 @@ exports.MOCK_SECTIONS = [
4681
4691
  '188286': 26,
4682
4692
  '188287': 19,
4683
4693
  '188290': 27,
4684
- '188291': 28
4694
+ '188291': 28,
4695
+ '188292': 29
4685
4696
  },
4686
4697
  mobile: {
4687
4698
  '188262': 10,
@@ -4711,7 +4722,8 @@ exports.MOCK_SECTIONS = [
4711
4722
  '188286': 25,
4712
4723
  '188287': 19,
4713
4724
  '188290': 27,
4714
- '188291': 28
4725
+ '188291': 28,
4726
+ '188292': 29
4715
4727
  }
4716
4728
  }
4717
4729
  },
@@ -20,6 +20,7 @@ var newUtils_1 = require("../../newUtils");
20
20
  var types_1 = require("../../types");
21
21
  var Button_1 = __importDefault(require("./componentBlocks/Button/Button"));
22
22
  var ContentsCarousel_1 = require("./componentBlocks/ContentsCarousel");
23
+ var ContentsList_1 = require("./componentBlocks/ContentsList");
23
24
  var Divider_1 = __importDefault(require("./componentBlocks/Divider/Divider"));
24
25
  var Embed_1 = __importDefault(require("./componentBlocks/Embed/Embed"));
25
26
  var Image_1 = __importDefault(require("./componentBlocks/Image/Image"));
@@ -57,6 +58,10 @@ function ComponentBlockMatcher(_a) {
57
58
  var compositions = cbProps.compositions;
58
59
  return ((0, jsx_runtime_1.jsx)(SlideBanner_1.SlideBanner, __assign({}, propsWithValue, { compositions: compositions, index: index })));
59
60
  }
61
+ case types_1.CB_ALL_CODES.CB_LIST: {
62
+ var compositions = cbProps.compositions;
63
+ return ((0, jsx_runtime_1.jsx)(ContentsList_1.ContentsList, __assign({}, propsWithValue, { compositions: compositions, index: index })));
64
+ }
60
65
  default:
61
66
  return (0, jsx_runtime_1.jsx)("div", { children: "Error: not supported CB" });
62
67
  }
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import type { CB_LIST } from '../../../../../../../DynamicLayout/sections/CustomSection/types';
3
+ import type { CB_LIST_PROPERTIES_TYPE, IndexForIntersection } from '../../../../../../../DynamicLayout/sections/CustomSection/util/types';
4
+ type Props = CB_LIST_PROPERTIES_TYPE & IndexForIntersection & {
5
+ compositions: CB_LIST['compositions'];
6
+ };
7
+ declare function ContentsList(props: Props): JSX.Element;
8
+ export default ContentsList;
@@ -0,0 +1,92 @@
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
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ var jsx_runtime_1 = require("react/jsx-runtime");
22
+ var react_1 = require("react");
23
+ var Composition_1 = __importDefault(require("../../../../../../../DynamicLayout/CompositionRenderer/Composition"));
24
+ var dynamicLayoutContext_1 = require("../../../../../../../DynamicLayout/dynamicLayoutContext");
25
+ var hooks_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/hooks");
26
+ var util_1 = require("../../../../../../../DynamicLayout/sections/CustomSection/util");
27
+ var styled_components_1 = __importDefault(require("styled-components"));
28
+ var S_CB_AnimationObserverBox_1 = require("../components/S_CB_AnimationObserverBox");
29
+ var S_CB_BoxWithShadow_1 = require("../components/S_CB_BoxWithShadow");
30
+ var CustomPagination_1 = require("./components/CustomPagination");
31
+ var contentsListUtils_1 = require("./contentsListUtils");
32
+ function ContentsList(props) {
33
+ var device = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext).device;
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];
37
+ var itemCounts = CB_CONTENT_PROP_CONTENTSLIST.CB_CONTENT_PROP_CONTENTSLIST_SPEC_ITEMCOUNTS;
38
+ 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 contentPropCss = (0, contentsListUtils_1.parseGridContentProp)({
41
+ props: CB_CONTENT_PROP_CONTENTSLIST
42
+ }).contentPropCss;
43
+ var _d = (0, contentsListUtils_1.parseGridStyleProp)({
44
+ props: CB_STYLE_PROP_CONTENTSLIST,
45
+ device: device
46
+ }), stylePropCss = _d.stylePropCss, hoverStylePropCss = _d.hoverStylePropCss;
47
+ var _e = (0, contentsListUtils_1.parsePaginationStyleProp)({
48
+ props: CB_STYLE_PROP_CONTENTSLIST,
49
+ device: device
50
+ }), paginationNormalStyle = _e.normalStyle, paginationHoverStyle = _e.hoverStyle;
51
+ var cbRef = (0, react_1.useRef)(null);
52
+ var entry = (0, hooks_1.useIntersectionObserver)(cbRef, { threshold: 0.2, freezeOnceVisible: false }, [
53
+ index
54
+ ]);
55
+ var isVisible = !!(entry === null || entry === void 0 ? void 0 : entry.isIntersecting);
56
+ var effectCssProperties = isVisible ? effect : {};
57
+ var isNoneEffectType = device === 'DESKTOP'
58
+ ? CB_EFFECT_PROP_ENTANIM.CB_EFFECT_PROP_ENTANIM_SPEC_TYPE === 'NONE'
59
+ : CB_EFFECT_PROP_ENTANIM['CB_EFFECT_PROP_ENTANIM_SPEC_TYPE:MOBILE'] === 'NONE';
60
+ var hasEffect = !isNoneEffectType;
61
+ var effectVisibleStyle = hasEffect
62
+ ? { opacity: isVisible ? 1 : 0, position: 'relative' }
63
+ : { position: 'relative' };
64
+ // eslint-disable-next-line
65
+ var handlePrevBtnClick = function () {
66
+ if (currentPage === 1)
67
+ return;
68
+ setCurrentPage(function (prev) { return prev - 1; });
69
+ };
70
+ // eslint-disable-next-line
71
+ var handleNextBtnClick = function () {
72
+ if (currentPage === totalPage)
73
+ return;
74
+ setCurrentPage(function (prev) { return prev + 1; });
75
+ };
76
+ var handleBulletClick = function (index) {
77
+ setCurrentPage(index + 1);
78
+ };
79
+ var startIndex = (currentPage - 1) * itemCounts;
80
+ 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
+ }
83
+ 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
+ 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) {
85
+ var contentPropCss = _a.contentPropCss;
86
+ return contentPropCss;
87
+ }, function (_a) {
88
+ var stylePropCss = _a.stylePropCss;
89
+ return stylePropCss;
90
+ });
91
+ exports.default = ContentsList;
92
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ import 'swiper/modules/navigation/navigation.min.css';
3
+ import 'swiper/swiper-bundle.css';
4
+ import type { SwiperProps, SwiperRef } from 'swiper/react/swiper-react.js';
5
+ export interface ContentsListCoreProps extends SwiperProps {
6
+ scrollbar?: SwiperProps['scrollbar'];
7
+ slidesPerView?: SwiperProps['slidesPerView'];
8
+ slidesPerGroup?: SwiperProps['slidesPerGroup'];
9
+ spaceBetween?: SwiperProps['spaceBetween'];
10
+ freeMode?: SwiperProps['freeMode'];
11
+ autoplay?: SwiperProps['autoplay'];
12
+ useAutoplay?: boolean;
13
+ loop?: SwiperProps['loop'];
14
+ children?: React.ReactNode[];
15
+ }
16
+ declare const ContentsListCore: import("react").ForwardRefExoticComponent<ContentsListCoreProps & import("react").RefAttributes<SwiperRef>>;
17
+ export default ContentsListCore;