react-resizable-panels 2.1.8 → 3.0.0
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/LICENSE +21 -0
- package/dist/declarations/src/Panel.d.ts +9 -9
- package/dist/declarations/src/PanelGroup.d.ts +10 -10
- package/dist/declarations/src/PanelResizeHandle.d.ts +1 -1
- package/dist/declarations/src/constants.d.ts +15 -0
- package/dist/declarations/src/hooks/usePanelGroupContext.d.ts +4 -0
- package/dist/declarations/src/index.d.ts +4 -2
- package/dist/{react-resizable-panels.browser.development.esm.js → react-resizable-panels.browser.development.js} +148 -106
- package/dist/{react-resizable-panels.browser.esm.js → react-resizable-panels.browser.js} +148 -106
- package/dist/react-resizable-panels.d.ts +2 -0
- package/dist/{react-resizable-panels.development.esm.js → react-resizable-panels.development.js} +148 -106
- package/dist/{react-resizable-panels.development.node.esm.js → react-resizable-panels.development.node.js} +148 -106
- package/dist/{react-resizable-panels.esm.js → react-resizable-panels.js} +148 -106
- package/dist/{react-resizable-panels.node.esm.js → react-resizable-panels.node.js} +148 -106
- package/package.json +25 -47
- package/dist/react-resizable-panels.browser.cjs.js +0 -2453
- package/dist/react-resizable-panels.browser.cjs.mjs +0 -18
- package/dist/react-resizable-panels.browser.development.cjs.js +0 -2559
- package/dist/react-resizable-panels.browser.development.cjs.mjs +0 -18
- package/dist/react-resizable-panels.cjs.d.mts +0 -2
- package/dist/react-resizable-panels.cjs.d.mts.map +0 -1
- package/dist/react-resizable-panels.cjs.d.ts +0 -2
- package/dist/react-resizable-panels.cjs.d.ts.map +0 -1
- package/dist/react-resizable-panels.cjs.js +0 -2455
- package/dist/react-resizable-panels.cjs.mjs +0 -18
- package/dist/react-resizable-panels.development.cjs.js +0 -2566
- package/dist/react-resizable-panels.development.cjs.mjs +0 -18
- package/dist/react-resizable-panels.development.node.cjs.js +0 -2332
- package/dist/react-resizable-panels.development.node.cjs.mjs +0 -18
- package/dist/react-resizable-panels.node.cjs.js +0 -2231
- package/dist/react-resizable-panels.node.cjs.mjs +0 -18
|
@@ -6,6 +6,22 @@ import { createContext, useRef, forwardRef, createElement, useContext, useImpera
|
|
|
6
6
|
const PanelGroupContext = createContext(null);
|
|
7
7
|
PanelGroupContext.displayName = "PanelGroupContext";
|
|
8
8
|
|
|
9
|
+
const DATA_ATTRIBUTES = {
|
|
10
|
+
group: "data-panel-group",
|
|
11
|
+
groupDirection: "data-panel-group-direction",
|
|
12
|
+
groupId: "data-panel-group-id",
|
|
13
|
+
panel: "data-panel",
|
|
14
|
+
panelCollapsible: "data-panel-collapsible",
|
|
15
|
+
panelId: "data-panel-id",
|
|
16
|
+
panelSize: "data-panel-size",
|
|
17
|
+
resizeHandle: "data-resize-handle",
|
|
18
|
+
resizeHandleActive: "data-resize-handle-active",
|
|
19
|
+
resizeHandleEnabled: "data-panel-resize-handle-enabled",
|
|
20
|
+
resizeHandleId: "data-panel-resize-handle-id",
|
|
21
|
+
resizeHandleState: "data-resize-handle-state"
|
|
22
|
+
};
|
|
23
|
+
const PRECISION = 10;
|
|
24
|
+
|
|
9
25
|
const useId = React["useId".toString()];
|
|
10
26
|
const wrappedUseId = typeof useId === "function" ? useId : () => null;
|
|
11
27
|
let counter = 0;
|
|
@@ -107,11 +123,11 @@ function PanelWithForwardedRef({
|
|
|
107
123
|
...styleFromProps
|
|
108
124
|
},
|
|
109
125
|
// CSS selectors
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
126
|
+
[DATA_ATTRIBUTES.groupId]: groupId,
|
|
127
|
+
[DATA_ATTRIBUTES.panel]: "",
|
|
128
|
+
[DATA_ATTRIBUTES.panelCollapsible]: collapsible || undefined,
|
|
129
|
+
[DATA_ATTRIBUTES.panelId]: panelId,
|
|
130
|
+
[DATA_ATTRIBUTES.panelSize]: parseFloat("" + style.flexGrow).toFixed(1)
|
|
115
131
|
});
|
|
116
132
|
}
|
|
117
133
|
const Panel = forwardRef((props, ref) => createElement(PanelWithForwardedRef, {
|
|
@@ -131,6 +147,7 @@ function setNonce(value) {
|
|
|
131
147
|
|
|
132
148
|
let currentCursorStyle = null;
|
|
133
149
|
let enabled = true;
|
|
150
|
+
let prevRuleIndex = -1;
|
|
134
151
|
let styleElement = null;
|
|
135
152
|
function disableGlobalCursorStyles() {
|
|
136
153
|
enabled = false;
|
|
@@ -180,9 +197,11 @@ function resetGlobalCursorStyle() {
|
|
|
180
197
|
document.head.removeChild(styleElement);
|
|
181
198
|
currentCursorStyle = null;
|
|
182
199
|
styleElement = null;
|
|
200
|
+
prevRuleIndex = -1;
|
|
183
201
|
}
|
|
184
202
|
}
|
|
185
203
|
function setGlobalCursorStyle(state, constraintFlags) {
|
|
204
|
+
var _styleElement$sheet$i, _styleElement$sheet2;
|
|
186
205
|
if (!enabled) {
|
|
187
206
|
return;
|
|
188
207
|
}
|
|
@@ -199,7 +218,11 @@ function setGlobalCursorStyle(state, constraintFlags) {
|
|
|
199
218
|
}
|
|
200
219
|
document.head.appendChild(styleElement);
|
|
201
220
|
}
|
|
202
|
-
|
|
221
|
+
if (prevRuleIndex >= 0) {
|
|
222
|
+
var _styleElement$sheet;
|
|
223
|
+
(_styleElement$sheet = styleElement.sheet) === null || _styleElement$sheet === void 0 ? void 0 : _styleElement$sheet.removeRule(prevRuleIndex);
|
|
224
|
+
}
|
|
225
|
+
prevRuleIndex = (_styleElement$sheet$i = (_styleElement$sheet2 = styleElement.sheet) === null || _styleElement$sheet2 === void 0 ? void 0 : _styleElement$sheet2.insertRule(`*{cursor: ${style} !important;}`)) !== null && _styleElement$sheet$i !== void 0 ? _styleElement$sheet$i : -1;
|
|
203
226
|
}
|
|
204
227
|
|
|
205
228
|
function isKeyDown(event) {
|
|
@@ -430,7 +453,9 @@ function handlePointerDown(event) {
|
|
|
430
453
|
if (intersectingHandles.length > 0) {
|
|
431
454
|
updateResizeHandlerStates("down", event);
|
|
432
455
|
event.preventDefault();
|
|
433
|
-
|
|
456
|
+
if (!isWithinResizeHandle(target)) {
|
|
457
|
+
event.stopImmediatePropagation();
|
|
458
|
+
}
|
|
434
459
|
}
|
|
435
460
|
}
|
|
436
461
|
function handlePointerMove(event) {
|
|
@@ -479,6 +504,9 @@ function handlePointerUp(event) {
|
|
|
479
504
|
isPointerDown = false;
|
|
480
505
|
if (intersectingHandles.length > 0) {
|
|
481
506
|
event.preventDefault();
|
|
507
|
+
if (!isWithinResizeHandle(target)) {
|
|
508
|
+
event.stopImmediatePropagation();
|
|
509
|
+
}
|
|
482
510
|
}
|
|
483
511
|
updateResizeHandlerStates("up", event);
|
|
484
512
|
recalculateIntersectingHandles({
|
|
@@ -489,6 +517,16 @@ function handlePointerUp(event) {
|
|
|
489
517
|
updateCursor();
|
|
490
518
|
updateListeners();
|
|
491
519
|
}
|
|
520
|
+
function isWithinResizeHandle(element) {
|
|
521
|
+
let currentElement = element;
|
|
522
|
+
while (currentElement) {
|
|
523
|
+
if (currentElement.hasAttribute(DATA_ATTRIBUTES.resizeHandle)) {
|
|
524
|
+
return true;
|
|
525
|
+
}
|
|
526
|
+
currentElement = currentElement.parentElement;
|
|
527
|
+
}
|
|
528
|
+
return false;
|
|
529
|
+
}
|
|
492
530
|
function recalculateIntersectingHandles({
|
|
493
531
|
target,
|
|
494
532
|
x,
|
|
@@ -580,49 +618,47 @@ function updateCursor() {
|
|
|
580
618
|
resetGlobalCursorStyle();
|
|
581
619
|
}
|
|
582
620
|
}
|
|
621
|
+
let listenersAbortController = new AbortController();
|
|
583
622
|
function updateListeners() {
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
window.removeEventListener("pointerup", handlePointerUp);
|
|
596
|
-
window.removeEventListener("pointercancel", handlePointerUp);
|
|
597
|
-
if (registeredResizeHandlers.size > 0) {
|
|
598
|
-
if (isPointerDown) {
|
|
599
|
-
if (intersectingHandles.length > 0) {
|
|
600
|
-
ownerDocumentCounts.forEach((count, ownerDocument) => {
|
|
601
|
-
const {
|
|
602
|
-
body
|
|
603
|
-
} = ownerDocument;
|
|
604
|
-
if (count > 0) {
|
|
605
|
-
body.addEventListener("contextmenu", handlePointerUp);
|
|
606
|
-
body.addEventListener("pointerleave", handlePointerMove);
|
|
607
|
-
body.addEventListener("pointermove", handlePointerMove);
|
|
608
|
-
}
|
|
609
|
-
});
|
|
610
|
-
}
|
|
611
|
-
window.addEventListener("pointerup", handlePointerUp);
|
|
612
|
-
window.addEventListener("pointercancel", handlePointerUp);
|
|
613
|
-
} else {
|
|
623
|
+
listenersAbortController.abort();
|
|
624
|
+
listenersAbortController = new AbortController();
|
|
625
|
+
const options = {
|
|
626
|
+
capture: true,
|
|
627
|
+
signal: listenersAbortController.signal
|
|
628
|
+
};
|
|
629
|
+
if (!registeredResizeHandlers.size) {
|
|
630
|
+
return;
|
|
631
|
+
}
|
|
632
|
+
if (isPointerDown) {
|
|
633
|
+
if (intersectingHandles.length > 0) {
|
|
614
634
|
ownerDocumentCounts.forEach((count, ownerDocument) => {
|
|
615
635
|
const {
|
|
616
636
|
body
|
|
617
637
|
} = ownerDocument;
|
|
618
638
|
if (count > 0) {
|
|
619
|
-
body.addEventListener("
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
body.addEventListener("pointermove", handlePointerMove);
|
|
639
|
+
body.addEventListener("contextmenu", handlePointerUp, options);
|
|
640
|
+
body.addEventListener("pointerleave", handlePointerMove, options);
|
|
641
|
+
body.addEventListener("pointermove", handlePointerMove, options);
|
|
623
642
|
}
|
|
624
643
|
});
|
|
625
644
|
}
|
|
645
|
+
ownerDocumentCounts.forEach((_, ownerDocument) => {
|
|
646
|
+
const {
|
|
647
|
+
body
|
|
648
|
+
} = ownerDocument;
|
|
649
|
+
body.addEventListener("pointerup", handlePointerUp, options);
|
|
650
|
+
body.addEventListener("pointercancel", handlePointerUp, options);
|
|
651
|
+
});
|
|
652
|
+
} else {
|
|
653
|
+
ownerDocumentCounts.forEach((count, ownerDocument) => {
|
|
654
|
+
const {
|
|
655
|
+
body
|
|
656
|
+
} = ownerDocument;
|
|
657
|
+
if (count > 0) {
|
|
658
|
+
body.addEventListener("pointerdown", handlePointerDown, options);
|
|
659
|
+
body.addEventListener("pointermove", handlePointerMove, options);
|
|
660
|
+
}
|
|
661
|
+
});
|
|
626
662
|
}
|
|
627
663
|
}
|
|
628
664
|
function updateResizeHandlerStates(action, event) {
|
|
@@ -647,8 +683,6 @@ function assert(expectedCondition, message) {
|
|
|
647
683
|
}
|
|
648
684
|
}
|
|
649
685
|
|
|
650
|
-
const PRECISION = 10;
|
|
651
|
-
|
|
652
686
|
function fuzzyCompareNumbers(actual, expected, fractionDigits = PRECISION) {
|
|
653
687
|
if (actual.toFixed(fractionDigits) === expected.toFixed(fractionDigits)) {
|
|
654
688
|
return 0;
|
|
@@ -953,12 +987,12 @@ function adjustLayoutByDelta({
|
|
|
953
987
|
}
|
|
954
988
|
|
|
955
989
|
function getResizeHandleElementsForGroup(groupId, scope = document) {
|
|
956
|
-
return Array.from(scope.querySelectorAll(`[
|
|
990
|
+
return Array.from(scope.querySelectorAll(`[${DATA_ATTRIBUTES.resizeHandleId}][data-panel-group-id="${groupId}"]`));
|
|
957
991
|
}
|
|
958
992
|
|
|
959
993
|
function getResizeHandleElementIndex(groupId, id, scope = document) {
|
|
960
994
|
const handles = getResizeHandleElementsForGroup(groupId, scope);
|
|
961
|
-
const index = handles.findIndex(handle => handle.getAttribute(
|
|
995
|
+
const index = handles.findIndex(handle => handle.getAttribute(DATA_ATTRIBUTES.resizeHandleId) === id);
|
|
962
996
|
return index !== null && index !== void 0 ? index : null;
|
|
963
997
|
}
|
|
964
998
|
|
|
@@ -983,7 +1017,7 @@ function getPanelGroupElement(id, rootElement = document) {
|
|
|
983
1017
|
}
|
|
984
1018
|
|
|
985
1019
|
function getResizeHandleElement(id, scope = document) {
|
|
986
|
-
const element = scope.querySelector(`[
|
|
1020
|
+
const element = scope.querySelector(`[${DATA_ATTRIBUTES.resizeHandleId}="${id}"]`);
|
|
987
1021
|
if (element) {
|
|
988
1022
|
return element;
|
|
989
1023
|
}
|
|
@@ -1028,7 +1062,7 @@ function useWindowSplitterPanelGroupBehavior({
|
|
|
1028
1062
|
const handles = getResizeHandleElementsForGroup(groupId, panelGroupElement);
|
|
1029
1063
|
assert(handles, `No resize handles found for group id "${groupId}"`);
|
|
1030
1064
|
const cleanupFunctions = handles.map(handle => {
|
|
1031
|
-
const handleId = handle.getAttribute(
|
|
1065
|
+
const handleId = handle.getAttribute(DATA_ATTRIBUTES.resizeHandleId);
|
|
1032
1066
|
assert(handleId, `Resize handle element has no handle id attribute`);
|
|
1033
1067
|
const [idBefore, idAfter] = getResizeHandlePanelIds(groupId, handleId, panelDataArray, panelGroupElement);
|
|
1034
1068
|
if (idBefore == null || idAfter == null) {
|
|
@@ -1106,7 +1140,7 @@ function calculateDragOffsetPercentage(event, dragHandleId, direction, initialDr
|
|
|
1106
1140
|
const isHorizontal = direction === "horizontal";
|
|
1107
1141
|
const handleElement = getResizeHandleElement(dragHandleId, panelGroupElement);
|
|
1108
1142
|
assert(handleElement, `No resize handle element found for id "${dragHandleId}"`);
|
|
1109
|
-
const groupId = handleElement.getAttribute(
|
|
1143
|
+
const groupId = handleElement.getAttribute(DATA_ATTRIBUTES.groupId);
|
|
1110
1144
|
assert(groupId, `Resize handle element has no group id attribute`);
|
|
1111
1145
|
let {
|
|
1112
1146
|
initialCursorPosition
|
|
@@ -1911,9 +1945,9 @@ function PanelGroupWithForwardedRef({
|
|
|
1911
1945
|
...styleFromProps
|
|
1912
1946
|
},
|
|
1913
1947
|
// CSS selectors
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1948
|
+
[DATA_ATTRIBUTES.group]: "",
|
|
1949
|
+
[DATA_ATTRIBUTES.groupDirection]: direction,
|
|
1950
|
+
[DATA_ATTRIBUTES.groupId]: groupId
|
|
1917
1951
|
}));
|
|
1918
1952
|
}
|
|
1919
1953
|
const PanelGroup = forwardRef((props, ref) => createElement(PanelGroupWithForwardedRef, {
|
|
@@ -1972,7 +2006,7 @@ function useWindowSplitterResizeHandlerBehavior({
|
|
|
1972
2006
|
case "F6":
|
|
1973
2007
|
{
|
|
1974
2008
|
event.preventDefault();
|
|
1975
|
-
const groupId = handleElement.getAttribute(
|
|
2009
|
+
const groupId = handleElement.getAttribute(DATA_ATTRIBUTES.groupId);
|
|
1976
2010
|
assert(groupId, `No group element found for id "${groupId}"`);
|
|
1977
2011
|
const handles = getResizeHandleElementsForGroup(groupId, panelGroupElement);
|
|
1978
2012
|
const index = getResizeHandleElementIndex(groupId, handleId, panelGroupElement);
|
|
@@ -2064,54 +2098,54 @@ function PanelResizeHandle({
|
|
|
2064
2098
|
assert(element, "Element ref not attached");
|
|
2065
2099
|
let didMove = false;
|
|
2066
2100
|
const setResizeHandlerState = (action, isActive, event) => {
|
|
2067
|
-
if (isActive) {
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
onDragging
|
|
2080
|
-
onPointerDown
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
resizeHandler(event);
|
|
2094
|
-
break;
|
|
2095
|
-
}
|
|
2096
|
-
case "up":
|
|
2097
|
-
{
|
|
2101
|
+
if (!isActive) {
|
|
2102
|
+
setState("inactive");
|
|
2103
|
+
return;
|
|
2104
|
+
}
|
|
2105
|
+
switch (action) {
|
|
2106
|
+
case "down":
|
|
2107
|
+
{
|
|
2108
|
+
setState("drag");
|
|
2109
|
+
didMove = false;
|
|
2110
|
+
assert(event, 'Expected event to be defined for "down" action');
|
|
2111
|
+
startDragging(resizeHandleId, event);
|
|
2112
|
+
const {
|
|
2113
|
+
onDragging,
|
|
2114
|
+
onPointerDown
|
|
2115
|
+
} = callbacksRef.current;
|
|
2116
|
+
onDragging === null || onDragging === void 0 ? void 0 : onDragging(true);
|
|
2117
|
+
onPointerDown === null || onPointerDown === void 0 ? void 0 : onPointerDown();
|
|
2118
|
+
break;
|
|
2119
|
+
}
|
|
2120
|
+
case "move":
|
|
2121
|
+
{
|
|
2122
|
+
const {
|
|
2123
|
+
state
|
|
2124
|
+
} = committedValuesRef.current;
|
|
2125
|
+
didMove = true;
|
|
2126
|
+
if (state !== "drag") {
|
|
2098
2127
|
setState("hover");
|
|
2099
|
-
stopDragging();
|
|
2100
|
-
const {
|
|
2101
|
-
onClick,
|
|
2102
|
-
onDragging,
|
|
2103
|
-
onPointerUp
|
|
2104
|
-
} = callbacksRef.current;
|
|
2105
|
-
onDragging === null || onDragging === void 0 ? void 0 : onDragging(false);
|
|
2106
|
-
onPointerUp === null || onPointerUp === void 0 ? void 0 : onPointerUp();
|
|
2107
|
-
if (!didMove) {
|
|
2108
|
-
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
2109
|
-
}
|
|
2110
|
-
break;
|
|
2111
2128
|
}
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2129
|
+
assert(event, 'Expected event to be defined for "move" action');
|
|
2130
|
+
resizeHandler(event);
|
|
2131
|
+
break;
|
|
2132
|
+
}
|
|
2133
|
+
case "up":
|
|
2134
|
+
{
|
|
2135
|
+
setState("hover");
|
|
2136
|
+
stopDragging();
|
|
2137
|
+
const {
|
|
2138
|
+
onClick,
|
|
2139
|
+
onDragging,
|
|
2140
|
+
onPointerUp
|
|
2141
|
+
} = callbacksRef.current;
|
|
2142
|
+
onDragging === null || onDragging === void 0 ? void 0 : onDragging(false);
|
|
2143
|
+
onPointerUp === null || onPointerUp === void 0 ? void 0 : onPointerUp();
|
|
2144
|
+
if (!didMove) {
|
|
2145
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
2146
|
+
}
|
|
2147
|
+
break;
|
|
2148
|
+
}
|
|
2115
2149
|
}
|
|
2116
2150
|
};
|
|
2117
2151
|
return registerResizeHandle(resizeHandleId, element, direction, {
|
|
@@ -2150,17 +2184,25 @@ function PanelResizeHandle({
|
|
|
2150
2184
|
},
|
|
2151
2185
|
tabIndex,
|
|
2152
2186
|
// CSS selectors
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2187
|
+
[DATA_ATTRIBUTES.groupDirection]: direction,
|
|
2188
|
+
[DATA_ATTRIBUTES.groupId]: groupId,
|
|
2189
|
+
[DATA_ATTRIBUTES.resizeHandle]: "",
|
|
2190
|
+
[DATA_ATTRIBUTES.resizeHandleActive]: state === "drag" ? "pointer" : isFocused ? "keyboard" : undefined,
|
|
2191
|
+
[DATA_ATTRIBUTES.resizeHandleEnabled]: !disabled,
|
|
2192
|
+
[DATA_ATTRIBUTES.resizeHandleId]: resizeHandleId,
|
|
2193
|
+
[DATA_ATTRIBUTES.resizeHandleState]: state
|
|
2160
2194
|
});
|
|
2161
2195
|
}
|
|
2162
2196
|
PanelResizeHandle.displayName = "PanelResizeHandle";
|
|
2163
2197
|
|
|
2198
|
+
function usePanelGroupContext() {
|
|
2199
|
+
const context = useContext(PanelGroupContext);
|
|
2200
|
+
return {
|
|
2201
|
+
direction: context === null || context === void 0 ? void 0 : context.direction,
|
|
2202
|
+
groupId: context === null || context === void 0 ? void 0 : context.groupId
|
|
2203
|
+
};
|
|
2204
|
+
}
|
|
2205
|
+
|
|
2164
2206
|
function getPanelElement(id, scope = document) {
|
|
2165
2207
|
const element = scope.querySelector(`[data-panel-id="${id}"]`);
|
|
2166
2208
|
if (element) {
|
|
@@ -2190,4 +2232,4 @@ function getIntersectingRectangle(rectOne, rectTwo, strict) {
|
|
|
2190
2232
|
};
|
|
2191
2233
|
}
|
|
2192
2234
|
|
|
2193
|
-
export { Panel, PanelGroup, PanelResizeHandle, assert, disableGlobalCursorStyles, enableGlobalCursorStyles, getIntersectingRectangle, getPanelElement, getPanelElementsForGroup, getPanelGroupElement, getResizeHandleElement, getResizeHandleElementIndex, getResizeHandleElementsForGroup, getResizeHandlePanelIds, intersects, setNonce };
|
|
2235
|
+
export { DATA_ATTRIBUTES, Panel, PanelGroup, PanelResizeHandle, assert, disableGlobalCursorStyles, enableGlobalCursorStyles, getIntersectingRectangle, getPanelElement, getPanelElementsForGroup, getPanelGroupElement, getResizeHandleElement, getResizeHandleElementIndex, getResizeHandleElementsForGroup, getResizeHandlePanelIds, intersects, setNonce, usePanelGroupContext };
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-resizable-panels",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "React components for resizable panel groups/layouts",
|
|
5
6
|
"author": "Brian Vaughn <brian.david.vaughn@gmail.com>",
|
|
6
7
|
"license": "MIT",
|
|
@@ -9,8 +10,6 @@
|
|
|
9
10
|
"url": "git+https://github.com/bvaughn/react-resizable-panels.git"
|
|
10
11
|
},
|
|
11
12
|
"source": "src/index.ts",
|
|
12
|
-
"main": "dist/react-resizable-panels.cjs.js",
|
|
13
|
-
"module": "dist/react-resizable-panels.esm.js",
|
|
14
13
|
"files": [
|
|
15
14
|
"dist",
|
|
16
15
|
"package.json",
|
|
@@ -19,38 +18,15 @@
|
|
|
19
18
|
],
|
|
20
19
|
"exports": {
|
|
21
20
|
".": {
|
|
22
|
-
"types":
|
|
23
|
-
"import": "./dist/react-resizable-panels.cjs.mjs",
|
|
24
|
-
"default": "./dist/react-resizable-panels.cjs.js"
|
|
25
|
-
},
|
|
21
|
+
"types": "./dist/react-resizable-panels.js",
|
|
26
22
|
"development": {
|
|
27
|
-
"browser":
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"default": "./dist/react-resizable-panels.browser.development.cjs.js"
|
|
31
|
-
},
|
|
32
|
-
"node": {
|
|
33
|
-
"module": "./dist/react-resizable-panels.development.node.esm.js",
|
|
34
|
-
"import": "./dist/react-resizable-panels.development.node.cjs.mjs",
|
|
35
|
-
"default": "./dist/react-resizable-panels.development.node.cjs.js"
|
|
36
|
-
},
|
|
37
|
-
"module": "./dist/react-resizable-panels.development.esm.js",
|
|
38
|
-
"import": "./dist/react-resizable-panels.development.cjs.mjs",
|
|
39
|
-
"default": "./dist/react-resizable-panels.development.cjs.js"
|
|
40
|
-
},
|
|
41
|
-
"browser": {
|
|
42
|
-
"module": "./dist/react-resizable-panels.browser.esm.js",
|
|
43
|
-
"import": "./dist/react-resizable-panels.browser.cjs.mjs",
|
|
44
|
-
"default": "./dist/react-resizable-panels.browser.cjs.js"
|
|
45
|
-
},
|
|
46
|
-
"node": {
|
|
47
|
-
"module": "./dist/react-resizable-panels.node.esm.js",
|
|
48
|
-
"import": "./dist/react-resizable-panels.node.cjs.mjs",
|
|
49
|
-
"default": "./dist/react-resizable-panels.node.cjs.js"
|
|
23
|
+
"browser": "./dist/react-resizable-panels.browser.development.js",
|
|
24
|
+
"node": "./dist/react-resizable-panels.development.node.js",
|
|
25
|
+
"default": "./dist/react-resizable-panels.development.js"
|
|
50
26
|
},
|
|
51
|
-
"
|
|
52
|
-
"
|
|
53
|
-
"default": "./dist/react-resizable-panels.
|
|
27
|
+
"browser": "./dist/react-resizable-panels.browser.js",
|
|
28
|
+
"node": "./dist/react-resizable-panels.node.js",
|
|
29
|
+
"default": "./dist/react-resizable-panels.js"
|
|
54
30
|
},
|
|
55
31
|
"./package.json": "./package.json"
|
|
56
32
|
},
|
|
@@ -66,24 +42,17 @@
|
|
|
66
42
|
}
|
|
67
43
|
},
|
|
68
44
|
"types": "dist/react-resizable-panels.cjs.d.ts",
|
|
69
|
-
"scripts": {
|
|
70
|
-
"clear": "pnpm run clear:builds & pnpm run clear:node_modules",
|
|
71
|
-
"clear:builds": "rm -rf ./packages/*/dist",
|
|
72
|
-
"clear:node_modules": "rm -rf ./node_modules",
|
|
73
|
-
"lint": "eslint \"src/**/*.{ts,tsx}\"",
|
|
74
|
-
"test": "jest --config=jest.config.js",
|
|
75
|
-
"test:watch": "jest --config=jest.config.js --watch",
|
|
76
|
-
"watch": "parcel watch --port=2345"
|
|
77
|
-
},
|
|
78
45
|
"devDependencies": {
|
|
79
46
|
"@babel/plugin-proposal-nullish-coalescing-operator": "7.18.6",
|
|
80
47
|
"@babel/plugin-proposal-optional-chaining": "7.21.0",
|
|
48
|
+
"@vitest/ui": "^3.1.2",
|
|
81
49
|
"eslint": "^8.37.0",
|
|
82
50
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
83
|
-
"
|
|
84
|
-
"jest-environment-jsdom": "^29.7.0",
|
|
51
|
+
"jsdom": "^26.1.0",
|
|
85
52
|
"react": "experimental",
|
|
86
|
-
"react-dom": "experimental"
|
|
53
|
+
"react-dom": "experimental",
|
|
54
|
+
"save-dev": "0.0.1-security",
|
|
55
|
+
"vitest": "^3.1.2"
|
|
87
56
|
},
|
|
88
57
|
"peerDependencies": {
|
|
89
58
|
"react": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc",
|
|
@@ -91,5 +60,14 @@
|
|
|
91
60
|
},
|
|
92
61
|
"browserslist": [
|
|
93
62
|
"Chrome 79"
|
|
94
|
-
]
|
|
95
|
-
|
|
63
|
+
],
|
|
64
|
+
"scripts": {
|
|
65
|
+
"clear": "pnpm run clear:builds & pnpm run clear:node_modules",
|
|
66
|
+
"clear:builds": "rm -rf ./packages/*/dist",
|
|
67
|
+
"clear:node_modules": "rm -rf ./node_modules",
|
|
68
|
+
"lint": "eslint \"src/**/*.{ts,tsx}\"",
|
|
69
|
+
"test:browser": "vitest",
|
|
70
|
+
"test:node": "vitest -c vitest.node.config.ts",
|
|
71
|
+
"watch": "parcel watch --port=2345"
|
|
72
|
+
}
|
|
73
|
+
}
|