react-resizable-panels 0.0.61 → 0.0.63

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.
@@ -918,9 +918,10 @@ function computePanelFlexBoxStyle({
918
918
  const size = layout[panelIndex];
919
919
  let flexGrow;
920
920
  if (panelData.length === 1) {
921
- flexGrow = "100";
921
+ flexGrow = "1";
922
922
  } else if (size == null) {
923
- flexGrow = "0";
923
+ // Initial render (before panels have registered themselves)
924
+ flexGrow = "1";
924
925
  } else {
925
926
  flexGrow = size.toPrecision(precision);
926
927
  }
@@ -1324,7 +1325,7 @@ function PanelGroupWithForwardedRef({
1324
1325
  if (panelSizePercentage === collapsedSizePercentage) {
1325
1326
  // Restore this panel to the size it was before it was collapsed, if possible.
1326
1327
  const prevPanelSizePercentage = panelSizeBeforeCollapseRef.current.get(panelData.id);
1327
- const baseSizePercentage = prevPanelSizePercentage != null ? prevPanelSizePercentage : minSizePercentage;
1328
+ const baseSizePercentage = prevPanelSizePercentage != null && prevPanelSizePercentage >= minSizePercentage ? prevPanelSizePercentage : minSizePercentage;
1328
1329
  const isLastPanel = panelDataArray.indexOf(panelData) === panelDataArray.length - 1;
1329
1330
  const delta = isLastPanel ? panelSizePercentage - baseSizePercentage : baseSizePercentage - panelSizePercentage;
1330
1331
  const nextLayout = adjustLayoutByDelta({
@@ -894,9 +894,10 @@ function computePanelFlexBoxStyle({
894
894
  const size = layout[panelIndex];
895
895
  let flexGrow;
896
896
  if (panelData.length === 1) {
897
- flexGrow = "100";
897
+ flexGrow = "1";
898
898
  } else if (size == null) {
899
- flexGrow = "0";
899
+ // Initial render (before panels have registered themselves)
900
+ flexGrow = "1";
900
901
  } else {
901
902
  flexGrow = size.toPrecision(precision);
902
903
  }
@@ -1300,7 +1301,7 @@ function PanelGroupWithForwardedRef({
1300
1301
  if (panelSizePercentage === collapsedSizePercentage) {
1301
1302
  // Restore this panel to the size it was before it was collapsed, if possible.
1302
1303
  const prevPanelSizePercentage = panelSizeBeforeCollapseRef.current.get(panelData.id);
1303
- const baseSizePercentage = prevPanelSizePercentage != null ? prevPanelSizePercentage : minSizePercentage;
1304
+ const baseSizePercentage = prevPanelSizePercentage != null && prevPanelSizePercentage >= minSizePercentage ? prevPanelSizePercentage : minSizePercentage;
1304
1305
  const isLastPanel = panelDataArray.indexOf(panelData) === panelDataArray.length - 1;
1305
1306
  const delta = isLastPanel ? panelSizePercentage - baseSizePercentage : baseSizePercentage - panelSizePercentage;
1306
1307
  const nextLayout = adjustLayoutByDelta({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-resizable-panels",
3
- "version": "0.0.61",
3
+ "version": "0.0.63",
4
4
  "description": "React components for resizable panel groups/layouts",
5
5
  "author": "Brian Vaughn <brian.david.vaughn@gmail.com>",
6
6
  "license": "MIT",
package/src/PanelGroup.ts CHANGED
@@ -482,7 +482,8 @@ function PanelGroupWithForwardedRef({
482
482
  panelSizeBeforeCollapseRef.current.get(panelData.id);
483
483
 
484
484
  const baseSizePercentage =
485
- prevPanelSizePercentage != null
485
+ prevPanelSizePercentage != null &&
486
+ prevPanelSizePercentage >= minSizePercentage
486
487
  ? prevPanelSizePercentage
487
488
  : minSizePercentage;
488
489
 
@@ -22,9 +22,10 @@ export function computePanelFlexBoxStyle({
22
22
 
23
23
  let flexGrow;
24
24
  if (panelData.length === 1) {
25
- flexGrow = "100";
25
+ flexGrow = "1";
26
26
  } else if (size == null) {
27
- flexGrow = "0";
27
+ // Initial render (before panels have registered themselves)
28
+ flexGrow = "1";
28
29
  } else {
29
30
  flexGrow = size.toPrecision(precision);
30
31
  }