pds-dev-kit-web-test 2.7.453 → 2.7.455
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/common/assets/icons/fill/DownloadCsv.d.ts +4 -0
- package/dist/src/common/assets/icons/fill/DownloadCsv.js +30 -0
- package/dist/src/common/assets/icons/fill/DownloadPng.d.ts +4 -0
- package/dist/src/common/assets/icons/fill/DownloadPng.js +30 -0
- package/dist/src/common/assets/icons/fill/index.d.ts +2 -0
- package/dist/src/common/assets/icons/fill/index.js +4 -0
- package/dist/src/common/assets/icons/image/index.d.ts +1 -0
- package/dist/src/common/assets/icons/image/index.js +1 -0
- package/dist/src/common/assets/icons/line/DownloadCsv.d.ts +4 -0
- package/dist/src/common/assets/icons/line/DownloadCsv.js +30 -0
- package/dist/src/common/assets/icons/line/DownloadPng.d.ts +4 -0
- package/dist/src/common/assets/icons/line/DownloadPng.js +30 -0
- package/dist/src/common/assets/icons/line/index.d.ts +2 -0
- package/dist/src/common/assets/icons/line/index.js +4 -0
- package/dist/src/common/hooks/useTooltip.js +1 -1
- package/dist/src/common/styles/colorSet/PaletteColor_Dark.json +3 -1
- package/dist/src/common/styles/colorSet/PaletteColor_light.json +3 -1
- package/dist/src/common/styles/colorSet/SemanticColor.json +1 -1
- package/dist/src/common/styles/colorSet/UIColor.json +5 -1
- package/dist/src/common/styles/colorSet/index.d.ts +8 -0
- package/dist/src/common/styles/colorSet/ui-type.d.ts +4 -0
- package/dist/src/desktop/components/ChatBubbleListItem/ChatBubbleListItem.js +10 -4
- package/dist/src/desktop/components/PriceTextField/PriceTextField.d.ts +1 -1
- package/dist/src/desktop/components/PriceTextField/PriceTextField.js +7 -5
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/ContentsContainer.js +1 -0
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTU.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWT/Containers/ContentsContainer/variation/WTU.js +51 -7
- package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.d.ts +1 -1
- package/dist/src/desktop/layout/LayoutWT/ContainersBox/ContainersBox.js +4 -0
- package/dist/src/mobile/components/ChatBubbleListItem/ChatBubbleListItem.js +10 -4
- package/dist/src/mobile/components/PriceTextField/PriceTextField.d.ts +3 -2
- package/dist/src/mobile/components/PriceTextField/PriceTextField.js +11 -6
- package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/CompositionEditor/CompositionEditor.js +4 -4
- package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/CompositionRenderer/Composition.js +4 -82
- package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItem.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/CompositionRenderer/FlexGridItemForCCB.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/CompositionRenderer/index.d.ts +1 -0
- package/dist/src/sub/DynamicLayout/CompositionRenderer/index.js +8 -0
- package/dist/src/sub/DynamicLayout/GridAutoRowEditor/GridAutoRowEditorForComposition.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/GridAutoRowEditor/GridAutoRowEditorForComposition.js +1 -1
- package/dist/src/sub/DynamicLayout/GridAutoRowEditor/GridAutoRowEditorForDL.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/GridAutoRowEditor/GridAutoRowEditorForDL.js +2 -2
- package/dist/src/sub/DynamicLayout/components/Section/components/CustomSectionBackground.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/compositionActionTypes.d.ts +4 -4
- package/dist/src/sub/DynamicLayout/mocks.js +0 -2
- package/dist/src/sub/DynamicLayout/sectionActionTypes.d.ts +4 -4
- package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/CustomSection.js +4 -4
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/ComponentBlockMatcherWithCCB.js +9 -7
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Button/Button.js +4 -5
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarousel.js +4 -2
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/ContentsCarouselCore.js +3 -19
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsCarousel/hooks/useFlexGridLayout.js +1 -10
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/ContentsList.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/CustomPagination.js +1 -0
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.d.ts +4 -4
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/components/paginationConfigs.js +16 -61
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/ContentsList/hooks/useFlexGridLayout.js +1 -0
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/SlideBanner.js +10 -4
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/SlideBanner/hooks/useFlexGridLayout.js +1 -0
- package/dist/src/sub/DynamicLayout/sections/CustomSection/components/ComponentBlock/componentBlocks/Text/Text.js +0 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/newUtils/group.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.d.ts +2 -2
- package/dist/src/sub/DynamicLayout/sections/CustomSection/util/parsePlacement.js +7 -5
- package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/sections/FlexGridCustomSection.js +1 -1
- package/dist/src/sub/DynamicLayout/types.d.ts +1 -1
- package/dist/src/sub/DynamicLayout/utils/groupHelpers.d.ts +57 -0
- package/dist/src/sub/DynamicLayout/utils/groupHelpers.js +86 -0
- package/dist/src/sub/DynamicLayout/utils/groupUtils.d.ts +1 -2
- package/dist/src/sub/DynamicLayout/utils/groupUtils.js +18 -149
- package/package.json +2 -3
- package/release-note.md +2 -3
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Block } from 'publ-echo/dist/lib/GridLayoutEditor/group';
|
|
2
|
+
export declare function findAllChildrenCbIds(block: Block, targetGroupId: string): number[];
|
|
3
|
+
export declare function gridAreaObjToString(area: {
|
|
4
|
+
rowStart: number;
|
|
5
|
+
colStart: number;
|
|
6
|
+
rowEnd: number;
|
|
7
|
+
colEnd: number;
|
|
8
|
+
}): string;
|
|
9
|
+
export declare function getGridAreaFromGroup(position: {
|
|
10
|
+
x: number;
|
|
11
|
+
y: number;
|
|
12
|
+
cols: number;
|
|
13
|
+
rows: number;
|
|
14
|
+
}): {
|
|
15
|
+
rowStart: number;
|
|
16
|
+
colStart: number;
|
|
17
|
+
rowEnd: number;
|
|
18
|
+
colEnd: number;
|
|
19
|
+
};
|
|
20
|
+
interface GridArea {
|
|
21
|
+
rowStart: number;
|
|
22
|
+
colStart: number;
|
|
23
|
+
rowEnd: number;
|
|
24
|
+
colEnd: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* grid-area 문자열을 파싱하여 객체로 변환합니다.
|
|
28
|
+
* 예: "1 / 2 / 3 / 4" => { rowStart: 1, colStart: 2, rowEnd: 3, colEnd: 4 }
|
|
29
|
+
*/
|
|
30
|
+
export declare function parseGridArea(gridArea: string): GridArea;
|
|
31
|
+
/**
|
|
32
|
+
* 부모 그룹 영역을 기준으로 컴포넌트의 상대적 위치를 계산합니다.
|
|
33
|
+
* 예: 부모가 row 21에서 시작하고 컴포넌트가 row 21에 있다면, 상대적으로는 row 1에 위치하게 됩니다.
|
|
34
|
+
*/
|
|
35
|
+
export declare function calculateRelativeGridArea(componentArea: {
|
|
36
|
+
rowStart: number;
|
|
37
|
+
colStart: number;
|
|
38
|
+
rowEnd: number;
|
|
39
|
+
colEnd: number;
|
|
40
|
+
}, parentArea: {
|
|
41
|
+
rowStart: number;
|
|
42
|
+
colStart: number;
|
|
43
|
+
rowEnd: number;
|
|
44
|
+
colEnd: number;
|
|
45
|
+
}): {
|
|
46
|
+
rowStart: number;
|
|
47
|
+
colStart: number;
|
|
48
|
+
rowEnd: number;
|
|
49
|
+
colEnd: number;
|
|
50
|
+
};
|
|
51
|
+
export declare function getMaxHeight(props: {
|
|
52
|
+
cols: number;
|
|
53
|
+
rows: number;
|
|
54
|
+
x: number;
|
|
55
|
+
y: number;
|
|
56
|
+
}, rowHeight: number): number;
|
|
57
|
+
export {};
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getMaxHeight = exports.calculateRelativeGridArea = exports.parseGridArea = exports.getGridAreaFromGroup = exports.gridAreaObjToString = exports.findAllChildrenCbIds = void 0;
|
|
13
|
+
function findAllChildrenCbIds(block, targetGroupId) {
|
|
14
|
+
// 현재 블록이 target group이면, 모든 하위 컴포넌트 블록 ID를 수집
|
|
15
|
+
if (block.blockId === targetGroupId) {
|
|
16
|
+
if (block.type === 'COMPONENT_BLOCK') {
|
|
17
|
+
return [block.componentBlockId];
|
|
18
|
+
}
|
|
19
|
+
// GROUP_BLOCK인 경우 모든 자식들의 ID를 재귀적으로 수집
|
|
20
|
+
return block.children.reduce(function (acc, child) {
|
|
21
|
+
return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, child.blockId), true);
|
|
22
|
+
}, []);
|
|
23
|
+
}
|
|
24
|
+
// 현재 블록이 target group이 아니고 COMPONENT_BLOCK이면 빈 배열 반환
|
|
25
|
+
if (block.type === 'COMPONENT_BLOCK') {
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
// GROUP_BLOCK이면 자식들에 대해 재귀적으로 탐색
|
|
29
|
+
return block.children.reduce(function (acc, child) {
|
|
30
|
+
return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, targetGroupId), true);
|
|
31
|
+
}, []);
|
|
32
|
+
}
|
|
33
|
+
exports.findAllChildrenCbIds = findAllChildrenCbIds;
|
|
34
|
+
function clamp(num, min, max) {
|
|
35
|
+
return Math.max(Math.min(num, max), min);
|
|
36
|
+
}
|
|
37
|
+
function gridAreaObjToString(area) {
|
|
38
|
+
var rowStart = area.rowStart, colStart = area.colStart, rowEnd = area.rowEnd, colEnd = area.colEnd;
|
|
39
|
+
return "".concat(rowStart, " / ").concat(colStart, " / ").concat(rowEnd, " / ").concat(colEnd);
|
|
40
|
+
}
|
|
41
|
+
exports.gridAreaObjToString = gridAreaObjToString;
|
|
42
|
+
function getGridAreaFromGroup(position) {
|
|
43
|
+
var x = position.x, y = position.y, cols = position.cols, rows = position.rows;
|
|
44
|
+
var colStart = clamp(x + 1, 1, Math.max(1, 25 - cols));
|
|
45
|
+
var rowStart = clamp(y + 1, 1, Infinity);
|
|
46
|
+
var rowEnd = clamp(rows + rowStart, rowStart + 1, Infinity);
|
|
47
|
+
var colEnd = clamp(colStart + cols, colStart + 1, 25);
|
|
48
|
+
return {
|
|
49
|
+
rowStart: rowStart,
|
|
50
|
+
colStart: colStart,
|
|
51
|
+
rowEnd: rowEnd,
|
|
52
|
+
colEnd: colEnd
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
exports.getGridAreaFromGroup = getGridAreaFromGroup;
|
|
56
|
+
/**
|
|
57
|
+
* grid-area 문자열을 파싱하여 객체로 변환합니다.
|
|
58
|
+
* 예: "1 / 2 / 3 / 4" => { rowStart: 1, colStart: 2, rowEnd: 3, colEnd: 4 }
|
|
59
|
+
*/
|
|
60
|
+
function parseGridArea(gridArea) {
|
|
61
|
+
var _a = gridArea
|
|
62
|
+
.split('/')
|
|
63
|
+
.map(function (str) { return parseInt(str.trim(), 10); }), rowStart = _a[0], colStart = _a[1], rowEnd = _a[2], colEnd = _a[3];
|
|
64
|
+
return { rowStart: rowStart, colStart: colStart, rowEnd: rowEnd, colEnd: colEnd };
|
|
65
|
+
}
|
|
66
|
+
exports.parseGridArea = parseGridArea;
|
|
67
|
+
/**
|
|
68
|
+
* 부모 그룹 영역을 기준으로 컴포넌트의 상대적 위치를 계산합니다.
|
|
69
|
+
* 예: 부모가 row 21에서 시작하고 컴포넌트가 row 21에 있다면, 상대적으로는 row 1에 위치하게 됩니다.
|
|
70
|
+
*/
|
|
71
|
+
function calculateRelativeGridArea(componentArea, parentArea) {
|
|
72
|
+
return {
|
|
73
|
+
rowStart: componentArea.rowStart - parentArea.rowStart + 1,
|
|
74
|
+
colStart: componentArea.colStart - parentArea.colStart + 1,
|
|
75
|
+
rowEnd: componentArea.rowEnd - parentArea.rowStart + 1,
|
|
76
|
+
colEnd: componentArea.colEnd - parentArea.colStart + 1
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
exports.calculateRelativeGridArea = calculateRelativeGridArea;
|
|
80
|
+
function getMaxHeight(props, rowHeight) {
|
|
81
|
+
var gap = 10;
|
|
82
|
+
var rows = props.rows;
|
|
83
|
+
var height = rows * rowHeight + (rows - 1) * gap;
|
|
84
|
+
return height;
|
|
85
|
+
}
|
|
86
|
+
exports.getMaxHeight = getMaxHeight;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { type Block } from 'publ-echo-test/dist/lib/GridLayoutEditor/group';
|
|
3
2
|
import type { ComponentBlock } from '../sections/CustomSection/types';
|
|
4
3
|
import type { Device } from '../sections/CustomSection/util/types';
|
|
5
4
|
import type { LayoutItem } from 'publ-echo/dist/lib';
|
|
6
|
-
|
|
5
|
+
import type { Block } from 'publ-echo/dist/lib/GridLayoutEditor/group';
|
|
7
6
|
export default function RenderPedigreeRecursively({ isEditMode, block, layoutItems, cbs, parentGroupArea, rowHeight, device, selectedRows, isParentGroupHeightVariable }: {
|
|
8
7
|
isEditMode: boolean;
|
|
9
8
|
block: Block;
|
|
@@ -14,100 +14,44 @@ var __assign = (this && this.__assign) || function () {
|
|
|
14
14
|
};
|
|
15
15
|
return __assign.apply(this, arguments);
|
|
16
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
17
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
18
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
19
|
};
|
|
52
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
-
exports.findAllChildrenCbIds = void 0;
|
|
54
21
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
55
|
-
var group_1 = require("publ-echo
|
|
56
|
-
var renderHelpers_1 = require("publ-echo
|
|
22
|
+
var group_1 = require("publ-echo/dist/lib/GridLayoutEditor/group");
|
|
23
|
+
var renderHelpers_1 = require("publ-echo/dist/lib/GridLayoutEditor/utils/renderHelpers");
|
|
57
24
|
var styled_components_1 = __importDefault(require("styled-components"));
|
|
58
25
|
var ErrorBoundary_1 = require("../components/Section/ErrorBoundary");
|
|
59
|
-
var
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (block.blockId === targetGroupId) {
|
|
63
|
-
if (block.type === 'COMPONENT_BLOCK') {
|
|
64
|
-
return [block.componentBlockId];
|
|
65
|
-
}
|
|
66
|
-
// GROUP_BLOCK인 경우 모든 자식들의 ID를 재귀적으로 수집
|
|
67
|
-
return block.children.reduce(function (acc, child) {
|
|
68
|
-
return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, child.blockId), true);
|
|
69
|
-
}, []);
|
|
70
|
-
}
|
|
71
|
-
// 현재 블록이 target group이 아니고 COMPONENT_BLOCK이면 빈 배열 반환
|
|
72
|
-
if (block.type === 'COMPONENT_BLOCK') {
|
|
73
|
-
return [];
|
|
74
|
-
}
|
|
75
|
-
// GROUP_BLOCK이면 자식들에 대해 재귀적으로 탐색
|
|
76
|
-
return block.children.reduce(function (acc, child) {
|
|
77
|
-
return __spreadArray(__spreadArray([], acc, true), findAllChildrenCbIds(child, targetGroupId), true);
|
|
78
|
-
}, []);
|
|
79
|
-
}
|
|
80
|
-
exports.findAllChildrenCbIds = findAllChildrenCbIds;
|
|
26
|
+
var CompositionRenderer_1 = require("../CompositionRenderer");
|
|
27
|
+
var FlexGridItem_1 = require("../CompositionRenderer/FlexGridItem");
|
|
28
|
+
var groupHelpers_1 = require("./groupHelpers");
|
|
81
29
|
function RenderPedigreeRecursively(_a) {
|
|
82
|
-
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,
|
|
83
|
-
// pinnedGBs,
|
|
84
|
-
_b = _a.isParentGroupHeightVariable,
|
|
85
|
-
// pinnedGBs,
|
|
86
|
-
isParentGroupHeightVariable = _b === void 0 ? false : _b;
|
|
30
|
+
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, _b = _a.isParentGroupHeightVariable, isParentGroupHeightVariable = _b === void 0 ? false : _b;
|
|
87
31
|
var type = block.type;
|
|
88
32
|
if (type === 'GROUP_BLOCK') {
|
|
89
|
-
var childrenIds = findAllChildrenCbIds(block, block.blockId).map(function (i) { return i.toString(); });
|
|
33
|
+
var childrenIds = (0, groupHelpers_1.findAllChildrenCbIds)(block, block.blockId).map(function (i) { return i.toString(); });
|
|
90
34
|
var bounding_1 = (0, renderHelpers_1.getBoundingArea)(layoutItems, childrenIds);
|
|
91
35
|
if (!bounding_1) {
|
|
92
36
|
return (0, jsx_runtime_1.jsx)("div", { children: "GROUP: NO BOUNDING AREA" });
|
|
93
37
|
}
|
|
94
|
-
var gridArea_1 = getGridAreaFromGroup({
|
|
38
|
+
var gridArea_1 = (0, groupHelpers_1.getGridAreaFromGroup)({
|
|
95
39
|
x: bounding_1.x,
|
|
96
40
|
y: bounding_1.y,
|
|
97
41
|
cols: bounding_1.w,
|
|
98
42
|
rows: bounding_1.h
|
|
99
43
|
});
|
|
100
44
|
var relativeGridArea_1 = parentGroupArea
|
|
101
|
-
? calculateRelativeGridArea(gridArea_1, parentGroupArea)
|
|
45
|
+
? (0, groupHelpers_1.calculateRelativeGridArea)(gridArea_1, parentGroupArea)
|
|
102
46
|
: gridArea_1;
|
|
103
47
|
// 그룹의 시작 행을 기준으로 상대적인 selectedRows 계산
|
|
104
48
|
var relativeSelectedRows_1 = selectedRows
|
|
105
49
|
.map(function (row) { return row - gridArea_1.rowStart + 1; })
|
|
106
50
|
.filter(function (row) { return row >= 0 && row <= bounding_1.h; });
|
|
107
51
|
var isGBHeightVariable_1 = device === 'DESKTOP' ? block.isHeightVariableDesktop : block.isHeightVariableMobile;
|
|
108
|
-
var defaultHeight = getMaxHeight({ cols: bounding_1.w, rows: bounding_1.h, x: bounding_1.x, y: bounding_1.y }, rowHeight);
|
|
52
|
+
var defaultHeight = (0, groupHelpers_1.getMaxHeight)({ cols: bounding_1.w, rows: bounding_1.h, x: bounding_1.x, y: bounding_1.y }, rowHeight);
|
|
109
53
|
return ((0, jsx_runtime_1.jsx)(S_GroupItem, __assign({ cols: bounding_1.w, sectionRow: bounding_1.h, isEditMode: isEditMode, rowHeight: rowHeight, selectedRows: relativeSelectedRows_1, style: {
|
|
110
|
-
gridArea: gridAreaObjToString(relativeGridArea_1),
|
|
54
|
+
gridArea: (0, groupHelpers_1.gridAreaObjToString)(relativeGridArea_1),
|
|
111
55
|
display: 'grid',
|
|
112
56
|
zIndex: device === 'DESKTOP'
|
|
113
57
|
? block.zOrderDesktopInternal
|
|
@@ -133,98 +77,23 @@ function RenderPedigreeRecursively(_a) {
|
|
|
133
77
|
return (0, jsx_runtime_1.jsxs)("div", { children: ["NO CB FOUND FOR ", block.blockId] });
|
|
134
78
|
}
|
|
135
79
|
var originalGridAreaString = (0, FlexGridItem_1.getGridAreaFromCB)(cb.jsonProperties.data.CB_PLACEMENT_PROP_PLACEMENT, device);
|
|
136
|
-
var originalGridArea = parseGridArea(originalGridAreaString);
|
|
80
|
+
var originalGridArea = (0, groupHelpers_1.parseGridArea)(originalGridAreaString);
|
|
137
81
|
// 부모 그룹이 있는 경우, 상대적 위치 계산
|
|
138
82
|
var relativeGridArea = parentGroupArea
|
|
139
|
-
? calculateRelativeGridArea(originalGridArea, parentGroupArea)
|
|
83
|
+
? (0, groupHelpers_1.calculateRelativeGridArea)(originalGridArea, parentGroupArea)
|
|
140
84
|
: originalGridArea;
|
|
141
|
-
return (
|
|
142
|
-
// <S_GridItem
|
|
143
|
-
// style={{
|
|
144
|
-
// gridArea: gridAreaObjToString(relativeGridArea)
|
|
145
|
-
// }}
|
|
146
|
-
// data-og-grid-area={originalGridAreaString}
|
|
147
|
-
// data-rel-grid-area={gridAreaObjToString(relativeGridArea)}
|
|
148
|
-
// >
|
|
149
|
-
(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, block: block, zIndex: device === 'DESKTOP'
|
|
85
|
+
return ((0, jsx_runtime_1.jsx)(ErrorBoundary_1.ErrorBoundary, { children: (0, jsx_runtime_1.jsx)(CompositionRenderer_1.FlexGridItem, { cb: cb, index: cbIndex, device: device, rowHeight: rowHeight, block: block, zIndex: device === 'DESKTOP'
|
|
150
86
|
? block.zOrderDesktopInternal
|
|
151
87
|
: block.zOrderMobileInternal, style: {
|
|
152
|
-
gridArea: gridAreaObjToString(relativeGridArea),
|
|
88
|
+
gridArea: (0, groupHelpers_1.gridAreaObjToString)(relativeGridArea),
|
|
153
89
|
pointerEvents: isEditMode ? 'none' : 'auto',
|
|
154
90
|
boxShadow: isEditMode ? '0 0 0 3px #027aff' : ''
|
|
155
|
-
}, showPinned: isEditMode && !parentGroupArea, isParentGroupHeightVariable: isParentGroupHeightVariable }) }, cb.id)
|
|
156
|
-
// </S_GridItem>
|
|
157
|
-
);
|
|
91
|
+
}, showPinned: isEditMode && !parentGroupArea, isParentGroupHeightVariable: isParentGroupHeightVariable }) }, cb.id));
|
|
158
92
|
}
|
|
159
93
|
exports.default = RenderPedigreeRecursively;
|
|
160
|
-
function
|
|
161
|
-
return Math.max(Math.min(num, max), min);
|
|
162
|
-
}
|
|
163
|
-
function gridAreaObjToString(area) {
|
|
164
|
-
var rowStart = area.rowStart, colStart = area.colStart, rowEnd = area.rowEnd, colEnd = area.colEnd;
|
|
165
|
-
return "".concat(rowStart, " / ").concat(colStart, " / ").concat(rowEnd, " / ").concat(colEnd);
|
|
166
|
-
}
|
|
167
|
-
function getGridAreaFromGroup(position) {
|
|
168
|
-
var x = position.x, y = position.y, cols = position.cols, rows = position.rows;
|
|
169
|
-
var colStart = clamp(x + 1, 1, Math.max(1, 25 - cols));
|
|
170
|
-
var rowStart = clamp(y + 1, 1, Infinity);
|
|
171
|
-
var rowEnd = clamp(rows + rowStart, rowStart + 1, Infinity);
|
|
172
|
-
var colEnd = clamp(colStart + cols, colStart + 1, 25);
|
|
173
|
-
return {
|
|
174
|
-
rowStart: rowStart,
|
|
175
|
-
colStart: colStart,
|
|
176
|
-
rowEnd: rowEnd,
|
|
177
|
-
colEnd: colEnd
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* grid-area 문자열을 파싱하여 객체로 변환합니다.
|
|
182
|
-
* 예: "1 / 2 / 3 / 4" => { rowStart: 1, colStart: 2, rowEnd: 3, colEnd: 4 }
|
|
183
|
-
*/
|
|
184
|
-
function parseGridArea(gridArea) {
|
|
185
|
-
var _a = gridArea
|
|
186
|
-
.split('/')
|
|
187
|
-
.map(function (str) { return parseInt(str.trim(), 10); }), rowStart = _a[0], colStart = _a[1], rowEnd = _a[2], colEnd = _a[3];
|
|
188
|
-
return { rowStart: rowStart, colStart: colStart, rowEnd: rowEnd, colEnd: colEnd };
|
|
189
|
-
}
|
|
190
|
-
/**
|
|
191
|
-
* 부모 그룹 영역을 기준으로 컴포넌트의 상대적 위치를 계산합니다.
|
|
192
|
-
* 예: 부모가 row 21에서 시작하고 컴포넌트가 row 21에 있다면, 상대적으로는 row 1에 위치하게 됩니다.
|
|
193
|
-
*/
|
|
194
|
-
function calculateRelativeGridArea(componentArea, parentArea) {
|
|
195
|
-
return {
|
|
196
|
-
// 컴포넌트의 시작 위치에서 부모의 시작 위치를 빼서 상대적 위치 계산
|
|
197
|
-
rowStart: componentArea.rowStart - parentArea.rowStart + 1,
|
|
198
|
-
colStart: componentArea.colStart - parentArea.colStart + 1,
|
|
199
|
-
// 상대적 끝 위치도 같은 방식으로 계산
|
|
200
|
-
rowEnd: componentArea.rowEnd - parentArea.rowStart + 1,
|
|
201
|
-
colEnd: componentArea.colEnd - parentArea.colStart + 1
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
function getMaxHeight(props, rowHeight) {
|
|
205
|
-
var gap = 10;
|
|
206
|
-
var rows = props.rows;
|
|
207
|
-
var height = rows * rowHeight + (rows - 1) * gap;
|
|
208
|
-
return height;
|
|
209
|
-
// if (device === 'DESKTOP') {
|
|
210
|
-
// const { rows } = props;
|
|
211
|
-
// const height = rows * rowHeight + (rows - 1) * gap;
|
|
212
|
-
// return height;
|
|
213
|
-
// }
|
|
214
|
-
// const rowsMobile = props['CB_PLACEMENT_PROP_PLACEMENT_SPEC_ROWS:MOBILE'];
|
|
215
|
-
// const height = rowsMobile * rowHeight + (rowsMobile - 1) * gap;
|
|
216
|
-
// return height;
|
|
217
|
-
}
|
|
218
|
-
var S_GroupItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __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 #027aff' : 'none'); }, function (props) { return props.cols; }, function (props) {
|
|
219
|
-
// // 전체 행 개수만큼 배열을 생성하여 각 행의 CSS 값을 정의합니다.
|
|
94
|
+
var S_GroupItem = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n box-shadow: ", ";\n gap: 10px;\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: ", ";\n pointer-events: none;\n position: relative;\n"], ["\n box-shadow: ", ";\n gap: 10px;\n grid-template-columns: repeat(", ", 1fr);\n grid-template-rows: ", ";\n pointer-events: none;\n position: relative;\n"])), function (props) { return (props.isEditMode ? '0 0 0 2px #027aff' : 'none'); }, function (props) { return props.cols; }, function (props) {
|
|
220
95
|
return Array.from({ length: props.sectionRow })
|
|
221
|
-
.map(function () {
|
|
222
|
-
// props로 받은 selectedRows 배열에 현재 행(index)이 포함되어 있는지 확인합니다.
|
|
223
|
-
// props.selectedRows.includes(index)
|
|
224
|
-
// ? `minmax(${props.rowHeight}px, auto)` // 포함되어 있다면 minmax 사용
|
|
225
|
-
// : `${props.rowHeight}px` // 포함되어 있지 않다면 고정 높이 사용
|
|
226
|
-
return "minmax(".concat(props.rowHeight, "px, auto)");
|
|
227
|
-
})
|
|
96
|
+
.map(function () { return "minmax(".concat(props.rowHeight, "px, auto)"); })
|
|
228
97
|
.join(' ');
|
|
229
98
|
});
|
|
230
99
|
var templateObject_1;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pds-dev-kit-web-test",
|
|
3
|
-
"version": "2.7.
|
|
3
|
+
"version": "2.7.455",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"private": false,
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -24,8 +24,7 @@
|
|
|
24
24
|
"i18next-intervalplural-postprocessor": "^3.0.0",
|
|
25
25
|
"lottie-react": "^2.3.1",
|
|
26
26
|
"nuka-carousel": "^4.8.4",
|
|
27
|
-
"publ-echo": "^0.0.
|
|
28
|
-
"publ-echo-test": "^0.0.396",
|
|
27
|
+
"publ-echo": "^0.0.122",
|
|
29
28
|
"react-hook-form": "^7.28.1",
|
|
30
29
|
"react-i18next": "^11.12.0",
|
|
31
30
|
"react-router-dom": "^5.2.0",
|
package/release-note.md
CHANGED