dockview-core 1.9.1 → 1.10.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 (536) hide show
  1. package/dist/cjs/api/component.api.d.ts +25 -6
  2. package/dist/cjs/api/component.api.js +27 -5
  3. package/dist/cjs/api/dockviewGroupPanelApi.d.ts +7 -1
  4. package/dist/cjs/api/dockviewGroupPanelApi.js +22 -3
  5. package/dist/cjs/api/dockviewPanelApi.d.ts +23 -7
  6. package/dist/cjs/api/dockviewPanelApi.js +49 -12
  7. package/dist/cjs/api/gridviewPanelApi.d.ts +0 -1
  8. package/dist/cjs/api/gridviewPanelApi.js +1 -4
  9. package/dist/cjs/api/panelApi.d.ts +20 -9
  10. package/dist/cjs/api/panelApi.js +30 -30
  11. package/dist/cjs/api/paneviewPanelApi.d.ts +0 -1
  12. package/dist/cjs/api/paneviewPanelApi.js +0 -1
  13. package/dist/cjs/api/splitviewPanelApi.d.ts +0 -1
  14. package/dist/cjs/api/splitviewPanelApi.js +0 -1
  15. package/dist/cjs/array.d.ts +0 -1
  16. package/dist/cjs/array.js +0 -1
  17. package/dist/cjs/constants.d.ts +0 -1
  18. package/dist/cjs/constants.js +0 -1
  19. package/dist/cjs/dnd/abstractDragHandler.d.ts +0 -1
  20. package/dist/cjs/dnd/abstractDragHandler.js +0 -1
  21. package/dist/cjs/dnd/dataTransfer.d.ts +0 -1
  22. package/dist/cjs/dnd/dataTransfer.js +0 -1
  23. package/dist/cjs/dnd/dnd.d.ts +0 -1
  24. package/dist/cjs/dnd/dnd.js +0 -1
  25. package/dist/cjs/dnd/droptarget.d.ts +20 -9
  26. package/dist/cjs/dnd/droptarget.js +71 -14
  27. package/dist/cjs/dnd/ghost.d.ts +0 -1
  28. package/dist/cjs/dnd/ghost.js +0 -1
  29. package/dist/cjs/dnd/groupDragHandler.d.ts +0 -1
  30. package/dist/cjs/dnd/groupDragHandler.js +1 -2
  31. package/dist/cjs/dnd/overlay.d.ts +0 -1
  32. package/dist/cjs/dnd/overlay.js +0 -1
  33. package/dist/cjs/dockview/components/panel/content.d.ts +0 -1
  34. package/dist/cjs/dockview/components/panel/content.js +8 -9
  35. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +0 -1
  36. package/dist/cjs/dockview/components/tab/defaultTab.js +0 -1
  37. package/dist/cjs/dockview/components/tab/tab.d.ts +5 -13
  38. package/dist/cjs/dockview/components/tab/tab.js +5 -6
  39. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +17 -14
  40. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +26 -22
  41. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +3 -3
  42. package/dist/cjs/dockview/components/titlebar/voidContainer.js +5 -6
  43. package/dist/cjs/dockview/components/watermark/watermark.d.ts +0 -1
  44. package/dist/cjs/dockview/components/watermark/watermark.js +0 -1
  45. package/dist/cjs/dockview/deserializer.d.ts +0 -1
  46. package/dist/cjs/dockview/deserializer.js +0 -1
  47. package/dist/cjs/dockview/dockviewComponent.d.ts +86 -25
  48. package/dist/cjs/dockview/dockviewComponent.js +578 -198
  49. package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts +0 -1
  50. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +0 -1
  51. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +1 -1
  52. package/dist/cjs/dockview/dockviewGroupPanel.js +6 -1
  53. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +79 -34
  54. package/dist/cjs/dockview/dockviewGroupPanelModel.js +227 -57
  55. package/dist/cjs/dockview/dockviewPanel.d.ts +8 -3
  56. package/dist/cjs/dockview/dockviewPanel.js +39 -12
  57. package/dist/cjs/dockview/dockviewPanelModel.d.ts +1 -4
  58. package/dist/cjs/dockview/dockviewPanelModel.js +2 -22
  59. package/dist/cjs/dockview/options.d.ts +9 -4
  60. package/dist/cjs/dockview/options.js +0 -1
  61. package/dist/cjs/dockview/types.d.ts +1 -11
  62. package/dist/cjs/dockview/types.js +0 -9
  63. package/dist/cjs/dom.d.ts +0 -1
  64. package/dist/cjs/dom.js +0 -1
  65. package/dist/cjs/events.d.ts +10 -1
  66. package/dist/cjs/events.js +25 -2
  67. package/dist/cjs/gridview/baseComponentGridview.d.ts +15 -16
  68. package/dist/cjs/gridview/baseComponentGridview.js +37 -27
  69. package/dist/cjs/gridview/basePanelView.d.ts +0 -1
  70. package/dist/cjs/gridview/basePanelView.js +7 -2
  71. package/dist/cjs/gridview/branchNode.d.ts +3 -2
  72. package/dist/cjs/gridview/branchNode.js +12 -2
  73. package/dist/cjs/gridview/gridview.d.ts +5 -3
  74. package/dist/cjs/gridview/gridview.js +54 -21
  75. package/dist/cjs/gridview/gridviewComponent.d.ts +10 -2
  76. package/dist/cjs/gridview/gridviewComponent.js +14 -1
  77. package/dist/cjs/gridview/gridviewPanel.d.ts +3 -3
  78. package/dist/cjs/gridview/gridviewPanel.js +4 -5
  79. package/dist/cjs/gridview/leafNode.d.ts +0 -1
  80. package/dist/cjs/gridview/leafNode.js +0 -1
  81. package/dist/cjs/gridview/options.d.ts +1 -2
  82. package/dist/cjs/gridview/options.js +0 -1
  83. package/dist/cjs/gridview/types.d.ts +0 -1
  84. package/dist/cjs/gridview/types.js +0 -1
  85. package/dist/cjs/index.d.ts +2 -2
  86. package/dist/cjs/index.js +0 -2
  87. package/dist/cjs/lifecycle.d.ts +2 -3
  88. package/dist/cjs/lifecycle.js +5 -2
  89. package/dist/cjs/math.d.ts +0 -1
  90. package/dist/cjs/math.js +0 -1
  91. package/dist/cjs/overlayRenderContainer.d.ts +1 -1
  92. package/dist/cjs/overlayRenderContainer.js +8 -4
  93. package/dist/cjs/panel/componentFactory.d.ts +0 -1
  94. package/dist/cjs/panel/componentFactory.js +0 -1
  95. package/dist/cjs/panel/types.d.ts +1 -2
  96. package/dist/cjs/panel/types.js +0 -1
  97. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +0 -1
  98. package/dist/cjs/paneview/defaultPaneviewHeader.js +0 -1
  99. package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +0 -1
  100. package/dist/cjs/paneview/draggablePaneviewPanel.js +0 -1
  101. package/dist/cjs/paneview/options.d.ts +1 -2
  102. package/dist/cjs/paneview/options.js +0 -1
  103. package/dist/cjs/paneview/paneview.d.ts +0 -1
  104. package/dist/cjs/paneview/paneview.js +0 -1
  105. package/dist/cjs/paneview/paneviewComponent.d.ts +0 -1
  106. package/dist/cjs/paneview/paneviewComponent.js +0 -1
  107. package/dist/cjs/paneview/paneviewPanel.d.ts +0 -1
  108. package/dist/cjs/paneview/paneviewPanel.js +0 -1
  109. package/dist/cjs/popoutWindow.d.ts +15 -4
  110. package/dist/cjs/popoutWindow.js +140 -56
  111. package/dist/cjs/resizable.d.ts +1 -2
  112. package/dist/cjs/resizable.js +1 -10
  113. package/dist/cjs/splitview/options.d.ts +3 -7
  114. package/dist/cjs/splitview/options.js +0 -1
  115. package/dist/cjs/splitview/splitview.d.ts +3 -1
  116. package/dist/cjs/splitview/splitview.js +12 -1
  117. package/dist/cjs/splitview/splitviewComponent.d.ts +0 -1
  118. package/dist/cjs/splitview/splitviewComponent.js +0 -1
  119. package/dist/cjs/splitview/splitviewPanel.d.ts +2 -3
  120. package/dist/cjs/splitview/splitviewPanel.js +3 -4
  121. package/dist/cjs/splitview/viewItem.d.ts +0 -1
  122. package/dist/cjs/splitview/viewItem.js +0 -1
  123. package/dist/cjs/svg.d.ts +0 -1
  124. package/dist/cjs/svg.js +0 -1
  125. package/dist/cjs/types.d.ts +0 -1
  126. package/dist/cjs/types.js +0 -1
  127. package/dist/dockview-core.amd.js +1265 -529
  128. package/dist/dockview-core.amd.js.map +1 -1
  129. package/dist/dockview-core.amd.min.js +2 -2
  130. package/dist/dockview-core.amd.min.js.map +1 -1
  131. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  132. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  133. package/dist/dockview-core.amd.noStyle.js +1264 -528
  134. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  135. package/dist/dockview-core.cjs.js +1265 -529
  136. package/dist/dockview-core.cjs.js.map +1 -1
  137. package/dist/dockview-core.esm.js +1263 -530
  138. package/dist/dockview-core.esm.js.map +1 -1
  139. package/dist/dockview-core.esm.min.js +2 -2
  140. package/dist/dockview-core.esm.min.js.map +1 -1
  141. package/dist/dockview-core.js +1265 -529
  142. package/dist/dockview-core.js.map +1 -1
  143. package/dist/dockview-core.min.js +2 -2
  144. package/dist/dockview-core.min.js.map +1 -1
  145. package/dist/dockview-core.min.noStyle.js +2 -2
  146. package/dist/dockview-core.min.noStyle.js.map +1 -1
  147. package/dist/dockview-core.noStyle.js +1264 -528
  148. package/dist/dockview-core.noStyle.js.map +1 -1
  149. package/dist/esm/api/component.api.d.ts +25 -6
  150. package/dist/esm/api/component.api.js +19 -5
  151. package/dist/esm/api/dockviewGroupPanelApi.d.ts +7 -1
  152. package/dist/esm/api/dockviewGroupPanelApi.js +22 -3
  153. package/dist/esm/api/dockviewPanelApi.d.ts +23 -7
  154. package/dist/esm/api/dockviewPanelApi.js +46 -13
  155. package/dist/esm/api/gridviewPanelApi.d.ts +0 -1
  156. package/dist/esm/api/gridviewPanelApi.js +1 -4
  157. package/dist/esm/api/panelApi.d.ts +20 -9
  158. package/dist/esm/api/panelApi.js +23 -30
  159. package/dist/esm/api/paneviewPanelApi.d.ts +0 -1
  160. package/dist/esm/api/paneviewPanelApi.js +0 -1
  161. package/dist/esm/api/splitviewPanelApi.d.ts +0 -1
  162. package/dist/esm/api/splitviewPanelApi.js +0 -1
  163. package/dist/esm/array.d.ts +0 -1
  164. package/dist/esm/array.js +0 -1
  165. package/dist/esm/constants.d.ts +0 -1
  166. package/dist/esm/constants.js +0 -1
  167. package/dist/esm/dnd/abstractDragHandler.d.ts +0 -1
  168. package/dist/esm/dnd/abstractDragHandler.js +0 -1
  169. package/dist/esm/dnd/dataTransfer.d.ts +0 -1
  170. package/dist/esm/dnd/dataTransfer.js +0 -1
  171. package/dist/esm/dnd/dnd.d.ts +0 -1
  172. package/dist/esm/dnd/dnd.js +0 -1
  173. package/dist/esm/dnd/droptarget.d.ts +20 -9
  174. package/dist/esm/dnd/droptarget.js +59 -14
  175. package/dist/esm/dnd/ghost.d.ts +0 -1
  176. package/dist/esm/dnd/ghost.js +0 -1
  177. package/dist/esm/dnd/groupDragHandler.d.ts +0 -1
  178. package/dist/esm/dnd/groupDragHandler.js +1 -2
  179. package/dist/esm/dnd/overlay.d.ts +0 -1
  180. package/dist/esm/dnd/overlay.js +0 -1
  181. package/dist/esm/dockview/components/panel/content.d.ts +0 -1
  182. package/dist/esm/dockview/components/panel/content.js +8 -9
  183. package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -1
  184. package/dist/esm/dockview/components/tab/defaultTab.js +0 -1
  185. package/dist/esm/dockview/components/tab/tab.d.ts +5 -13
  186. package/dist/esm/dockview/components/tab/tab.js +6 -7
  187. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +17 -14
  188. package/dist/esm/dockview/components/titlebar/tabsContainer.js +24 -20
  189. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +3 -3
  190. package/dist/esm/dockview/components/titlebar/voidContainer.js +6 -7
  191. package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -1
  192. package/dist/esm/dockview/components/watermark/watermark.js +0 -1
  193. package/dist/esm/dockview/deserializer.d.ts +0 -1
  194. package/dist/esm/dockview/deserializer.js +0 -1
  195. package/dist/esm/dockview/dockviewComponent.d.ts +86 -25
  196. package/dist/esm/dockview/dockviewComponent.js +521 -163
  197. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +0 -1
  198. package/dist/esm/dockview/dockviewFloatingGroupPanel.js +0 -1
  199. package/dist/esm/dockview/dockviewGroupPanel.d.ts +1 -1
  200. package/dist/esm/dockview/dockviewGroupPanel.js +6 -1
  201. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +79 -34
  202. package/dist/esm/dockview/dockviewGroupPanelModel.js +170 -53
  203. package/dist/esm/dockview/dockviewPanel.d.ts +8 -3
  204. package/dist/esm/dockview/dockviewPanel.js +39 -12
  205. package/dist/esm/dockview/dockviewPanelModel.d.ts +1 -4
  206. package/dist/esm/dockview/dockviewPanelModel.js +2 -22
  207. package/dist/esm/dockview/options.d.ts +9 -4
  208. package/dist/esm/dockview/options.js +0 -1
  209. package/dist/esm/dockview/types.d.ts +1 -11
  210. package/dist/esm/dockview/types.js +1 -8
  211. package/dist/esm/dom.d.ts +0 -1
  212. package/dist/esm/dom.js +0 -1
  213. package/dist/esm/events.d.ts +10 -1
  214. package/dist/esm/events.js +14 -1
  215. package/dist/esm/gridview/baseComponentGridview.d.ts +15 -16
  216. package/dist/esm/gridview/baseComponentGridview.js +33 -27
  217. package/dist/esm/gridview/basePanelView.d.ts +0 -1
  218. package/dist/esm/gridview/basePanelView.js +7 -2
  219. package/dist/esm/gridview/branchNode.d.ts +3 -2
  220. package/dist/esm/gridview/branchNode.js +8 -2
  221. package/dist/esm/gridview/gridview.d.ts +5 -3
  222. package/dist/esm/gridview/gridview.js +49 -20
  223. package/dist/esm/gridview/gridviewComponent.d.ts +10 -2
  224. package/dist/esm/gridview/gridviewComponent.js +14 -1
  225. package/dist/esm/gridview/gridviewPanel.d.ts +3 -3
  226. package/dist/esm/gridview/gridviewPanel.js +4 -5
  227. package/dist/esm/gridview/leafNode.d.ts +0 -1
  228. package/dist/esm/gridview/leafNode.js +0 -1
  229. package/dist/esm/gridview/options.d.ts +1 -2
  230. package/dist/esm/gridview/options.js +0 -1
  231. package/dist/esm/gridview/types.d.ts +0 -1
  232. package/dist/esm/gridview/types.js +0 -1
  233. package/dist/esm/index.d.ts +2 -2
  234. package/dist/esm/index.js +0 -2
  235. package/dist/esm/lifecycle.d.ts +2 -3
  236. package/dist/esm/lifecycle.js +5 -2
  237. package/dist/esm/math.d.ts +0 -1
  238. package/dist/esm/math.js +0 -1
  239. package/dist/esm/overlayRenderContainer.d.ts +1 -1
  240. package/dist/esm/overlayRenderContainer.js +8 -4
  241. package/dist/esm/panel/componentFactory.d.ts +0 -1
  242. package/dist/esm/panel/componentFactory.js +0 -1
  243. package/dist/esm/panel/types.d.ts +1 -2
  244. package/dist/esm/panel/types.js +0 -1
  245. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +0 -1
  246. package/dist/esm/paneview/defaultPaneviewHeader.js +0 -1
  247. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +0 -1
  248. package/dist/esm/paneview/draggablePaneviewPanel.js +0 -1
  249. package/dist/esm/paneview/options.d.ts +1 -2
  250. package/dist/esm/paneview/options.js +0 -1
  251. package/dist/esm/paneview/paneview.d.ts +0 -1
  252. package/dist/esm/paneview/paneview.js +0 -1
  253. package/dist/esm/paneview/paneviewComponent.d.ts +0 -1
  254. package/dist/esm/paneview/paneviewComponent.js +0 -1
  255. package/dist/esm/paneview/paneviewPanel.d.ts +0 -1
  256. package/dist/esm/paneview/paneviewPanel.js +0 -1
  257. package/dist/esm/popoutWindow.d.ts +15 -4
  258. package/dist/esm/popoutWindow.js +105 -52
  259. package/dist/esm/resizable.d.ts +1 -2
  260. package/dist/esm/resizable.js +1 -10
  261. package/dist/esm/splitview/options.d.ts +3 -7
  262. package/dist/esm/splitview/options.js +0 -1
  263. package/dist/esm/splitview/splitview.d.ts +3 -1
  264. package/dist/esm/splitview/splitview.js +8 -1
  265. package/dist/esm/splitview/splitviewComponent.d.ts +0 -1
  266. package/dist/esm/splitview/splitviewComponent.js +0 -1
  267. package/dist/esm/splitview/splitviewPanel.d.ts +2 -3
  268. package/dist/esm/splitview/splitviewPanel.js +3 -4
  269. package/dist/esm/splitview/viewItem.d.ts +0 -1
  270. package/dist/esm/splitview/viewItem.js +0 -1
  271. package/dist/esm/svg.d.ts +0 -1
  272. package/dist/esm/svg.js +0 -1
  273. package/dist/esm/types.d.ts +0 -1
  274. package/dist/esm/types.js +0 -1
  275. package/dist/styles/dockview.css +20 -6
  276. package/package.json +3 -3
  277. package/dist/cjs/api/component.api.d.ts.map +0 -1
  278. package/dist/cjs/api/component.api.js.map +0 -1
  279. package/dist/cjs/api/dockviewGroupPanelApi.d.ts.map +0 -1
  280. package/dist/cjs/api/dockviewGroupPanelApi.js.map +0 -1
  281. package/dist/cjs/api/dockviewPanelApi.d.ts.map +0 -1
  282. package/dist/cjs/api/dockviewPanelApi.js.map +0 -1
  283. package/dist/cjs/api/gridviewPanelApi.d.ts.map +0 -1
  284. package/dist/cjs/api/gridviewPanelApi.js.map +0 -1
  285. package/dist/cjs/api/panelApi.d.ts.map +0 -1
  286. package/dist/cjs/api/panelApi.js.map +0 -1
  287. package/dist/cjs/api/paneviewPanelApi.d.ts.map +0 -1
  288. package/dist/cjs/api/paneviewPanelApi.js.map +0 -1
  289. package/dist/cjs/api/splitviewPanelApi.d.ts.map +0 -1
  290. package/dist/cjs/api/splitviewPanelApi.js.map +0 -1
  291. package/dist/cjs/array.d.ts.map +0 -1
  292. package/dist/cjs/array.js.map +0 -1
  293. package/dist/cjs/constants.d.ts.map +0 -1
  294. package/dist/cjs/constants.js.map +0 -1
  295. package/dist/cjs/dnd/abstractDragHandler.d.ts.map +0 -1
  296. package/dist/cjs/dnd/abstractDragHandler.js.map +0 -1
  297. package/dist/cjs/dnd/dataTransfer.d.ts.map +0 -1
  298. package/dist/cjs/dnd/dataTransfer.js.map +0 -1
  299. package/dist/cjs/dnd/dnd.d.ts.map +0 -1
  300. package/dist/cjs/dnd/dnd.js.map +0 -1
  301. package/dist/cjs/dnd/droptarget.d.ts.map +0 -1
  302. package/dist/cjs/dnd/droptarget.js.map +0 -1
  303. package/dist/cjs/dnd/ghost.d.ts.map +0 -1
  304. package/dist/cjs/dnd/ghost.js.map +0 -1
  305. package/dist/cjs/dnd/groupDragHandler.d.ts.map +0 -1
  306. package/dist/cjs/dnd/groupDragHandler.js.map +0 -1
  307. package/dist/cjs/dnd/overlay.d.ts.map +0 -1
  308. package/dist/cjs/dnd/overlay.js.map +0 -1
  309. package/dist/cjs/dockview/components/panel/content.d.ts.map +0 -1
  310. package/dist/cjs/dockview/components/panel/content.js.map +0 -1
  311. package/dist/cjs/dockview/components/tab/defaultTab.d.ts.map +0 -1
  312. package/dist/cjs/dockview/components/tab/defaultTab.js.map +0 -1
  313. package/dist/cjs/dockview/components/tab/tab.d.ts.map +0 -1
  314. package/dist/cjs/dockview/components/tab/tab.js.map +0 -1
  315. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts.map +0 -1
  316. package/dist/cjs/dockview/components/titlebar/tabsContainer.js.map +0 -1
  317. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts.map +0 -1
  318. package/dist/cjs/dockview/components/titlebar/voidContainer.js.map +0 -1
  319. package/dist/cjs/dockview/components/watermark/watermark.d.ts.map +0 -1
  320. package/dist/cjs/dockview/components/watermark/watermark.js.map +0 -1
  321. package/dist/cjs/dockview/deserializer.d.ts.map +0 -1
  322. package/dist/cjs/dockview/deserializer.js.map +0 -1
  323. package/dist/cjs/dockview/dockviewComponent.d.ts.map +0 -1
  324. package/dist/cjs/dockview/dockviewComponent.js.map +0 -1
  325. package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts.map +0 -1
  326. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js.map +0 -1
  327. package/dist/cjs/dockview/dockviewGroupPanel.d.ts.map +0 -1
  328. package/dist/cjs/dockview/dockviewGroupPanel.js.map +0 -1
  329. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts.map +0 -1
  330. package/dist/cjs/dockview/dockviewGroupPanelModel.js.map +0 -1
  331. package/dist/cjs/dockview/dockviewPanel.d.ts.map +0 -1
  332. package/dist/cjs/dockview/dockviewPanel.js.map +0 -1
  333. package/dist/cjs/dockview/dockviewPanelModel.d.ts.map +0 -1
  334. package/dist/cjs/dockview/dockviewPanelModel.js.map +0 -1
  335. package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts +0 -16
  336. package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts.map +0 -1
  337. package/dist/cjs/dockview/dockviewPopoutGroupPanel.js +0 -50
  338. package/dist/cjs/dockview/dockviewPopoutGroupPanel.js.map +0 -1
  339. package/dist/cjs/dockview/options.d.ts.map +0 -1
  340. package/dist/cjs/dockview/options.js.map +0 -1
  341. package/dist/cjs/dockview/types.d.ts.map +0 -1
  342. package/dist/cjs/dockview/types.js.map +0 -1
  343. package/dist/cjs/dom.d.ts.map +0 -1
  344. package/dist/cjs/dom.js.map +0 -1
  345. package/dist/cjs/events.d.ts.map +0 -1
  346. package/dist/cjs/events.js.map +0 -1
  347. package/dist/cjs/gridview/baseComponentGridview.d.ts.map +0 -1
  348. package/dist/cjs/gridview/baseComponentGridview.js.map +0 -1
  349. package/dist/cjs/gridview/basePanelView.d.ts.map +0 -1
  350. package/dist/cjs/gridview/basePanelView.js.map +0 -1
  351. package/dist/cjs/gridview/branchNode.d.ts.map +0 -1
  352. package/dist/cjs/gridview/branchNode.js.map +0 -1
  353. package/dist/cjs/gridview/gridview.d.ts.map +0 -1
  354. package/dist/cjs/gridview/gridview.js.map +0 -1
  355. package/dist/cjs/gridview/gridviewComponent.d.ts.map +0 -1
  356. package/dist/cjs/gridview/gridviewComponent.js.map +0 -1
  357. package/dist/cjs/gridview/gridviewPanel.d.ts.map +0 -1
  358. package/dist/cjs/gridview/gridviewPanel.js.map +0 -1
  359. package/dist/cjs/gridview/leafNode.d.ts.map +0 -1
  360. package/dist/cjs/gridview/leafNode.js.map +0 -1
  361. package/dist/cjs/gridview/options.d.ts.map +0 -1
  362. package/dist/cjs/gridview/options.js.map +0 -1
  363. package/dist/cjs/gridview/types.d.ts.map +0 -1
  364. package/dist/cjs/gridview/types.js.map +0 -1
  365. package/dist/cjs/index.d.ts.map +0 -1
  366. package/dist/cjs/index.js.map +0 -1
  367. package/dist/cjs/lifecycle.d.ts.map +0 -1
  368. package/dist/cjs/lifecycle.js.map +0 -1
  369. package/dist/cjs/math.d.ts.map +0 -1
  370. package/dist/cjs/math.js.map +0 -1
  371. package/dist/cjs/overlayRenderContainer.d.ts.map +0 -1
  372. package/dist/cjs/overlayRenderContainer.js.map +0 -1
  373. package/dist/cjs/panel/componentFactory.d.ts.map +0 -1
  374. package/dist/cjs/panel/componentFactory.js.map +0 -1
  375. package/dist/cjs/panel/types.d.ts.map +0 -1
  376. package/dist/cjs/panel/types.js.map +0 -1
  377. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts.map +0 -1
  378. package/dist/cjs/paneview/defaultPaneviewHeader.js.map +0 -1
  379. package/dist/cjs/paneview/draggablePaneviewPanel.d.ts.map +0 -1
  380. package/dist/cjs/paneview/draggablePaneviewPanel.js.map +0 -1
  381. package/dist/cjs/paneview/options.d.ts.map +0 -1
  382. package/dist/cjs/paneview/options.js.map +0 -1
  383. package/dist/cjs/paneview/paneview.d.ts.map +0 -1
  384. package/dist/cjs/paneview/paneview.js.map +0 -1
  385. package/dist/cjs/paneview/paneviewComponent.d.ts.map +0 -1
  386. package/dist/cjs/paneview/paneviewComponent.js.map +0 -1
  387. package/dist/cjs/paneview/paneviewPanel.d.ts.map +0 -1
  388. package/dist/cjs/paneview/paneviewPanel.js.map +0 -1
  389. package/dist/cjs/popoutWindow.d.ts.map +0 -1
  390. package/dist/cjs/popoutWindow.js.map +0 -1
  391. package/dist/cjs/resizable.d.ts.map +0 -1
  392. package/dist/cjs/resizable.js.map +0 -1
  393. package/dist/cjs/splitview/options.d.ts.map +0 -1
  394. package/dist/cjs/splitview/options.js.map +0 -1
  395. package/dist/cjs/splitview/splitview.d.ts.map +0 -1
  396. package/dist/cjs/splitview/splitview.js.map +0 -1
  397. package/dist/cjs/splitview/splitviewComponent.d.ts.map +0 -1
  398. package/dist/cjs/splitview/splitviewComponent.js.map +0 -1
  399. package/dist/cjs/splitview/splitviewPanel.d.ts.map +0 -1
  400. package/dist/cjs/splitview/splitviewPanel.js.map +0 -1
  401. package/dist/cjs/splitview/viewItem.d.ts.map +0 -1
  402. package/dist/cjs/splitview/viewItem.js.map +0 -1
  403. package/dist/cjs/svg.d.ts.map +0 -1
  404. package/dist/cjs/svg.js.map +0 -1
  405. package/dist/cjs/types.d.ts.map +0 -1
  406. package/dist/cjs/types.js.map +0 -1
  407. package/dist/esm/api/component.api.d.ts.map +0 -1
  408. package/dist/esm/api/component.api.js.map +0 -1
  409. package/dist/esm/api/dockviewGroupPanelApi.d.ts.map +0 -1
  410. package/dist/esm/api/dockviewGroupPanelApi.js.map +0 -1
  411. package/dist/esm/api/dockviewPanelApi.d.ts.map +0 -1
  412. package/dist/esm/api/dockviewPanelApi.js.map +0 -1
  413. package/dist/esm/api/gridviewPanelApi.d.ts.map +0 -1
  414. package/dist/esm/api/gridviewPanelApi.js.map +0 -1
  415. package/dist/esm/api/panelApi.d.ts.map +0 -1
  416. package/dist/esm/api/panelApi.js.map +0 -1
  417. package/dist/esm/api/paneviewPanelApi.d.ts.map +0 -1
  418. package/dist/esm/api/paneviewPanelApi.js.map +0 -1
  419. package/dist/esm/api/splitviewPanelApi.d.ts.map +0 -1
  420. package/dist/esm/api/splitviewPanelApi.js.map +0 -1
  421. package/dist/esm/array.d.ts.map +0 -1
  422. package/dist/esm/array.js.map +0 -1
  423. package/dist/esm/constants.d.ts.map +0 -1
  424. package/dist/esm/constants.js.map +0 -1
  425. package/dist/esm/dnd/abstractDragHandler.d.ts.map +0 -1
  426. package/dist/esm/dnd/abstractDragHandler.js.map +0 -1
  427. package/dist/esm/dnd/dataTransfer.d.ts.map +0 -1
  428. package/dist/esm/dnd/dataTransfer.js.map +0 -1
  429. package/dist/esm/dnd/dnd.d.ts.map +0 -1
  430. package/dist/esm/dnd/dnd.js.map +0 -1
  431. package/dist/esm/dnd/droptarget.d.ts.map +0 -1
  432. package/dist/esm/dnd/droptarget.js.map +0 -1
  433. package/dist/esm/dnd/ghost.d.ts.map +0 -1
  434. package/dist/esm/dnd/ghost.js.map +0 -1
  435. package/dist/esm/dnd/groupDragHandler.d.ts.map +0 -1
  436. package/dist/esm/dnd/groupDragHandler.js.map +0 -1
  437. package/dist/esm/dnd/overlay.d.ts.map +0 -1
  438. package/dist/esm/dnd/overlay.js.map +0 -1
  439. package/dist/esm/dockview/components/panel/content.d.ts.map +0 -1
  440. package/dist/esm/dockview/components/panel/content.js.map +0 -1
  441. package/dist/esm/dockview/components/tab/defaultTab.d.ts.map +0 -1
  442. package/dist/esm/dockview/components/tab/defaultTab.js.map +0 -1
  443. package/dist/esm/dockview/components/tab/tab.d.ts.map +0 -1
  444. package/dist/esm/dockview/components/tab/tab.js.map +0 -1
  445. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts.map +0 -1
  446. package/dist/esm/dockview/components/titlebar/tabsContainer.js.map +0 -1
  447. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts.map +0 -1
  448. package/dist/esm/dockview/components/titlebar/voidContainer.js.map +0 -1
  449. package/dist/esm/dockview/components/watermark/watermark.d.ts.map +0 -1
  450. package/dist/esm/dockview/components/watermark/watermark.js.map +0 -1
  451. package/dist/esm/dockview/deserializer.d.ts.map +0 -1
  452. package/dist/esm/dockview/deserializer.js.map +0 -1
  453. package/dist/esm/dockview/dockviewComponent.d.ts.map +0 -1
  454. package/dist/esm/dockview/dockviewComponent.js.map +0 -1
  455. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts.map +0 -1
  456. package/dist/esm/dockview/dockviewFloatingGroupPanel.js.map +0 -1
  457. package/dist/esm/dockview/dockviewGroupPanel.d.ts.map +0 -1
  458. package/dist/esm/dockview/dockviewGroupPanel.js.map +0 -1
  459. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts.map +0 -1
  460. package/dist/esm/dockview/dockviewGroupPanelModel.js.map +0 -1
  461. package/dist/esm/dockview/dockviewPanel.d.ts.map +0 -1
  462. package/dist/esm/dockview/dockviewPanel.js.map +0 -1
  463. package/dist/esm/dockview/dockviewPanelModel.d.ts.map +0 -1
  464. package/dist/esm/dockview/dockviewPanelModel.js.map +0 -1
  465. package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts +0 -16
  466. package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts.map +0 -1
  467. package/dist/esm/dockview/dockviewPopoutGroupPanel.js +0 -28
  468. package/dist/esm/dockview/dockviewPopoutGroupPanel.js.map +0 -1
  469. package/dist/esm/dockview/options.d.ts.map +0 -1
  470. package/dist/esm/dockview/options.js.map +0 -1
  471. package/dist/esm/dockview/types.d.ts.map +0 -1
  472. package/dist/esm/dockview/types.js.map +0 -1
  473. package/dist/esm/dom.d.ts.map +0 -1
  474. package/dist/esm/dom.js.map +0 -1
  475. package/dist/esm/events.d.ts.map +0 -1
  476. package/dist/esm/events.js.map +0 -1
  477. package/dist/esm/gridview/baseComponentGridview.d.ts.map +0 -1
  478. package/dist/esm/gridview/baseComponentGridview.js.map +0 -1
  479. package/dist/esm/gridview/basePanelView.d.ts.map +0 -1
  480. package/dist/esm/gridview/basePanelView.js.map +0 -1
  481. package/dist/esm/gridview/branchNode.d.ts.map +0 -1
  482. package/dist/esm/gridview/branchNode.js.map +0 -1
  483. package/dist/esm/gridview/gridview.d.ts.map +0 -1
  484. package/dist/esm/gridview/gridview.js.map +0 -1
  485. package/dist/esm/gridview/gridviewComponent.d.ts.map +0 -1
  486. package/dist/esm/gridview/gridviewComponent.js.map +0 -1
  487. package/dist/esm/gridview/gridviewPanel.d.ts.map +0 -1
  488. package/dist/esm/gridview/gridviewPanel.js.map +0 -1
  489. package/dist/esm/gridview/leafNode.d.ts.map +0 -1
  490. package/dist/esm/gridview/leafNode.js.map +0 -1
  491. package/dist/esm/gridview/options.d.ts.map +0 -1
  492. package/dist/esm/gridview/options.js.map +0 -1
  493. package/dist/esm/gridview/types.d.ts.map +0 -1
  494. package/dist/esm/gridview/types.js.map +0 -1
  495. package/dist/esm/index.d.ts.map +0 -1
  496. package/dist/esm/index.js.map +0 -1
  497. package/dist/esm/lifecycle.d.ts.map +0 -1
  498. package/dist/esm/lifecycle.js.map +0 -1
  499. package/dist/esm/math.d.ts.map +0 -1
  500. package/dist/esm/math.js.map +0 -1
  501. package/dist/esm/overlayRenderContainer.d.ts.map +0 -1
  502. package/dist/esm/overlayRenderContainer.js.map +0 -1
  503. package/dist/esm/panel/componentFactory.d.ts.map +0 -1
  504. package/dist/esm/panel/componentFactory.js.map +0 -1
  505. package/dist/esm/panel/types.d.ts.map +0 -1
  506. package/dist/esm/panel/types.js.map +0 -1
  507. package/dist/esm/paneview/defaultPaneviewHeader.d.ts.map +0 -1
  508. package/dist/esm/paneview/defaultPaneviewHeader.js.map +0 -1
  509. package/dist/esm/paneview/draggablePaneviewPanel.d.ts.map +0 -1
  510. package/dist/esm/paneview/draggablePaneviewPanel.js.map +0 -1
  511. package/dist/esm/paneview/options.d.ts.map +0 -1
  512. package/dist/esm/paneview/options.js.map +0 -1
  513. package/dist/esm/paneview/paneview.d.ts.map +0 -1
  514. package/dist/esm/paneview/paneview.js.map +0 -1
  515. package/dist/esm/paneview/paneviewComponent.d.ts.map +0 -1
  516. package/dist/esm/paneview/paneviewComponent.js.map +0 -1
  517. package/dist/esm/paneview/paneviewPanel.d.ts.map +0 -1
  518. package/dist/esm/paneview/paneviewPanel.js.map +0 -1
  519. package/dist/esm/popoutWindow.d.ts.map +0 -1
  520. package/dist/esm/popoutWindow.js.map +0 -1
  521. package/dist/esm/resizable.d.ts.map +0 -1
  522. package/dist/esm/resizable.js.map +0 -1
  523. package/dist/esm/splitview/options.d.ts.map +0 -1
  524. package/dist/esm/splitview/options.js.map +0 -1
  525. package/dist/esm/splitview/splitview.d.ts.map +0 -1
  526. package/dist/esm/splitview/splitview.js.map +0 -1
  527. package/dist/esm/splitview/splitviewComponent.d.ts.map +0 -1
  528. package/dist/esm/splitview/splitviewComponent.js.map +0 -1
  529. package/dist/esm/splitview/splitviewPanel.d.ts.map +0 -1
  530. package/dist/esm/splitview/splitviewPanel.js.map +0 -1
  531. package/dist/esm/splitview/viewItem.d.ts.map +0 -1
  532. package/dist/esm/splitview/viewItem.js.map +0 -1
  533. package/dist/esm/svg.d.ts.map +0 -1
  534. package/dist/esm/svg.js.map +0 -1
  535. package/dist/esm/types.d.ts.map +0 -1
  536. package/dist/esm/types.js.map +0 -1
