pds-dev-kit-web-test 0.3.36 → 0.3.37

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.
@@ -132,6 +132,11 @@ function CustomSection(props) {
132
132
  makeAllInOneGroup();
133
133
  return;
134
134
  }
135
+ }, [shortcutKeyMode]);
136
+ (0, react_1.useLayoutEffect)(function () {
137
+ if (props.id !== editingSectionId) {
138
+ return;
139
+ }
135
140
  if (shortcutKeyMode === 'MANUAL_COLLISION_SELECT') {
136
141
  if (!selectedCB || selectedCB === 'group') {
137
142
  return;
@@ -162,6 +167,9 @@ function CustomSection(props) {
162
167
  return;
163
168
  }
164
169
  if (selectedCB && shortcutKeyMode === 'BULK_SELECT') {
170
+ if (id === selectedCB) {
171
+ return;
172
+ }
165
173
  setGroupCB(selectedCB, id);
166
174
  sectionActionHandler &&
167
175
  sectionActionHandler({
@@ -174,7 +182,8 @@ function CustomSection(props) {
174
182
  return;
175
183
  }
176
184
  if (shortcutKeyMode === 'COLLISION_SELECT') {
177
- makeCollisionGroup(id);
185
+ var selectedCBId = typeof selectedCB === 'number' ? selectedCB : undefined;
186
+ makeCollisionGroup(id, selectedCBId);
178
187
  sectionActionHandler &&
179
188
  sectionActionHandler({
180
189
  type: '@CUSTOMSECTION/CB_CLICKED',
@@ -14,7 +14,7 @@ declare function useGroupDrag({ device, setLayouts, sectionActionHandler }: Prop
14
14
  breakGroupCB: () => void;
15
15
  makeAllInOneGroup: () => void;
16
16
  escapeFromGroup: (id: string) => void;
17
- makeCollisionGroup: (id: number) => void;
17
+ makeCollisionGroup: (id: number, selectedCBId?: number) => void;
18
18
  };
19
19
  export declare function getGroupCB(layout: Layout): LayoutItemWithGroupType | null;
20
20
  export declare const filterItemsById: (layout: Layout, idsToRemove: string[]) => LayoutItem[];
@@ -138,20 +138,35 @@ function useGroupDrag(_a) {
138
138
  }
139
139
  });
140
140
  }
141
- function makeCollisionGroup(id) {
141
+ function makeCollisionGroup(id, selectedCBId) {
142
142
  setLayouts(function (prev) {
143
143
  var _a, _b;
144
144
  var _c, _d;
145
145
  var currentLayoutCopy = JSON.parse(JSON.stringify(prev[layoutByDevice]));
146
+ var additionalSelectedCBLayout = (function () {
147
+ if (selectedCBId === undefined) {
148
+ return null;
149
+ }
150
+ if (id === selectedCBId) {
151
+ return null;
152
+ }
153
+ return (0, renderHelpers_1.getLayoutItem)(currentLayoutCopy, selectedCBId.toString());
154
+ })();
146
155
  var layout = (0, renderHelpers_1.getLayoutItem)(currentLayoutCopy, id.toString());
147
156
  if (!layout) {
148
157
  return prev;
149
158
  }
150
159
  var prevGroupIdx = currentLayoutCopy.findIndex(function (item) { return item.i === 'group'; });
151
- // const prevGroup = currentLayoutCopy[prevGroupIdx];
152
160
  if (prevGroupIdx < 0) {
153
161
  var collisions = (0, renderHelpers_1.getAllCollisions)(currentLayoutCopy, layout);
154
- var group_2 = (0, utils_1.getGroupForMultiple)(__spreadArray([layout], collisions, true));
162
+ var groupLayouts = __spreadArray([layout], collisions, true);
163
+ if (collisions.length === 0 && !additionalSelectedCBLayout) {
164
+ return prev;
165
+ }
166
+ if (additionalSelectedCBLayout) {
167
+ groupLayouts.push(additionalSelectedCBLayout);
168
+ }
169
+ var group_2 = (0, utils_1.getGroupForMultiple)(groupLayouts);
155
170
  var filtered = currentLayoutCopy.filter(function (layout) { return !group_2.childrenIds.includes(layout.i); });
156
171
  return __assign(__assign({}, prev), (_a = {}, _a[layoutByDevice] = __spreadArray([group_2], filtered, true), _a));
157
172
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pds-dev-kit-web-test",
3
- "version": "0.3.36",
3
+ "version": "0.3.37",
4
4
  "license": "MIT",
5
5
  "private": false,
6
6
  "main": "dist/index.js",
package/release-note.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # pds-dev-kit-web-test Release Notes
2
- ## [v0.3.36]
2
+ ## [v0.3.37]
3
3
  ## 기준 pds-dev-kit-web 버전 @2.2.41
4
4
  ### sub
5
5
  * DynamicLayout
6
- * 선택된 상태에서 다른 CB 겹치는-영역-모두선택 시 선택된 요소까지 그룹화
6
+ * 몇개의 가드 추가