pds-dev-kit-web-test 2.7.116 → 2.7.118

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 (22) hide show
  1. package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.js +2 -2
  2. package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItem.d.ts +2 -4
  3. package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItem.js +5 -7
  4. package/dist/src/sub/DynamicLayout/GridAutoRowEditor/GridAutoRowEditor.js +28 -63
  5. package/dist/src/sub/DynamicLayout/mock_componentBlocks.d.ts +0 -135
  6. package/dist/src/sub/DynamicLayout/mock_componentBlocks.js +1 -3
  7. package/dist/src/sub/DynamicLayout/mocks.js +3 -0
  8. package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.js +2 -2
  9. package/dist/src/sub/DynamicLayout/sections/CustomSection/FlexGridItem.d.ts +1 -1
  10. package/dist/src/sub/DynamicLayout/sections/CustomSection/FlexGridItem.js +2 -2
  11. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.js +0 -1
  12. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/components/CustomPagination.js +16 -14
  13. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.d.ts +2 -2
  14. package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +4 -14
  15. package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.js +11 -29
  16. package/package.json +1 -1
  17. package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItemForCCB.d.ts +0 -14
  18. package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItemForCCB.js +0 -68
  19. package/dist/src/sub/DynamicLayout/utils/groupUtils.d.ts +0 -24
  20. package/dist/src/sub/DynamicLayout/utils/groupUtils.js +0 -224
  21. /package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/{ComponentBlockMatcherWithCCB.d.ts → ComponentBlockMatcher.d.ts} +0 -0
  22. /package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/{ComponentBlockMatcherWithCCB.js → ComponentBlockMatcher.js} +0 -0
@@ -57,7 +57,7 @@ var parseStylePropBorder_1 = __importDefault(require("../sections/CustomSection/
57
57
  var parseStylePropShadow_1 = __importDefault(require("../sections/CustomSection/util/stylePropParsers/parseStylePropShadow"));
58
58
  var types_1 = require("../sections/CustomSection/util/stylePropParsers/types");
59
59
  var CompositionBackground_1 = __importDefault(require("./CompositionBackground"));
60
- var FlexGridItemForCCB_1 = __importDefault(require("./FlexGridItemForCCB"));
60
+ var FlexGridItem_1 = __importDefault(require("./FlexGridItem"));
61
61
  var Composition = (0, react_1.forwardRef)(function CustomSection(props, ref) {
62
62
  var _a, _b, _c, _d, _e;
63
63
  var _f = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _f.device, editingSectionId = _f.editingSectionId, mode = _f.mode, shortcutKeyMode = _f.shortcutKeyMode, sectionActionHandler = _f.sectionActionHandler, queryData = _f.queryData;
@@ -213,7 +213,7 @@ var Composition = (0, react_1.forwardRef)(function CustomSection(props, ref) {
213
213
  // fontSize: `${baseFontSize}px`
214
214
  } }, { children: (_e = props.componentBlocks) === null || _e === void 0 ? void 0 : _e.map(function (cb, index) {
215
215
  var _a;
216
- return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(FlexGridItemForCCB_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));
216
+ 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));
217
217
  }) })) })) })) })) })) }));
218
218
  });
219
219
  var MOCK_BORDER = {
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import type { ComponentBlock } from '../sections/CustomSection/types';
3
- import type { CB_PLACEMENT_PROP_SPECS, Device } from '../sections/CustomSection/util/types';
3
+ import type { Device } from '../sections/CustomSection/util/types';
4
4
  type Props = {
5
5
  cb: ComponentBlock;
6
6
  index: number;
@@ -9,8 +9,6 @@ type Props = {
9
9
  zIndex: number;
10
10
  showPinned?: boolean;
11
11
  style?: React.CSSProperties;
12
- isParentGroupPinned: boolean;
13
12
  };
14
- declare function FlexGridItem({ cb, index, device, rowHeight, zIndex, showPinned, style, isParentGroupPinned }: Props): JSX.Element;
15
- export declare function getGridAreaFromCB(props: CB_PLACEMENT_PROP_SPECS, device: Device): string;
13
+ declare function FlexGridItem({ cb, index, device, rowHeight, zIndex, showPinned, style }: Props): JSX.Element;
16
14
  export default FlexGridItem;
@@ -18,20 +18,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.getGridAreaFromCB = void 0;
22
21
  var jsx_runtime_1 = require("react/jsx-runtime");
23
22
  var react_1 = require("react");
24
23
  var styled_components_1 = __importDefault(require("styled-components"));
25
- var ComponentBlockMatcherWithCCB_1 = __importDefault(require("../sections/CustomSection/components/ComponentBlock/ComponentBlockMatcherWithCCB"));
24
+ var ComponentBlockMatcher_1 = __importDefault(require("../sections/CustomSection/components/ComponentBlock/ComponentBlockMatcher"));
25
+ require("./ComponentBlockMatcher");
26
26
  var gap = 10;
27
27
  function FlexGridItem(_a) {
28
- var cb = _a.cb, index = _a.index, device = _a.device, rowHeight = _a.rowHeight, zIndex = _a.zIndex, showPinned = _a.showPinned, style = _a.style, isParentGroupPinned = _a.isParentGroupPinned;
28
+ var cb = _a.cb, index = _a.index, device = _a.device, rowHeight = _a.rowHeight, zIndex = _a.zIndex, showPinned = _a.showPinned, style = _a.style;
29
29
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
30
  var defaultHeight = getMaxHeight(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device, rowHeight);
31
31
  var gridArea = getGridAreaFromCB(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device);
32
- var _b = (0, react_1.useState)(false), isCBPinned = _b[0], setIsCBPinned = _b[1];
33
- var isPinned = isParentGroupPinned || isCBPinned;
34
- return ((0, jsx_runtime_1.jsxs)(GridItem, __assign({ style: __assign({ zIndex: zIndex, gridArea: gridArea, position: 'relative', maxHeight: isPinned ? defaultHeight : 'none' }, style) }, { children: [showPinned && ((0, jsx_runtime_1.jsx)(S_Pinned, { children: isCBPinned ? ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", disabled: isParentGroupPinned, onClick: function () { return setIsCBPinned(false); } }, { children: "H\uACE0\uC815\uB428 \uD83D\uDCCC" }))) : ((0, jsx_runtime_1.jsx)("button", __assign({ disabled: isParentGroupPinned, type: "button", onClick: function () { return setIsCBPinned(true); } }, { children: "H\uB298\uC5B4\uB0A8 \uD83E\uDEB1" }))) })), (0, jsx_runtime_1.jsx)(ComponentBlockMatcherWithCCB_1.default, { rowHeight: rowHeight, cbProps: cb, device: device, index: index })] })));
32
+ var _b = (0, react_1.useState)(false), isPinned = _b[0], setIsPinned = _b[1];
33
+ return ((0, jsx_runtime_1.jsxs)(GridItem, __assign({ style: __assign({ zIndex: zIndex, gridArea: gridArea, position: 'relative', maxHeight: isPinned ? defaultHeight : 'none' }, style) }, { children: [showPinned && ((0, jsx_runtime_1.jsx)(S_Pinned, { children: isPinned ? ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return setIsPinned(false); } }, { children: "H\uACE0\uC815\uB428 \uD83D\uDCCC" }))) : ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return setIsPinned(true); } }, { children: "H\uB298\uC5B4\uB0A8 \uD83E\uDEB1" }))) })), (0, jsx_runtime_1.jsx)(ComponentBlockMatcher_1.default, { rowHeight: rowHeight, cbProps: cb, device: device, index: index })] })));
35
34
  }
36
35
  var S_Pinned = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"], ["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"])));
37
36
  var GridItem = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n height: auto;\n word-break: break-word;\n"], ["\n height: auto;\n word-break: break-word;\n"])));
@@ -66,6 +65,5 @@ function getGridAreaFromCB(props, device) {
66
65
  var colEnd = colsMobile + colStart;
67
66
  return "".concat(rowStart, " / ").concat(colStart, " / ").concat(rowEnd, " / ").concat(colEnd);
68
67
  }
69
- exports.getGridAreaFromCB = getGridAreaFromCB;
70
68
  exports.default = FlexGridItem;
71
69
  var templateObject_1, templateObject_2;
@@ -55,6 +55,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
55
55
  var group_1 = require("publ-echo-test/dist/lib/GridLayoutEditor/group");
56
56
  var renderHelpers_1 = require("publ-echo-test/dist/lib/GridLayoutEditor/utils/renderHelpers");
57
57
  require("publ-echo/dist/lib/GridItem/OutsideClickHandler");
58
+ var group_2 = require("publ-echo/dist/lib/GridLayoutEditor/group");
58
59
  var react_1 = __importStar(require("react"));
59
60
  var ErrorBoundary_1 = require("../../DynamicLayout/components/Section/ErrorBoundary");
60
61
  var dynamicLayoutContext_1 = require("../../DynamicLayout/dynamicLayoutContext");
@@ -65,7 +66,6 @@ var gleStyles_1 = require("../gleStyles");
65
66
  var useResizableObserver_1 = require("../sections/CustomSection/hooks/useResizableObserver");
66
67
  var util_1 = require("../sections/CustomSection/util");
67
68
  var parseSectionPadding_1 = __importDefault(require("../sections/CustomSection/util/layoutPropParsers/parseSectionPadding"));
68
- var groupUtils_1 = __importDefault(require("../utils/groupUtils"));
69
69
  var GRID_CELL_MIN = 24;
70
70
  var DESKTOP_GRID_COLS = 24;
71
71
  var MOBILE_GRID_COLS = 8;
@@ -77,15 +77,16 @@ var GLE_MIN_WIDTH_MOBILE_PX = "".concat(GRID_CELL_MIN * MOBILE_GRID_COLS, "px");
77
77
  // queryData: QueryData;
