dockview-core 1.8.4 → 1.8.5

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 (334) hide show
  1. package/README.md +51 -51
  2. package/dist/cjs/api/component.api.d.ts +455 -152
  3. package/dist/cjs/api/component.api.d.ts.map +1 -1
  4. package/dist/cjs/api/component.api.js +895 -592
  5. package/dist/cjs/api/component.api.js.map +1 -1
  6. package/dist/cjs/api/dockviewGroupPanelApi.d.ts +29 -29
  7. package/dist/cjs/api/dockviewGroupPanelApi.js +53 -53
  8. package/dist/cjs/api/dockviewPanelApi.d.ts +47 -47
  9. package/dist/cjs/api/dockviewPanelApi.js +88 -88
  10. package/dist/cjs/api/gridviewPanelApi.d.ts +37 -37
  11. package/dist/cjs/api/gridviewPanelApi.js +47 -47
  12. package/dist/cjs/api/panelApi.d.ts +88 -88
  13. package/dist/cjs/api/panelApi.js +135 -135
  14. package/dist/cjs/api/paneviewPanelApi.d.ts +26 -26
  15. package/dist/cjs/api/paneviewPanelApi.js +57 -57
  16. package/dist/cjs/api/splitviewPanelApi.d.ts +32 -32
  17. package/dist/cjs/api/splitviewPanelApi.js +47 -47
  18. package/dist/cjs/array.d.ts +13 -13
  19. package/dist/cjs/array.js +67 -67
  20. package/dist/cjs/dnd/abstractDragHandler.d.ts +12 -12
  21. package/dist/cjs/dnd/abstractDragHandler.js +141 -141
  22. package/dist/cjs/dnd/dataTransfer.d.ts +30 -31
  23. package/dist/cjs/dnd/dataTransfer.d.ts.map +1 -1
  24. package/dist/cjs/dnd/dataTransfer.js +99 -100
  25. package/dist/cjs/dnd/dataTransfer.js.map +1 -1
  26. package/dist/cjs/dnd/dnd.d.ts +27 -27
  27. package/dist/cjs/dnd/dnd.js +59 -59
  28. package/dist/cjs/dnd/droptarget.d.ts +53 -53
  29. package/dist/cjs/dnd/droptarget.js +304 -304
  30. package/dist/cjs/dnd/droptarget.js.map +1 -1
  31. package/dist/cjs/dnd/ghost.d.ts +1 -1
  32. package/dist/cjs/dnd/ghost.js +15 -15
  33. package/dist/cjs/dnd/groupDragHandler.d.ts +12 -12
  34. package/dist/cjs/dnd/groupDragHandler.js +77 -77
  35. package/dist/cjs/dnd/overlay.d.ts +43 -43
  36. package/dist/cjs/dnd/overlay.d.ts.map +1 -1
  37. package/dist/cjs/dnd/overlay.js +412 -412
  38. package/dist/cjs/dnd/overlay.js.map +1 -1
  39. package/dist/cjs/dockview/components/panel/content.d.ts +30 -30
  40. package/dist/cjs/dockview/components/panel/content.js +100 -100
  41. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +21 -21
  42. package/dist/cjs/dockview/components/tab/defaultTab.js +105 -105
  43. package/dist/cjs/dockview/components/tab/tab.d.ts +34 -34
  44. package/dist/cjs/dockview/components/tab/tab.js +120 -120
  45. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +81 -81
  46. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +325 -325
  47. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +17 -17
  48. package/dist/cjs/dockview/components/titlebar/voidContainer.js +77 -77
  49. package/dist/cjs/dockview/components/watermark/watermark.d.ts +18 -18
  50. package/dist/cjs/dockview/components/watermark/watermark.js +87 -87
  51. package/dist/cjs/dockview/deserializer.d.ts +12 -12
  52. package/dist/cjs/dockview/deserializer.js +33 -33
  53. package/dist/cjs/dockview/deserializer.js.map +1 -1
  54. package/dist/cjs/dockview/dockviewComponent.d.ts +159 -159
  55. package/dist/cjs/dockview/dockviewComponent.d.ts.map +1 -1
  56. package/dist/cjs/dockview/dockviewComponent.js +1170 -1156
  57. package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
  58. package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts +23 -23
  59. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +34 -34
  60. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +30 -30
  61. package/dist/cjs/dockview/dockviewGroupPanel.js +97 -97
  62. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +185 -185
  63. package/dist/cjs/dockview/dockviewGroupPanelModel.js +632 -631
  64. package/dist/cjs/dockview/dockviewGroupPanelModel.js.map +1 -1
  65. package/dist/cjs/dockview/dockviewPanel.d.ts +41 -41
  66. package/dist/cjs/dockview/dockviewPanel.js +172 -171
  67. package/dist/cjs/dockview/dockviewPanel.js.map +1 -1
  68. package/dist/cjs/dockview/dockviewPanelModel.d.ts +35 -35
  69. package/dist/cjs/dockview/dockviewPanelModel.js +98 -98
  70. package/dist/cjs/dockview/dockviewPanelModel.js.map +1 -1
  71. package/dist/cjs/dockview/options.d.ts +133 -136
  72. package/dist/cjs/dockview/options.d.ts.map +1 -1
  73. package/dist/cjs/dockview/options.js +31 -31
  74. package/dist/cjs/dockview/types.d.ts +63 -63
  75. package/dist/cjs/dockview/types.js +10 -10
  76. package/dist/cjs/dockview/types.js.map +1 -1
  77. package/dist/cjs/dom.d.ts +16 -16
  78. package/dist/cjs/dom.js +197 -197
  79. package/dist/cjs/events.d.ts +47 -47
  80. package/dist/cjs/events.js +216 -216
  81. package/dist/cjs/events.js.map +1 -1
  82. package/dist/cjs/gridview/baseComponentGridview.d.ts +88 -87
  83. package/dist/cjs/gridview/baseComponentGridview.d.ts.map +1 -1
  84. package/dist/cjs/gridview/baseComponentGridview.js +270 -270
  85. package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
  86. package/dist/cjs/gridview/basePanelView.d.ts +40 -40
  87. package/dist/cjs/gridview/basePanelView.js +156 -156
  88. package/dist/cjs/gridview/branchNode.d.ts +49 -49
  89. package/dist/cjs/gridview/branchNode.js +343 -343
  90. package/dist/cjs/gridview/gridview.d.ts +133 -133
  91. package/dist/cjs/gridview/gridview.js +547 -547
  92. package/dist/cjs/gridview/gridviewComponent.d.ts +80 -80
  93. package/dist/cjs/gridview/gridviewComponent.d.ts.map +1 -1
  94. package/dist/cjs/gridview/gridviewComponent.js +362 -360
  95. package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
  96. package/dist/cjs/gridview/gridviewPanel.d.ts +65 -65
  97. package/dist/cjs/gridview/gridviewPanel.js +214 -214
  98. package/dist/cjs/gridview/leafNode.d.ts +34 -34
  99. package/dist/cjs/gridview/leafNode.js +170 -170
  100. package/dist/cjs/gridview/leafNode.js.map +1 -1
  101. package/dist/cjs/gridview/options.d.ts +17 -18
  102. package/dist/cjs/gridview/options.d.ts.map +1 -1
  103. package/dist/cjs/gridview/options.js +2 -2
  104. package/dist/cjs/gridview/types.d.ts +3 -3
  105. package/dist/cjs/gridview/types.js +2 -2
  106. package/dist/cjs/index.d.ts +42 -42
  107. package/dist/cjs/index.js +61 -61
  108. package/dist/cjs/lifecycle.d.ts +23 -23
  109. package/dist/cjs/lifecycle.js +65 -65
  110. package/dist/cjs/lifecycle.js.map +1 -1
  111. package/dist/cjs/math.d.ts +5 -5
  112. package/dist/cjs/math.js +34 -34
  113. package/dist/cjs/panel/componentFactory.d.ts +11 -10
  114. package/dist/cjs/panel/componentFactory.d.ts.map +1 -1
  115. package/dist/cjs/panel/componentFactory.js +30 -30
  116. package/dist/cjs/panel/componentFactory.js.map +1 -1
  117. package/dist/cjs/panel/types.d.ts +33 -33
  118. package/dist/cjs/panel/types.js +2 -2
  119. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +21 -21
  120. package/dist/cjs/paneview/defaultPaneviewHeader.js +90 -90
  121. package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +21 -21
  122. package/dist/cjs/paneview/draggablePaneviewPanel.js +131 -131
  123. package/dist/cjs/paneview/options.d.ts +25 -28
  124. package/dist/cjs/paneview/options.d.ts.map +1 -1
  125. package/dist/cjs/paneview/options.js +2 -2
  126. package/dist/cjs/paneview/paneview.d.ts +40 -40
  127. package/dist/cjs/paneview/paneview.d.ts.map +1 -1
  128. package/dist/cjs/paneview/paneview.js +200 -201
  129. package/dist/cjs/paneview/paneview.js.map +1 -1
  130. package/dist/cjs/paneview/paneviewComponent.d.ts +128 -128
  131. package/dist/cjs/paneview/paneviewComponent.js +400 -397
  132. package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
  133. package/dist/cjs/paneview/paneviewPanel.d.ts +92 -92
  134. package/dist/cjs/paneview/paneviewPanel.d.ts.map +1 -1
  135. package/dist/cjs/paneview/paneviewPanel.js +275 -275
  136. package/dist/cjs/resizable.d.ts +10 -7
  137. package/dist/cjs/resizable.d.ts.map +1 -1
  138. package/dist/cjs/resizable.js +79 -64
  139. package/dist/cjs/resizable.js.map +1 -1
  140. package/dist/cjs/splitview/options.d.ts +26 -27
  141. package/dist/cjs/splitview/options.d.ts.map +1 -1
  142. package/dist/cjs/splitview/options.js +2 -2
  143. package/dist/cjs/splitview/splitview.d.ts +128 -128
  144. package/dist/cjs/splitview/splitview.js +936 -936
  145. package/dist/cjs/splitview/splitview.js.map +1 -1
  146. package/dist/cjs/splitview/splitviewComponent.d.ts +101 -101
  147. package/dist/cjs/splitview/splitviewComponent.js +395 -392
  148. package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
  149. package/dist/cjs/splitview/splitviewPanel.d.ts +45 -45
  150. package/dist/cjs/splitview/splitviewPanel.d.ts.map +1 -1
  151. package/dist/cjs/splitview/splitviewPanel.js +179 -179
  152. package/dist/cjs/splitview/splitviewPanel.js.map +1 -1
  153. package/dist/cjs/splitview/viewItem.d.ts +25 -25
  154. package/dist/cjs/splitview/viewItem.js +119 -119
  155. package/dist/cjs/svg.d.ts +3 -3
  156. package/dist/cjs/svg.js +43 -43
  157. package/dist/cjs/types.d.ts +2 -2
  158. package/dist/cjs/types.js +2 -2
  159. package/dist/dockview-core.amd.js +7650 -7316
  160. package/dist/dockview-core.amd.js.map +1 -1
  161. package/dist/dockview-core.amd.min.js +2 -2
  162. package/dist/dockview-core.amd.min.js.map +1 -1
  163. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  164. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  165. package/dist/dockview-core.amd.noStyle.js +7601 -7267
  166. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  167. package/dist/dockview-core.cjs.js +7650 -7316
  168. package/dist/dockview-core.cjs.js.map +1 -1
  169. package/dist/dockview-core.esm.js +7650 -7316
  170. package/dist/dockview-core.esm.js.map +1 -1
  171. package/dist/dockview-core.esm.min.js +2 -2
  172. package/dist/dockview-core.esm.min.js.map +1 -1
  173. package/dist/dockview-core.js +7650 -7316
  174. package/dist/dockview-core.js.map +1 -1
  175. package/dist/dockview-core.min.js +2 -2
  176. package/dist/dockview-core.min.js.map +1 -1
  177. package/dist/dockview-core.min.noStyle.js +2 -2
  178. package/dist/dockview-core.min.noStyle.js.map +1 -1
  179. package/dist/dockview-core.noStyle.js +7601 -7267
  180. package/dist/dockview-core.noStyle.js.map +1 -1
  181. package/dist/esm/api/component.api.d.ts +455 -152
  182. package/dist/esm/api/component.api.d.ts.map +1 -1
  183. package/dist/esm/api/component.api.js +638 -335
  184. package/dist/esm/api/component.api.js.map +1 -1
  185. package/dist/esm/api/dockviewGroupPanelApi.d.ts +29 -29
  186. package/dist/esm/api/dockviewGroupPanelApi.js +27 -27
  187. package/dist/esm/api/dockviewPanelApi.d.ts +47 -47
  188. package/dist/esm/api/dockviewPanelApi.js +53 -53
  189. package/dist/esm/api/gridviewPanelApi.d.ts +37 -37
  190. package/dist/esm/api/gridviewPanelApi.js +25 -25
  191. package/dist/esm/api/panelApi.d.ts +88 -88
  192. package/dist/esm/api/panelApi.js +93 -93
  193. package/dist/esm/api/paneviewPanelApi.d.ts +26 -26
  194. package/dist/esm/api/paneviewPanelApi.js +27 -27
  195. package/dist/esm/api/splitviewPanelApi.d.ts +32 -32
  196. package/dist/esm/api/splitviewPanelApi.js +25 -25
  197. package/dist/esm/array.d.ts +13 -13
  198. package/dist/esm/array.js +57 -57
  199. package/dist/esm/dnd/abstractDragHandler.d.ts +12 -12
  200. package/dist/esm/dnd/abstractDragHandler.js +63 -63
  201. package/dist/esm/dnd/dataTransfer.d.ts +30 -31
  202. package/dist/esm/dnd/dataTransfer.d.ts.map +1 -1
  203. package/dist/esm/dnd/dataTransfer.js +66 -69
  204. package/dist/esm/dnd/dataTransfer.js.map +1 -1
  205. package/dist/esm/dnd/dnd.d.ts +27 -27
  206. package/dist/esm/dnd/dnd.js +36 -36
  207. package/dist/esm/dnd/droptarget.d.ts +53 -53
  208. package/dist/esm/dnd/droptarget.js +274 -274
  209. package/dist/esm/dnd/droptarget.js.map +1 -1
  210. package/dist/esm/dnd/ghost.d.ts +1 -1
  211. package/dist/esm/dnd/ghost.js +11 -11
  212. package/dist/esm/dnd/groupDragHandler.d.ts +12 -12
  213. package/dist/esm/dnd/groupDragHandler.js +54 -54
  214. package/dist/esm/dnd/overlay.d.ts +43 -43
  215. package/dist/esm/dnd/overlay.d.ts.map +1 -1
  216. package/dist/esm/dnd/overlay.js +304 -304
  217. package/dist/esm/dnd/overlay.js.map +1 -1
  218. package/dist/esm/dockview/components/panel/content.d.ts +30 -30
  219. package/dist/esm/dockview/components/panel/content.js +73 -73
  220. package/dist/esm/dockview/components/tab/defaultTab.d.ts +21 -21
  221. package/dist/esm/dockview/components/tab/defaultTab.js +67 -67
  222. package/dist/esm/dockview/components/tab/tab.d.ts +34 -34
  223. package/dist/esm/dockview/components/tab/tab.js +90 -90
  224. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +81 -81
  225. package/dist/esm/dockview/components/titlebar/tabsContainer.js +239 -239
  226. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +17 -17
  227. package/dist/esm/dockview/components/titlebar/voidContainer.js +51 -51
  228. package/dist/esm/dockview/components/watermark/watermark.d.ts +18 -18
  229. package/dist/esm/dockview/components/watermark/watermark.js +61 -61
  230. package/dist/esm/dockview/deserializer.d.ts +12 -12
  231. package/dist/esm/dockview/deserializer.js +28 -28
  232. package/dist/esm/dockview/deserializer.js.map +1 -1
  233. package/dist/esm/dockview/dockviewComponent.d.ts +159 -159
  234. package/dist/esm/dockview/dockviewComponent.d.ts.map +1 -1
  235. package/dist/esm/dockview/dockviewComponent.js +932 -918
  236. package/dist/esm/dockview/dockviewComponent.js.map +1 -1
  237. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +23 -23
  238. package/dist/esm/dockview/dockviewFloatingGroupPanel.js +12 -12
  239. package/dist/esm/dockview/dockviewGroupPanel.d.ts +30 -30
  240. package/dist/esm/dockview/dockviewGroupPanel.js +51 -51
  241. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +185 -185
  242. package/dist/esm/dockview/dockviewGroupPanelModel.js +499 -498
  243. package/dist/esm/dockview/dockviewGroupPanelModel.js.map +1 -1
  244. package/dist/esm/dockview/dockviewPanel.d.ts +41 -41
  245. package/dist/esm/dockview/dockviewPanel.js +105 -104
  246. package/dist/esm/dockview/dockviewPanel.js.map +1 -1
  247. package/dist/esm/dockview/dockviewPanelModel.d.ts +35 -35
  248. package/dist/esm/dockview/dockviewPanelModel.js +74 -74
  249. package/dist/esm/dockview/dockviewPanelModel.js.map +1 -1
  250. package/dist/esm/dockview/options.d.ts +133 -136
  251. package/dist/esm/dockview/options.d.ts.map +1 -1
  252. package/dist/esm/dockview/options.js +24 -24
  253. package/dist/esm/dockview/types.d.ts +63 -63
  254. package/dist/esm/dockview/types.js +7 -7
  255. package/dist/esm/dom.d.ts +16 -16
  256. package/dist/esm/dom.js +126 -126
  257. package/dist/esm/events.d.ts +47 -47
  258. package/dist/esm/events.js +156 -156
  259. package/dist/esm/events.js.map +1 -1
  260. package/dist/esm/gridview/baseComponentGridview.d.ts +88 -87
  261. package/dist/esm/gridview/baseComponentGridview.d.ts.map +1 -1
  262. package/dist/esm/gridview/baseComponentGridview.js +184 -184
  263. package/dist/esm/gridview/baseComponentGridview.js.map +1 -1
  264. package/dist/esm/gridview/basePanelView.d.ts +40 -40
  265. package/dist/esm/gridview/basePanelView.js +85 -85
  266. package/dist/esm/gridview/branchNode.d.ts +49 -49
  267. package/dist/esm/gridview/branchNode.js +219 -219
  268. package/dist/esm/gridview/gridview.d.ts +133 -133
  269. package/dist/esm/gridview/gridview.js +461 -461
  270. package/dist/esm/gridview/gridviewComponent.d.ts +80 -80
  271. package/dist/esm/gridview/gridviewComponent.d.ts.map +1 -1
  272. package/dist/esm/gridview/gridviewComponent.js +264 -262
  273. package/dist/esm/gridview/gridviewComponent.js.map +1 -1
  274. package/dist/esm/gridview/gridviewPanel.d.ts +65 -65
  275. package/dist/esm/gridview/gridviewPanel.js +151 -151
  276. package/dist/esm/gridview/leafNode.d.ts +34 -34
  277. package/dist/esm/gridview/leafNode.js +103 -103
  278. package/dist/esm/gridview/options.d.ts +17 -18
  279. package/dist/esm/gridview/options.d.ts.map +1 -1
  280. package/dist/esm/gridview/options.js +1 -1
  281. package/dist/esm/gridview/types.d.ts +3 -3
  282. package/dist/esm/gridview/types.js +1 -1
  283. package/dist/esm/index.d.ts +42 -42
  284. package/dist/esm/index.js +34 -34
  285. package/dist/esm/lifecycle.d.ts +23 -23
  286. package/dist/esm/lifecycle.js +41 -41
  287. package/dist/esm/math.d.ts +5 -5
  288. package/dist/esm/math.js +28 -28
  289. package/dist/esm/panel/componentFactory.d.ts +11 -10
  290. package/dist/esm/panel/componentFactory.d.ts.map +1 -1
  291. package/dist/esm/panel/componentFactory.js +24 -24
  292. package/dist/esm/panel/componentFactory.js.map +1 -1
  293. package/dist/esm/panel/types.d.ts +33 -33
  294. package/dist/esm/panel/types.js +1 -1
  295. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +21 -21
  296. package/dist/esm/paneview/defaultPaneviewHeader.js +63 -63
  297. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +21 -21
  298. package/dist/esm/paneview/draggablePaneviewPanel.js +92 -92
  299. package/dist/esm/paneview/options.d.ts +25 -28
  300. package/dist/esm/paneview/options.d.ts.map +1 -1
  301. package/dist/esm/paneview/options.js +1 -1
  302. package/dist/esm/paneview/paneview.d.ts +40 -40
  303. package/dist/esm/paneview/paneview.d.ts.map +1 -1
  304. package/dist/esm/paneview/paneview.js +145 -145
  305. package/dist/esm/paneview/paneviewComponent.d.ts +128 -128
  306. package/dist/esm/paneview/paneviewComponent.js +276 -273
  307. package/dist/esm/paneview/paneviewComponent.js.map +1 -1
  308. package/dist/esm/paneview/paneviewPanel.d.ts +92 -92
  309. package/dist/esm/paneview/paneviewPanel.d.ts.map +1 -1
  310. package/dist/esm/paneview/paneviewPanel.js +192 -192
  311. package/dist/esm/resizable.d.ts +10 -7
  312. package/dist/esm/resizable.d.ts.map +1 -1
  313. package/dist/esm/resizable.js +48 -38
  314. package/dist/esm/resizable.js.map +1 -1
  315. package/dist/esm/splitview/options.d.ts +26 -27
  316. package/dist/esm/splitview/options.d.ts.map +1 -1
  317. package/dist/esm/splitview/options.js +1 -1
  318. package/dist/esm/splitview/splitview.d.ts +128 -128
  319. package/dist/esm/splitview/splitview.js +704 -704
  320. package/dist/esm/splitview/splitviewComponent.d.ts +101 -101
  321. package/dist/esm/splitview/splitviewComponent.js +261 -258
  322. package/dist/esm/splitview/splitviewComponent.js.map +1 -1
  323. package/dist/esm/splitview/splitviewPanel.d.ts +45 -45
  324. package/dist/esm/splitview/splitviewPanel.d.ts.map +1 -1
  325. package/dist/esm/splitview/splitviewPanel.js +108 -108
  326. package/dist/esm/splitview/splitviewPanel.js.map +1 -1
  327. package/dist/esm/splitview/viewItem.d.ts +25 -25
  328. package/dist/esm/splitview/viewItem.js +74 -74
  329. package/dist/esm/svg.d.ts +3 -3
  330. package/dist/esm/svg.js +31 -31
  331. package/dist/esm/types.d.ts +2 -2
  332. package/dist/esm/types.js +1 -1
  333. package/package.json +30 -42
  334. package/LICENSE +0 -21
