@byeolnaerim/flex-layout 0.0.7 → 0.0.9
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/flex-layout/components/FlexLayout.cjs +62 -28
- package/dist/flex-layout/components/FlexLayout.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayout.js +26 -11
- package/dist/flex-layout/components/FlexLayout.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutContainer.cjs +121 -55
- package/dist/flex-layout/components/FlexLayoutContainer.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutContainer.js +68 -25
- package/dist/flex-layout/components/FlexLayoutContainer.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutIFramePane.cjs +68 -0
- package/dist/flex-layout/components/FlexLayoutIFramePane.cjs.map +1 -0
- package/dist/flex-layout/components/FlexLayoutIFramePane.d.ts +4 -0
- package/dist/flex-layout/components/FlexLayoutIFramePane.js +44 -0
- package/dist/flex-layout/components/FlexLayoutIFramePane.js.map +1 -0
- package/dist/flex-layout/components/FlexLayoutResizePanel.cjs +111 -46
- package/dist/flex-layout/components/FlexLayoutResizePanel.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutResizePanel.d.ts +1 -1
- package/dist/flex-layout/components/FlexLayoutResizePanel.js +68 -27
- package/dist/flex-layout/components/FlexLayoutResizePanel.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreen.cjs +184 -143
- package/dist/flex-layout/components/FlexLayoutSplitScreen.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreen.js +71 -32
- package/dist/flex-layout/components/FlexLayoutSplitScreen.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBox.cjs +253 -60
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBox.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBox.d.ts +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBox.js +215 -39
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBox.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxContainer.cjs +40 -17
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxContainer.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxContainer.js +7 -7
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxContainer.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxItem.cjs +44 -21
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxItem.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxItem.js +7 -8
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxItem.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxTitleMore.cjs +40 -17
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxTitleMore.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxTitleMore.js +5 -6
- package/dist/flex-layout/components/FlexLayoutSplitScreenDragBoxTitleMore.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenScrollBox.cjs +53 -29
- package/dist/flex-layout/components/FlexLayoutSplitScreenScrollBox.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutSplitScreenScrollBox.js +14 -10
- package/dist/flex-layout/components/FlexLayoutSplitScreenScrollBox.js.map +1 -1
- package/dist/flex-layout/components/FlexLayoutStickyBox.cjs +46 -27
- package/dist/flex-layout/components/FlexLayoutStickyBox.cjs.map +1 -1
- package/dist/flex-layout/components/FlexLayoutStickyBox.d.ts +1 -0
- package/dist/flex-layout/components/FlexLayoutStickyBox.js +13 -8
- package/dist/flex-layout/components/FlexLayoutStickyBox.js.map +1 -1
- package/dist/flex-layout/components/index.cjs +54 -49
- package/dist/flex-layout/components/index.cjs.map +1 -1
- package/dist/flex-layout/components/index.js +16 -8
- package/dist/flex-layout/components/index.js.map +1 -1
- package/dist/flex-layout/hooks/index.cjs +23 -19
- package/dist/flex-layout/hooks/index.cjs.map +1 -1
- package/dist/flex-layout/hooks/index.js +2 -3
- package/dist/flex-layout/hooks/index.js.map +1 -1
- package/dist/flex-layout/hooks/useDrag.cjs +136 -79
- package/dist/flex-layout/hooks/useDrag.cjs.map +1 -1
- package/dist/flex-layout/hooks/useDrag.d.ts +5 -0
- package/dist/flex-layout/hooks/useDrag.js +86 -47
- package/dist/flex-layout/hooks/useDrag.js.map +1 -1
- package/dist/flex-layout/hooks/useFlexLayoutSplitScreen.cjs +40 -19
- package/dist/flex-layout/hooks/useFlexLayoutSplitScreen.cjs.map +1 -1
- package/dist/flex-layout/hooks/useFlexLayoutSplitScreen.js +9 -7
- package/dist/flex-layout/hooks/useFlexLayoutSplitScreen.js.map +1 -1
- package/dist/flex-layout/hooks/useListPaging.cjs +68 -35
- package/dist/flex-layout/hooks/useListPaging.cjs.map +1 -1
- package/dist/flex-layout/hooks/useListPaging.js +34 -18
- package/dist/flex-layout/hooks/useListPaging.js.map +1 -1
- package/dist/flex-layout/hooks/useSizes.cjs +45 -23
- package/dist/flex-layout/hooks/useSizes.cjs.map +1 -1
- package/dist/flex-layout/hooks/useSizes.js +6 -6
- package/dist/flex-layout/hooks/useSizes.js.map +1 -1
- package/dist/flex-layout/index.cjs +29 -40
- package/dist/flex-layout/index.cjs.map +1 -1
- package/dist/flex-layout/index.js +5 -6
- package/dist/flex-layout/index.js.map +1 -1
- package/dist/flex-layout/providers/FlexLayoutContext.cjs +35 -12
- package/dist/flex-layout/providers/FlexLayoutContext.cjs.map +1 -1
- package/dist/flex-layout/providers/FlexLayoutContext.js +7 -6
- package/dist/flex-layout/providers/FlexLayoutContext.js.map +1 -1
- package/dist/flex-layout/providers/FlexLayoutHooks.cjs +82 -53
- package/dist/flex-layout/providers/FlexLayoutHooks.cjs.map +1 -1
- package/dist/flex-layout/providers/FlexLayoutHooks.js +33 -8
- package/dist/flex-layout/providers/FlexLayoutHooks.js.map +1 -1
- package/dist/flex-layout/providers/index.cjs +21 -12
- package/dist/flex-layout/providers/index.cjs.map +1 -1
- package/dist/flex-layout/providers/index.js +1 -2
- package/dist/flex-layout/providers/index.js.map +1 -1
- package/dist/flex-layout/store/FlexLayoutContainerStore.cjs +130 -76
- package/dist/flex-layout/store/FlexLayoutContainerStore.cjs.map +1 -1
- package/dist/flex-layout/store/FlexLayoutContainerStore.d.ts +1 -0
- package/dist/flex-layout/store/FlexLayoutContainerStore.js +63 -38
- package/dist/flex-layout/store/FlexLayoutContainerStore.js.map +1 -1
- package/dist/flex-layout/store/index.cjs +21 -12
- package/dist/flex-layout/store/index.cjs.map +1 -1
- package/dist/flex-layout/store/index.js +1 -2
- package/dist/flex-layout/store/index.js.map +1 -1
- package/dist/flex-layout/types/FlexDirectionTypes.cjs +16 -3
- package/dist/flex-layout/types/FlexDirectionTypes.cjs.map +1 -1
- package/dist/flex-layout/types/FlexDirectionTypes.js +0 -2
- package/dist/flex-layout/types/FlexDirectionTypes.js.map +1 -1
- package/dist/flex-layout/types/FlexLayoutTypes.cjs +16 -3
- package/dist/flex-layout/types/FlexLayoutTypes.cjs.map +1 -1
- package/dist/flex-layout/types/FlexLayoutTypes.d.ts +1 -3
- package/dist/flex-layout/types/FlexLayoutTypes.js +0 -2
- package/dist/flex-layout/types/FlexLayoutTypes.js.map +1 -1
- package/dist/flex-layout/utils/FlexLayoutUtils.cjs +57 -20
- package/dist/flex-layout/utils/FlexLayoutUtils.cjs.map +1 -1
- package/dist/flex-layout/utils/FlexLayoutUtils.d.ts +4 -4
- package/dist/flex-layout/utils/FlexLayoutUtils.js +23 -8
- package/dist/flex-layout/utils/FlexLayoutUtils.js.map +1 -1
- package/dist/flex-layout/utils/index.cjs +21 -12
- package/dist/flex-layout/utils/index.cjs.map +1 -1
- package/dist/flex-layout/utils/index.js +1 -2
- package/dist/flex-layout/utils/index.js.map +1 -1
- package/dist/index.cjs +21 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/metafile-cjs.json +1 -0
- package/dist/metafile-esm.json +1 -0
- package/dist/types/css.d.cjs +1 -3
- package/dist/types/css.d.cjs.map +1 -1
- package/dist/types/css.d.js +0 -2
- package/dist/types/css.d.js.map +1 -1
- package/package.json +5 -1
|
@@ -1,19 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
import
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import {
|
|
4
|
+
cloneElement,
|
|
5
|
+
useEffect,
|
|
6
|
+
useRef,
|
|
7
|
+
useState
|
|
8
|
+
} from "react";
|
|
9
|
+
import {
|
|
10
|
+
dropMovementEventSubject
|
|
11
|
+
} from "../hooks/useDrag";
|
|
12
|
+
import { useFlexLayoutSplitScreen } from "../hooks/useFlexLayoutSplitScreen";
|
|
13
|
+
import {
|
|
14
|
+
getCurrentSplitScreenComponents,
|
|
15
|
+
getSplitScreen,
|
|
16
|
+
removeRootSplitScreen,
|
|
17
|
+
removeSplitScreenChild,
|
|
18
|
+
resetRootSplitScreen,
|
|
19
|
+
setSplitScreen
|
|
20
|
+
} from "../store/FlexLayoutContainerStore";
|
|
21
|
+
import styles from "../styles/FlexLayout.module.css";
|
|
22
|
+
import FlexLayout from "./FlexLayout";
|
|
23
|
+
import FlexLayoutContainer from "./FlexLayoutContainer";
|
|
24
|
+
import FlexLayoutSplitScreenDragBox from "./FlexLayoutSplitScreenDragBox";
|
|
25
|
+
import equal from "fast-deep-equal";
|
|
26
|
+
import { distinctUntilChanged, take } from "rxjs";
|
|
27
|
+
import FlexLayoutSplitScreenDragBoxContainer from "./FlexLayoutSplitScreenDragBoxContainer";
|
|
28
|
+
import FlexLayoutSplitScreenDragBoxItem from "./FlexLayoutSplitScreenDragBoxItem";
|
|
29
|
+
import FlexLayoutSplitScreenDragBoxTitleMore from "./FlexLayoutSplitScreenDragBoxTitleMore";
|
|
30
|
+
import FlexLayoutSplitScreenScrollBox from "./FlexLayoutSplitScreenScrollBox";
|
|
17
31
|
function isOverDrop({
|
|
18
32
|
x,
|
|
19
33
|
y,
|
|
@@ -267,9 +281,9 @@ function FlexLayoutSplitScreen({
|
|
|
267
281
|
});
|
|
268
282
|
return () => {
|
|
269
283
|
subscribe.unsubscribe();
|
|
270
|
-
|
|
284
|
+
removeRootSplitScreen(layoutName);
|
|
271
285
|
};
|
|
272
|
-
}, [layoutName]);
|
|
286
|
+
}, [layoutName, screenKey, navigationTitle, children, direction]);
|
|
273
287
|
useEffect(() => {
|
|
274
288
|
const subscribe = dropMovementEventSubject.pipe(
|
|
275
289
|
distinctUntilChanged((prev, curr) => {
|
|
@@ -434,7 +448,7 @@ function FlexLayoutSplitScreen({
|
|
|
434
448
|
containerName: `${targetContainerName}_${layoutName}_${orderName}`,
|
|
435
449
|
component: targetComponent,
|
|
436
450
|
dropDocumentOutsideOption: dropDocumentOutsideOption2,
|
|
437
|
-
screenKey:
|
|
451
|
+
screenKey: dropTargetComponentEvent.screenKey,
|
|
438
452
|
navigationTitle: navigationTitle2
|
|
439
453
|
}
|
|
440
454
|
]
|
|
@@ -630,21 +644,26 @@ function FlexLayoutSplitScreenChild({
|
|
|
630
644
|
const [isEmptyContent, setIsEmptyContent] = useState(false);
|
|
631
645
|
const [activeIndex, setActiveIndex] = useState(0);
|
|
632
646
|
const centerDropTargetComponentRef = useRef(centerDropTargetComponent);
|
|
647
|
+
const initialCenterRef = useRef(
|
|
648
|
+
initialCenterComponents ?? []
|
|
649
|
+
);
|
|
633
650
|
const activeIndexRef = useRef(activeIndex);
|
|
634
651
|
useEffect(() => {
|
|
635
|
-
const
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
652
|
+
const storeKey = `${layoutName}=${screenKey}`;
|
|
653
|
+
const subscribe = getSplitScreen(rootName, storeKey).pipe(take(1)).subscribe((layoutInfo) => {
|
|
654
|
+
if (layoutInfo) return;
|
|
655
|
+
setSplitScreen(rootName, storeKey, {
|
|
656
|
+
afterDropTargetComponent: [],
|
|
657
|
+
beforeDropTargetComponent: [],
|
|
658
|
+
centerDropTargetComponent: initialCenterRef.current,
|
|
659
|
+
direction
|
|
641
660
|
});
|
|
642
661
|
});
|
|
643
662
|
return () => {
|
|
644
|
-
removeSplitScreenChild(rootName, layoutName);
|
|
663
|
+
removeSplitScreenChild(rootName, `${layoutName}=${screenKey}`);
|
|
645
664
|
subscribe.unsubscribe();
|
|
646
665
|
};
|
|
647
|
-
}, [rootName, layoutName,
|
|
666
|
+
}, [rootName, layoutName, screenKey]);
|
|
648
667
|
useEffect(() => {
|
|
649
668
|
const subscribe = getSplitScreen(rootName, `${layoutName}=${screenKey}`).subscribe((layoutInfo) => {
|
|
650
669
|
if (layoutInfo) {
|
|
@@ -673,6 +692,7 @@ function FlexLayoutSplitScreenChild({
|
|
|
673
692
|
});
|
|
674
693
|
return () => {
|
|
675
694
|
subscribe.unsubscribe();
|
|
695
|
+
removeRootSplitScreen(layoutName);
|
|
676
696
|
};
|
|
677
697
|
}, [rootName, layoutName]);
|
|
678
698
|
useEffect(() => {
|
|
@@ -1011,13 +1031,31 @@ function FlexLayoutSplitScreenChild({
|
|
|
1011
1031
|
}
|
|
1012
1032
|
setCenterDropTargetComponent(
|
|
1013
1033
|
(prev) => {
|
|
1014
|
-
const
|
|
1034
|
+
const next = handleRemove(
|
|
1015
1035
|
prev,
|
|
1016
1036
|
item.containerName,
|
|
1017
1037
|
() => {
|
|
1018
1038
|
}
|
|
1019
1039
|
);
|
|
1020
|
-
|
|
1040
|
+
const key = `${layoutName}=${screenKey}`;
|
|
1041
|
+
const current = getCurrentSplitScreenComponents(
|
|
1042
|
+
rootName,
|
|
1043
|
+
key
|
|
1044
|
+
) || {
|
|
1045
|
+
afterDropTargetComponent,
|
|
1046
|
+
beforeDropTargetComponent,
|
|
1047
|
+
centerDropTargetComponent: prev,
|
|
1048
|
+
direction
|
|
1049
|
+
};
|
|
1050
|
+
setSplitScreen(
|
|
1051
|
+
rootName,
|
|
1052
|
+
key,
|
|
1053
|
+
{
|
|
1054
|
+
...current,
|
|
1055
|
+
centerDropTargetComponent: next
|
|
1056
|
+
}
|
|
1057
|
+
);
|
|
1058
|
+
return next;
|
|
1021
1059
|
}
|
|
1022
1060
|
);
|
|
1023
1061
|
}
|
|
@@ -1026,6 +1064,7 @@ function FlexLayoutSplitScreenChild({
|
|
|
1026
1064
|
children: /* @__PURE__ */ jsx(
|
|
1027
1065
|
FlexLayoutSplitScreenDragBox,
|
|
1028
1066
|
{
|
|
1067
|
+
screenKey: item.screenKey,
|
|
1029
1068
|
onClick: () => {
|
|
1030
1069
|
setActiveIndex(
|
|
1031
1070
|
index
|
|
@@ -1191,7 +1230,7 @@ function FlexLayoutSplitScreenChild({
|
|
|
1191
1230
|
}
|
|
1192
1231
|
) });
|
|
1193
1232
|
}
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1233
|
+
export {
|
|
1234
|
+
FlexLayoutSplitScreen as default
|
|
1235
|
+
};
|
|
1197
1236
|
//# sourceMappingURL=FlexLayoutSplitScreen.js.map
|