78
78
  // };
79
79
  var GridAutoRowEditor = (0, react_1.forwardRef)(function CustomSection(props, ref) {
80
- var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, editingSectionId = _a.editingSectionId, mode = _a.mode, shortcutKeyMode = _a.shortcutKeyMode, sectionActionHandler = _a.sectionActionHandler, queryData = _a.queryData;
80
+ var _a, _b;
81
+ var _c = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _c.device, editingSectionId = _c.editingSectionId, mode = _c.mode, shortcutKeyMode = _c.shortcutKeyMode, sectionActionHandler = _c.sectionActionHandler, queryData = _c.queryData;
81
82
  var componentBlocks = props.componentBlocks, jsonProperties = props.jsonProperties;
82
- var _b = jsonProperties, _c = _b.data, CB_PLACEMENT_PROP_SECTION = _c.CB_PLACEMENT_PROP_SECTION, CB_LAYOUT_PROP_PADDING = _c.CB_LAYOUT_PROP_PADDING, zOrders = _b.zOrders;
83
+ var _d = jsonProperties, _e = _d.data, CB_PLACEMENT_PROP_SECTION = _e.CB_PLACEMENT_PROP_SECTION, CB_LAYOUT_PROP_PADDING = _e.CB_LAYOUT_PROP_PADDING, zOrders = _d.zOrders;
83
84
  var layouts = (0, util_1.parsePlacement)(componentBlocks !== null && componentBlocks !== void 0 ? componentBlocks : [], zOrders);
84
85
  var containerRef = (0, react_1.useRef)(null);
85
86
  var size = (0, useResizableObserver_1.useResizeObserver)({ ref: containerRef, box: 'border-box' });
86
- var _d = (0, react_1.useState)(null), selectedCB = _d[0], setSelectedCB = _d[1];
87
+ var _f = (0, react_1.useState)(null), selectedCB = _f[0], setSelectedCB = _f[1];
87
88
  var gleRef = (0, react_1.useRef)(null);
88
- var _e = (0, react_1.useState)([]), selectedRows = _e[0], setSelectedRows = _e[1]; // 빈 배열로 초기화
89
+ var _g = (0, react_1.useState)([]), selectedRows = _g[0], setSelectedRows = _g[1]; // 빈 배열로 초기화
89
90
  var isMobile = device === 'MOBILE';
90
91
  var isEditMode = mode === 'EDIT';
91
92
  // const layoutByDevice = device === 'DESKTOP' ? 'lg' : 'sm';
@@ -143,10 +144,10 @@ var GridAutoRowEditor = (0, react_1.forwardRef)(function CustomSection(props, re
143
144
  setSelectedCB('BULK');
144
145
  }
145
146
  }, [selectedCB, shortcutKeyMode, sectionActionHandler, setSelectedCB]);
146
- var _f = (0, util_1.parseCustomSectionPlacement)({
147
+ var _h = (0, util_1.parseCustomSectionPlacement)({
147
148
  isMobile: isMobile,
148
149
  customSectionProps: CB_PLACEMENT_PROP_SECTION
149
- }), width = _f.width, minHeight = _f.minHeight, isFullWidth = _f.isFullWidth;
150
+ }), width = _h.width, minHeight = _h.minHeight, isFullWidth = _h.isFullWidth;
150
151
  var customSectionStyles = {
151
152
  minHeight: "".concat(minHeight, "vh"),
152
153
  width: '100%',
@@ -205,25 +206,13 @@ var GridAutoRowEditor = (0, react_1.forwardRef)(function CustomSection(props, re
205
206
  return 16;
206
207
  })();
207
208
  var pedigree = jsonProperties === null || jsonProperties === void 0 ? void 0 : jsonProperties.pedigree;
208
- // const [editingGroupBlock, setEditingGroupBlock] = useState<string>('ROOT');
209
- // const editableCBIds = findDirectChildrenCbIds(pedigree, 'ROOT');
210
- // const groupblocks = findGroupBlocks(pedigree, editingGroupBlock) ?? [];
211
- // const handleGroupBlockDoubleClick = (blockId: string) => {
212
- // setEditingGroupBlock(blockId);
213
- // };
214
- var _g = (0, react_1.useState)([]), pinnedGBs = _g[0], setPinnedGBs = _g[1];
215
- // const pinnedChildrens = pinnedGBs.map((gbId) => findAllChildrenCbIds(pedigree, gbId)).flat();
216
- // const currentDepthCbs = props.componentBlocks?.filter((cb) => {
217
- // return editableCBIds.includes(cb.id);
218
- // });
219
- var onToggleGBPinned = function (gbId) {
220
- setPinnedGBs(function (prev) {
221
- if (prev.includes(gbId)) {
222
- return prev.filter(function (id) { return id !== gbId; });
223
- }
224
- return __spreadArray(__spreadArray([], prev, true), [gbId], false);
225
- });
209
+ var _j = (0, react_1.useState)('ROOT'), editingGroupBlock = _j[0], setEditingGroupBlock = _j[1];
210
+ var editableCBIds = (0, group_2.findDirectChildrenCbIds)(pedigree, editingGroupBlock);
211
+ var groupblocks = (_a = (0, group_1.findGroupBlocks)(pedigree, editingGroupBlock)) !== null && _a !== void 0 ? _a : [];
212
+ var handleGroupBlockDoubleClick = function (blockId) {
213
+ setEditingGroupBlock(blockId);
226
214
  };
215
+ console.log(editingGroupBlock);
227
216
  return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(dynamicLayoutContext_1.dynamicLayoutContext.Provider, __assign({ value: {
228
217
  device: device,
229
218
  mode: mode,
@@ -270,26 +259,19 @@ var GridAutoRowEditor = (0, react_1.forwardRef)(function CustomSection(props, re
270
259
  backgroundColor: '#e8e1e189',
271
260
  border: '1px solid #6b666688'
272
261
  }, "data-row": rIdx + 1, "data-col": cIdx + 1 }, "bg-grid-item-".concat(rIdx + 1, "-").concat(cIdx + 1))); }) }), "bg-grid-row-".concat(rIdx + 1)));
273
- }), pedigree.children.map(function (child) { return ((0, jsx_runtime_1.jsx)(groupUtils_1.default, { block: child, rowHeight: rowHeight, layoutItems: layouts[device === 'DESKTOP' ? 'lg' : 'sm'], cbs: props.componentBlocks, device: device, selectedRows: selectedRows, pinnedGBs: pinnedGBs, onToggleGBPinned: onToggleGBPinned, isEditMode: true }, child.blockId)); })] })) })) })) }) })) }));
262
+ }), (_b = props.componentBlocks) === null || _b === void 0 ? void 0 : _b.map(function (cb, index) {
263
+ var _a;
264
+ 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, style: editableCBIds.includes(cb.id)
265
+ ? { pointerEvents: 'none', boxShadow: '0 0 0 3px #e602ff' }
266
+ : { pointerEvents: 'none', opacity: 0.3 }, showPinned: editableCBIds.includes(cb.id) }) }, cb.id));
267
+ }), groupblocks.map(function (groupblock, gIdx) {
268
+ return ((0, jsx_runtime_1.jsx)(GroupBlockRender, { block: groupblock, layouts: layouts, pedigree: pedigree, onDoubleClick: function () { return handleGroupBlockDoubleClick(groupblock.blockId); } }, groupblock.blockId));
269
+ })] })) })) })) }) })) }));
274
270
  });
275
271
  function GroupBlockRender(_a) {
276
- var block = _a.block, layouts = _a.layouts, pedigree = _a.pedigree, isEditing = _a.isEditing, isPinned = _a.isPinned, componentBlocks = _a.componentBlocks, onTogglePinned = _a.onTogglePinned, onDoubleClick = _a.onDoubleClick, onDoubleClickOutside = _a.onDoubleClickOutside;
272
+ var block = _a.block, layouts = _a.layouts, pedigree = _a.pedigree, onDoubleClick = _a.onDoubleClick;
277
273
  var childrenIds = (0, group_1.findAllChildrenCbIds)(pedigree, block.blockId).map(function (i) { return i.toString(); });
278
- var bounding = (0, renderHelpers_1.getBoundingArea)(layouts, childrenIds);
279
- (0, react_1.useEffect)(function () {
280
- if (!isEditing) {
281
- return;
282
- }
283
- function handleDoubleClickOutside(e) {
284
- if (!e.target.closest('.group')) {
285
- onDoubleClickOutside();
286
- }
287
- }
288
- document.addEventListener('dblclick', handleDoubleClickOutside);
289
- return function () {
290
- document.removeEventListener('dblclick', handleDoubleClickOutside);
291
- };
292
- }, [isEditing]);
274
+ var bounding = (0, renderHelpers_1.getBoundingArea)(layouts.lg, childrenIds);
293
275
  if (!bounding) {
294
276
  return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
295
277
  }
@@ -299,25 +281,8 @@ function GroupBlockRender(_a) {
299
281
  cols: bounding.w,
300
282
  rows: bounding.h
301
283
  });
