react-resize-demo 2.0.3 → 4.1.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.
Files changed (89) hide show
  1. package/CHANGELOG.md +366 -0
  2. package/README.md +192 -117
  3. package/dist/core/virtualNode.js +2 -0
  4. package/dist/core/virtualNode.js.map +1 -0
  5. package/dist/esm/core/virtualNode.js +2 -0
  6. package/dist/esm/core/virtualNode.js.map +1 -0
  7. package/dist/esm/index.d.ts +7 -3
  8. package/dist/esm/index.js +1 -1
  9. package/dist/esm/strategies/basic/components/ResizeHandle/index.d.ts +25 -0
  10. package/dist/esm/strategies/basic/components/ResizeHandle/index.js +2 -0
  11. package/dist/esm/strategies/basic/components/ResizeHandle/index.js.map +1 -0
  12. package/dist/esm/{components → strategies/basic/components}/ResizePanel/index.d.ts +2 -1
  13. package/dist/esm/strategies/basic/components/ResizePanel/index.js +2 -0
  14. package/dist/esm/strategies/basic/components/ResizePanel/index.js.map +1 -0
  15. package/dist/{components → esm/strategies/basic/components}/ResizePanelGroup/index.d.ts +5 -3
  16. package/dist/esm/strategies/basic/components/ResizePanelGroup/index.js +2 -0
  17. package/dist/esm/strategies/basic/components/ResizePanelGroup/index.js.map +1 -0
  18. package/dist/esm/strategies/basic/context.d.ts +29 -0
  19. package/dist/esm/strategies/basic/context.js +2 -0
  20. package/dist/esm/strategies/basic/context.js.map +1 -0
  21. package/dist/esm/strategies/basic/resizeAble.js +2 -0
  22. package/dist/esm/strategies/basic/resizeAble.js.map +1 -0
  23. package/dist/esm/strategies/flex/components/ResizeHandleFlex/index.d.ts +25 -0
  24. package/dist/esm/strategies/flex/components/ResizeHandleFlex/index.js +2 -0
  25. package/dist/esm/strategies/flex/components/ResizeHandleFlex/index.js.map +1 -0
  26. package/dist/esm/strategies/flex/components/ResizePanelGroupFlex/index.d.ts +24 -0
  27. package/dist/esm/strategies/flex/components/ResizePanelGroupFlex/index.js +2 -0
  28. package/dist/esm/strategies/flex/components/ResizePanelGroupFlex/index.js.map +1 -0
  29. package/dist/esm/strategies/flex/resizeAble.js +2 -0
  30. package/dist/esm/strategies/flex/resizeAble.js.map +1 -0
  31. package/dist/esm/types/index.d.ts +32 -2
  32. package/dist/esm/types/index.js +2 -0
  33. package/dist/esm/types/index.js.map +1 -0
  34. package/dist/esm/utils/resizeHelpers.js +2 -0
  35. package/dist/esm/utils/resizeHelpers.js.map +1 -0
  36. package/dist/index.d.ts +7 -3
  37. package/dist/index.js +1 -1
  38. package/dist/strategies/basic/components/ResizeHandle/index.d.ts +25 -0
  39. package/dist/strategies/basic/components/ResizeHandle/index.js +2 -0
  40. package/dist/strategies/basic/components/ResizeHandle/index.js.map +1 -0
  41. package/dist/{components → strategies/basic/components}/ResizePanel/index.d.ts +2 -1
  42. package/dist/strategies/basic/components/ResizePanel/index.js +2 -0
  43. package/dist/strategies/basic/components/ResizePanel/index.js.map +1 -0
  44. package/dist/{esm → strategies/basic}/components/ResizePanelGroup/index.d.ts +5 -3
  45. package/dist/strategies/basic/components/ResizePanelGroup/index.js +2 -0
  46. package/dist/strategies/basic/components/ResizePanelGroup/index.js.map +1 -0
  47. package/dist/strategies/basic/context.d.ts +29 -0
  48. package/dist/strategies/basic/context.js +2 -0
  49. package/dist/strategies/basic/context.js.map +1 -0
  50. package/dist/strategies/basic/resizeAble.js +2 -0
  51. package/dist/strategies/basic/resizeAble.js.map +1 -0
  52. package/dist/strategies/flex/components/ResizeHandleFlex/index.d.ts +25 -0
  53. package/dist/strategies/flex/components/ResizeHandleFlex/index.js +2 -0
  54. package/dist/strategies/flex/components/ResizeHandleFlex/index.js.map +1 -0
  55. package/dist/strategies/flex/components/ResizePanelGroupFlex/index.d.ts +24 -0
  56. package/dist/strategies/flex/components/ResizePanelGroupFlex/index.js +2 -0
  57. package/dist/strategies/flex/components/ResizePanelGroupFlex/index.js.map +1 -0
  58. package/dist/strategies/flex/resizeAble.js +2 -0
  59. package/dist/strategies/flex/resizeAble.js.map +1 -0
  60. package/dist/types/index.d.ts +32 -2
  61. package/dist/types/index.js +2 -0
  62. package/dist/types/index.js.map +1 -0
  63. package/dist/utils/resizeHelpers.js +2 -0
  64. package/dist/utils/resizeHelpers.js.map +1 -0
  65. package/package.json +165 -134
  66. package/dist/components/ResizeHandle/index.js +0 -2
  67. package/dist/components/ResizeHandle/index.js.map +0 -1
  68. package/dist/components/ResizePanel/index.js +0 -2
  69. package/dist/components/ResizePanel/index.js.map +0 -1
  70. package/dist/components/ResizePanelGroup/index.js +0 -2
  71. package/dist/components/ResizePanelGroup/index.js.map +0 -1
  72. package/dist/components/shared/context.js +0 -2
  73. package/dist/components/shared/context.js.map +0 -1
  74. package/dist/esm/components/ResizeHandle/index.js +0 -2
  75. package/dist/esm/components/ResizeHandle/index.js.map +0 -1
  76. package/dist/esm/components/ResizePanel/index.js +0 -2
  77. package/dist/esm/components/ResizePanel/index.js.map +0 -1
  78. package/dist/esm/components/ResizePanelGroup/index.js +0 -2
  79. package/dist/esm/components/ResizePanelGroup/index.js.map +0 -1
  80. package/dist/esm/components/shared/context.js +0 -2
  81. package/dist/esm/components/shared/context.js.map +0 -1
  82. package/dist/esm/utils/resizeAble.js +0 -2
  83. package/dist/esm/utils/resizeAble.js.map +0 -1
  84. package/dist/esm/utils/virtualNode.js +0 -2
  85. package/dist/esm/utils/virtualNode.js.map +0 -1
  86. package/dist/utils/resizeAble.js +0 -2
  87. package/dist/utils/resizeAble.js.map +0 -1
  88. package/dist/utils/virtualNode.js +0 -2
  89. package/dist/utils/virtualNode.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("../../core/virtualNode.js"),t=require("../../types/index.js"),a=require("../../utils/resizeHelpers.js");exports.default=class{constructor(a){Object.defineProperty(this,"prePanelEl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getPanelInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"prePanelIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nextPanelIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"direction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"virtualEnabled",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"virtualConfig",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isResizing",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"containerEl",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"containerStartSize",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"allPanelsStartGrow",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"allPanelsCurrentGrow",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"allPanelsStartSizes",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"allPanelsStartPositions",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"panelInfosCache",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"allPanelIndices",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"handleSize",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"virtualNodeManager",{enumerable:!0,configurable:!0,writable:!0,value:null}),Object.defineProperty(this,"onPanelsChange",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"frozenPanels",{enumerable:!0,configurable:!0,writable:!0,value:new Set}),Object.defineProperty(this,"flexConfig",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.prePanelEl=a.prePanelEl,this.getPanelInfo=a.getPanelInfo,this.prePanelIndex=a.prePanelIndex,this.nextPanelIndex=a.nextPanelIndex,this.direction=a.direction,this.virtualEnabled=a.virtualEnabled||!1,this.virtualConfig=a.virtualConfig||{},this.handleSize=a.handleSize||0,this.onPanelsChange=a.onPanelsChange,this.flexConfig={...t.DEFAULT_FLEX_STRATEGY_CONFIG,...a.flexConfig||{}},this.containerEl=this.prePanelEl.parentElement,this.virtualEnabled&&(this.virtualNodeManager=new e.default)}startResize(){this.isResizing=!0,this.allPanelsStartGrow.clear(),this.allPanelsCurrentGrow.clear(),this.allPanelsStartSizes.clear(),this.panelInfosCache.clear();const e=this.getContainerSize();if(0===e)return;this.allPanelIndices=[];let t=0,a=this.getPanelInfo(t);for(;a;)this.allPanelIndices.push(t),this.panelInfosCache.set(t,a),t++,a=this.getPanelInfo(t);const l=e-Math.max(0,this.allPanelIndices.length-1)*this.handleSize;this.containerStartSize=l>0?l:e;const n=[];let i=0;this.allPanelIndices.forEach(e=>{const t=this.panelInfosCache.get(e);if(!t)return;const a=this.getSize(t.panelEl),l=this.getPosition(t.panelEl);this.allPanelsStartSizes.set(e,a),this.allPanelsStartPositions.set(e,l),n.push(a),i+=a}),this.allPanelIndices.forEach((e,t)=>{const a=n[t],l=i>0?a/i*this.flexConfig.growNormalizeBase:1,r=Math.round(l*this.flexConfig.growPrecisionMultiplier)/this.flexConfig.growPrecisionMultiplier;this.allPanelsStartGrow.set(e,r),this.allPanelsCurrentGrow.set(e,r)}),this.virtualEnabled&&this.virtualNodeManager&&this.allPanelIndices.forEach(e=>{const t=this.panelInfosCache.get(e);t&&this.virtualNodeManager.createVirtualNode(t.panelEl,this.virtualConfig,this.direction)})}onResize(e){this.isResizing&&(Math.abs(e)<this.flexConfig.minDeltaThreshold||this.calculatePanelsByPosition(e))}calculatePanelsByPosition(e){if(0===this.containerStartSize)return;let t=0;if(this.allPanelIndices.forEach(e=>{t+=this.allPanelsStartGrow.get(e)||0}),0===t)return;this.virtualEnabled||this.unfreezeAllPanels();const a=new Map;this.allPanelIndices.forEach(e=>{const t=this.allPanelsStartSizes.get(e)||0;a.set(e,t)}),e>0?this.adjustSizesForPositiveDelta(a,e):this.adjustSizesForNegativeDelta(a,-e);const l=new Set;if(this.allPanelIndices.forEach(e=>{const t=this.allPanelsStartSizes.get(e)||0,n=a.get(e)||0;Math.abs(n-t)>this.flexConfig.sizeChangeThreshold&&l.add(e)}),0===l.size)return this.allPanelIndices.forEach(e=>{const t=this.allPanelsStartGrow.get(e)||0;this.allPanelsCurrentGrow.set(e,t)}),void this.updateAllPanelsFlexGrow();let n=0;l.forEach(e=>{n+=a.get(e)||0});let i=0;this.allPanelIndices.forEach(e=>{if(!l.has(e)){const t=this.allPanelsStartGrow.get(e)||0;i+=t,this.allPanelsCurrentGrow.set(e,t)}});const r=t-i;n>0&&r>0?l.forEach(e=>{const t=(a.get(e)||0)/n*r;this.allPanelsCurrentGrow.set(e,Math.max(0,t))}):l.forEach(e=>{const t=this.allPanelsStartGrow.get(e)||0;this.allPanelsCurrentGrow.set(e,t)}),this.updateAllPanelsFlexGrow()}adjustSizesForPositiveDelta(e,t){const l=this.allPanelIndices.indexOf(this.nextPanelIndex),n=this.allPanelIndices.indexOf(this.prePanelIndex);if(l<0||n<0)return;const i=this.nextPanelIndex,r=this.allPanelIndices[this.allPanelIndices.length-1]+1,s=this.prePanelIndex,o=a.calculateTotalCompressableSpace(e,i,r,this.panelInfosCache,"forward"),h=a.calculateTotalStretchableSpace(e,s,-1,this.panelInfosCache,"backward");if(0===o||0===h)return;const c=Math.min(o,h===1/0?t:h,t);if(0===c)return;const f=a.performCompression(e,i,r,this.panelInfosCache,"forward",c);a.performStretch(e,s,-1,this.panelInfosCache,"backward",f)}adjustSizesForNegativeDelta(e,t){const l=this.allPanelIndices.indexOf(this.prePanelIndex),n=this.allPanelIndices.indexOf(this.nextPanelIndex);if(l<0||n<0)return;const i=this.prePanelIndex,r=this.nextPanelIndex,s=this.allPanelIndices[this.allPanelIndices.length-1]+1,o=a.calculateTotalCompressableSpace(e,i,-1,this.panelInfosCache,"backward"),h=a.calculateTotalStretchableSpace(e,r,s,this.panelInfosCache,"forward");if(0===o||0===h)return;const c=Math.min(o,h===1/0?t:h,t);if(0===c)return;const f=a.performCompression(e,i,-1,this.panelInfosCache,"backward",c);a.performStretch(e,r,s,this.panelInfosCache,"forward",f)}updateAllPanelsFlexGrow(){const e=new Set;this.virtualEnabled&&this.virtualNodeManager?this.allPanelIndices.forEach(t=>{const a=this.allPanelsCurrentGrow.get(t);if(void 0===a)return;const l=this.panelInfosCache.get(t);if(!l)return;const n=this.allPanelsStartGrow.get(t);void 0!==n&&Math.abs(a-n)>this.flexConfig.growChangeThreshold&&(e.add(t),this.frozenPanels.has(t)&&this.unfreezePanel(t)),this.virtualNodeManager&&this.virtualNodeManager.updateVirtualNodeFlexGrow(l.panelEl,a,this.direction)}):this.allPanelIndices.forEach(t=>{const a=this.allPanelsCurrentGrow.get(t);if(void 0===a)return;const l=this.panelInfosCache.get(t);if(!l)return;const n=this.allPanelsStartGrow.get(t);void 0!==n&&Math.abs(a-n)>this.flexConfig.growChangeThreshold?(e.add(t),this.frozenPanels.has(t)&&this.unfreezePanel(t),this.setFlexGrow(l.panelEl,a)):this.frozenPanels.has(t)||this.freezePanel(t)}),e.size>0&&this.onPanelsChange&&this.onPanelsChange(e)}freezePanel(e){const t=this.panelInfosCache.get(e);if(!t)return;const a=t.panelEl,l=this.allPanelsStartSizes.get(e);if(void 0===l)return;const n=this.allPanelsCurrentGrow.get(e);void 0!==n&&(a.dataset.frozenGrow=n.toString());const i="horizontal"===this.direction?"width":"height";a.style.flex="none",a.style[i]=`${l}px`,this.frozenPanels.add(e)}unfreezePanel(e){const t=this.panelInfosCache.get(e);if(!t)return;const a=t.panelEl,l=a.dataset.frozenGrow,n=void 0!==l?parseFloat(l):this.allPanelsCurrentGrow.get(e)||this.allPanelsStartGrow.get(e)||0;this.setFlexGrow(a,n);const i="horizontal"===this.direction?"width":"height";a.style[i]="",this.frozenPanels.delete(e),delete a.dataset.frozenGrow}unfreezeAllPanels(){Array.from(this.frozenPanels).forEach(e=>{this.unfreezePanel(e)})}endResize(){this.isResizing=!1,this.unfreezeAllPanels(),this.virtualEnabled&&this.virtualNodeManager&&(this.allPanelsCurrentGrow.forEach((e,t)=>{const a=this.panelInfosCache.get(t);a&&this.setFlexGrow(a.panelEl,e)}),this.virtualNodeManager.removeAllVirtualNodes()),this.panelInfosCache.clear(),this.allPanelsStartGrow.clear(),this.allPanelsCurrentGrow.clear(),this.allPanelsStartSizes.clear(),this.allPanelsStartPositions.clear(),this.allPanelIndices=[],this.frozenPanels.clear()}destroy(){this.isResizing=!1,this.unfreezeAllPanels(),this.virtualNodeManager&&this.virtualNodeManager.removeAllVirtualNodes(),this.allPanelsStartGrow.clear(),this.allPanelsCurrentGrow.clear(),this.allPanelsStartSizes.clear(),this.allPanelsStartPositions.clear(),this.allPanelIndices=[],this.frozenPanels.clear()}getSize(e){return"horizontal"===this.direction?e.offsetWidth:e.offsetHeight}getContainerSize(){return this.containerEl?"horizontal"===this.direction?this.containerEl.offsetWidth:this.containerEl.offsetHeight:0}getPosition(e){if(!e.parentElement)return 0;const t=e.getBoundingClientRect(),a=e.parentElement.getBoundingClientRect();return"horizontal"===this.direction?t.left-a.left+(e.parentElement.scrollLeft||0):t.top-a.top+(e.parentElement.scrollTop||0)}setFlexGrow(e,t){const a=Math.max(0,Math.round(t*this.flexConfig.flexGrowPrecisionMultiplier)/this.flexConfig.flexGrowPrecisionMultiplier);e.style.flex=`${a} 1 0`}};
2
+ //# sourceMappingURL=resizeAble.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizeAble.js","sources":["../../../src/strategies/flex/resizeAble.ts"],"sourcesContent":[null],"names":["constructor","options","Object","defineProperty","this","value","Map","Set","prePanelEl","getPanelInfo","prePanelIndex","nextPanelIndex","direction","virtualEnabled","virtualConfig","handleSize","onPanelsChange","flexConfig","DEFAULT_FLEX_STRATEGY_CONFIG","containerEl","parentElement","virtualNodeManager","VirtualNodeManager","startResize","isResizing","allPanelsStartGrow","clear","allPanelsCurrentGrow","allPanelsStartSizes","panelInfosCache","rawContainerSize","getContainerSize","allPanelIndices","index","panelInfo","push","set","availableSpace","Math","max","length","containerStartSize","panelSizes","totalSize","forEach","panelIndex","panel","get","size","getSize","panelEl","position","getPosition","allPanelsStartPositions","idx","grow","growNormalizeBase","roundedGrow","round","growPrecisionMultiplier","createVirtualNode","onResize","delta","abs","minDeltaThreshold","calculatePanelsByPosition","totalStartGrow","unfreezeAllPanels","newSizes","startSize","adjustSizesForPositiveDelta","adjustSizesForNegativeDelta","changedPanels","newSize","sizeChangeThreshold","add","startGrow","updateAllPanelsFlexGrow","totalChangedSize","totalUnchangedGrow","has","totalChangedGrow","newGrow","nextIndex","indexOf","preIndex","compressStartIndex","compressEndIndex","stretchStartIndex","totalCanCompress","calculateTotalCompressableSpace","totalCanStretch","calculateTotalStretchableSpace","realOperatePixel","min","Infinity","compressedTotal","performCompression","performStretch","stretchEndIndex","changedIndices","undefined","growChangeThreshold","frozenPanels","unfreezePanel","updateVirtualNodeFlexGrow","setFlexGrow","freezePanel","el","currentGrow","dataset","frozenGrow","toString","sizeProperty","style","flex","parseFloat","delete","Array","from","endResize","removeAllVirtualNodes","destroy","offsetWidth","offsetHeight","rect","getBoundingClientRect","parentRect","left","scrollLeft","top","scrollTop","flexGrowPrecisionMultiplier"],"mappings":"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"}
@@ -6,6 +6,7 @@ import React from 'react';
6
6
  interface PanelInfo {
7
7
  panelEl: HTMLElement;
8
8
  minSize: number;
9
+ maxSize?: number;
9
10
  }
10
11
  /**
11
12
  * 虚拟化配置接口
@@ -27,7 +28,34 @@ interface VirtualNodeConfig {
27
28
  */
28
29
  type ResizeDirection = 'horizontal' | 'vertical';
29
30
  /**
30
- * ResizeAbleCore 选项接口
31
+ * 优化策略类型(已废弃,保留用于向后兼容)
32
+ */
33
+ type OptimizationStrategy = 'normal';
34
+ /**
35
+ * 面板变化回调函数类型
36
+ * @param changedIndices - 发生变化的面板索引集合
37
+ */
38
+ type OnPanelsChangeCallback = (changedIndices: Set<number>) => void;
39
+ /**
40
+ * Flex 策略配置接口
41
+ * 用于配置 Flex 和 Flex-Linked 策略中的计算常量
42
+ */
43
+ interface FlexStrategyConfig {
44
+ /** 最小 delta 阈值,小于此值的拖拽变化将被忽略(像素) */
45
+ minDeltaThreshold?: number;
46
+ /** 尺寸变化误差阈值,用于判断面板尺寸是否发生变化(像素) */
47
+ sizeChangeThreshold?: number;
48
+ /** grow 值变化阈值,用于判断 flex-grow 值是否发生变化 */
49
+ growChangeThreshold?: number;
50
+ /** grow 值归一化基数,用于计算初始 grow 值 */
51
+ growNormalizeBase?: number;
52
+ /** grow 值精度倍数,用于保留小数位数(例如 1000 表示保留3位小数) */
53
+ growPrecisionMultiplier?: number;
54
+ /** flex-grow 精度倍数,用于设置 flex-grow 时的精度(例如 100 表示保留2位小数) */
55
+ flexGrowPrecisionMultiplier?: number;
56
+ }
57
+ /**
58
+ * ResizeAbleCore 选项接口(常规策略)
31
59
  */
32
60
  interface ResizeAbleCoreOptions {
33
61
  prePanelEl: HTMLElement;
@@ -39,6 +67,8 @@ interface ResizeAbleCoreOptions {
39
67
  virtualEnabled?: boolean;
40
68
  virtualConfig?: VirtualNodeConfig;
41
69
  handleSize?: number;
70
+ onPanelsChange?: OnPanelsChangeCallback;
71
+ flexConfig?: FlexStrategyConfig;
42
72
  }
43
73
 
44
- export type { PanelInfo, ResizeAbleCoreOptions, ResizeDirection, VirtualConfig, VirtualNodeConfig };
74
+ export type { FlexStrategyConfig, OnPanelsChangeCallback, OptimizationStrategy, PanelInfo, ResizeAbleCoreOptions, ResizeDirection, VirtualConfig, VirtualNodeConfig };
@@ -0,0 +1,2 @@
1
+ "use strict";exports.DEFAULT_FLEX_STRATEGY_CONFIG={minDeltaThreshold:.1,sizeChangeThreshold:.1,growChangeThreshold:1e-4,growNormalizeBase:100,growPrecisionMultiplier:1e3,flexGrowPrecisionMultiplier:100};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/types/index.ts"],"sourcesContent":[null],"names":["minDeltaThreshold","sizeChangeThreshold","growChangeThreshold","growNormalizeBase","growPrecisionMultiplier","flexGrowPrecisionMultiplier"],"mappings":"kDAkE0E,CACtEA,kBAAmB,GACnBC,oBAAqB,GACrBC,oBAAqB,KACrBC,kBAAmB,IACnBC,wBAAyB,IACzBC,4BAA6B"}
@@ -0,0 +1,2 @@
1
+ "use strict";function t(t,e){return Math.max(0,t-e)}function e(t,e){return void 0===e?1/0:Math.max(0,e-t)}exports.calculateCompressableSpace=t,exports.calculateStretchableSpace=e,exports.calculateTotalCompressableSpace=function(e,n,o,i,r){let c=0;if("forward"===r)for(let r=n;r<o;r++){const n=i.get(r);n&&(c+=t(e.get(r)||0,n.minSize))}else for(let r=n;r>=o;r--){const n=i.get(r);n&&(c+=t(e.get(r)||0,n.minSize))}return c},exports.calculateTotalStretchableSpace=function(t,n,o,i,r){let c=0;if("forward"===r)for(let r=n;r<o;r++){const n=i.get(r);if(!n)continue;const o=e(t.get(r)||0,n.maxSize);if(o===1/0)return 1/0;c+=o}else for(let r=n;r>=o;r--){const n=i.get(r);if(!n)continue;const o=e(t.get(r)||0,n.maxSize);if(o===1/0)return 1/0;c+=o}return c},exports.performCompression=function(e,n,o,i,r,c){let s=0;if("forward"===r)for(let r=n;r<o&&s<c;r++){const n=i.get(r);if(!n)continue;const o=e.get(r)||0,f=t(o,n.minSize);if(0===f)continue;const a=Math.min(f,c-s);e.set(r,o-a),s+=a}else for(let r=n;r>=o&&s<c;r--){const n=i.get(r);if(!n)continue;const o=e.get(r)||0,f=t(o,n.minSize);if(0===f)continue;const a=Math.min(f,c-s);e.set(r,o-a),s+=a}return s},exports.performStretch=function(t,n,o,i,r,c){let s=c;if("forward"===r)for(let r=n;r<o&&s>0;r++){const n=i.get(r);if(!n)continue;const o=t.get(r)||0,f=e(o,n.maxSize);if(0===f)continue;if(f===1/0)return t.set(r,o+s),c;const a=Math.min(f,s);t.set(r,o+a),s-=a}else for(let r=n;r>=o&&s>0;r--){const n=i.get(r);if(!n)continue;const o=t.get(r)||0,f=e(o,n.maxSize);if(0===f)continue;if(f===1/0)return t.set(r,o+s),c;const a=Math.min(f,s);t.set(r,o+a),s-=a}return c-s};
2
+ //# sourceMappingURL=resizeHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizeHelpers.js","sources":["../../src/utils/resizeHelpers.ts"],"sourcesContent":[null],"names":["calculateCompressableSpace","currentSize","minSize","Math","max","calculateStretchableSpace","maxSize","undefined","Infinity","sizes","startIndex","endIndex","panelInfosMap","direction","total","i","panelInfo","get","stretchable","targetPixels","compressedTotal","compressable","compressOnce","min","set","remainStretch","stretchOnce"],"mappings":"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"}
package/package.json CHANGED
@@ -1,134 +1,165 @@
1
- {
2
- "name": "react-resize-demo",
3
- "version": "2.0.3",
4
- "description": "A React component library demo",
5
- "main": "dist/index.js",
6
- "module": "dist/esm/index.js",
7
- "types": "dist/index.d.ts",
8
- "exports": {
9
- ".": {
10
- "import": {
11
- "types": "./dist/esm/index.d.ts",
12
- "default": "./dist/esm/index.js"
13
- },
14
- "require": {
15
- "types": "./dist/index.d.ts",
16
- "default": "./dist/index.js"
17
- }
18
- },
19
- "./components": {
20
- "import": {
21
- "types": "./dist/esm/components/index.d.ts",
22
- "default": "./dist/esm/components/index.js"
23
- },
24
- "require": {
25
- "types": "./dist/components/index.d.ts",
26
- "default": "./dist/components/index.js"
27
- }
28
- },
29
- "./components/*": {
30
- "import": {
31
- "types": "./dist/esm/components/*/index.d.ts",
32
- "default": "./dist/esm/components/*/index.js"
33
- },
34
- "require": {
35
- "types": "./dist/components/*/index.d.ts",
36
- "default": "./dist/components/*/index.js"
37
- }
38
- },
39
- "./components/shared/*": {
40
- "import": {
41
- "types": "./dist/esm/components/shared/*.d.ts",
42
- "default": "./dist/esm/components/shared/*.js"
43
- },
44
- "require": {
45
- "types": "./dist/components/shared/*.d.ts",
46
- "default": "./dist/components/shared/*.js"
47
- }
48
- },
49
- "./utils": {
50
- "import": {
51
- "types": "./dist/esm/utils/index.d.ts",
52
- "default": "./dist/esm/utils/index.js"
53
- },
54
- "require": {
55
- "types": "./dist/utils/index.d.ts",
56
- "default": "./dist/utils/index.js"
57
- }
58
- },
59
- "./utils/*": {
60
- "import": {
61
- "types": "./dist/esm/utils/*.d.ts",
62
- "default": "./dist/esm/utils/*.js"
63
- },
64
- "require": {
65
- "types": "./dist/utils/*.d.ts",
66
- "default": "./dist/utils/*.js"
67
- }
68
- },
69
- "./types": {
70
- "import": {
71
- "types": "./dist/esm/types/index.d.ts",
72
- "default": "./dist/esm/types/index.js"
73
- },
74
- "require": {
75
- "types": "./dist/types/index.d.ts",
76
- "default": "./dist/types/index.js"
77
- }
78
- }
79
- },
80
- "sideEffects": false,
81
- "files": [
82
- "dist",
83
- "README.md",
84
- "CHANGELOG.md"
85
- ],
86
- "scripts": {
87
- "build": "rollup -c",
88
- "build:watch": "rollup -c -w",
89
- "dev": "vite",
90
- "demo": "vite --config vite.demo.config.ts",
91
- "demo:build": "vite build --config vite.demo.config.ts",
92
- "type-check": "tsc --noEmit",
93
- "lint": "eslint src --ext .ts,.tsx",
94
- "prepublishOnly": "npm run build"
95
- },
96
- "keywords": [
97
- "react",
98
- "component",
99
- "library"
100
- ],
101
- "author": "",
102
- "license": "MIT",
103
- "peerDependencies": {
104
- "react": ">=16.8.0",
105
- "react-dom": ">=16.8.0"
106
- },
107
- "devDependencies": {
108
- "@rollup/plugin-commonjs": "^25.0.7",
109
- "@rollup/plugin-node-resolve": "^15.2.3",
110
- "@rollup/plugin-typescript": "^11.1.5",
111
- "@types/react": "^18.2.43",
112
- "@types/react-dom": "^18.2.17",
113
- "@typescript-eslint/eslint-plugin": "^6.14.0",
114
- "@typescript-eslint/parser": "^6.14.0",
115
- "@vitejs/plugin-react": "^4.2.1",
116
- "eslint": "^8.55.0",
117
- "eslint-plugin-react": "^7.33.2",
118
- "eslint-plugin-react-hooks": "^4.6.0",
119
- "react": "^18.2.0",
120
- "react-dom": "^18.2.0",
121
- "rollup": "^4.6.1",
122
- "rollup-plugin-dts": "^6.1.0",
123
- "rollup-plugin-peer-deps-external": "^2.2.4",
124
- "rollup-plugin-postcss": "^4.0.2",
125
- "tslib": "^2.6.2",
126
- "typescript": "^5.3.3",
127
- "vite": "^5.0.7"
128
- },
129
- "repository": {
130
- "type": "git",
131
- "url": ""
132
- }
133
- }
134
-
1
+ {
2
+ "name": "react-resize-demo",
3
+ "version": "4.1.0",
4
+ "description": "A React component library demo",
5
+ "main": "dist/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": {
11
+ "types": "./dist/esm/index.d.ts",
12
+ "default": "./dist/esm/index.js"
13
+ },
14
+ "require": {
15
+ "types": "./dist/index.d.ts",
16
+ "default": "./dist/index.js"
17
+ }
18
+ },
19
+ "./components": {
20
+ "import": {
21
+ "types": "./dist/esm/components/index.d.ts",
22
+ "default": "./dist/esm/components/index.js"
23
+ },
24
+ "require": {
25
+ "types": "./dist/components/index.d.ts",
26
+ "default": "./dist/components/index.js"
27
+ }
28
+ },
29
+ "./components/*": {
30
+ "import": {
31
+ "types": "./dist/esm/components/*/index.d.ts",
32
+ "default": "./dist/esm/components/*/index.js"
33
+ },
34
+ "require": {
35
+ "types": "./dist/components/*/index.d.ts",
36
+ "default": "./dist/components/*/index.js"
37
+ }
38
+ },
39
+ "./strategies/*": {
40
+ "import": {
41
+ "types": "./dist/esm/strategies/*/index.d.ts",
42
+ "default": "./dist/esm/strategies/*/index.js"
43
+ },
44
+ "require": {
45
+ "types": "./dist/strategies/*/index.d.ts",
46
+ "default": "./dist/strategies/*/index.js"
47
+ }
48
+ },
49
+ "./strategies/*/*": {
50
+ "import": {
51
+ "types": "./dist/esm/strategies/*/*.d.ts",
52
+ "default": "./dist/esm/strategies/*/*.js"
53
+ },
54
+ "require": {
55
+ "types": "./dist/strategies/*/*.d.ts",
56
+ "default": "./dist/strategies/*/*.js"
57
+ }
58
+ },
59
+ "./strategies/*/components/*": {
60
+ "import": {
61
+ "types": "./dist/esm/strategies/*/components/*/index.d.ts",
62
+ "default": "./dist/esm/strategies/*/components/*/index.js"
63
+ },
64
+ "require": {
65
+ "types": "./dist/strategies/*/components/*/index.d.ts",
66
+ "default": "./dist/strategies/*/components/*/index.js"
67
+ }
68
+ },
69
+ "./core/*": {
70
+ "import": {
71
+ "types": "./dist/esm/core/*.d.ts",
72
+ "default": "./dist/esm/core/*.js"
73
+ },
74
+ "require": {
75
+ "types": "./dist/core/*.d.ts",
76
+ "default": "./dist/core/*.js"
77
+ }
78
+ },
79
+ "./utils": {
80
+ "import": {
81
+ "types": "./dist/esm/utils/index.d.ts",
82
+ "default": "./dist/esm/utils/index.js"
83
+ },
84
+ "require": {
85
+ "types": "./dist/utils/index.d.ts",
86
+ "default": "./dist/utils/index.js"
87
+ }
88
+ },
89
+ "./utils/*": {
90
+ "import": {
91
+ "types": "./dist/esm/utils/*.d.ts",
92
+ "default": "./dist/esm/utils/*.js"
93
+ },
94
+ "require": {
95
+ "types": "./dist/utils/*.d.ts",
96
+ "default": "./dist/utils/*.js"
97
+ }
98
+ },
99
+ "./types": {
100
+ "import": {
101
+ "types": "./dist/esm/types/index.d.ts",
102
+ "default": "./dist/esm/types/index.js"
103
+ },
104
+ "require": {
105
+ "types": "./dist/types/index.d.ts",
106
+ "default": "./dist/types/index.js"
107
+ }
108
+ }
109
+ },
110
+ "sideEffects": false,
111
+ "files": [
112
+ "dist",
113
+ "README.md",
114
+ "CHANGELOG.md"
115
+ ],
116
+ "scripts": {
117
+ "build": "rollup -c",
118
+ "build:watch": "rollup -c -w",
119
+ "dev": "vite",
120
+ "demo": "vite --config vite.demo.config.ts",
121
+ "demo:build": "vite build --config vite.demo.config.ts",
122
+ "type-check": "tsc --noEmit",
123
+ "lint": "eslint src --ext .ts,.tsx",
124
+ "prepublishOnly": "npm run build"
125
+ },
126
+ "keywords": [
127
+ "react",
128
+ "component",
129
+ "library"
130
+ ],
131
+ "author": "",
132
+ "license": "MIT",
133
+ "peerDependencies": {
134
+ "react": ">=16.8.0",
135
+ "react-dom": ">=16.8.0"
136
+ },
137
+ "devDependencies": {
138
+ "@rollup/plugin-alias": "^6.0.0",
139
+ "@rollup/plugin-commonjs": "^25.0.7",
140
+ "@rollup/plugin-node-resolve": "^15.2.3",
141
+ "@rollup/plugin-terser": "^0.4.4",
142
+ "@rollup/plugin-typescript": "^11.1.5",
143
+ "@types/react": "^18.2.43",
144
+ "@types/react-dom": "^18.2.17",
145
+ "@typescript-eslint/eslint-plugin": "^6.14.0",
146
+ "@typescript-eslint/parser": "^6.14.0",
147
+ "@vitejs/plugin-react": "^4.2.1",
148
+ "eslint": "^8.55.0",
149
+ "eslint-plugin-react": "^7.33.2",
150
+ "eslint-plugin-react-hooks": "^4.6.0",
151
+ "react": "^18.2.0",
152
+ "react-dom": "^18.2.0",
153
+ "rollup": "^4.6.1",
154
+ "rollup-plugin-dts": "^6.1.0",
155
+ "rollup-plugin-peer-deps-external": "^2.2.4",
156
+ "rollup-plugin-postcss": "^4.0.2",
157
+ "tslib": "^2.6.2",
158
+ "typescript": "^5.3.3",
159
+ "vite": "^5.0.7"
160
+ },
161
+ "repository": {
162
+ "type": "git",
163
+ "url": ""
164
+ }
165
+ }
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),n=require("react"),t=require("../../utils/resizeAble.js"),r=require("../shared/context.js");exports.ResizeHandle=({prePanelIndex:s,nextPanelIndex:o,direction:u})=>{const i=n.useRef(null),l=n.useRef(null),{getPanelInfo:c,panelCount:a,virtualConfig:d}=r.useResizableContext();n.useEffect(()=>{if(a<=o||!i.current)return;const e=c(s),n=c(o);if(!e||!n)return;const r=i.current?"horizontal"===u?i.current.offsetWidth:i.current.offsetHeight:10;l.current=new t.default({prePanelEl:e.panelEl,nextPanelEl:n.panelEl,getPanelInfo:c,prePanelIndex:s,nextPanelIndex:o,direction:u,virtualEnabled:d.enabled||!1,virtualConfig:{style:d.style,className:d.className},handleSize:r});const f=i.current;let m=!1,v=0;const x=e=>{e.preventDefault(),m=!0,v="horizontal"===u?e.clientX:e.clientY,l.current&&l.current.startResize()},z=e=>{if(!m||!l.current)return;const n=("horizontal"===u?e.clientX:e.clientY)-v;l.current.onResize(n)},p=()=>{m&&l.current&&(m=!1,l.current.endResize())};return f.addEventListener("mousedown",x),document.addEventListener("mousemove",z),document.addEventListener("mouseup",p),()=>{f.removeEventListener("mousedown",x),document.removeEventListener("mousemove",z),document.removeEventListener("mouseup",p),l.current&&l.current.destroy()}},[s,o,u,c,a,d]);const f="horizontal"===u;return e.jsx("div",{ref:i,style:{position:"relative",width:f?"10px":"100%",height:f?"100%":"10px",backgroundColor:"#000",cursor:f?"ew-resize":"ns-resize",zIndex:1e3,flexShrink:0}})};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/ResizeHandle/index.tsx"],"sourcesContent":[null],"names":["prePanelIndex","nextPanelIndex","direction","handleRef","useRef","coreInstanceRef","getPanelInfo","panelCount","virtualConfig","useResizableContext","useEffect","current","prePanelInfo","nextPanelInfo","handleSize","offsetWidth","offsetHeight","ResizeAbleCore","prePanelEl","panelEl","nextPanelEl","virtualEnabled","enabled","style","className","handleEl","isResizing","startPos","startResize","e","preventDefault","clientX","clientY","onResizeMove","delta","onResize","endResize","addEventListener","document","removeEventListener","destroy","isHorizontal","_jsx","ref","position","width","height","backgroundColor","cursor","zIndex","flexShrink"],"mappings":"mKAeyD,EACrDA,gBACAC,iBACAC,gBAEA,MAAMC,EAAYC,EAAAA,OAAuB,MACnCC,EAAkBD,EAAAA,OAAmD,OACrEE,aAAEA,EAAYC,WAAEA,EAAUC,cAAEA,GAAkBC,EAAAA,sBAEpDC,EAAAA,UAAU,KAGN,GAAIH,GAAcN,IAAmBE,EAAUQ,QAC3C,OAGJ,MAAMC,EAAeN,EAAaN,GAC5Ba,EAAgBP,EAAaL,GACnC,IAAIW,IAAiBC,EAAe,OAGpC,MAAMC,EAAaX,EAAUQ,QACR,eAAdT,EACGC,EAAUQ,QAAQI,YAClBZ,EAAUQ,QAAQK,aACQ,GAEpCX,EAAgBM,QAAU,IAAIM,UAAe,CACzCC,WAAYN,EAAaO,QACzBC,YAAaP,EAAcM,QAC3Bb,eACAN,gBACAC,iBACAC,YACAmB,eAAgBb,EAAcc,UAAW,EACzCd,cAAe,CACXe,MAAOf,EAAce,MACrBC,UAAWhB,EAAcgB,WAE7BV,eAIJ,MAAMW,EAAWtB,EAAUQ,QAC3B,IAAIe,GAAa,EACbC,EAAW,EAEf,MAAMC,EAAeC,IACjBA,EAAEC,iBACFJ,GAAa,EACbC,EAAyB,eAAdzB,EAA6B2B,EAAEE,QAAUF,EAAEG,QAClD3B,EAAgBM,SAChBN,EAAgBM,QAAQiB,eAI1BK,EAAgBJ,IAClB,IAAIH,IAAerB,EAAgBM,QAAS,OAC5C,MACMuB,GAD2B,eAAdhC,EAA6B2B,EAAEE,QAAUF,EAAEG,SACnCL,EAC3BtB,EAAgBM,QAAQwB,SAASD,IAG/BE,EAAY,KACXV,GAAcrB,EAAgBM,UAC7Be,GAAa,EACbrB,EAAgBM,QAAQyB,cAQhC,OAJAX,EAASY,iBAAiB,YAAaT,GACvCU,SAASD,iBAAiB,YAAaJ,GACvCK,SAASD,iBAAiB,UAAWD,GAE9B,KACHX,EAASc,oBAAoB,YAAaX,GAC1CU,SAASC,oBAAoB,YAAaN,GAC1CK,SAASC,oBAAoB,UAAWH,GACrC/B,EAAgBM,SACfN,EAAgBM,QAAQ6B,YAGjC,CAACxC,EAAeC,EAAgBC,EAAWI,EAAcC,EAAYC,IAExE,MAAMiC,EAA6B,eAAdvC,EACrB,OACIwC,EAAAA,IAAA,MAAA,CACIC,IAAKxC,EACLoB,MAAO,CACHqB,SAAU,WACVC,MAAOJ,EAAe,OAAS,OAC/BK,OAAQL,EAAe,OAAS,OAChCM,gBAAiB,OACjBC,OAAQP,EAAe,YAAc,YACrCQ,OAAQ,IACRC,WAAY"}
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),r=require("react"),i=require("../shared/context.js");exports.ResizePanel=({children:t,minSize:n=100})=>{const s=r.useRef(null),u=r.useRef(-1),{registerPanel:c,unregisterPanel:l,direction:o}=i.useResizableContext();return r.useEffect(()=>{if(!s.current)return;const e=s.current;return u.current=c(e,n),()=>{l(e)}},[n,c,l]),e.jsx("div",{ref:s,style:{flex:1,minWidth:"horizontal"===o?n:void 0,minHeight:"vertical"===o?n:void 0,width:"auto",overflow:"hidden",position:"relative"},children:e.jsx("div",{style:{height:"100%",padding:16},children:t})})};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/ResizePanel/index.tsx"],"sourcesContent":[null],"names":["children","minSize","panelRef","useRef","panelIndexRef","registerPanel","unregisterPanel","direction","useResizableContext","useEffect","current","panelEl","_jsx","ref","style","flex","minWidth","undefined","minHeight","width","overflow","position","height","padding"],"mappings":"2HAauD,EACnDA,WACAC,UAAU,QAGV,MAAMC,EAAWC,EAAAA,OAAuB,MAClCC,EAAgBD,EAAAA,YAChBE,cAAEA,EAAaC,gBAAEA,EAAeC,UAAEA,GAAcC,EAAAA,sBAWtD,OATAC,EAAAA,UAAU,KACN,IAAIP,EAASQ,QAAS,OACtB,MAAMC,EAAUT,EAASQ,QAEzB,OADAN,EAAcM,QAAUL,EAAcM,EAASV,GACxC,KACHK,EAAgBK,KAErB,CAACV,EAASI,EAAeC,IAGxBM,EAAAA,IAAA,MAAA,CACIC,IAAKX,EACLY,MAAO,CACHC,KAAM,EACNC,SAAwB,eAAdT,EAA6BN,OAAUgB,EACjDC,UAAyB,aAAdX,EAA2BN,OAAUgB,EAChDE,MAAO,OACPC,SAAU,SACVC,SAAU,YACbrB,SAEDY,EAAAA,WAAKE,MAAO,CAACQ,OAAQ,OAAQC,QAAS,IAAGvB,SACpCA"}
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),n=require("react"),r=require("../shared/context.js"),t=require("../ResizeHandle/index.js");exports.ResizePanelGroup=({children:l,direction:i="horizontal",style:a,virtual:u=!1,virtualConfig:s={}})=>{const c=n.useRef([]),[o,d]=n.useState(0),h=n.useCallback((e,n)=>{const r=c.current.length;return c.current.push({panelEl:e,minSize:n}),d(c.current.length),r},[]),x=n.useCallback(e=>{c.current=c.current.filter(n=>n.panelEl!==e),d(c.current.length)},[]),p=n.useCallback(e=>c.current[e]||null,[]),g=n.useCallback(e=>c.current.findIndex(n=>n.panelEl===e),[]),f=n.Children.toArray(l),C=[];f.forEach((n,r)=>{C.push(n),r<f.length-1&&C.push(e.jsx(t.ResizeHandle,{prePanelIndex:r,nextPanelIndex:r+1,direction:i},`handle-${r}`))});const P={enabled:u,...s},v={panelCount:o,registerPanel:h,unregisterPanel:x,getPanelInfo:p,getPanelIndex:g,direction:i,panelInfos:c.current,virtualConfig:P};return e.jsx(r.ResizableContext.Provider,{value:v,children:e.jsx("div",{style:{display:"flex",flexDirection:"horizontal"===i?"row":"column",height:"100%",position:"relative",...a},children:C})})};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/ResizePanelGroup/index.tsx"],"sourcesContent":[null],"names":["children","direction","style","virtual","virtualConfig","panelInfos","useRef","panelCount","setPanelCount","useState","registerPanel","useCallback","panelEl","minSize","index","current","length","push","unregisterPanel","filter","info","getPanelInfo","getPanelIndex","findIndex","childrenArray","React","Children","toArray","panelsWithHandles","forEach","child","_jsx","ResizeHandle","prePanelIndex","nextPanelIndex","mergedVirtualConfig","enabled","contextValue","ResizableContext","Provider","value","display","flexDirection","height","position"],"mappings":"sKAiBiE,EAC7DA,WACAC,YAAY,aACZC,QACAC,WAAU,EACVC,gBAAgB,CAAA,MAEhB,MAAMC,EAAaC,EAAAA,OAAoB,KAChCC,EAAYC,GAAiBC,EAAAA,SAAS,GAEvCC,EAAgBC,EAAAA,YAAY,CAACC,EAAsBC,KACrD,MAAMC,EAAQT,EAAWU,QAAQC,OAGjC,OAFAX,EAAWU,QAAQE,KAAK,CAAEL,UAASC,YACnCL,EAAcH,EAAWU,QAAQC,QAC1BF,GACR,IAEGI,EAAkBP,cAAaC,IACjCP,EAAWU,QAAUV,EAAWU,QAAQI,OAAOC,GAAQA,EAAKR,UAAYA,GACxEJ,EAAcH,EAAWU,QAAQC,SAClC,IAEGK,EAAeV,cAAaG,GACvBT,EAAWU,QAAQD,IAAU,KACrC,IAEGQ,EAAgBX,cAAaC,GACxBP,EAAWU,QAAQQ,UAAUH,GAAQA,EAAKR,UAAYA,GAC9D,IAEGY,EAAgBC,EAAMC,SAASC,QAAQ3B,GACvC4B,EAAuC,GAE7CJ,EAAcK,QAAQ,CAACC,EAAOhB,KAC1Bc,EAAkBX,KAAKa,GAGnBhB,EAAQU,EAAcR,OAAS,GAC/BY,EAAkBX,KACdc,EAAAA,IAACC,EAAAA,cAEGC,cAAenB,EACfoB,eAAgBpB,EAAQ,EACxBb,UAAWA,GAHN,UAAUa,QAU/B,MAAMqB,EAAqC,CACvCC,QAASjC,KACNC,GAGDiC,EAAsC,CACxC9B,WAAYA,EACZG,gBACAQ,kBACAG,eACAC,gBACArB,YACAI,WAAYA,EAAWU,QACvBX,cAAe+B,GAGnB,OACIJ,MAACO,EAAAA,iBAAiBC,SAAQ,CAACC,MAAOH,EAAYrC,SAC1C+B,EAAAA,IAAA,MAAA,CAAK7B,MAAO,CACJuC,QAAS,OACTC,cAA6B,eAAdzC,EAA6B,MAAQ,SACpD0C,OAAQ,OACRC,SAAU,cACP1C,GACVF,SACI4B"}
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("react"),t=e.createContext({panelCount:0,registerPanel:()=>0,unregisterPanel:()=>{},getPanelInfo:()=>null,getPanelIndex:()=>-1,direction:"horizontal",panelInfos:[],virtualConfig:{enabled:!1}});exports.ResizableContext=t,exports.useResizableContext=()=>{const n=e.useContext(t);if(!n)throw new Error("useResizableContext must be used within ResizablePanelGroup");return n};
2
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sources":["../../../src/components/shared/context.tsx"],"sourcesContent":[null],"names":["ResizableContext","React","createContext","panelCount","registerPanel","unregisterPanel","getPanelInfo","getPanelIndex","direction","panelInfos","virtualConfig","enabled","context","useContext","Error"],"mappings":"sCAkCaA,EAAmBC,EAAMC,cAda,CAC/CC,WAAY,EACZC,cAAe,IAAM,EACrBC,gBAAiB,OACjBC,aAAc,IAAM,KACpBC,cAAe,KAAM,EACrBC,UAAW,aACXC,WAAY,GACZC,cAAe,CAAEC,SAAS,4DAWK,KAC/B,MAAMC,EAAUX,EAAMY,WAAWb,GACjC,IAAKY,EACD,MAAM,IAAIE,MAAM,+DAEpB,OAAOF"}
@@ -1,2 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useRef as n,useEffect as t}from"react";import r from"../../utils/resizeAble.js";import{useResizableContext as o}from"../shared/context.js";const i=({prePanelIndex:i,nextPanelIndex:l,direction:s})=>{const u=n(null),c=n(null),{getPanelInfo:a,panelCount:d,virtualConfig:m}=o();t(()=>{if(d<=l||!u.current)return;const e=a(i),n=a(l);if(!e||!n)return;const t=u.current?"horizontal"===s?u.current.offsetWidth:u.current.offsetHeight:10;c.current=new r({prePanelEl:e.panelEl,nextPanelEl:n.panelEl,getPanelInfo:a,prePanelIndex:i,nextPanelIndex:l,direction:s,virtualEnabled:m.enabled||!1,virtualConfig:{style:m.style,className:m.className},handleSize:t});const o=u.current;let f=!1,p=0;const v=e=>{e.preventDefault(),f=!0,p="horizontal"===s?e.clientX:e.clientY,c.current&&c.current.startResize()},x=e=>{if(!f||!c.current)return;const n=("horizontal"===s?e.clientX:e.clientY)-p;c.current.onResize(n)},h=()=>{f&&c.current&&(f=!1,c.current.endResize())};return o.addEventListener("mousedown",v),document.addEventListener("mousemove",x),document.addEventListener("mouseup",h),()=>{o.removeEventListener("mousedown",v),document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",h),c.current&&c.current.destroy()}},[i,l,s,a,d,m]);const f="horizontal"===s;return e("div",{ref:u,style:{position:"relative",width:f?"10px":"100%",height:f?"100%":"10px",backgroundColor:"#000",cursor:f?"ew-resize":"ns-resize",zIndex:1e3,flexShrink:0}})};export{i as ResizeHandle};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/ResizeHandle/index.tsx"],"sourcesContent":[null],"names":["ResizeHandle","prePanelIndex","nextPanelIndex","direction","handleRef","useRef","coreInstanceRef","getPanelInfo","panelCount","virtualConfig","useResizableContext","useEffect","current","prePanelInfo","nextPanelInfo","handleSize","offsetWidth","offsetHeight","ResizeAbleCore","prePanelEl","panelEl","nextPanelEl","virtualEnabled","enabled","style","className","handleEl","isResizing","startPos","startResize","e","preventDefault","clientX","clientY","onResizeMove","delta","onResize","endResize","addEventListener","document","removeEventListener","destroy","isHorizontal","_jsx","ref","position","width","height","backgroundColor","cursor","zIndex","flexShrink"],"mappings":"0LAeO,MAAMA,EAA4C,EACrDC,gBACAC,iBACAC,gBAEA,MAAMC,EAAYC,EAAuB,MACnCC,EAAkBD,EAAmD,OACrEE,aAAEA,EAAYC,WAAEA,EAAUC,cAAEA,GAAkBC,IAEpDC,EAAU,KAGN,GAAIH,GAAcN,IAAmBE,EAAUQ,QAC3C,OAGJ,MAAMC,EAAeN,EAAaN,GAC5Ba,EAAgBP,EAAaL,GACnC,IAAIW,IAAiBC,EAAe,OAGpC,MAAMC,EAAaX,EAAUQ,QACR,eAAdT,EACGC,EAAUQ,QAAQI,YAClBZ,EAAUQ,QAAQK,aACQ,GAEpCX,EAAgBM,QAAU,IAAIM,EAAe,CACzCC,WAAYN,EAAaO,QACzBC,YAAaP,EAAcM,QAC3Bb,eACAN,gBACAC,iBACAC,YACAmB,eAAgBb,EAAcc,UAAW,EACzCd,cAAe,CACXe,MAAOf,EAAce,MACrBC,UAAWhB,EAAcgB,WAE7BV,eAIJ,MAAMW,EAAWtB,EAAUQ,QAC3B,IAAIe,GAAa,EACbC,EAAW,EAEf,MAAMC,EAAeC,IACjBA,EAAEC,iBACFJ,GAAa,EACbC,EAAyB,eAAdzB,EAA6B2B,EAAEE,QAAUF,EAAEG,QAClD3B,EAAgBM,SAChBN,EAAgBM,QAAQiB,eAI1BK,EAAgBJ,IAClB,IAAIH,IAAerB,EAAgBM,QAAS,OAC5C,MACMuB,GAD2B,eAAdhC,EAA6B2B,EAAEE,QAAUF,EAAEG,SACnCL,EAC3BtB,EAAgBM,QAAQwB,SAASD,IAG/BE,EAAY,KACXV,GAAcrB,EAAgBM,UAC7Be,GAAa,EACbrB,EAAgBM,QAAQyB,cAQhC,OAJAX,EAASY,iBAAiB,YAAaT,GACvCU,SAASD,iBAAiB,YAAaJ,GACvCK,SAASD,iBAAiB,UAAWD,GAE9B,KACHX,EAASc,oBAAoB,YAAaX,GAC1CU,SAASC,oBAAoB,YAAaN,GAC1CK,SAASC,oBAAoB,UAAWH,GACrC/B,EAAgBM,SACfN,EAAgBM,QAAQ6B,YAGjC,CAACxC,EAAeC,EAAgBC,EAAWI,EAAcC,EAAYC,IAExE,MAAMiC,EAA6B,eAAdvC,EACrB,OACIwC,EAAA,MAAA,CACIC,IAAKxC,EACLoB,MAAO,CACHqB,SAAU,WACVC,MAAOJ,EAAe,OAAS,OAC/BK,OAAQL,EAAe,OAAS,OAChCM,gBAAiB,OACjBC,OAAQP,EAAe,YAAc,YACrCQ,OAAQ,IACRC,WAAY"}
@@ -1,2 +0,0 @@
1
- import{jsx as r}from"react/jsx-runtime";import{useRef as e,useEffect as t}from"react";import{useResizableContext as i}from"../shared/context.js";const n=({children:n,minSize:o=100})=>{const d=e(null),c=e(-1),{registerPanel:l,unregisterPanel:h,direction:s}=i();return t(()=>{if(!d.current)return;const r=d.current;return c.current=l(r,o),()=>{h(r)}},[o,l,h]),r("div",{ref:d,style:{flex:1,minWidth:"horizontal"===s?o:void 0,minHeight:"vertical"===s?o:void 0,width:"auto",overflow:"hidden",position:"relative"},children:r("div",{style:{height:"100%",padding:16},children:n})})};export{n as ResizePanel};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/ResizePanel/index.tsx"],"sourcesContent":[null],"names":["ResizePanel","children","minSize","panelRef","useRef","panelIndexRef","registerPanel","unregisterPanel","direction","useResizableContext","useEffect","current","panelEl","_jsx","ref","style","flex","minWidth","undefined","minHeight","width","overflow","position","height","padding"],"mappings":"iJAaO,MAAMA,EAA0C,EACnDC,WACAC,UAAU,QAGV,MAAMC,EAAWC,EAAuB,MAClCC,EAAgBD,OAChBE,cAAEA,EAAaC,gBAAEA,EAAeC,UAAEA,GAAcC,IAWtD,OATAC,EAAU,KACN,IAAIP,EAASQ,QAAS,OACtB,MAAMC,EAAUT,EAASQ,QAEzB,OADAN,EAAcM,QAAUL,EAAcM,EAASV,GACxC,KACHK,EAAgBK,KAErB,CAACV,EAASI,EAAeC,IAGxBM,EAAA,MAAA,CACIC,IAAKX,EACLY,MAAO,CACHC,KAAM,EACNC,SAAwB,eAAdT,EAA6BN,OAAUgB,EACjDC,UAAyB,aAAdX,EAA2BN,OAAUgB,EAChDE,MAAO,OACPC,SAAU,SACVC,SAAU,YACbrB,SAEDY,SAAKE,MAAO,CAACQ,OAAQ,OAAQC,QAAS,IAAGvB,SACpCA"}
@@ -1,2 +0,0 @@
1
- import{jsx as e}from"react/jsx-runtime";import n,{useRef as r,useState as t,useCallback as l}from"react";import{ResizableContext as i}from"../shared/context.js";import{ResizeHandle as o}from"../ResizeHandle/index.js";const a=({children:a,direction:c="horizontal",style:u,virtual:d=!1,virtualConfig:s={}})=>{const h=r([]),[p,f]=t(0),g=l((e,n)=>{const r=h.current.length;return h.current.push({panelEl:e,minSize:n}),f(h.current.length),r},[]),m=l(e=>{h.current=h.current.filter(n=>n.panelEl!==e),f(h.current.length)},[]),x=l(e=>h.current[e]||null,[]),v=l(e=>h.current.findIndex(n=>n.panelEl===e),[]),P=n.Children.toArray(a),I=[];P.forEach((n,r)=>{I.push(n),r<P.length-1&&I.push(e(o,{prePanelIndex:r,nextPanelIndex:r+1,direction:c},`handle-${r}`))});const y={enabled:d,...s},z={panelCount:p,registerPanel:g,unregisterPanel:m,getPanelInfo:x,getPanelIndex:v,direction:c,panelInfos:h.current,virtualConfig:y};return e(i.Provider,{value:z,children:e("div",{style:{display:"flex",flexDirection:"horizontal"===c?"row":"column",height:"100%",position:"relative",...u},children:I})})};export{a as ResizePanelGroup};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/ResizePanelGroup/index.tsx"],"sourcesContent":[null],"names":["ResizePanelGroup","children","direction","style","virtual","virtualConfig","panelInfos","useRef","panelCount","setPanelCount","useState","registerPanel","useCallback","panelEl","minSize","index","current","length","push","unregisterPanel","filter","info","getPanelInfo","getPanelIndex","findIndex","childrenArray","React","Children","toArray","panelsWithHandles","forEach","child","_jsx","ResizeHandle","prePanelIndex","nextPanelIndex","mergedVirtualConfig","enabled","contextValue","ResizableContext","Provider","value","display","flexDirection","height","position"],"mappings":"+NAiBaA,EAAoD,EAC7DC,WACAC,YAAY,aACZC,QACAC,WAAU,EACVC,gBAAgB,CAAA,MAEhB,MAAMC,EAAaC,EAAoB,KAChCC,EAAYC,GAAiBC,EAAS,GAEvCC,EAAgBC,EAAY,CAACC,EAAsBC,KACrD,MAAMC,EAAQT,EAAWU,QAAQC,OAGjC,OAFAX,EAAWU,QAAQE,KAAK,CAAEL,UAASC,YACnCL,EAAcH,EAAWU,QAAQC,QAC1BF,GACR,IAEGI,EAAkBP,EAAaC,IACjCP,EAAWU,QAAUV,EAAWU,QAAQI,OAAOC,GAAQA,EAAKR,UAAYA,GACxEJ,EAAcH,EAAWU,QAAQC,SAClC,IAEGK,EAAeV,EAAaG,GACvBT,EAAWU,QAAQD,IAAU,KACrC,IAEGQ,EAAgBX,EAAaC,GACxBP,EAAWU,QAAQQ,UAAUH,GAAQA,EAAKR,UAAYA,GAC9D,IAEGY,EAAgBC,EAAMC,SAASC,QAAQ3B,GACvC4B,EAAuC,GAE7CJ,EAAcK,QAAQ,CAACC,EAAOhB,KAC1Bc,EAAkBX,KAAKa,GAGnBhB,EAAQU,EAAcR,OAAS,GAC/BY,EAAkBX,KACdc,EAACC,GAEGC,cAAenB,EACfoB,eAAgBpB,EAAQ,EACxBb,UAAWA,GAHN,UAAUa,QAU/B,MAAMqB,EAAqC,CACvCC,QAASjC,KACNC,GAGDiC,EAAsC,CACxC9B,WAAYA,EACZG,gBACAQ,kBACAG,eACAC,gBACArB,YACAI,WAAYA,EAAWU,QACvBX,cAAe+B,GAGnB,OACIJ,EAACO,EAAiBC,SAAQ,CAACC,MAAOH,EAAYrC,SAC1C+B,EAAA,MAAA,CAAK7B,MAAO,CACJuC,QAAS,OACTC,cAA6B,eAAdzC,EAA6B,MAAQ,SACpD0C,OAAQ,OACRC,SAAU,cACP1C,GACVF,SACI4B"}
@@ -1,2 +0,0 @@
1
- import e from"react";const n=e.createContext({panelCount:0,registerPanel:()=>0,unregisterPanel:()=>{},getPanelInfo:()=>null,getPanelIndex:()=>-1,direction:"horizontal",panelInfos:[],virtualConfig:{enabled:!1}}),t=()=>{const t=e.useContext(n);if(!t)throw new Error("useResizableContext must be used within ResizablePanelGroup");return t};export{n as ResizableContext,t as useResizableContext};
2
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sources":["../../../../src/components/shared/context.tsx"],"sourcesContent":[null],"names":["ResizableContext","React","createContext","panelCount","registerPanel","unregisterPanel","getPanelInfo","getPanelIndex","direction","panelInfos","virtualConfig","enabled","useResizableContext","context","useContext","Error"],"mappings":"qBAoBA,MAcaA,EAAmBC,EAAMC,cAda,CAC/CC,WAAY,EACZC,cAAe,IAAM,EACrBC,gBAAiB,OACjBC,aAAc,IAAM,KACpBC,cAAe,KAAM,EACrBC,UAAW,aACXC,WAAY,GACZC,cAAe,CAAEC,SAAS,KAWjBC,EAAsB,KAC/B,MAAMC,EAAUZ,EAAMa,WAAWd,GACjC,IAAKa,EACD,MAAM,IAAIE,MAAM,+DAEpB,OAAOF"}
@@ -1,2 +0,0 @@
1
- import e from"./virtualNode.js";class t{constructor(t){Object.defineProperty(this,"prePanelEl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nextPanelEl",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"getPanelInfo",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"prePanelIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"nextPanelIndex",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"direction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"virtualEnabled",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"virtualConfig",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"isResizing",{enumerable:!0,configurable:!0,writable:!0,value:!1}),Object.defineProperty(this,"prePanelStartSize",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"nextPanelStartSize",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(this,"allPanelsStartSizes",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"allPanelsStartPositions",{enumerable:!0,configurable:!0,writable:!0,value:new Map}),Object.defineProperty(this,"handleSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"virtualNodeManager",{enumerable:!0,configurable:!0,writable:!0,value:null}),this.prePanelEl=t.prePanelEl,this.nextPanelEl=t.nextPanelEl,this.getPanelInfo=t.getPanelInfo,this.prePanelIndex=t.prePanelIndex,this.nextPanelIndex=t.nextPanelIndex,this.direction=t.direction,this.virtualEnabled=t.virtualEnabled||!1,this.virtualConfig=t.virtualConfig||{},this.handleSize=t.handleSize||0,this.virtualEnabled&&(this.virtualNodeManager=new e)}startResize(){this.isResizing=!0,this.prePanelStartSize=this.getSize(this.prePanelEl),this.allPanelsStartSizes.set(this.prePanelIndex,this.prePanelStartSize),this.nextPanelStartSize=this.getSize(this.nextPanelEl),this.allPanelsStartSizes.set(this.nextPanelIndex,this.nextPanelStartSize);const e="horizontal"===this.direction?"width":"height";if(this.virtualEnabled&&this.virtualNodeManager){const e=this.getPosition(this.prePanelEl);this.allPanelsStartPositions.set(this.prePanelIndex,e),this.virtualNodeManager.createVirtualNode(this.prePanelEl,this.virtualConfig);const t=this.getPosition(this.nextPanelEl);this.allPanelsStartPositions.set(this.nextPanelIndex,t),this.virtualNodeManager.createVirtualNode(this.nextPanelEl,this.virtualConfig);let i=this.prePanelIndex-1;for(;i>=0;){const e=this.getPanelInfo(i);if(!e)break;const t=this.getSize(e.panelEl),a=this.getPosition(e.panelEl);this.allPanelsStartSizes.set(i,t),this.allPanelsStartPositions.set(i,a),this.virtualNodeManager.createVirtualNode(e.panelEl,this.virtualConfig),i--}let a=this.nextPanelIndex+1,l=this.getPanelInfo(a);for(;l;){const e=this.getSize(l.panelEl),t=this.getPosition(l.panelEl);this.allPanelsStartSizes.set(a,e),this.allPanelsStartPositions.set(a,t),this.virtualNodeManager.createVirtualNode(l.panelEl,this.virtualConfig),a++,l=this.getPanelInfo(a)}}else{this.prePanelEl.style.flex="none",this.prePanelEl.style[e]=`${this.prePanelStartSize}px`,this.nextPanelEl.style.flex="none",this.nextPanelEl.style[e]=`${this.nextPanelStartSize}px`;let t=this.prePanelIndex-1;for(;t>=0;){const i=this.getPanelInfo(t);if(!i)break;const a=this.getSize(i.panelEl);this.allPanelsStartSizes.set(t,a),i.panelEl.style.flex="none",i.panelEl.style[e]=`${a}px`,t--}let i=this.nextPanelIndex+1,a=this.getPanelInfo(i);for(;a;){const t=this.getSize(a.panelEl);this.allPanelsStartSizes.set(i,t),a.panelEl.style.flex="none",a.panelEl.style[e]=`${t}px`,i++,a=this.getPanelInfo(i)}}}onResize(e){this.isResizing&&(e>0?this.adjustPanelsNext(e):this.adjustPanelsPre(-e))}adjustPanelsNext(e){let t=e;const i="horizontal"===this.direction?"width":"height",a=this.getPanelInfo(this.nextPanelIndex);if(a){const e=this.allPanelsStartSizes.get(this.nextPanelIndex)||0,l=e-t,n=Math.max(a.minSize,l),s=e-n;this.virtualEnabled&&this.virtualNodeManager?this.virtualNodeManager.updateVirtualNode(this.nextPanelEl,n,this.direction):this.nextPanelEl.style[i]=`${n}px`,t-=s}if(t>0){let e=this.nextPanelIndex+1;for(;t>0;){const a=this.getPanelInfo(e);if(!a)break;const l=this.allPanelsStartSizes.get(e)||0,n=l-t,s=Math.max(a.minSize,n),r=l-s;if(this.virtualEnabled&&this.virtualNodeManager?this.virtualNodeManager.updateVirtualNode(a.panelEl,s,this.direction):a.panelEl.style[i]=`${s}px`,t-=r,!(s<=a.minSize&&t>0))break;e++}}if(this.getPanelInfo(this.prePanelIndex)){const a=(this.allPanelsStartSizes.get(this.prePanelIndex)||0)+(e-t);this.virtualEnabled&&this.virtualNodeManager?(this.virtualNodeManager.updateVirtualNode(this.prePanelEl,a,this.direction),this.recalculateAllPanelsPositions()):this.prePanelEl.style[i]=`${a}px`}}adjustPanelsPre(e){let t=e,i=0;const a="horizontal"===this.direction?"width":"height",l=this.getPanelInfo(this.prePanelIndex);if(l){const e=this.allPanelsStartSizes.get(this.prePanelIndex)||0,n=e-t,s=Math.max(l.minSize,n),r=e-s;this.virtualEnabled&&this.virtualNodeManager?this.virtualNodeManager.updateVirtualNode(this.prePanelEl,s,this.direction):this.prePanelEl.style[a]=`${s}px`,i+=r,t-=r}if(t>0){let e=this.prePanelIndex-1;for(;t>0&&e>=0;){const l=this.getPanelInfo(e);if(!l)break;const n=this.allPanelsStartSizes.get(e);if(void 0===n)break;const s=n-t,r=Math.max(l.minSize,s),o=n-r;if(this.virtualEnabled&&this.virtualNodeManager?this.virtualNodeManager.updateVirtualNode(l.panelEl,r,this.direction):l.panelEl.style[a]=`${r}px`,i+=o,t-=o,!(r<=l.minSize&&t>0))break;e--}}if(this.getPanelInfo(this.nextPanelIndex)){const e=(this.allPanelsStartSizes.get(this.nextPanelIndex)||0)+i;this.virtualEnabled&&this.virtualNodeManager?(this.virtualNodeManager.updateVirtualNode(this.nextPanelEl,e,this.direction),this.recalculateAllPanelsPositions()):this.nextPanelEl.style[a]=`${e}px`}}recalculateAllPanelsPositions(){if(!this.virtualEnabled||!this.virtualNodeManager)return;const e=this.allPanelsStartPositions.get(0)||0;let t=e,i=0,a=this.getPanelInfo(i);for(;a;){const l=this.allPanelsStartPositions.get(i);if(void 0!==l&&this.virtualNodeManager.getVirtualNode(a.panelEl)){if(0===i)t=l;else{t=e;for(let e=0;e<i;e++){const i=this.getPanelInfo(e);if(i){const e=this.virtualNodeManager.getVirtualNode(i.panelEl);e&&(t+=("horizontal"===this.direction?e.offsetWidth:e.offsetHeight)+this.handleSize)}}}this.virtualNodeManager.updateVirtualNodePosition(a.panelEl,t,this.direction)}i++,a=this.getPanelInfo(i)}}getSize(e){return"horizontal"===this.direction?e.offsetWidth:e.offsetHeight}getPosition(e){return"horizontal"===this.direction?e.offsetLeft:e.offsetTop}endResize(){if(this.isResizing=!1,this.virtualEnabled&&this.virtualNodeManager){const e="horizontal"===this.direction?"width":"height";this.allPanelsStartSizes.forEach((t,i)=>{const a=this.getPanelInfo(i);if(!a)return;const l=this.virtualNodeManager.getVirtualNode(a.panelEl);if(l){const t="horizontal"===this.direction?l.offsetWidth:l.offsetHeight;a.panelEl.style.flex="none",a.panelEl.style[e]=`${t}px`}}),this.virtualNodeManager.removeAllVirtualNodes()}this.allPanelsStartSizes.clear()}destroy(){this.endResize(),this.virtualNodeManager&&this.virtualNodeManager.destroy()}}export{t as default};
2
- //# sourceMappingURL=resizeAble.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resizeAble.js","sources":["../../../src/utils/resizeAble.ts"],"sourcesContent":[null],"names":["ResizeAbleCore","constructor","options","Object","defineProperty","this","value","Map","prePanelEl","nextPanelEl","getPanelInfo","prePanelIndex","nextPanelIndex","direction","virtualEnabled","virtualConfig","handleSize","virtualNodeManager","VirtualNodeManager","startResize","isResizing","prePanelStartSize","getSize","allPanelsStartSizes","set","nextPanelStartSize","sizeProperty","prePos","getPosition","allPanelsStartPositions","createVirtualNode","nextPos","prevIndex","panelInfo","size","panelEl","pos","nextIndex","nextPanelInfo","style","flex","onResize","delta","adjustPanelsNext","adjustPanelsPre","remainingDelta","nextStartSize","get","targetNextSize","newNextSize","Math","max","minSize","actualReduction","updateVirtualNode","newPreSize","recalculateAllPanelsPositions","totalReduced","prePanelInfo","preStartSize","targetPreSize","prevPanelInfo","prevStartSize","undefined","targetPrevSize","newPrevSize","firstPanelStartPos","currentPosition","index","startPos","getVirtualNode","i","prevInfo","prevVEl","offsetWidth","offsetHeight","updateVirtualNodePosition","el","offsetLeft","offsetTop","endResize","forEach","_","virtualEl","finalSize","removeAllVirtualNodes","clear","destroy"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- class e{constructor(){Object.defineProperty(this,"virtualNodes",{enumerable:!0,configurable:!0,writable:!0,value:new Map})}createVirtualNode(e,t={}){if(!e||!e.parentElement)return null;this.virtualNodes.has(e)&&this.removeVirtualNode(e);const o=e.getBoundingClientRect(),i=e.parentElement.getBoundingClientRect(),a=window.getComputedStyle(e),l=e.cloneNode(!1),n=o.top-i.top+(e.parentElement.scrollTop||0),r=o.left-i.left+(e.parentElement.scrollLeft||0);l.style.cssText=`\n position: absolute;\n top: ${n}px;\n left: ${r}px;\n width: ${o.width}px;\n height: ${o.height}px;\n margin: 0;\n padding: ${a.padding};\n border: ${a.border};\n box-sizing: ${a.boxSizing};\n pointer-events: none;\n z-index: 10000;\n opacity: 0.6;\n background-color: ${a.backgroundColor||"rgba(0, 123, 255, 0.1)"};\n overflow: hidden;\n box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.3);\n `,t.style&&Object.assign(l.style,t.style),t.className&&(l.className=t.className);const s=e.style.opacity;return e.style.opacity="0.3",e.dataset.originalOpacity=s||"",e.parentElement.appendChild(l),this.virtualNodes.set(e,l),l}updateVirtualNode(e,t,o){const i=this.virtualNodes.get(e);if(!i)return;const a="horizontal"===o?"width":"height";i.style[a]=`${t}px`}updateVirtualNodePosition(e,t,o){const i=this.virtualNodes.get(e);if(!i)return;const a="horizontal"===o?"left":"top";i.style[a]=`${t}px`}removeVirtualNode(e){const t=this.virtualNodes.get(e);t&&(void 0!==e.dataset.originalOpacity&&(e.style.opacity=e.dataset.originalOpacity,delete e.dataset.originalOpacity),t.parentElement&&t.parentElement.removeChild(t),this.virtualNodes.delete(e))}applyToRealNode(e,t,o){const i="horizontal"===o?"width":"height";e.style[i]=`${t}px`}removeAllVirtualNodes(){Array.from(this.virtualNodes.keys()).forEach(e=>{this.removeVirtualNode(e)}),this.virtualNodes.clear()}hasVirtualNode(e){return this.virtualNodes.has(e)}getVirtualNode(e){return this.virtualNodes.get(e)||null}destroy(){this.removeAllVirtualNodes()}}export{e as default};
2
- //# sourceMappingURL=virtualNode.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"virtualNode.js","sources":["../../../src/utils/virtualNode.ts"],"sourcesContent":[null],"names":["VirtualNodeManager","constructor","Object","defineProperty","this","value","Map","createVirtualNode","originalEl","config","parentElement","virtualNodes","has","removeVirtualNode","rect","getBoundingClientRect","parentRect","computedStyle","window","getComputedStyle","virtualEl","cloneNode","top","scrollTop","left","scrollLeft","style","cssText","width","height","padding","border","boxSizing","backgroundColor","assign","className","originalOpacity","opacity","dataset","appendChild","set","updateVirtualNode","size","direction","get","sizeProperty","updateVirtualNodePosition","newPosition","positionProperty","undefined","removeChild","delete","applyToRealNode","finalSize","removeAllVirtualNodes","Array","from","keys","forEach","clear","hasVirtualNode","getVirtualNode","destroy"],"mappings":"AAOA,MAAMA,EAAN,WAAAC,GACYC,OAAAC,eAAAC,KAAA,eAAA,2CAA8CC,MAAA,IAAIC,KA0K9D,CAlKI,iBAAAC,CAAkBC,EAAyBC,EAA4B,IACnE,IAAKD,IAAeA,EAAWE,cAC3B,OAAO,KAIPN,KAAKO,aAAaC,IAAIJ,IACtBJ,KAAKS,kBAAkBL,GAI3B,MAAMM,EAAON,EAAWO,wBAClBC,EAAaR,EAAWE,cAAcK,wBACtCE,EAAgBC,OAAOC,iBAAiBX,GAGxCY,EAAYZ,EAAWa,WAAU,GAGjCC,EAAMR,EAAKQ,IAAMN,EAAWM,KAAOd,EAAWE,cAAca,WAAa,GACzEC,EAAOV,EAAKU,KAAOR,EAAWQ,MAAQhB,EAAWE,cAAce,YAAc,GAGnFL,EAAUM,MAAMC,QAAU,uDAEfL,2BACCE,4BACCV,EAAKc,iCACJd,EAAKe,2DAEJZ,EAAca,iCACfb,EAAcc,oCACVd,EAAce,wIAIRf,EAAcgB,iBAAmB,gIAMrDxB,EAAOiB,OACPxB,OAAOgC,OAAOd,EAAUM,MAAOjB,EAAOiB,OAItCjB,EAAO0B,YACPf,EAAUe,UAAY1B,EAAO0B,WAIjC,MAAMC,EAAkB5B,EAAWkB,MAAMW,QAUzC,OATA7B,EAAWkB,MAAMW,QAAU,MAC3B7B,EAAW8B,QAAQF,gBAAkBA,GAAmB,GAGxD5B,EAAWE,cAAc6B,YAAYnB,GAGrChB,KAAKO,aAAa6B,IAAIhC,EAAYY,GAE3BA,CACX,CAQA,iBAAAqB,CAAkBjC,EAAyBkC,EAAcC,GACrD,MAAMvB,EAAYhB,KAAKO,aAAaiC,IAAIpC,GACxC,IAAKY,EAAW,OAEhB,MAAMyB,EAA6B,eAAdF,EAA6B,QAAU,SAC5DvB,EAAUM,MAAMmB,GAAgB,GAAGH,KACvC,CAQA,yBAAAI,CAA0BtC,EAAyBuC,EAAqBJ,GACpE,MAAMvB,EAAYhB,KAAKO,aAAaiC,IAAIpC,GACxC,IAAKY,EAAW,OAEhB,MAAM4B,EAAiC,eAAdL,EAA6B,OAAS,MAC/DvB,EAAUM,MAAMsB,GAAoB,GAAGD,KAC3C,CAMA,iBAAAlC,CAAkBL,GACd,MAAMY,EAAYhB,KAAKO,aAAaiC,IAAIpC,GACnCY,SAGsC6B,IAAvCzC,EAAW8B,QAAQF,kBACnB5B,EAAWkB,MAAMW,QAAU7B,EAAW8B,QAAQF,uBACvC5B,EAAW8B,QAAQF,iBAI1BhB,EAAUV,eACVU,EAAUV,cAAcwC,YAAY9B,GAIxChB,KAAKO,aAAawC,OAAO3C,GAC7B,CAQA,eAAA4C,CAAgB5C,EAAyB6C,EAAmBV,GACxD,MAAME,EAA6B,eAAdF,EAA6B,QAAU,SAC5DnC,EAAWkB,MAAMmB,GAAgB,GAAGQ,KACxC,CAKA,qBAAAC,GAC0BC,MAAMC,KAAKpD,KAAKO,aAAa8C,QACrCC,QAAQlD,IAClBJ,KAAKS,kBAAkBL,KAE3BJ,KAAKO,aAAagD,OACtB,CAOA,cAAAC,CAAepD,GACX,OAAOJ,KAAKO,aAAaC,IAAIJ,EACjC,CAOA,cAAAqD,CAAerD,GACX,OAAOJ,KAAKO,aAAaiC,IAAIpC,IAAe,IAChD,CAKA,OAAAsD,GACI1D,KAAKkD,uBACT"}