@@ -21,4 +21,3 @@ export declare class DockviewFloatingGroupPanel extends CompositeDisposable impl
21
21
  width: number;
22
22
  }>): void;
23
23
  }
24
- //# sourceMappingURL=dockviewFloatingGroupPanel.d.ts.map
@@ -10,4 +10,3 @@ export class DockviewFloatingGroupPanel extends CompositeDisposable {
10
10
  this.overlay.setBounds(bounds);
11
11
  }
12
12
  }
13
- //# sourceMappingURL=dockviewFloatingGroupPanel.js.map
@@ -22,10 +22,10 @@ export declare class DockviewGroupPanel extends GridviewPanel<DockviewGroupPanel
22
22
  set locked(value: DockviewGroupPanelLocked);
23
23
  get header(): IHeader;
24
24
  constructor(accessor: DockviewComponent, id: string, options: GroupOptions);
25
+ focus(): void;
25
26
  initialize(): void;
26
27
  setActive(isActive: boolean): void;
27
28
  layout(width: number, height: number): void;
28
29
  getComponent(): IFrameworkPart;
29
30
  toJSON(): any;
30
31
  }
31
- //# sourceMappingURL=dockviewGroupPanel.d.ts.map
@@ -33,6 +33,12 @@ export class DockviewGroupPanel extends GridviewPanel {
33
33
  this.api.initialize(this); // cannot use 'this' after after 'super' call
34
34
  this._model = new DockviewGroupPanelModel(this.element, accessor, id, options, this);
35
35
  }