302
- var children = componentBlocks === null || componentBlocks === void 0 ? void 0 : componentBlocks.filter(function (cb) { return childrenIds.includes(cb.id.toString()); });
303
- if (childrenIds.length === 0) {
304
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: "\uB529\uD06C\uADF8\uB8F9" });
305
- }
306
- return ((0, jsx_runtime_1.jsxs)("div", __assign({ style: {
307
- gridArea: gridArea,
308
- position: 'relative',
309
- width: '100%',
310
- height: '100%'
311
- }, onDoubleClick: onDoubleClick }, { children: [!isEditing && ((0, jsx_runtime_1.jsx)(S_Pinned, { children: isPinned ? ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: onTogglePinned }, { children: "(\uADF8\uB8F9)H\uACE0\uC815\uB428 \uD83D\uDCCC" }))) : ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: onTogglePinned }, { children: "(\uADF8\uB8F9)H\uB298\uC5B4\uB0A8 \uD83E\uDEB1" }))) })), (0, jsx_runtime_1.jsx)("div", { className: "group", style: {
312
- position: 'absolute',
313
- top: 0,
314
- left: 0,
315
- right: 0,
316
- bottom: 0,
317
- boxShadow: '0 0 0 3px #e602ff'
318
- } }), children === null || children === void 0 ? void 0 : children.map(function (cb, index) { return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(FlexGridItem_1.default, { cb: cb, index: index, device: "DESKTOP", rowHeight: 50, zIndex: 0, style: { pointerEvents: 'none', opacity: isEditing ? 1 : 0.3 }, showPinned: isEditing, isParentGroupPinned: isPinned }) }, cb.id)); })] })));
284
+ return ((0, jsx_runtime_1.jsx)("div", { className: "group", style: { gridArea: gridArea, boxShadow: '0 0 0 3px #e602ff' }, onDoubleClick: onDoubleClick }));
319
285
  }