@@ -1,220 +1,220 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Accreditation: This file is largly based upon the MIT licenced VSCode sourcecode found at:
3
- * https://github.com/microsoft/vscode/tree/main/src/vs/base/browser/ui/grid
4
- *--------------------------------------------------------------------------------------------*/
5
- import { Splitview, Orientation, LayoutPriority, } from '../splitview/splitview';
6
- import { Emitter, Event } from '../events';
7
- import { LeafNode } from './leafNode';
8
- import { CompositeDisposable, Disposable } from '../lifecycle';
9
- export class BranchNode extends CompositeDisposable {
10
- get width() {
11
- return this.orientation === Orientation.HORIZONTAL
12
- ? this.size
13
- : this.orthogonalSize;
14
- }
15
- get height() {
16
- return this.orientation === Orientation.HORIZONTAL
17
- ? this.orthogonalSize
18
- : this.size;
19
- }
20
- get minimumSize() {
21
- return this.children.length === 0
22
- ? 0
23
- : Math.max(...this.children.map((c) => c.minimumOrthogonalSize));
24
- }
25
- get maximumSize() {
26
- return Math.min(...this.children.map((c) => c.maximumOrthogonalSize));
27
- }
28
- get minimumOrthogonalSize() {
29
- return this.splitview.minimumSize;
30
- }
31
- get maximumOrthogonalSize() {
32
- return this.splitview.maximumSize;
33
- }
34
- get orthogonalSize() {
35
- return this._orthogonalSize;
36
- }
37
- get size() {
38
- return this._size;
39
- }
40
- get minimumWidth() {
41
- return this.orientation === Orientation.HORIZONTAL
42
- ? this.minimumOrthogonalSize
43
- : this.minimumSize;
44
- }
45
- get minimumHeight() {
46
- return this.orientation === Orientation.HORIZONTAL
47
- ? this.minimumSize
48
- : this.minimumOrthogonalSize;
49
- }
50
- get maximumWidth() {
51
- return this.orientation === Orientation.HORIZONTAL
52
- ? this.maximumOrthogonalSize
53
- : this.maximumSize;
54
- }
55
- get maximumHeight() {
56
- return this.orientation === Orientation.HORIZONTAL
57
- ? this.maximumSize
58
- : this.maximumOrthogonalSize;
59
- }
60
- get priority() {
61
- if (this.children.length === 0) {
62
- return LayoutPriority.Normal;
63
- }
64
- const priorities = this.children.map((c) => typeof c.priority === 'undefined'
65
- ? LayoutPriority.Normal
66
- : c.priority);
67
- if (priorities.some((p) => p === LayoutPriority.High)) {
68
- return LayoutPriority.High;
69
- }
70
- else if (priorities.some((p) => p === LayoutPriority.Low)) {
71
- return LayoutPriority.Low;
72
- }
73
- return LayoutPriority.Normal;
74
- }
75
- constructor(orientation, proportionalLayout, styles, size, orthogonalSize, childDescriptors) {
76
- super();
77
- this.orientation = orientation;
78
- this.proportionalLayout = proportionalLayout;
79
- this.styles = styles;
80
- this._childrenDisposable = Disposable.NONE;
81
- this.children = [];
82
- this._onDidChange = new Emitter();
83
- this.onDidChange = this._onDidChange.event;
84
- this._orthogonalSize = orthogonalSize;
85
- this._size = size;
86
- this.element = document.createElement('div');
87
- this.element.className = 'branch-node';
88
- if (!childDescriptors) {
89
- this.splitview = new Splitview(this.element, {
90
- orientation: this.orientation,
91
- proportionalLayout,
92
- styles,
93
- });
94
- this.splitview.layout(this.size, this.orthogonalSize);
95
- }
96
- else {
97
- const descriptor = {
98
- views: childDescriptors.map((childDescriptor) => {
99
- return {
100
- view: childDescriptor.node,
101
- size: childDescriptor.node.size,
102
- visible: childDescriptor.node instanceof LeafNode &&
103
- childDescriptor.visible !== undefined
104
- ? childDescriptor.visible
105
- : true,
106
- };
107
- }),
108
- size: this.orthogonalSize,
109
- };
110
- this.children = childDescriptors.map((c) => c.node);
111
- this.splitview = new Splitview(this.element, {
112
- orientation: this.orientation,
113
- descriptor,
114
- proportionalLayout,
115
- styles,
116
- });
117
- }
118
- this.addDisposables(this._onDidChange, this.splitview.onDidSashEnd(() => {
119
- this._onDidChange.fire({});
120
- }));
121
- this.setupChildrenEvents();
122
- }
123
- setVisible(visible) {
124
- for (const child of this.children) {
125
- child.setVisible(visible);
126
- }
127
- }
128
- isChildVisible(index) {
129
- if (index < 0 || index >= this.children.length) {
130
- throw new Error('Invalid index');
131
- }
132
- return this.splitview.isViewVisible(index);
133
- }
134
- setChildVisible(index, visible) {
135
- if (index < 0 || index >= this.children.length) {
136
- throw new Error('Invalid index');
137
- }
138
- if (this.splitview.isViewVisible(index) === visible) {
139
- return;
140
- }
141
- this.splitview.setViewVisible(index, visible);
142
- }
143
- moveChild(from, to) {
144
- if (from === to) {
145
- return;
146
- }
147
- if (from < 0 || from >= this.children.length) {
148
- throw new Error('Invalid from index');
149
- }
150
- if (from < to) {
151
- to--;
152
- }
153
- this.splitview.moveView(from, to);
154
- const child = this._removeChild(from);
155
- this._addChild(child, to);
156
- }
157
- getChildSize(index) {
158
- if (index < 0 || index >= this.children.length) {
159
- throw new Error('Invalid index');
160
- }
161
- return this.splitview.getViewSize(index);
162
- }
163
- resizeChild(index, size) {
164
- if (index < 0 || index >= this.children.length) {
165
- throw new Error('Invalid index');
166
- }
167
- this.splitview.resizeView(index, size);
168
- }
169
- layout(size, orthogonalSize) {
170
- this._size = orthogonalSize;
171
- this._orthogonalSize = size;
172
- this.splitview.layout(orthogonalSize, size);
173
- }
174
- addChild(node, size, index, skipLayout) {
175
- if (index < 0 || index > this.children.length) {
176
- throw new Error('Invalid index');
177
- }
178
- this.splitview.addView(node, size, index, skipLayout);
179
- this._addChild(node, index);
180
- }
181
- getChildCachedVisibleSize(index) {
182
- if (index < 0 || index >= this.children.length) {
183
- throw new Error('Invalid index');
184
- }
185
- return this.splitview.getViewCachedVisibleSize(index);
186
- }
187
- removeChild(index, sizing) {
188
- if (index < 0 || index >= this.children.length) {
189
- throw new Error('Invalid index');
190
- }
191
- this.splitview.removeView(index, sizing);
192
- return this._removeChild(index);
193
- }
194
- _addChild(node, index) {
195
- this.children.splice(index, 0, node);
196
- this.setupChildrenEvents();
197
- }
198
- _removeChild(index) {
199
- const [child] = this.children.splice(index, 1);
200
- this.setupChildrenEvents();
201
- return child;
202
- }
203
- setupChildrenEvents() {
204
- this._childrenDisposable.dispose();
205
- this._childrenDisposable = Event.any(...this.children.map((c) => c.onDidChange))((e) => {
206
- /**
207
- * indicate a change has occured to allows any re-rendering but don't bubble
208
- * event because that was specific to this branch
209
- */
210
- this._onDidChange.fire({ size: e.orthogonalSize });
211
- });
212
- }
213
- dispose() {
214
- this._childrenDisposable.dispose();
215
- this.splitview.dispose();
216
- this.children.forEach((child) => child.dispose());
217
- super.dispose();
218
- }
219
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Accreditation: This file is largly based upon the MIT licenced VSCode sourcecode found at:
3
+ * https://github.com/microsoft/vscode/tree/main/src/vs/base/browser/ui/grid
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import { Splitview, Orientation, LayoutPriority, } from '../splitview/splitview';
6
+ import { Emitter, Event } from '../events';
7
+ import { LeafNode } from './leafNode';
8
+ import { CompositeDisposable, Disposable } from '../lifecycle';
9
+ export class BranchNode extends CompositeDisposable {
10
+ get width() {
11
+ return this.orientation === Orientation.HORIZONTAL
12
+ ? this.size
13
+ : this.orthogonalSize;
14
+ }
15
+ get height() {
16
+ return this.orientation === Orientation.HORIZONTAL
17
+ ? this.orthogonalSize
18
+ : this.size;
19
+ }
20
+ get minimumSize() {
21
+ return this.children.length === 0
22
+ ? 0
23
+ : Math.max(...this.children.map((c) => c.minimumOrthogonalSize));
24
+ }
25
+ get maximumSize() {
26
+ return Math.min(...this.children.map((c) => c.maximumOrthogonalSize));
27
+ }
28
+ get minimumOrthogonalSize() {
29
+ return this.splitview.minimumSize;
30
+ }
31
+ get maximumOrthogonalSize() {
32
+ return this.splitview.maximumSize;
33
+ }
34
+ get orthogonalSize() {
35
+ return this._orthogonalSize;
36
+ }
37
+ get size() {
38
+ return this._size;
39
+ }
40
+ get minimumWidth() {
41
+ return this.orientation === Orientation.HORIZONTAL
42
+ ? this.minimumOrthogonalSize
43
+ : this.minimumSize;
44
+ }
45
+ get minimumHeight() {
46
+ return this.orientation === Orientation.HORIZONTAL
47
+ ? this.minimumSize
48
+ : this.minimumOrthogonalSize;
49
+ }
50
+ get maximumWidth() {
51
+ return this.orientation === Orientation.HORIZONTAL
52
+ ? this.maximumOrthogonalSize
53
+ : this.maximumSize;
54
+ }
55
+ get maximumHeight() {
56
+ return this.orientation === Orientation.HORIZONTAL
57
+ ? this.maximumSize
58
+ : this.maximumOrthogonalSize;
59
+ }
60
+ get priority() {
61
+ if (this.children.length === 0) {
62
+ return LayoutPriority.Normal;
63
+ }
64
+ const priorities = this.children.map((c) => typeof c.priority === 'undefined'
65
+ ? LayoutPriority.Normal
66
+ : c.priority);
67
+ if (priorities.some((p) => p === LayoutPriority.High)) {
68
+ return LayoutPriority.High;
69
+ }
70
+ else if (priorities.some((p) => p === LayoutPriority.Low)) {
71
+ return LayoutPriority.Low;
72
+ }
73
+ return LayoutPriority.Normal;
74
+ }
75
+ constructor(orientation, proportionalLayout, styles, size, orthogonalSize, childDescriptors) {
76
+ super();
77
+ this.orientation = orientation;
78
+ this.proportionalLayout = proportionalLayout;
79
+ this.styles = styles;
80
+ this._childrenDisposable = Disposable.NONE;
81
+ this.children = [];
82
+ this._onDidChange = new Emitter();
83
+ this.onDidChange = this._onDidChange.event;
84
+ this._orthogonalSize = orthogonalSize;
85
+ this._size = size;
86
+ this.element = document.createElement('div');
87
+ this.element.className = 'branch-node';
88
+ if (!childDescriptors) {
89
+ this.splitview = new Splitview(this.element, {
90
+ orientation: this.orientation,
91
+ proportionalLayout,
92
+ styles,
93
+ });
94
+ this.splitview.layout(this.size, this.orthogonalSize);
95
+ }
96
+ else {
97
+ const descriptor = {
98
+ views: childDescriptors.map((childDescriptor) => {
99
+ return {
100
+ view: childDescriptor.node,
101
+ size: childDescriptor.node.size,
102
+ visible: childDescriptor.node instanceof LeafNode &&
103
+ childDescriptor.visible !== undefined
104
+ ? childDescriptor.visible
105
+ : true,
106
+ };
107
+ }),
108
+ size: this.orthogonalSize,
109
+ };
110
+ this.children = childDescriptors.map((c) => c.node);
111
+ this.splitview = new Splitview(this.element, {
112
+ orientation: this.orientation,
113
+ descriptor,
114
+ proportionalLayout,
115
+ styles,
116
+ });
117
+ }
118
+ this.addDisposables(this._onDidChange, this.splitview.onDidSashEnd(() => {
119
+ this._onDidChange.fire({});
120
+ }));
121
+ this.setupChildrenEvents();
122
+ }
123
+ setVisible(visible) {
124
+ for (const child of this.children) {
125
+ child.setVisible(visible);
126
+ }
127
+ }
128
+ isChildVisible(index) {
129
+ if (index < 0 || index >= this.children.length) {
130
+ throw new Error('Invalid index');
131
+ }
132
+ return this.splitview.isViewVisible(index);
133
+ }
134
+ setChildVisible(index, visible) {
135
+ if (index < 0 || index >= this.children.length) {
136
+ throw new Error('Invalid index');
137
+ }
138
+ if (this.splitview.isViewVisible(index) === visible) {
139
+ return;
140
+ }
141
+ this.splitview.setViewVisible(index, visible);
142
+ }
143
+ moveChild(from, to) {
144
+ if (from === to) {
145
+ return;
146
+ }
147
+ if (from < 0 || from >= this.children.length) {
148
+ throw new Error('Invalid from index');
149
+ }
150
+ if (from < to) {
151
+ to--;
152
+ }
153
+ this.splitview.moveView(from, to);
154
+ const child = this._removeChild(from);
155
+ this._addChild(child, to);
156
+ }
157
+ getChildSize(index) {
158
+ if (index < 0 || index >= this.children.length) {
159
+ throw new Error('Invalid index');
160
+ }
161
+ return this.splitview.getViewSize(index);
162
+ }
163
+ resizeChild(index, size) {
164
+ if (index < 0 || index >= this.children.length) {
165
+ throw new Error('Invalid index');
166
+ }
167
+ this.splitview.resizeView(index, size);
168
+ }
169
+ layout(size, orthogonalSize) {
170
+ this._size = orthogonalSize;
171
+ this._orthogonalSize = size;
172
+ this.splitview.layout(orthogonalSize, size);
173
+ }
174
+ addChild(node, size, index, skipLayout) {
175
+ if (index < 0 || index > this.children.length) {
176
+ throw new Error('Invalid index');
177
+ }
178
+ this.splitview.addView(node, size, index, skipLayout);
179
+ this._addChild(node, index);
180
+ }
181
+ getChildCachedVisibleSize(index) {
182
+ if (index < 0 || index >= this.children.length) {
183
+ throw new Error('Invalid index');
184
+ }
185
+ return this.splitview.getViewCachedVisibleSize(index);
186
+ }
187
+ removeChild(index, sizing) {
188
+ if (index < 0 || index >= this.children.length) {
189
+ throw new Error('Invalid index');
190
+ }
191
+ this.splitview.removeView(index, sizing);
192
+ return this._removeChild(index);
193
+ }
194
+ _addChild(node, index) {
195
+ this.children.splice(index, 0, node);
196
+ this.setupChildrenEvents();
197
+ }
198
+ _removeChild(index) {
199
+ const [child] = this.children.splice(index, 1);
200
+ this.setupChildrenEvents();
201
+ return child;
202
+ }
203
+ setupChildrenEvents() {
204
+ this._childrenDisposable.dispose();
205
+ this._childrenDisposable = Event.any(...this.children.map((c) => c.onDidChange))((e) => {
206
+ /**
207
+ * indicate a change has occured to allows any re-rendering but don't bubble
208
+ * event because that was specific to this branch
209
+ */
210
+ this._onDidChange.fire({ size: e.orthogonalSize });
211
+ });
212
+ }
213
+ dispose() {
214
+ this._childrenDisposable.dispose();
215
+ this.splitview.dispose();
216
+ this.children.forEach((child) => child.dispose());
217
+ super.dispose();
218
+ }
219
+ }
220
220
  //# sourceMappingURL=branchNode.js.map