36
+ focus() {
37
+ if (!this.api.isActive) {
38
+ this.api.setActive();
39
+ }
40
+ super.focus();
41
+ }
36
42
  initialize() {
37
43
  this._model.initialize();
38
44
  }
@@ -51,4 +57,3 @@ export class DockviewGroupPanel extends GridviewPanel {
51
57
  return this.model.toJSON();
52
58
  }
53
59
  }
54
- //# sourceMappingURL=dockviewGroupPanel.js.map
@@ -1,7 +1,8 @@
1
+ import { DockviewApi } from '../api/component.api';
1
2
  import { PanelTransfer } from '../dnd/dataTransfer';
2
- import { Position } from '../dnd/droptarget';
3
+ import { Position, WillShowOverlayEvent } from '../dnd/droptarget';
3
4
  import { DockviewComponent } from './dockviewComponent';
4
- import { Event } from '../events';
5
+ import { DockviewEvent, Event, IDockviewEvent } from '../events';
5
6
  import { IViewSize } from '../gridview/gridview';
6
7
  import { CompositeDisposable } from '../lifecycle';
7
8
  import { IPanel, PanelInitParameters, PanelUpdateEvent } from '../panel/types';
@@ -9,19 +10,7 @@ import { GroupDragEvent, TabDragEvent } from './components/titlebar/tabsContaine
9
10
  import { DockviewDropTargets } from './types';