320
- var S_Pinned = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"], ["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"])));
321
286
  function getGridAreaFromGroup(position) {
322
287
  var x = position.x, y = position.y, cols = position.cols, rows = position.rows;
323
288
  var colStart = clamp(x + 1, 1, Math.max(1, 25 - cols));
@@ -338,7 +303,7 @@ function getGridAreaFromGroup(position) {
338
303
  function clamp(num, min, max) {
339
304
  return Math.max(Math.min(num, max), min);
340
305
  }
341
- var GridContainer = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: grid; /* Space between grid items */\n gap: 10px;\n grid-auto-rows: minmax(", ", auto);\n grid-template-columns: repeat(", ", 1fr);\n\n grid-template-rows: ", "; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n padding: 10px 10px;\n\n * {\n box-sizing: border-box;\n }\n\n .bg-grid-item {\n transition: background-color 0.2s ease;\n }\n\n /* 1. \uAE30\uBCF8 \uD638\uBC84 (\uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC744 \uB54C) */\n .bg-grid-row:not(.selected):hover > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 2. 'selected' \uD074\uB798\uC2A4\uAC00 \uBD99\uC740 \uD589\uC758 \uC544\uC774\uD15C (\uC120\uD0DD\uB428) */\n .bg-grid-row.selected > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 3. \uC120\uD0DD\uB41C \uD589\uC5D0 \uD638\uBC84\uD588\uC744 \uB54C */\n .bg-grid-row.selected:hover > .bg-grid-item {\n background-color: #ffc0cb !important; /* \uD551\uD06C\uC0C9 */\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\n grid-template-rows: ", "; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n padding: 10px 10px;\n\n * {\n box-sizing: border-box;\n }\n\n .bg-grid-item {\n transition: background-color 0.2s ease;\n }\n\n /* 1. \uAE30\uBCF8 \uD638\uBC84 (\uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC744 \uB54C) */\n .bg-grid-row:not(.selected):hover > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 2. 'selected' \uD074\uB798\uC2A4\uAC00 \uBD99\uC740 \uD589\uC758 \uC544\uC774\uD15C (\uC120\uD0DD\uB428) */\n .bg-grid-row.selected > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 3. \uC120\uD0DD\uB41C \uD589\uC5D0 \uD638\uBC84\uD588\uC744 \uB54C */\n .bg-grid-row.selected:hover > .bg-grid-item {\n background-color: #ffc0cb !important; /* \uD551\uD06C\uC0C9 */\n }\n"])), function (props) { return "".concat(props.rowHeight, "px"); }, function (props) { return props.cols; }, function (props) {
306
+ 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\n grid-template-rows: ", "; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n padding: 10px 10px;\n\n * {\n box-sizing: border-box;\n }\n\n .bg-grid-item {\n transition: background-color 0.2s ease;\n }\n\n /* 1. \uAE30\uBCF8 \uD638\uBC84 (\uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC744 \uB54C) */\n .bg-grid-row:not(.selected):hover > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 2. 'selected' \uD074\uB798\uC2A4\uAC00 \uBD99\uC740 \uD589\uC758 \uC544\uC774\uD15C (\uC120\uD0DD\uB428) */\n .bg-grid-row.selected > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 3. \uC120\uD0DD\uB41C \uD589\uC5D0 \uD638\uBC84\uD588\uC744 \uB54C */\n .bg-grid-row.selected:hover > .bg-grid-item {\n background-color: #ffc0cb !important; /* \uD551\uD06C\uC0C9 */\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\n grid-template-rows: ", "; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n padding: 10px 10px;\n\n * {\n box-sizing: border-box;\n }\n\n .bg-grid-item {\n transition: background-color 0.2s ease;\n }\n\n /* 1. \uAE30\uBCF8 \uD638\uBC84 (\uC120\uD0DD\uB418\uC9C0 \uC54A\uC558\uC744 \uB54C) */\n .bg-grid-row:not(.selected):hover > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 2. 'selected' \uD074\uB798\uC2A4\uAC00 \uBD99\uC740 \uD589\uC758 \uC544\uC774\uD15C (\uC120\uD0DD\uB428) */\n .bg-grid-row.selected > .bg-grid-item {\n background-color: #90ee90 !important; /* \uC5F0\uB450\uC0C9 */\n }\n\n /* 3. \uC120\uD0DD\uB41C \uD589\uC5D0 \uD638\uBC84\uD588\uC744 \uB54C */\n .bg-grid-row.selected:hover > .bg-grid-item {\n background-color: #ffc0cb !important; /* \uD551\uD06C\uC0C9 */\n }\n"])), function (props) { return "".concat(props.rowHeight, "px"); }, function (props) { return props.cols; }, function (props) {
342
307
  // 전체 행 개수만큼 배열을 생성하여 각 행의 CSS 값을 정의합니다.
343
308
  return Array.from({ length: props.sectionRow })
344
309
  .map(function (_, index) {
@@ -350,7 +315,7 @@ var GridContainer = styled_components_1.default.div(templateObject_2 || (templat
350
315
  )
351
316
  .join(' ');
352
317
  });
353
- var S_SectionWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
318
+ var S_SectionWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
354
319
  exports.default = react_1.default.memo(GridAutoRowEditor);
355
320
  function getDefensiveFontSize(device, width) {
356
321
  if (device === 'MOBILE') {
@@ -358,4 +323,4 @@ function getDefensiveFontSize(device, width) {
358
323
  }
359
324
  return width * (0.0000246 * width - 0.01618);
360
325
  }
361
- var templateObject_1, templateObject_2, templateObject_3;
326
+ var templateObject_1, templateObject_2;
@@ -178,8 +178,6 @@ export declare const MOCK_COMPONENT_BLOCKS: ({
178
178
  };
179
179
  CB_CONTENT_PROP_TEXT: {
180
180
  CB_CONTENT_PROP_TEXT_SPEC_TEXT: string;
181
- CB_CONTENT_PROP_TEXT_SPEC_PREFIX?: undefined;
182
- CB_CONTENT_PROP_TEXT_SPEC_SUFFIX?: undefined;
183
181
  };
184
182
  CB_CONTENT_PROP_VISIBILITY: {
185
183
  CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: boolean;
@@ -390,137 +388,6 @@ export declare const MOCK_COMPONENT_BLOCKS: ({
390
388
  };
391
389
  CB_CONTENT_PROP_TEXT: {
392
390
  CB_CONTENT_PROP_TEXT_SPEC_TEXT: string;
393
- CB_CONTENT_PROP_TEXT_SPEC_PREFIX: string;
394
- CB_CONTENT_PROP_TEXT_SPEC_SUFFIX: string;
395
- };
396
- CB_CONTENT_PROP_VISIBILITY: {
397
- CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: boolean;
398
- CB_CONTENT_PROP_VISIBILITY_SPEC_MOBILEWEB: boolean;
399
- };
400
- CB_EFFECT_PROP_ENTANIM: {
401
- CB_EFFECT_PROP_ENTANIM_SPEC_DURATION: number;
402
- 'CB_EFFECT_PROP_ENTANIM_SPEC_DURATION:MOBILE': null;
403
- CB_EFFECT_PROP_ENTANIM_SPEC_REPEAT: number;
404
- 'CB_EFFECT_PROP_ENTANIM_SPEC_REPEAT:MOBILE': null;
405
- CB_EFFECT_PROP_ENTANIM_SPEC_TFUNC: string;
406
- 'CB_EFFECT_PROP_ENTANIM_SPEC_TFUNC:MOBILE': null;
407
- CB_EFFECT_PROP_ENTANIM_SPEC_TYPE: string;
408
- 'CB_EFFECT_PROP_ENTANIM_SPEC_TYPE:MOBILE': null;
409
- };
410
- CB_EFFECT_PROP_HOVERANIM: {
411
- CB_EFFECT_PROP_HOVERANIM_SPEC_DURATION: number;
412
- 'CB_EFFECT_PROP_HOVERANIM_SPEC_DURATION:MOBILE': null;
413
- CB_EFFECT_PROP_HOVERANIM_SPEC_REPEAT: number;
414
- 'CB_EFFECT_PROP_HOVERANIM_SPEC_REPEAT:MOBILE': null;
415
- CB_EFFECT_PROP_HOVERANIM_SPEC_TFUNC: string;
416
- 'CB_EFFECT_PROP_HOVERANIM_SPEC_TFUNC:MOBILE': null;
417
- CB_EFFECT_PROP_HOVERANIM_SPEC_TYPE: string;
418
- 'CB_EFFECT_PROP_HOVERANIM_SPEC_TYPE:MOBILE': null;
419
- };
420
- CB_LAYOUT_PROP_PADDING: {
421
- CB_LAYOUT_PROP_PADDING_SPEC_FIX: boolean;
422
- 'CB_LAYOUT_PROP_PADDING_SPEC_FIX:MOBILE': null;
423
- CB_LAYOUT_PROP_PADDING_SPEC_PADDING: {
424
- bottom: number;
425
- left: number;
426
- right: number;
427
- top: number;
428
- };
429
- 'CB_LAYOUT_PROP_PADDING_SPEC_PADDING:MOBILE': {
430
- bottom: number;
431
- left: number;
432
- right: number;
433
- top: number;
434
- };
435
- };
436
- CB_PLACEMENT_PROP_PLACEMENT: {
437
- CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS: number;
438
- 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS:MOBILE': number;
439
- CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS: number;
440
- 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE': number;
441
- CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX: number;
442
- 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX:MOBILE': number;
443
- CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY: number;
444
- 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY:MOBILE': number;
445
- CB_PLACEMENT_PROP_PLACEMENT_SPEC_ZINDEX: number;
446
- 'CB_PLACEMENT_PROP_PLACEMENT_SPEC_ZINDEX:MOBILE': number;
447
- };
448
- CB_STYLE_PROP_OPACITY: {
449
- CB_STYLE_PROP_OPACITY_SPEC_OPACITY: number;
450
- 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:HOVER': null;
451
- 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:MOBILE': null;
452
- 'CB_STYLE_PROP_OPACITY_SPEC_OPACITY:MOBILE:HOVER': null;
453
- };
454
- CB_STYLE_PROP_TEXT: {
455
- CB_STYLE_PROP_TEXT_SPEC_COLOR: string;
456
- 'CB_STYLE_PROP_TEXT_SPEC_COLOR:HOVER': null;
457
- 'CB_STYLE_PROP_TEXT_SPEC_COLOR:MOBILE': null;
458
- 'CB_STYLE_PROP_TEXT_SPEC_COLOR:MOBILE:HOVER': null;
459
- CB_STYLE_PROP_TEXT_SPEC_HORIZONTAL: string;
460
- 'CB_STYLE_PROP_TEXT_SPEC_HORIZONTAL:HOVER': null;
461
- 'CB_STYLE_PROP_TEXT_SPEC_HORIZONTAL:MOBILE': null;
462
- 'CB_STYLE_PROP_TEXT_SPEC_HORIZONTAL:MOBILE:HOVER': null;
463
- CB_STYLE_PROP_TEXT_SPEC_LETTERSPACING: number;
464
- 'CB_STYLE_PROP_TEXT_SPEC_LETTERSPACING:HOVER': null;
465
- 'CB_STYLE_PROP_TEXT_SPEC_LETTERSPACING:MOBILE': null;
466
- 'CB_STYLE_PROP_TEXT_SPEC_LETTERSPACING:MOBILE:HOVER': null;
467
- CB_STYLE_PROP_TEXT_SPEC_LINEHEIGHT: number;
468
- 'CB_STYLE_PROP_TEXT_SPEC_LINEHEIGHT:HOVER': null;
469
- 'CB_STYLE_PROP_TEXT_SPEC_LINEHEIGHT:MOBILE': null;
470
- 'CB_STYLE_PROP_TEXT_SPEC_LINEHEIGHT:MOBILE:HOVER': null;
471
- CB_STYLE_PROP_TEXT_SPEC_SIZE: number;
472
- 'CB_STYLE_PROP_TEXT_SPEC_SIZE:HOVER': null;
473
- 'CB_STYLE_PROP_TEXT_SPEC_SIZE:MOBILE': null;
474
- 'CB_STYLE_PROP_TEXT_SPEC_SIZE:MOBILE:HOVER': null;
475
- CB_STYLE_PROP_TEXT_SPEC_TYPEFACE: string;
476
- 'CB_STYLE_PROP_TEXT_SPEC_TYPEFACE:HOVER': null;
477
- 'CB_STYLE_PROP_TEXT_SPEC_TYPEFACE:MOBILE': null;
478
- 'CB_STYLE_PROP_TEXT_SPEC_TYPEFACE:MOBILE:HOVER': null;
479
- CB_STYLE_PROP_TEXT_SPEC_VERTICAL: string;
480
- 'CB_STYLE_PROP_TEXT_SPEC_VERTICAL:HOVER': null;
481
- 'CB_STYLE_PROP_TEXT_SPEC_VERTICAL:MOBILE': null;
482
- 'CB_STYLE_PROP_TEXT_SPEC_VERTICAL:MOBILE:HOVER': null;
483
- CB_STYLE_PROP_TEXT_SPEC_WEIGHT: number;
484
- 'CB_STYLE_PROP_TEXT_SPEC_WEIGHT:HOVER': null;
485
- 'CB_STYLE_PROP_TEXT_SPEC_WEIGHT:MOBILE': null;
486
- 'CB_STYLE_PROP_TEXT_SPEC_WEIGHT:MOBILE:HOVER': null;
487
- };
488
- CB_CONTENT_PROP_IMAGE?: undefined;
489
- CB_STYLE_PROP_BORDER?: undefined;
490
- CB_STYLE_PROP_IMAGE?: undefined;
491
- CB_STYLE_PROP_SHADOW?: undefined;
492
- CB_STYLE_PROP_COLOR?: undefined;
493
- };
494
- minVersion: string;
495
- version: string;
496
- };
497
- queryableDefinitionPreset: string;
498
- queryableTapSrc: string;
499
- updatedAt: string;
500
- } | {
501
- availablePlugins: never[];
502
- blockId: string;
503
- componentBlockCode: string;
504
- componentBlockType: string;
505
- dynamicLayoutSectionId: number;
506
- id: number;
507
- insertedAt: string;
508
- jsonProperties: {
509
- currentVersion: string;
510
- data: {
511
- CB_CONTENT_PROP_CLINK: {
512
- CB_CONTENT_PROP_CLINK_SPEC_INTERNALSRC: string;
513
- CB_CONTENT_PROP_CLINK_SPEC_NEWTAB: boolean;
514
- CB_CONTENT_PROP_CLINK_SPEC_SRC: string;
515
- CB_CONTENT_PROP_CLINK_SPEC_TYPE: string;
516
- };
517
- CB_CONTENT_PROP_HOVER: {
518
- CB_CONTENT_PROP_HOVER_SPEC_MUSE: boolean;
519
- };
520
- CB_CONTENT_PROP_TEXT: {
521
- CB_CONTENT_PROP_TEXT_SPEC_TEXT: string;
522
- CB_CONTENT_PROP_TEXT_SPEC_PREFIX?: undefined;
523
- CB_CONTENT_PROP_TEXT_SPEC_SUFFIX?: undefined;
524
391
  };
525
392
  CB_CONTENT_PROP_VISIBILITY: {
526
393
  CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: boolean;
@@ -806,8 +673,6 @@ export declare const MOCK_COMPONENT_BLOCKS: ({
806
673
  };
807
674
  CB_CONTENT_PROP_TEXT: {
808
675
  CB_CONTENT_PROP_TEXT_SPEC_TEXT: string;
809
- CB_CONTENT_PROP_TEXT_SPEC_PREFIX?: undefined;
810
- CB_CONTENT_PROP_TEXT_SPEC_SUFFIX?: undefined;
811
676
  };
812
677
  CB_CONTENT_PROP_VISIBILITY: {
813
678
  CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: boolean;
@@ -1171,9 +1171,7 @@ exports.MOCK_COMPONENT_BLOCKS = [
1171
1171
  CB_CONTENT_PROP_HOVER_SPEC_MUSE: true
1172
1172
  },
1173
1173
  CB_CONTENT_PROP_TEXT: {
1174
- CB_CONTENT_PROP_TEXT_SPEC_TEXT: "Today's Book Highlight",
1175
- CB_CONTENT_PROP_TEXT_SPEC_PREFIX: '[Prefix]',
1176
- CB_CONTENT_PROP_TEXT_SPEC_SUFFIX: '[Suffix]'
1174
+ CB_CONTENT_PROP_TEXT_SPEC_TEXT: "Today's Book Highlight"
1177
1175
  },
1178
1176
  CB_CONTENT_PROP_VISIBILITY: {
1179
1177
  CB_CONTENT_PROP_VISIBILITY_SPEC_DESKTOP: true,
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MOCK_SECTIONS = void 0;
4
+ require("./mock_componentBlocks");
4
5
  var mock_contentsCarousel_1 = require("./mock_contentsCarousel");
5
6
  var mock_contentsList_1 = require("./mock_contentsList");
6
7
  var mock_slideBanner_1 = require("./mock_slideBanner");
8
+ require("./mock_video");
9
+ require("./types");
7
10
  exports.MOCK_SECTIONS = [
8
11
  {
9
12
  administrativeTitle: 'Daily Pages',
@@ -60,7 +60,7 @@ var dynamicLayoutContext_1 = require("../../../DynamicLayout/dynamicLayoutContex
60
60
  var gleStyles_1 = require("../../../DynamicLayout/gleStyles");
61
61
  var styled_components_1 = __importDefault(require("styled-components"));
62
62
  var components_1 = require("../../components");
63
- var ComponentBlockMatcherWithCCB_1 = __importDefault(require("./components/ComponentBlock/ComponentBlockMatcherWithCCB"));
63
+ var ComponentBlockMatcher_1 = __importDefault(require("./components/ComponentBlock/ComponentBlockMatcher"));
64
64
  var S_HiddenCover_1 = require("./components/ComponentBlock/componentBlocks/components/S_HiddenCover");
65
65
  var clsx_1 = require("./newUtils/clsx");
66
66
  var group_2 = require("./newUtils/group");
@@ -1084,7 +1084,7 @@ var CustomSection = (0, react_1.forwardRef)(function CustomSection(props, ref) {
1084
1084
  e.stopPropagation();
1085
1085
  e.preventDefault();
1086
1086
  onContextMenuCB(matchedCB.id, e);
1087
- } }, { children: (0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(ComponentBlockMatcherWithCCB_1.default, { cbProps: matchedCB, device: device, rowHeight: rowHeight, index: index }) }) })) }), each.i));
1087
+ } }, { children: (0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(ComponentBlockMatcher_1.default, { cbProps: matchedCB, device: device, rowHeight: rowHeight, index: index }) }) })) }), each.i));
1088
1088
  }) })) })) }))] })) }));