10
11
  import { DockviewGroupPanel } from './dockviewGroupPanel';
11
12
  import { IDockviewPanel } from './dockviewPanel';
12
- export interface DndService {
13
- canDisplayOverlay(group: IDockviewGroupPanelModel, event: DragEvent, target: DockviewDropTargets): boolean;
14
- onDrop(group: IDockviewGroupPanelModel, event: DragEvent, position: Position, index?: number): void;
15
- }
16
- export interface IGroupItem {
17
- id: string;
18
- header: {
19
- element: HTMLElement;
20
- };
21
- body: {
22
- element: HTMLElement;
23
- };
24
- }
13
+ import { OverlayRenderContainer } from '../overlayRenderContainer';
25
14
  interface GroupMoveEvent {
26
15
  groupId: string;
27
16
  itemId?: string;
@@ -31,6 +20,7 @@ interface GroupMoveEvent {
31
20
  interface CoreGroupOptions {
32
21
  locked?: DockviewGroupPanelLocked;
33
22
  hideHeader?: boolean;
23
+ skipSetActive?: boolean;
34
24
  }
35
25
  export interface GroupOptions extends CoreGroupOptions {
36
26
  readonly panels?: IDockviewPanel[];
@@ -42,19 +32,44 @@ export interface GroupPanelViewState extends CoreGroupOptions {
42
32
  activeView?: string;
43
33
  id: string;
44
34
  }
45
- export interface GroupviewChangeEvent {
35
+ export interface DockviewGroupChangeEvent {
46
36
  readonly panel: IDockviewPanel;
47
37
  }
48
- export interface GroupviewDropEvent {
49
- readonly nativeEvent: DragEvent;
50
- readonly position: Position;
51
- readonly index?: number;
38
+ export declare class DockviewDidDropEvent extends DockviewEvent {
39
+ private readonly options;
40
+ get nativeEvent(): DragEvent;
41
+ get position(): Position;
42
+ get panel(): IDockviewPanel | undefined;
43
+ get group(): DockviewGroupPanel | undefined;
44
+ get api(): DockviewApi;
45
+ constructor(options: {
46
+ readonly nativeEvent: DragEvent;
47
+ readonly position: Position;
48
+ readonly panel?: IDockviewPanel;
49
+ getData(): PanelTransfer | undefined;
50
+ group?: DockviewGroupPanel;
51
+ api: DockviewApi;
52
+ });
52
53
  getData(): PanelTransfer | undefined;
53
54
  }
55
+ export declare class DockviewWillDropEvent extends DockviewDidDropEvent {
56
+ private readonly _kind;
57
+ get kind(): DockviewGroupDropLocation;
58
+ constructor(options: {
59
+ readonly nativeEvent: DragEvent;
60
+ readonly position: Position;
61
+ readonly panel?: IDockviewPanel;
62
+ getData(): PanelTransfer | undefined;
63
+ kind: DockviewGroupDropLocation;
64
+ group?: DockviewGroupPanel;
65
+ api: DockviewApi;
66
+ });
67
+ }
54
68
  export interface IHeader {
55
69
  hidden: boolean;
56
70
  }
57
71
  export type DockviewGroupPanelLocked = boolean | 'no-drop-target';
72
+ export type DockviewGroupDropLocation = 'tab' | 'header_space' | 'content';
58
73
  export interface IDockviewGroupPanelModel extends IPanel {
59
74
  readonly isActive: boolean;
60
75
  readonly size: number;
@@ -62,10 +77,11 @@ export interface IDockviewGroupPanelModel extends IPanel {
62
77
  readonly activePanel: IDockviewPanel | undefined;
63
78
  readonly header: IHeader;
64
79
  readonly isContentFocused: boolean;
65
- readonly onDidDrop: Event<GroupviewDropEvent>;
66
- readonly onDidAddPanel: Event<GroupviewChangeEvent>;
67
- readonly onDidRemovePanel: Event<GroupviewChangeEvent>;
68
- readonly onDidActivePanelChange: Event<GroupviewChangeEvent>;
80
+ readonly onDidDrop: Event<DockviewDidDropEvent>;
81
+ readonly onWillDrop: Event<DockviewWillDropEvent>;
82
+ readonly onDidAddPanel: Event<DockviewGroupChangeEvent>;
83
+ readonly onDidRemovePanel: Event<DockviewGroupChangeEvent>;
84
+ readonly onDidActivePanelChange: Event<DockviewGroupChangeEvent>;
69
85
  readonly onMove: Event<GroupMoveEvent>;
70
86
  locked: DockviewGroupPanelLocked;
71
87
  setActive(isActive: boolean): void;
@@ -92,7 +108,26 @@ export interface IDockviewGroupPanelModel extends IPanel {
92
108
  }): void;
93
109
  canDisplayOverlay(event: DragEvent, position: Position, target: DockviewDropTargets): boolean;
94
110
  }
95
- export type DockviewGroupLocation = 'grid' | 'floating' | 'popout';
111
+ export type DockviewGroupLocation = {
112
+ type: 'grid';
113
+ } | {
114
+ type: 'floating';
115
+ } | {
116
+ type: 'popout';
117
+ getWindow: () => Window;
118
+ };
119
+ export declare class WillShowOverlayLocationEvent implements IDockviewEvent {
120
+ private readonly event;
121
+ private _kind;
122
+ get kind(): DockviewGroupDropLocation;
123
+ get nativeEvent(): DragEvent;
124
+ get position(): Position;
125
+ get defaultPrevented(): boolean;
126
+ preventDefault(): void;
127
+ constructor(event: WillShowOverlayEvent, options: {
128
+ kind: DockviewGroupDropLocation;
129
+ });
130
+ }
96
131
  export declare class DockviewGroupPanelModel extends CompositeDisposable implements IDockviewGroupPanelModel {
97
132
  private readonly container;
98
133
  private accessor;
@@ -118,17 +153,22 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
118
153
  private readonly _onMove;
119
154
  readonly onMove: Event<GroupMoveEvent>;
120
155
  private readonly _onDidDrop;
121
- readonly onDidDrop: Event<GroupviewDropEvent>;
156
+ readonly onDidDrop: Event<DockviewDidDropEvent>;
157
+ private readonly _onWillDrop;
158
+ readonly onWillDrop: Event<DockviewWillDropEvent>;
159
+ private readonly _onWillShowOverlay;
160
+ readonly onWillShowOverlay: Event<WillShowOverlayLocationEvent>;
122
161
  private readonly _onTabDragStart;
123
162
  readonly onTabDragStart: Event<TabDragEvent>;
124
163
  private readonly _onGroupDragStart;
125
164
  readonly onGroupDragStart: Event<GroupDragEvent>;
126
165
  private readonly _onDidAddPanel;
127
- readonly onDidAddPanel: Event<GroupviewChangeEvent>;
166
+ readonly onDidAddPanel: Event<DockviewGroupChangeEvent>;
128
167
  private readonly _onDidRemovePanel;
129
- readonly onDidRemovePanel: Event<GroupviewChangeEvent>;
168
+ readonly onDidRemovePanel: Event<DockviewGroupChangeEvent>;
130
169
  private readonly _onDidActivePanelChange;
131
- readonly onDidActivePanelChange: Event<GroupviewChangeEvent>;
170
+ readonly onDidActivePanelChange: Event<DockviewGroupChangeEvent>;
171
+ private readonly _api;
132
172
  get element(): HTMLElement;
133
173
  get activePanel(): IDockviewPanel | undefined;
134
174
  get locked(): DockviewGroupPanelLocked;
@@ -143,6 +183,10 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
143
183
  get location(): DockviewGroupLocation;
144
184
  set location(value: DockviewGroupLocation);
145
185
  constructor(container: HTMLElement, accessor: DockviewComponent, id: string, options: GroupOptions, groupPanel: DockviewGroupPanel);
186
+ focusContent(): void;
187
+ private _overwriteRenderContainer;
188
+ set renderContainer(value: OverlayRenderContainer | null);
189
+ get renderContainer(): OverlayRenderContainer;
146
190
  initialize(): void;
147
191
  rerender(panel: IDockviewPanel): void;
148
192
  indexOf(panel: IDockviewPanel): number;
@@ -161,17 +205,19 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
161
205
  focus(): void;
162
206
  openPanel(panel: IDockviewPanel, options?: {
163
207
  index?: number;
164
- skipFocus?: boolean;
165
- skipSetPanelActive?: boolean;
208
+ skipSetActive?: boolean;
166
209
  skipSetGroupActive?: boolean;
167
210
  }): void;
168
- removePanel(groupItemOrId: IDockviewPanel | string): IDockviewPanel;
211
+ removePanel(groupItemOrId: IDockviewPanel | string, options?: {
212
+ skipSetActive?: boolean;
213
+ skipSetActiveGroup?: boolean;
214
+ }): IDockviewPanel;
169
215
  closeAllPanels(): void;
170
216
  closePanel(panel: IDockviewPanel): void;
171
217
  private doClose;
172
218
  isPanelActive(panel: IDockviewPanel): boolean;
173
219
  updateActions(element: HTMLElement | undefined): void;
174
- setActive(isGroupActive: boolean, skipFocus?: boolean, force?: boolean): void;
220
+ setActive(isGroupActive: boolean, force?: boolean): void;
175
221
  layout(width: number, height: number): void;
176
222
  private _removePanel;
177
223
  private doRemovePanel;
@@ -184,4 +230,3 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
184
230
  dispose(): void;
185
231
  }
186
232
  export {};
187
- //# sourceMappingURL=dockviewGroupPanelModel.d.ts.map
@@ -1,10 +1,64 @@
1
1
  import { DockviewApi } from '../api/component.api';
2
2
  import { getPanelData } from '../dnd/dataTransfer';
3
3
  import { isAncestor, toggleClass } from '../dom';
4
- import { addDisposableListener, Emitter } from '../events';
4
+ import { addDisposableListener, DockviewEvent, Emitter, } from '../events';
5
5
  import { CompositeDisposable } from '../lifecycle';
6
6
  import { ContentContainer, } from './components/panel/content';
7
7
  import { TabsContainer, } from './components/titlebar/tabsContainer';
8
+ export class DockviewDidDropEvent extends DockviewEvent {
9
+ get nativeEvent() {
10
+ return this.options.nativeEvent;
11
+ }
12
+ get position() {
13
+ return this.options.position;
14
+ }
15
+ get panel() {
16
+ return this.options.panel;
17
+ }
18
+ get group() {
19
+ return this.options.group;
20
+ }
21
+ get api() {
22
+ return this.options.api;
23
+ }
24
+ constructor(options) {
25
+ super();
26
+ this.options = options;
27
+ }
28
+ getData() {
29
+ return this.options.getData();
30
+ }
31
+ }
32
+ export class DockviewWillDropEvent extends DockviewDidDropEvent {
33
+ get kind() {
34
+ return this._kind;
35
+ }
36
+ constructor(options) {
37
+ super(options);
38
+ this._kind = options.kind;
39
+ }
40
+ }
41
+ export class WillShowOverlayLocationEvent {
42
+ get kind() {
43
+ return this._kind;
44
+ }
45
+ get nativeEvent() {
46
+ return this.event.nativeEvent;
47
+ }
48
+ get position() {
49
+ return this.event.position;
50
+ }
51
+ get defaultPrevented() {
52
+ return this.event.defaultPrevented;
53
+ }
54
+ preventDefault() {
55
+ this.event.preventDefault();
56
+ }
57
+ constructor(event, options) {
58
+ this.event = event;
59
+ this._kind = options.kind;
60
+ }
61
+ }
8
62
  export class DockviewGroupPanelModel extends CompositeDisposable {
9
63
  get element() {
10
64
  throw new Error('not supported');
@@ -50,7 +104,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
50
104
  this._location = value;
51
105
  toggleClass(this.container, 'dv-groupview-floating', false);
52
106
  toggleClass(this.container, 'dv-groupview-popout', false);
53
- switch (value) {
107
+ switch (value.type) {
54
108
  case 'grid':
55
109
  this.contentContainer.dropTarget.setTargetZones([
56
110
  'top',
@@ -86,7 +140,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
86
140
  this.groupPanel = groupPanel;
87
141
  this._isGroupActive = false;
88
142
  this._locked = false;
89
- this._location = 'grid';
143
+ this._location = { type: 'grid' };
90
144
  this.mostRecentlyUsed = [];
91
145
  this._onDidChange = new Emitter();
92
146
  this.onDidChange = this._onDidChange.event;
@@ -97,6 +151,10 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
97
151
  this.onMove = this._onMove.event;
98
152
  this._onDidDrop = new Emitter();
99
153
  this.onDidDrop = this._onDidDrop.event;
154
+ this._onWillDrop = new Emitter();
155
+ this.onWillDrop = this._onWillDrop.event;
156
+ this._onWillShowOverlay = new Emitter();
157
+ this.onWillShowOverlay = this._onWillShowOverlay.event;
100
158
  this._onTabDragStart = new Emitter();
101
159
  this.onTabDragStart = this._onTabDragStart.event;
102
160
  this._onGroupDragStart = new Emitter();
@@ -107,46 +165,69 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
107
165
  this.onDidRemovePanel = this._onDidRemovePanel.event;
108
166
  this._onDidActivePanelChange = new Emitter();
109
167
  this.onDidActivePanelChange = this._onDidActivePanelChange.event;
168
+ this._overwriteRenderContainer = null;
110
169
  toggleClass(this.container, 'groupview', true);
170
+ this._api = new DockviewApi(this.accessor);
111
171
  this.tabsContainer = new TabsContainer(this.accessor, this.groupPanel);
112
172
  this.contentContainer = new ContentContainer(this.accessor, this);
113
173
  container.append(this.tabsContainer.element, this.contentContainer.element);
114
174
  this.header.hidden = !!options.hideHeader;
115
175
  this.locked = (_a = options.locked) !== null && _a !== void 0 ? _a : false;
116
- this.addDisposables(this._onTabDragStart, this._onGroupDragStart, this.tabsContainer.onTabDragStart((event) => {
176
+ this.addDisposables(this._onTabDragStart, this._onGroupDragStart, this._onWillShowOverlay, this.tabsContainer.onTabDragStart((event) => {
117
177
  this._onTabDragStart.fire(event);
118
178
  }), this.tabsContainer.onGroupDragStart((event) => {
119
179
  this._onGroupDragStart.fire(event);
120
180
  }), this.tabsContainer.onDrop((event) => {
121
- this.handleDropEvent(event.event, 'center', event.index);
181
+ this.handleDropEvent('header', event.event, 'center', event.index);
122
182
  }), this.contentContainer.onDidFocus(() => {
123
- this.accessor.doSetGroupActive(this.groupPanel, true);
183
+ this.accessor.doSetGroupActive(this.groupPanel);
124
184
  }), this.contentContainer.onDidBlur(() => {
125
185
  // noop
126
186
  }), this.contentContainer.dropTarget.onDrop((event) => {
127
- this.handleDropEvent(event.nativeEvent, event.position);
128
- }), this._onMove, this._onDidChange, this._onDidDrop, this._onDidAddPanel, this._onDidRemovePanel, this._onDidActivePanelChange);
187
+ this.handleDropEvent('content', event.nativeEvent, event.position);
188
+ }), this.tabsContainer.onWillShowOverlay((event) => {
189
+ this._onWillShowOverlay.fire(event);
190
+ }), this.contentContainer.dropTarget.onWillShowOverlay((event) => {
191
+ this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
192
+ kind: 'content',
193
+ }));
194
+ }), this._onMove, this._onDidChange, this._onDidDrop, this._onWillDrop, this._onDidAddPanel, this._onDidRemovePanel, this._onDidActivePanelChange);
195
+ }
196
+ focusContent() {
197
+ this.contentContainer.element.focus();
198
+ }
199
+ set renderContainer(value) {
200
+ this.panels.forEach((panel) => {
201
+ this.renderContainer.detatch(panel);
202
+ });
203
+ this._overwriteRenderContainer = value;
204
+ this.panels.forEach((panel) => {
205
+ this.rerender(panel);
206
+ });
207
+ }
208
+ get renderContainer() {
209
+ var _a;
210
+ return ((_a = this._overwriteRenderContainer) !== null && _a !== void 0 ? _a : this.accessor.overlayRenderContainer);
129
211
  }
130
212
  initialize() {
131
- var _a, _b;
132
- if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.panels) {
213
+ if (this.options.panels) {
133
214
  this.options.panels.forEach((panel) => {
134
215
  this.doAddPanel(panel);
135
216
  });
136
217
  }
137
- if ((_b = this.options) === null || _b === void 0 ? void 0 : _b.activePanel) {
218
+ if (this.options.activePanel) {
138
219
  this.openPanel(this.options.activePanel);
139
220
  }
140
221
  // must be run after the constructor otherwise this.parent may not be
141
222
  // correctly initialized
142
- this.setActive(this.isActive, true, true);
223
+ this.setActive(this.isActive, true);
143
224
  this.updateContainer();
144
225
  if (this.accessor.options.createRightHeaderActionsElement) {
145
226
  this._rightHeaderActions =
146
227
  this.accessor.options.createRightHeaderActionsElement(this.groupPanel);
147
228
  this.addDisposables(this._rightHeaderActions);
148
229
  this._rightHeaderActions.init({
149
- containerApi: new DockviewApi(this.accessor),
230
+ containerApi: this._api,
150
231
  api: this.groupPanel.api,
151
232
  });
152
233
  this.tabsContainer.setRightActionsElement(this._rightHeaderActions.element);
@@ -156,7 +237,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
156
237
  this.accessor.options.createLeftHeaderActionsElement(this.groupPanel);
157
238
  this.addDisposables(this._leftHeaderActions);
158
239
  this._leftHeaderActions.init({
159
- containerApi: new DockviewApi(this.accessor),
240
+ containerApi: this._api,
160
241
  api: this.groupPanel.api,
161
242
  });
162
243
  this.tabsContainer.setLeftActionsElement(this._leftHeaderActions.element);
@@ -166,7 +247,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
166
247
  this.accessor.options.createPrefixHeaderActionsElement(this.groupPanel);
167
248
  this.addDisposables(this._prefixHeaderActions);
168
249
  this._prefixHeaderActions.init({
169
- containerApi: new DockviewApi(this.accessor),
250
+ containerApi: this._api,
170
251
  api: this.groupPanel.api,
171
252
  });
172
253
  this.tabsContainer.setPrefixActionsElement(this._prefixHeaderActions.element);
@@ -246,34 +327,45 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
246
327
  //noop
247
328
  }
248
329
  focus() {
249
- var _a, _b;
250
- (_b = (_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);
330
+ var _a;
331
+ (_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.focus();
251
332
  }
252
333
  openPanel(panel, options = {}) {
334
+ /**
335
+ * set the panel group
336
+ * add the panel
337
+ * check if group active
338
+ * check if panel active
339
+ */
253
340
  if (typeof options.index !== 'number' ||
254
341
  options.index > this.panels.length) {
255
342
  options.index = this.panels.length;
256
343
  }
257
- const skipSetPanelActive = !!options.skipSetPanelActive;
258
- const skipSetGroupActive = !!options.skipSetGroupActive;
344
+ const skipSetActive = !!options.skipSetActive;
259
345
  // ensure the group is updated before we fire any events
260
- panel.updateParentGroup(this.groupPanel, true);
346
+ panel.updateParentGroup(this.groupPanel, {
347
+ skipSetActive: options.skipSetActive,
348
+ });
349
+ this.doAddPanel(panel, options.index, {
350
+ skipSetActive: skipSetActive,
351
+ });
261
352
  if (this._activePanel === panel) {
262
- if (!skipSetGroupActive) {
263
- this.accessor.doSetGroupActive(this.groupPanel);
264
- }
353
+ this.contentContainer.renderPanel(panel, { asActive: true });
265
354
  return;
266
355
  }
267
- this.doAddPanel(panel, options.index, skipSetPanelActive);
268
- if (!skipSetPanelActive) {
356
+ if (!skipSetActive) {
269
357
  this.doSetActivePanel(panel);
270
358
  }
271
- if (!skipSetGroupActive) {
272
- this.accessor.doSetGroupActive(this.groupPanel, !!options.skipFocus);
359
+ if (!options.skipSetGroupActive) {
360
+ this.accessor.doSetGroupActive(this.groupPanel);
361
+ }
362
+ if (!options.skipSetActive) {
363
+ this.updateContainer();
273
364
  }
274
- this.updateContainer();
275
365
  }
276
- removePanel(groupItemOrId) {
366
+ removePanel(groupItemOrId, options = {
367
+ skipSetActive: false,
368
+ }) {
277
369
  const id = typeof groupItemOrId === 'string'
278
370
  ? groupItemOrId
279
371
  : groupItemOrId.id;
@@ -281,7 +373,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
281
373
  if (!panelToRemove) {
282
374
  throw new Error('invalid operation');
283
375
  }
284
- return this._removePanel(panelToRemove);
376
+ return this._removePanel(panelToRemove, options);
285
377
  }
286
378
  closeAllPanels() {
287
379
  if (this.panels.length > 0) {
@@ -307,12 +399,8 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
307
399
  updateActions(element) {
308
400
  this.tabsContainer.setRightActionsElement(element);
309
401
  }
310
- setActive(isGroupActive, skipFocus = false, force = false) {
311
- var _a, _b, _c, _d;
402
+ setActive(isGroupActive, force = false) {
312
403
  if (!force && this.isActive === isGroupActive) {
313
- if (!skipFocus) {
314
- (_b = (_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);
315
- }
316
404
  return;
317
405
  }
318
406
  this._isGroupActive = isGroupActive;
@@ -323,11 +411,6 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
323
411
  this.doSetActivePanel(this.panels[0]);
324
412
  }
325
413
  this.updateContainer();
326
- if (isGroupActive) {
327
- if (!skipFocus) {
328
- (_d = (_c = this._activePanel) === null || _c === void 0 ? void 0 : _c.focus) === null || _d === void 0 ? void 0 : _d.call(_c);
329
- }
330
- }
331
414
  }
332
415
  layout(width, height) {
333
416
  var _a;
@@ -338,17 +421,22 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
338
421
  this._activePanel.layout(this._width, this._height);
339
422
  }
340
423
  }
341
- _removePanel(panel) {
424
+ _removePanel(panel, options) {
342
425
  const isActivePanel = this._activePanel === panel;
343
426
  this.doRemovePanel(panel);
344
427
  if (isActivePanel && this.panels.length > 0) {
345
428
  const nextPanel = this.mostRecentlyUsed[0];
346
- this.openPanel(nextPanel);
429
+ this.openPanel(nextPanel, {
430
+ skipSetActive: options.skipSetActive,
431
+ skipSetGroupActive: options.skipSetActiveGroup,
432
+ });
347
433
  }
348
434
  if (this._activePanel && this.panels.length === 0) {
349
435
  this.doSetActivePanel(undefined);
350
436
  }
351
- this.updateContainer();
437
+ if (!options.skipSetActive) {
438
+ this.updateContainer();
439
+ }
352
440
  return panel;
353
441
  }
354
442
  doRemovePanel(panel) {
@@ -363,13 +451,13 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
363
451
  }
364
452
  this._onDidRemovePanel.fire({ panel });
365
453
  }
366
- doAddPanel(panel, index = this.panels.length, skipSetActive = false) {
454
+ doAddPanel(panel, index = this.panels.length, options = { skipSetActive: false }) {
367
455
  const existingPanel = this._panels.indexOf(panel);
368
456
  const hasExistingPanel = existingPanel > -1;
369
457
  this.tabsContainer.show();
370
458
  this.contentContainer.show();
371
459
  this.tabsContainer.openPanel(panel, index);
372
- if (!skipSetActive) {
460
+ if (!options.skipSetActive) {
373
461
  this.contentContainer.openPanel(panel);
374
462
  }
375
463
  if (hasExistingPanel) {
@@ -381,12 +469,17 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
381
469
  this._onDidAddPanel.fire({ panel });
382
470
  }
383
471
  doSetActivePanel(panel) {
472
+ if (this._activePanel === panel) {
473
+ return;
474
+ }
384
475
  this._activePanel = panel;
385
476
  if (panel) {
386
477
  this.tabsContainer.setActivePanel(panel);
387
478
  panel.layout(this._width, this._height);
388
479
  this.updateMru(panel);
389
- this._onDidActivePanelChange.fire({ panel });
480
+ this._onDidActivePanelChange.fire({
481
+ panel,
482
+ });
390
483
  }
391
484
  }
392
485
  updateMru(panel) {
@@ -398,11 +491,11 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
398
491
  updateContainer() {
399
492
  var _a, _b;
400
493
  toggleClass(this.container, 'empty', this.isEmpty);
401
- this.panels.forEach((panel) => panel.updateParentGroup(this.groupPanel, this.isActive));
494
+ this.panels.forEach((panel) => panel.runEvents());
402
495
  if (this.isEmpty && !this.watermark) {
403
496
  const watermark = this.accessor.createWatermarkComponent();
404
497
  watermark.init({
405
- containerApi: new DockviewApi(this.accessor),
498
+ containerApi: this._api,
406
499
  group: this.groupPanel,
407
500
  });
408
501
  this.watermark = watermark;
@@ -435,10 +528,32 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
435
528
  }
436
529
  return false;
437
530
  }
438
- handleDropEvent(event, position, index) {
531
+ handleDropEvent(type, event, position, index) {
439
532
  if (this.locked === 'no-drop-target') {
440
533
  return;
441
534
  }
535
+ function getKind() {
536
+ switch (type) {
537
+ case 'header':
538
+ return typeof index === 'number' ? 'tab' : 'header_space';
539
+ case 'content':
540
+ return 'content';
541
+ }
542
+ }
543
+ const panel = typeof index === 'number' ? this.panels[index] : undefined;
544
+ const willDropEvent = new DockviewWillDropEvent({
545
+ nativeEvent: event,
546
+ position,
547
+ panel,
548
+ getData: () => getPanelData(),
549
+ kind: getKind(),
550
+ group: this.groupPanel,
551
+ api: this._api,
552
+ });
553
+ this._onWillDrop.fire(willDropEvent);
554
+ if (willDropEvent.defaultPrevented) {
555
+ return;
556
+ }
442
557
  const data = getPanelData();
443
558
  if (data && data.viewId === this.accessor.id) {
444
559
  if (data.panelId === null) {
@@ -471,12 +586,14 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
471
586
  });
472
587
  }
473
588
  else {
474
- this._onDidDrop.fire({
589
+ this._onDidDrop.fire(new DockviewDidDropEvent({
475
590
  nativeEvent: event,
476
591
  position,
477
- index,
592
+ panel,
478
593
  getData: () => getPanelData(),
479
- });
594
+ group: this.groupPanel,
595
+ api: this._api,
596
+ }));
480
597
  }
481
598
  }
482
599
  dispose() {
@@ -484,6 +601,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
484
601
  super.dispose();
485
602
  (_a = this.watermark) === null || _a === void 0 ? void 0 : _a.element.remove();
486
603
  (_c = (_b = this.watermark) === null || _b === void 0 ? void 0 : _b.dispose) === null || _c === void 0 ? void 0 : _c.call(_b);
604
+ this.watermark = undefined;
487
605
  for (const panel of this.panels) {
488
606
  panel.dispose();
489
607
  }
@@ -491,4 +609,3 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
491
609
  this.contentContainer.dispose();
492
610
  }
493
611
  }
494
- //# sourceMappingURL=dockviewGroupPanelModel.js.map