1089
1089
  });
1090
1090
  function isLayoutPlacementSame(current, prev) {
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import type { ComponentBlock } from './types';
2
+ import { type ComponentBlock } from './types';
3
3
  import type { Device } from './util/types';
4
4
  type Props = {
5
5
  cb: ComponentBlock;
@@ -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 styled_components_1 = __importDefault(require("styled-components"));
23
- var ComponentBlockMatcherWithCCB_1 = __importDefault(require("./components/ComponentBlock/ComponentBlockMatcherWithCCB"));
23
+ var ComponentBlockMatcher_1 = __importDefault(require("./components/ComponentBlock/ComponentBlockMatcher"));
24
24
  var types_1 = require("./types");
25
25
  var gap = 10;
26
26
  function FlexGridItem(_a) {
@@ -32,7 +32,7 @@ function FlexGridItem(_a) {
32
32
  return ((0, jsx_runtime_1.jsx)(GridItem, __assign({ "data-cb-id": cb.id, style: __assign({ zIndex: zIndex, gridArea: gridArea }, (isRichText && {
33
33
  minHeight: 0,
34
34
  overflowY: 'scroll'
35
- })) }, { children: (0, jsx_runtime_1.jsx)(ComponentBlockMatcherWithCCB_1.default, { rowHeight: rowHeight, cbProps: cb, device: device, index: index }) })));
35
+ })) }, { children: (0, jsx_runtime_1.jsx)(ComponentBlockMatcher_1.default, { rowHeight: rowHeight, cbProps: cb, device: device, index: index }) })));
36
36
  }
37
37
  var GridItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: auto;\n word-break: break-word;\n"], ["\n height: auto;\n word-break: break-word;\n"])));
38
38
  function getMaxHeight(props, device, rowHeight) {
@@ -19,7 +19,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
21
  var jsx_runtime_1 = require("react/jsx-runtime");
22
- /* eslint-disable @typescript-eslint/no-unused-vars */
23
22
  var react_1 = require("react");
24
23
  var CustomSectionBackgroundMedia_1 = require("../../../../../../../DynamicLayout/components/Section/components/CustomSectionBackgroundMedia");
25
24
  var createCompositions_1 = require("../../../../../../../DynamicLayout/CompositionRenderer/createCompositions");
@@ -137,13 +137,15 @@ var body2Regular = (0, styled_components_1.css)(templateObject_4 || (templateObj
137
137
  var theme = _a.theme;
138
138
  return theme.desktopLineHeight.body2;
139
139
  });
140
- // const sysTextWhite = css`
141
- // color: ${({ theme }) => theme.ui_cpnt_textlabel_sys_white};
142
- // `;
143
- // const sysTextBlack = css`
144
- // color: ${({ theme }) => theme.ui_cpnt_textlabel_sys_black};
145
- // `;
146
- var S_TextLabel = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n ", ";\n"], ["\n ", ";\n"])), function (_a) {
140
+ var sysTextWhite = (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n color: ", ";\n"], ["\n color: ", ";\n"])), function (_a) {
141
+ var theme = _a.theme;
142
+ return theme.ui_cpnt_textlabel_sys_white;
143
+ });
144
+ var sysTextBlack = (0, styled_components_1.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n color: ", ";\n"], ["\n color: ", ";\n"])), function (_a) {
145
+ var theme = _a.theme;
146
+ return theme.ui_cpnt_textlabel_sys_black;
147
+ });
148
+ var S_TextLabel = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n ", ";\n"], ["\n ", ";\n"])), function (_a) {
147
149
  var styleTheme = _a.styleTheme;
148
150
  return styleTheme &&
149
151
  {
@@ -151,24 +153,24 @@ var S_TextLabel = styled_components_1.default.div(templateObject_5 || (templateO
151
153
  body2Regular: body2Regular
152
154
  }[styleTheme];
153
155
  });
154
- var verticalDivider = (0, styled_components_1.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n height: 16px;\n width: 1px;\n"], ["\n height: 16px;\n width: 1px;\n"])));
155
- var horizontalDivider = (0, styled_components_1.css)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n height: 1px;\n width: 100%;\n"], ["\n height: 1px;\n width: 100%;\n"])));
156
- var S_Divider = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n background-color: ", ";\n opacity: 0.6;\n ", ";\n"], ["\n background-color: ", ";\n opacity: 0.6;\n ", ";\n"])), function (_a) {
156
+ var verticalDivider = (0, styled_components_1.css)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n height: 16px;\n width: 1px;\n"], ["\n height: 16px;\n width: 1px;\n"])));
157
+ var horizontalDivider = (0, styled_components_1.css)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n height: 1px;\n width: 100%;\n"], ["\n height: 1px;\n width: 100%;\n"])));
158
+ var S_Divider = styled_components_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background-color: ", ";\n opacity: 0.6;\n ", ";\n"], ["\n background-color: ", ";\n opacity: 0.6;\n ", ";\n"])), function (_a) {
157
159
  var color = _a.color;
158
160
  return color;
159
161
  }, function (_a) {
160
162
  var type = _a.type;
161
163
  return (type === 'VERTICAL' ? verticalDivider : horizontalDivider);
162
164
  });
163
- var S_Dot = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n background-color: ", ";\n border-radius: 50%;\n cursor: pointer;\n height: 8px;\n width: 8px;\n"], ["\n background-color: ", ";\n border-radius: 50%;\n cursor: pointer;\n height: 8px;\n width: 8px;\n"])), function (_a) {
165
+ var S_Dot = styled_components_1.default.div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n background-color: ", ";\n border-radius: 50%;\n cursor: pointer;\n height: 8px;\n width: 8px;\n"], ["\n background-color: ", ";\n border-radius: 50%;\n cursor: pointer;\n height: 8px;\n width: 8px;\n"])), function (_a) {
164
166
  var color = _a.color;
165
167
  return color;
166
168
  });
167
- var S_Bar = styled_components_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n background-color: ", ";\n cursor: pointer;\n height: 2px;\n width: 40px;\n"], ["\n background-color: ", ";\n cursor: pointer;\n height: 2px;\n width: 40px;\n"])), function (_a) {
169
+ var S_Bar = styled_components_1.default.div(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n background-color: ", ";\n cursor: pointer;\n height: 2px;\n width: 40px;\n"], ["\n background-color: ", ";\n cursor: pointer;\n height: 2px;\n width: 40px;\n"])), function (_a) {
168
170
  var color = _a.color;
169
171
  return color;
170
172
  });
171
- var S_Pointer = styled_components_1.default.div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n cursor: ", ";\n height: 16px;\n opacity: ", ";\n"], ["\n cursor: ", ";\n height: 16px;\n opacity: ", ";\n"])), function (_a) {
173
+ var S_Pointer = styled_components_1.default.div(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n cursor: ", ";\n height: 16px;\n opacity: ", ";\n"], ["\n cursor: ", ";\n height: 16px;\n opacity: ", ";\n"])), function (_a) {
172
174
  var disabled = _a.disabled;
173
175
  return (disabled ? 'not-allowed' : 'pointer');
174
176
  }, function (_a) {
@@ -176,4 +178,4 @@ var S_Pointer = styled_components_1.default.div(templateObject_11 || (templateOb
176
178
  return (disabled ? 0.4 : 1);
177
179
  });
178
180
  exports.default = exports.CustomPagination;
179
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11;
181
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import type { CB_TEXT_PROPERTIES_TYPE, IndexForIntersection } from '../../../../util/types';
3
3
  type Props = CB_TEXT_PROPERTIES_TYPE & IndexForIntersection;
4
- export default function Text(props: Props): JSX.Element;
5
- export {};
4
+ declare function Text(props: Props): JSX.Element;
5
+ export default Text;
@@ -32,7 +32,7 @@ var textSpecFormatOptions_1 = require("./textSpecFormatOptions");
32
32
  function Text(props) {
33
33
  var _a = (0, react_1.useContext)(DynamicLayout_1.dynamicLayoutContext), device = _a.device, mode = _a.mode;
34
34
  var queryContext = (0, compositionQueryContext_1.useCCBQueryPath)();
35
- 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 = _c.CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA, CB_CONTENT_PROP_TEXT_SPEC_SUFFIX = _c.CB_CONTENT_PROP_TEXT_SPEC_SUFFIX, CB_CONTENT_PROP_TEXT_SPEC_PREFIX = _c.CB_CONTENT_PROP_TEXT_SPEC_PREFIX;
35
+ 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 = _c.CB_CONTENT_PROP_TEXT_SPEC_CONNECTDATA;
36
36
  var cLinkValue = function () {
37
37
  if (CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE === 'DATA' ||
38
38
  CB_CONTENT_PROP_CLINK_SPEC_VALUETYPE === 'DELEGATEDDATA') {
@@ -115,27 +115,16 @@ function Text(props) {
115
115
  }
116
116
  return props.CB_CONTENT_PROP_TEXT.CB_CONTENT_PROP_TEXT_SPEC_TEXT;
117
117
  };
118
- var getTruncatedText = function (text) {
119
- var maxLength = props.CB_STYLE_PROP_TEXT.CB_STYLE_PROP_TEXT_SPEC_ELLIPSIS;
120
- if (!maxLength) {
121
- return text;
122
- }
123
- if (text.length > maxLength) {
124
- return "".concat(text.slice(0, maxLength), "...");
125
- }
126
- return text;
127
- };
128
118
  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({ style: {
129
119
  height: '100%',
130
120
  display: 'flex',
131
121
  alignItems: textStyle.alignItems
132
- }, ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsxs)(S_CB_Box_1.S_CB_Box, __assign({ onMouseEnter: function (e) {
122
+ }, ref: hasEffect ? cbRef : null, effectVisibleStyle: effectVisibleStyle }, { children: (0, jsx_runtime_1.jsx)(S_CB_Box_1.S_CB_Box, __assign({ onMouseEnter: function (e) {
133
123
  e.currentTarget.classList.add('hovered');
134
124
  }, onMouseLeave: function (e) {
135
125
  e.currentTarget.classList.remove('hovered');
136
- }, className: "cb-layout-box cb-text", normalStyle: __assign(__assign(__assign(__assign(__assign({}, textStyle), propsStyle), layoutStyle), effectCssProperties), { whiteSpace: 'pre-wrap', wordBreak: 'break-word', cursor: CLINKCursor, height: 'fit-content', minWidth: "calc(2ch + ".concat(layoutStyle.paddingLeft, " + ").concat(layoutStyle.paddingRight, ")") }), hoverStyle: __assign(__assign(__assign({}, textHoverStyle), propsHoverStyle), { whiteSpace: 'pre-wrap', wordBreak: 'break-word' }), onClick: onClickCLINK }, { children: [CB_CONTENT_PROP_TEXT_SPEC_PREFIX, textValue() === 'ERROR' ? 'EDITOR:FALLBACK_TEXT' : getTruncatedText(textValue()), CB_CONTENT_PROP_TEXT_SPEC_SUFFIX] })) }))] }));
126
+ }, className: "cb-layout-box cb-text", normalStyle: __assign(__assign(__assign(__assign(__assign({}, textStyle), propsStyle), layoutStyle), effectCssProperties), { whiteSpace: 'pre-wrap', wordBreak: 'break-word', cursor: CLINKCursor, height: 'fit-content', minWidth: "calc(2ch + ".concat(layoutStyle.paddingLeft, " + ").concat(layoutStyle.paddingRight, ")") }), hoverStyle: __assign(__assign(__assign({}, textHoverStyle), propsHoverStyle), { whiteSpace: 'pre-wrap', wordBreak: 'break-word' }), onClick: onClickCLINK }, { children: textValue() === 'ERROR' ? 'EDITOR:FALLBACK_TEXT' : textValue() })) }))] }));
137
127
  }
138
- exports.default = Text;
139
128
  function getTextStyles(props, device) {
140
129
  var availableSpecCodes = [
141
130
  'CB_STYLE_PROP_TEXT_SPEC_TYPEFACE',
@@ -149,3 +138,4 @@ function getTextStyles(props, device) {
149
138
  ];
150
139
  return (0, textUtil_1.parseStyleTextToCSSProp)({ availableSpecCodes: availableSpecCodes, props: props, device: device, propKey: 'TEXT' });
151
140
  }
141
+ exports.default = Text;
@@ -37,15 +37,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
37
37
  __setModuleDefault(result, mod);
38
38
  return result;
39
39
  };
40
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
41
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
42
- if (ar || !(i in from)) {
43
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
44
- ar[i] = from[i];
45
- }
46
- }
47
- return to.concat(ar || Array.prototype.slice.call(from));
48
- };
49
40
  var __importDefault = (this && this.__importDefault) || function (mod) {
50
41
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
42
  };
@@ -58,8 +49,7 @@ var dynamicLayoutContext_1 = require("../../DynamicLayout/dynamicLayoutContext")
58
49
  var styled_components_1 = __importDefault(require("styled-components"));
59
50
  var components_1 = require("../components");
60
51
  var gleStyles_1 = require("../gleStyles");
61
- var groupUtils_1 = __importDefault(require("../utils/groupUtils"));
62
- require("./CustomSection/FlexGridItem");
52
+ var FlexGridItem_1 = __importDefault(require("./CustomSection/FlexGridItem"));
63
53
  var useResizableObserver_1 = require("./CustomSection/hooks/useResizableObserver");
64
54
  var util_1 = require("./CustomSection/util");
65
55
  var parseSectionPadding_1 = __importDefault(require("./CustomSection/util/layoutPropParsers/parseSectionPadding"));
@@ -69,12 +59,13 @@ var MOBILE_GRID_COLS = 8;
69
59
  var GLE_MIN_WIDTH_DESKTOP_PX = "".concat(GRID_CELL_MIN * DESKTOP_GRID_COLS, "px");
70
60
  var GLE_MIN_WIDTH_MOBILE_PX = "".concat(GRID_CELL_MIN * MOBILE_GRID_COLS, "px");
71
61
  var FlexGridCustomSection = (0, react_1.forwardRef)(function CustomSection(props, ref) {
72
- var _a = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _a.device, editingSectionId = _a.editingSectionId, mode = _a.mode, shortcutKeyMode = _a.shortcutKeyMode, sectionActionHandler = _a.sectionActionHandler;
62
+ var _a;
63
+ var _b = (0, react_1.useContext)(dynamicLayoutContext_1.dynamicLayoutContext), device = _b.device, editingSectionId = _b.editingSectionId, mode = _b.mode, shortcutKeyMode = _b.shortcutKeyMode, sectionActionHandler = _b.sectionActionHandler;
73
64
  var componentBlocks = props.componentBlocks, jsonProperties = props.jsonProperties;
74
- var _b = jsonProperties, _c = _b.data, CB_PLACEMENT_PROP_SECTION = _c.CB_PLACEMENT_PROP_SECTION, CB_LAYOUT_PROP_PADDING = _c.CB_LAYOUT_PROP_PADDING, zOrders = _b.zOrders;
65
+ var _c = jsonProperties, _d = _c.data, CB_PLACEMENT_PROP_SECTION = _d.CB_PLACEMENT_PROP_SECTION, CB_LAYOUT_PROP_PADDING = _d.CB_LAYOUT_PROP_PADDING, zOrders = _c.zOrders;
75
66
  var containerRef = (0, react_1.useRef)(null);
76
67
  var size = (0, useResizableObserver_1.useResizeObserver)({ ref: containerRef, box: 'border-box' });
77
- var _d = (0, react_1.useState)(null), selectedCB = _d[0], setSelectedCB = _d[1];
68
+ var _e = (0, react_1.useState)(null), selectedCB = _e[0], setSelectedCB = _e[1];
78
69
  var gleRef = (0, react_1.useRef)(null);
79
70
  var isMobile = device === 'MOBILE';
80
71
  var isEditMode = mode === 'EDIT';
@@ -133,10 +124,10 @@ var FlexGridCustomSection = (0, react_1.forwardRef)(function CustomSection(props
133
124
  setSelectedCB('BULK');
134
125
  }
135
126
  }, [selectedCB, shortcutKeyMode, sectionActionHandler, setSelectedCB]);
136
- var _e = (0, util_1.parseCustomSectionPlacement)({
127
+ var _f = (0, util_1.parseCustomSectionPlacement)({
137
128
  isMobile: isMobile,
138
129
  customSectionProps: CB_PLACEMENT_PROP_SECTION
139
- }), width = _e.width, minHeight = _e.minHeight, isFullWidth = _e.isFullWidth;
130
+ }), width = _f.width, minHeight = _f.minHeight, isFullWidth = _f.isFullWidth;
140
131
  var customSectionStyles = {
141
132
  minHeight: "".concat(minHeight, "vh"),
142
133
  width: '100%',
@@ -194,18 +185,6 @@ var FlexGridCustomSection = (0, react_1.forwardRef)(function CustomSection(props
194
185
  }
195
186
  return 16;
196
187
  })();
197
- var pedigree = jsonProperties === null || jsonProperties === void 0 ? void 0 : jsonProperties.pedigree;
198
- var layouts = (0, util_1.parsePlacement)(componentBlocks !== null && componentBlocks !== void 0 ? componentBlocks : [], zOrders);
199
- var _f = (0, react_1.useState)([]), selectedRows = _f[0], setSelectedRows = _f[1];
200
- var _g = (0, react_1.useState)([]), pinnedGBs = _g[0], setPinnedGBs = _g[1];
201
- var onToggleGBPinned = function (gbId) {
202
- setPinnedGBs(function (prev) {
203
- if (prev.includes(gbId)) {
204
- return prev.filter(function (id) { return id !== gbId; });
205
- }
206
- return __spreadArray(__spreadArray([], prev, true), [gbId], false);
207
- });
208
- };
209
188
  return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(gleStyles_1.S_gleStyles, { children: (0, jsx_runtime_1.jsx)(S_SectionWrapper, __assign({ ref: gleRef, "x-dlayout-section-type": "NO_NAME", onClick: onClickSection }, { children: (0, jsx_runtime_1.jsx)(components_1.CustomSection, __assign({}, props, { isMobile: isMobile, overrideStyles: {
210
189
  minHeight: customSectionStyles.minHeight,
211
190
  paddingTop: padding.top,
@@ -217,7 +196,10 @@ var FlexGridCustomSection = (0, react_1.forwardRef)(function CustomSection(props
217
196
  maxWidth: customSectionStyles.maxWidth,
218
197
  minWidth: isMobile ? GLE_MIN_WIDTH_MOBILE_PX : GLE_MIN_WIDTH_DESKTOP_PX,
219
198
  fontSize: "".concat(baseFontSize, "px")
220
- } }, { children: pedigree.children.map(function (child) { return ((0, jsx_runtime_1.jsx)(groupUtils_1.default, { block: child, rowHeight: rowHeight, layoutItems: layouts[device === 'DESKTOP' ? 'lg' : 'sm'], cbs: props.componentBlocks, device: device, selectedRows: selectedRows, pinnedGBs: pinnedGBs, onToggleGBPinned: onToggleGBPinned, isEditMode: false }, child.blockId)); }) })) })) })) }) }));
199
+ } }, { children: (_a = props.componentBlocks) === null || _a === void 0 ? void 0 : _a.map(function (cb, index) {
200
+ var _a;
201
+ 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));
202
+ }) })) })) })) }) }));
221
203
  });
222
204
  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(\n ", ",\n minmax(", ", auto)\n );\n padding: 10px 10px;\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(\n ", ",\n minmax(", ", auto)\n );\n padding: 10px 10px;\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(props.rowHeight, "px"); });
223
205
  var S_SectionWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pds-dev-kit-web-test",
3
- "version": "2.7.116",
3
+ "version": "2.7.118",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "dist/index.js",
@@ -1,14 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ComponentBlock } from '../sections/CustomSection/types';
3
- import type { Device } from '../sections/CustomSection/util/types';
4
- type Props = {
5
- cb: ComponentBlock;
6
- index: number;
7
- device: Device;
8
- rowHeight: number;
9
- zIndex: number;
10
- showPinned?: boolean;
11
- style?: React.CSSProperties;
12
- };
13
- declare function FlexGridItem({ cb, index, device, rowHeight, zIndex, showPinned, style }: Props): JSX.Element;
14
- export default FlexGridItem;
@@ -1,68 +0,0 @@
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 styled_components_1 = __importDefault(require("styled-components"));
24
- var ComponentBlockMatcher_1 = __importDefault(require("./ComponentBlockMatcher"));
25
- var gap = 10;
26
- function FlexGridItem(_a) {
27
- var cb = _a.cb, index = _a.index, device = _a.device, rowHeight = _a.rowHeight, zIndex = _a.zIndex, showPinned = _a.showPinned, style = _a.style;
28
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
29
- var defaultHeight = getMaxHeight(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device, rowHeight);
30
- var gridArea = getGridAreaFromCB(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device);
31
- var _b = (0, react_1.useState)(false), isPinned = _b[0], setIsPinned = _b[1];
32
- return ((0, jsx_runtime_1.jsxs)(GridItem, __assign({ style: __assign({ zIndex: zIndex, gridArea: gridArea, position: 'relative', maxHeight: isPinned ? defaultHeight : 'none' }, style) }, { children: [showPinned && ((0, jsx_runtime_1.jsx)(S_Pinned, { children: isPinned ? ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return setIsPinned(false); } }, { children: "H\uACE0\uC815\uB428 \uD83D\uDCCC" }))) : ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return setIsPinned(true); } }, { children: "H\uB298\uC5B4\uB0A8 \uD83E\uDEB1" }))) })), (0, jsx_runtime_1.jsx)(ComponentBlockMatcher_1.default, { rowHeight: rowHeight, cbProps: cb, device: device, index: index })] })));
33
- }
34
- var S_Pinned = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"], ["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"])));
35
- var GridItem = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n height: auto;\n word-break: break-word;\n"], ["\n height: auto;\n word-break: break-word;\n"])));
36
- function getMaxHeight(props, device, rowHeight) {
37
- if (device === 'DESKTOP') {
38
- var CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS = props.CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS;
39
- var height_1 = CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS * rowHeight +
40
- (CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS - 1) * gap;
41
- return height_1;
42
- }
43
- var rowsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE'];
44
- var height = rowsMobile * rowHeight + (rowsMobile - 1) * gap;
45
- return height;
46
- }
47
- function getGridAreaFromCB(props, device) {
48
- var CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX = props.CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX, CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY = props.CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY, cols = props.CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS, rows = props.CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS;
49
- if (device === 'DESKTOP') {
50
- var colStart_1 = CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX + 1;
51
- var rowStart_1 = CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY + 1;
52
- var rowEnd_1 = rows + rowStart_1;
53
- var colEnd_1 = cols + colStart_1;
54
- // <grid-row-start> / <grid-column-start> / <grid-row-end> / <grid-column-end>;
55
- return "".concat(rowStart_1, " / ").concat(colStart_1, " / ").concat(rowEnd_1, " / ").concat(colEnd_1);
56
- }
57
- var startXMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX:MOBILE'];
58
- var startYMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY:MOBILE'];
59
- var colsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS:MOBILE'];
60
- var rowsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE'];
61
- var colStart = startXMobile + 1;
62
- var rowStart = startYMobile + 1;
63
- var rowEnd = rowsMobile + rowStart;
64
- var colEnd = colsMobile + colStart;
65
- return "".concat(rowStart, " / ").concat(colStart, " / ").concat(rowEnd, " / ").concat(colEnd);
66
- }
67
- exports.default = FlexGridItem;
68
- var templateObject_1, templateObject_2;
@@ -1,24 +0,0 @@
1
- /// <reference types="react" />
2
- import type { ComponentBlock } from '../sections/CustomSection/types';
3
- import type { Device } from '../sections/CustomSection/util/types';
4
- import type { LayoutItem } from 'publ-echo/dist/lib';
5
- import type { Block } from 'publ-echo/dist/lib/GridLayoutEditor/group';
6
- export declare function findAllChildrenCbIds(block: Block, targetGroupId: string): number[];
7
- export default function RenderPedigreeRecursively({ isEditMode, block, layoutItems, cbs, parentGroupArea, rowHeight, device, selectedRows, pinnedGBs, isParentGroupPinned, onToggleGBPinned }: {
8
- isEditMode: boolean;
9
- block: Block;
10
- layoutItems: LayoutItem[];
11
- cbs: ComponentBlock[];
12
- rowHeight: number;
13
- device: Device;
14
- selectedRows: number[];
15
- pinnedGBs: string[];
16
- onToggleGBPinned: (gbId: string) => void;
17
- isParentGroupPinned?: boolean;
18
- parentGroupArea?: {
19
- rowStart: number;
20
- colStart: number;
21
- rowEnd: number;
22
- colEnd: number;
23
- };
24
- }): JSX.Element;
@@ -1,224 +0,0 @@
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- var desc = Object.getOwnPropertyDescriptor(m, k);
20
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
- desc = { enumerable: true, get: function() { return m[k]; } };
22
- }
23
- Object.defineProperty(o, k2, desc);
24
- }) : (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- o[k2] = m[k];
27
- }));
28
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
- Object.defineProperty(o, "default", { enumerable: true, value: v });
30
- }) : function(o, v) {
31
- o["default"] = v;
32
- });
33
- var __importStar = (this && this.__importStar) || function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
41
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
42
- if (ar || !(i in from)) {
43
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
44
- ar[i] = from[i];
45
- }
46
- }
47
- return to.concat(ar || Array.prototype.slice.call(from));
48
- };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
- Object.defineProperty(exports, "__esModule", { value: true });
53
- exports.findAllChildrenCbIds = void 0;
54
- var jsx_runtime_1 = require("react/jsx-runtime");
55
- var renderHelpers_1 = require("publ-echo-test/dist/lib/GridLayoutEditor/utils/renderHelpers");
56
- var styled_components_1 = __importDefault(require("styled-components"));
57
- var ErrorBoundary_1 = require("../components/Section/ErrorBoundary");
58
- var FlexGridItem_1 = __importStar(require("../CompositionRenderer/FlexGridItem"));
59
- function findAllChildrenCbIds(block, targetGroupId) {
60
- // 현재 블록이 target group이면, 모든 하위 컴포넌트 블록 ID를 수집
61
- if (block.blockId === targetGroupId) {
62
- if (block.type === 'COMPONENT_BLOCK') {
63
- return [block.componentBlockId];
64
- }
65
- // GROUP_BLOCK인 경우 모든 자식들의 ID를 재귀적으로 수집
66
- return block.children.reduce(function (acc, child) {
67
- return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, child.blockId), true);
68
- }, []);
69
- }
70
- // 현재 블록이 target group이 아니고 COMPONENT_BLOCK이면 빈 배열 반환
71
- if (block.type === 'COMPONENT_BLOCK') {
72
- return [];
73
- }
74
- // GROUP_BLOCK이면 자식들에 대해 재귀적으로 탐색
75
- return block.children.reduce(function (acc, child) {
76
- return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, targetGroupId), true);
77
- }, []);
78
- }
79
- exports.findAllChildrenCbIds = findAllChildrenCbIds;
80
- function RenderPedigreeRecursively(_a) {
81
- var isEditMode = _a.isEditMode, block = _a.block, layoutItems = _a.layoutItems, cbs = _a.cbs, parentGroupArea = _a.parentGroupArea, rowHeight = _a.rowHeight, device = _a.device, selectedRows = _a.selectedRows, pinnedGBs = _a.pinnedGBs, _b = _a.isParentGroupPinned, isParentGroupPinned = _b === void 0 ? false : _b, onToggleGBPinned = _a.onToggleGBPinned;
82
- var type = block.type;
83
- if (type === 'GROUP_BLOCK') {
84
- var childrenIds = findAllChildrenCbIds(block, block.blockId).map(function (i) { return i.toString(); });
85
- var bounding_1 = (0, renderHelpers_1.getBoundingArea)(layoutItems, childrenIds);
86
- if (!bounding_1) {
87
- return (0, jsx_runtime_1.jsx)("div", { children: "GROUP: NO BOUNDING AREA" });
88
- }
89
- var gridArea_1 = getGridAreaFromGroup({
90
- x: bounding_1.x,
91
- y: bounding_1.y,
92
- cols: bounding_1.w,
93
- rows: bounding_1.h
94
- });
95
- var relativeGridArea_1 = parentGroupArea
96
- ? calculateRelativeGridArea(gridArea_1, parentGroupArea)
97
- : gridArea_1;
98
- // 그룹의 시작 행을 기준으로 상대적인 selectedRows 계산
99
- var relativeSelectedRows_1 = selectedRows
100
- .map(function (row) { return row - gridArea_1.rowStart + 1; })
101
- .filter(function (row) { return row >= 0 && row <= bounding_1.h; });
102
- var isGBPinned_1 = pinnedGBs.includes(block.blockId);
103
- var defaultHeight = getMaxHeight({ cols: bounding_1.w, rows: bounding_1.h, x: bounding_1.x, y: bounding_1.y }, rowHeight);
104
- return ((0, jsx_runtime_1.jsxs)(S_GroupItem, __assign({ cols: bounding_1.w, sectionRow: bounding_1.h, isEditMode: isEditMode, rowHeight: rowHeight, selectedRows: relativeSelectedRows_1, style: {
105
- gridArea: gridAreaObjToString(relativeGridArea_1),
106
- display: 'grid',
107
- zIndex: device === 'DESKTOP'
108
- ? block.zOrderDesktopInternal
109
- : block.zOrderMobileInternal,
110
- maxHeight: isGBPinned_1 ? defaultHeight : 'none'
111
- } }, { children: [isEditMode && ((0, jsx_runtime_1.jsx)(S_Pinned, { children: isGBPinned_1 ? ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return onToggleGBPinned(block.blockId); } }, { children: "H\uACE0\uC815\uB428 \uD83D\uDCCC" }))) : ((0, jsx_runtime_1.jsx)("button", __assign({ type: "button", onClick: function () { return onToggleGBPinned(block.blockId); } }, { children: "H\uB298\uC5B4\uB0A8 \uD83E\uDEB1" }))) })), block.children.map(function (child) { return ((0, jsx_runtime_1.jsx)(RenderPedigreeRecursively, { rowHeight: rowHeight, block: child, layoutItems: layoutItems, cbs: cbs, parentGroupArea: gridArea_1, device: device, selectedRows: relativeSelectedRows_1, pinnedGBs: pinnedGBs, onToggleGBPinned: onToggleGBPinned, isEditMode: isEditMode, isParentGroupPinned: isGBPinned_1 }, child.blockId)); })] })));
112
- }
113
- // default: TYPE === 'COMPONENT_BLOCK'
114
- var cbIndex = cbs.findIndex(function (c) { return c.blockId === block.blockId; });
115
- var cb = cbs[cbIndex];
116
- if (!cb) {
117
- return (0, jsx_runtime_1.jsxs)("div", { children: ["NO CB FOUND FOR ", block.blockId] });
118
- }
119
- var originalGridAreaString = (0, FlexGridItem_1.getGridAreaFromCB)(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device);
120
- var originalGridArea = parseGridArea(originalGridAreaString);
121
- // 부모 그룹이 있는 경우, 상대적 위치 계산
122
- var relativeGridArea = parentGroupArea
123
- ? calculateRelativeGridArea(originalGridArea, parentGroupArea)
124
- : originalGridArea;
125
- return (
126
- // <S_GridItem
127
- // style={{
128
- // gridArea: gridAreaObjToString(relativeGridArea)
129
- // }}
130
- // data-og-grid-area={originalGridAreaString}
131
- // data-rel-grid-area={gridAreaObjToString(relativeGridArea)}
132
- // >
133
- (0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(FlexGridItem_1.default, { cb: cb, index: cbIndex, device: device, rowHeight: rowHeight, zIndex: device === 'DESKTOP'
134
- ? block.zOrderDesktopInternal
135
- : block.zOrderMobileInternal, style: {
136
- gridArea: gridAreaObjToString(relativeGridArea),
137
- pointerEvents: isEditMode ? 'none' : 'auto',
138
- boxShadow: isEditMode ? '0 0 0 2px red' : ''
139
- }, showPinned: isEditMode && !parentGroupArea, isParentGroupPinned: isParentGroupPinned }) }, cb.id)
140
- // </S_GridItem>
141
- );
142
- }
143
- exports.default = RenderPedigreeRecursively;
144
- var S_Pinned = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"], ["\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n z-index: 9999999;\n"])));
145
- function clamp(num, min, max) {
146
- return Math.max(Math.min(num, max), min);
147
- }
148
- function gridAreaObjToString(area) {
149
- var rowStart = area.rowStart, colStart = area.colStart, rowEnd = area.rowEnd, colEnd = area.colEnd;
150
- return "".concat(rowStart, " / ").concat(colStart, " / ").concat(rowEnd, " / ").concat(colEnd);
151
- }
152
- function getGridAreaFromGroup(position) {
153
- var x = position.x, y = position.y, cols = position.cols, rows = position.rows;
154
- var colStart = clamp(x + 1, 1, Math.max(1, 25 - cols));
155
- var rowStart = clamp(y + 1, 1, Infinity);
156
- var rowEnd = clamp(rows + rowStart, rowStart + 1, Infinity);
157
- var colEnd = clamp(colStart + cols, colStart + 1, 25);
158
- return {
159
- rowStart: rowStart,
160
- colStart: colStart,
161
- rowEnd: rowEnd,
162
- colEnd: colEnd
163
- };
164
- // const startXMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTX:MOBILE'];
165
- // const startYMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_STARTY:MOBILE'];
166
- // const colsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_COLS:MOBILE'];
167
- // const rowsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE'];
168
- // const colStart = clamp(startXMobile + 1, 1, Math.max(1, 9 - colsMobile));
169
- // const rowStart = clamp(startYMobile + 1, 1, Infinity);
170
- // const rowEnd = clamp(rowsMobile + rowStart, rowStart + 1, Infinity);
171
- // const colEnd = clamp(colStart + colsMobile, colStart + 1, 9);
172
- // return `${rowStart} / ${colStart} / ${rowEnd} / ${colEnd}`;
173
- }
174
- /**
175
- * grid-area 문자열을 파싱하여 객체로 변환합니다.
176
- * 예: "1 / 2 / 3 / 4" => { rowStart: 1, colStart: 2, rowEnd: 3, colEnd: 4 }
177
- */
178
- function parseGridArea(gridArea) {
179
- var _a = gridArea
180
- .split('/')
181
- .map(function (str) { return parseInt(str.trim(), 10); }), rowStart = _a[0], colStart = _a[1], rowEnd = _a[2], colEnd = _a[3];
182
- return { rowStart: rowStart, colStart: colStart, rowEnd: rowEnd, colEnd: colEnd };
183
- }
184
- /**
185
- * 부모 그룹 영역을 기준으로 컴포넌트의 상대적 위치를 계산합니다.
186
- * 예: 부모가 row 21에서 시작하고 컴포넌트가 row 21에 있다면, 상대적으로는 row 1에 위치하게 됩니다.
187
- */
188
- function calculateRelativeGridArea(componentArea, parentArea) {
189
- return {
190
- // 컴포넌트의 시작 위치에서 부모의 시작 위치를 빼서 상대적 위치 계산
191
- rowStart: componentArea.rowStart - parentArea.rowStart + 1,
192
- colStart: componentArea.colStart - parentArea.colStart + 1,
193
- // 상대적 끝 위치도 같은 방식으로 계산
194
- rowEnd: componentArea.rowEnd - parentArea.rowStart + 1,
195
- colEnd: componentArea.colEnd - parentArea.colStart + 1
196
- };
197
- }
198
- function getMaxHeight(props, rowHeight) {
199
- var gap = 10;
200
- var rows = props.rows;
201
- var height = rows * rowHeight + (rows - 1) * gap;
202
- return height;
203
- // if (device === 'DESKTOP') {
204
- // const { rows } = props;
205
- // const height = rows * rowHeight + (rows - 1) * gap;
206
- // return height;
207
- // }
208
- // const rowsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE'];
209
- // const height = rowsMobile * rowHeight + (rowsMobile - 1) * gap;
210
- // return height;
211
- }
212
- var S_GroupItem = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n box-shadow: ", ";\n gap: 10px;\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: ", ";\n pointer-events: none;\n position: relative; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n"], ["\n box-shadow: ", ";\n gap: 10px;\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: ", ";\n pointer-events: none;\n position: relative; /* \uBC30\uC5F4\uC744 \uACF5\uBC31\uC73C\uB85C \uAD6C\uBD84\uB41C \uBB38\uC790\uC5F4\uB85C \uD569\uCE69\uB2C8\uB2E4. */\n"])), function (props) { return (props.isEditMode ? '0 0 0 2px blue' : 'none'); }, function (props) { return props.cols; }, function (props) {
213
- // // 전체 행 개수만큼 배열을 생성하여 각 행의 CSS 값을 정의합니다.
214
- return Array.from({ length: props.sectionRow })
215
- .map(function (_, index) {
216
- // props로 받은 selectedRows 배열에 현재 행(index)이 포함되어 있는지 확인합니다.
217
- return props.selectedRows.includes(index)
218
- ? "minmax(".concat(props.rowHeight, "px, auto)") // 포함되어 있다면 minmax 사용
219
- : "".concat(props.rowHeight, "px");
220
- } // 포함되어 있지 않다면 고정 높이 사용
221
- )
222
- .join(' ');
223
- });
224
- var templateObject_1, templateObject_2;