dockview-core 1.9.2 → 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 +6 -7
  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 +577 -197
  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 +226 -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 +7 -3
  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 +1261 -526
  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 +1260 -525
  134. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  135. package/dist/dockview-core.cjs.js +1261 -526
  136. package/dist/dockview-core.cjs.js.map +1 -1
  137. package/dist/dockview-core.esm.js +1259 -527
  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 +1261 -526
  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 +1260 -525
  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 +6 -7
  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 +520 -162
  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 +169 -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 +7 -3
  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,35 +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
- }
265
353
  this.contentContainer.renderPanel(panel, { asActive: true });
266
354
  return;
267
355
  }
268
- this.doAddPanel(panel, options.index, skipSetPanelActive);
269
- if (!skipSetPanelActive) {
356
+ if (!skipSetActive) {
270
357
  this.doSetActivePanel(panel);
271
358
  }
272
- if (!skipSetGroupActive) {
273
- 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();
274
364
  }
275
- this.updateContainer();
276
365
  }
277
- removePanel(groupItemOrId) {
366
+ removePanel(groupItemOrId, options = {
367
+ skipSetActive: false,
368
+ }) {
278
369
  const id = typeof groupItemOrId === 'string'
279
370
  ? groupItemOrId
280
371
  : groupItemOrId.id;
@@ -282,7 +373,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
282
373
  if (!panelToRemove) {
283
374
  throw new Error('invalid operation');
284
375
  }
285
- return this._removePanel(panelToRemove);
376
+ return this._removePanel(panelToRemove, options);
286
377
  }
287
378
  closeAllPanels() {
288
379
  if (this.panels.length > 0) {
@@ -308,12 +399,8 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
308
399
  updateActions(element) {
309
400
  this.tabsContainer.setRightActionsElement(element);
310
401
  }
311
- setActive(isGroupActive, skipFocus = false, force = false) {
312
- var _a, _b, _c, _d;
402
+ setActive(isGroupActive, force = false) {
313
403
  if (!force && this.isActive === isGroupActive) {
314
- if (!skipFocus) {
315
- (_b = (_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);
316
- }
317
404
  return;
318
405
  }
319
406
  this._isGroupActive = isGroupActive;
@@ -324,11 +411,6 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
324
411
  this.doSetActivePanel(this.panels[0]);
325
412
  }
326
413
  this.updateContainer();
327
- if (isGroupActive) {
328
- if (!skipFocus) {
329
- (_d = (_c = this._activePanel) === null || _c === void 0 ? void 0 : _c.focus) === null || _d === void 0 ? void 0 : _d.call(_c);
330
- }
331
- }
332
414
  }
333
415
  layout(width, height) {
334
416
  var _a;
@@ -339,17 +421,22 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
339
421
  this._activePanel.layout(this._width, this._height);
340
422
  }
341
423
  }
342
- _removePanel(panel) {
424
+ _removePanel(panel, options) {
343
425
  const isActivePanel = this._activePanel === panel;
344
426
  this.doRemovePanel(panel);
345
427
  if (isActivePanel && this.panels.length > 0) {
346
428
  const nextPanel = this.mostRecentlyUsed[0];
347
- this.openPanel(nextPanel);
429
+ this.openPanel(nextPanel, {
430
+ skipSetActive: options.skipSetActive,
431
+ skipSetGroupActive: options.skipSetActiveGroup,
432
+ });
348
433
  }
349
434
  if (this._activePanel && this.panels.length === 0) {
350
435
  this.doSetActivePanel(undefined);
351
436
  }
352
- this.updateContainer();
437
+ if (!options.skipSetActive) {
438
+ this.updateContainer();
439
+ }
353
440
  return panel;
354
441
  }
355
442
  doRemovePanel(panel) {
@@ -364,13 +451,13 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
364
451
  }
365
452
  this._onDidRemovePanel.fire({ panel });
366
453
  }
367
- doAddPanel(panel, index = this.panels.length, skipSetActive = false) {
454
+ doAddPanel(panel, index = this.panels.length, options = { skipSetActive: false }) {
368
455
  const existingPanel = this._panels.indexOf(panel);
369
456
  const hasExistingPanel = existingPanel > -1;
370
457
  this.tabsContainer.show();
371
458
  this.contentContainer.show();
372
459
  this.tabsContainer.openPanel(panel, index);
373
- if (!skipSetActive) {
460
+ if (!options.skipSetActive) {
374
461
  this.contentContainer.openPanel(panel);
375
462
  }
376
463
  if (hasExistingPanel) {
@@ -382,12 +469,17 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
382
469
  this._onDidAddPanel.fire({ panel });
383
470
  }
384
471
  doSetActivePanel(panel) {
472
+ if (this._activePanel === panel) {
473
+ return;
474
+ }
385
475
  this._activePanel = panel;
386
476
  if (panel) {
387
477
  this.tabsContainer.setActivePanel(panel);
388
478
  panel.layout(this._width, this._height);
389
479
  this.updateMru(panel);
390
- this._onDidActivePanelChange.fire({ panel });
480
+ this._onDidActivePanelChange.fire({
481
+ panel,
482
+ });
391
483
  }
392
484
  }
393
485
  updateMru(panel) {
@@ -399,11 +491,11 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
399
491
  updateContainer() {
400
492
  var _a, _b;
401
493
  toggleClass(this.container, 'empty', this.isEmpty);
402
- this.panels.forEach((panel) => panel.updateParentGroup(this.groupPanel, this.isActive));
494
+ this.panels.forEach((panel) => panel.runEvents());
403
495
  if (this.isEmpty && !this.watermark) {
404
496
  const watermark = this.accessor.createWatermarkComponent();
405
497
  watermark.init({
406
- containerApi: new DockviewApi(this.accessor),
498
+ containerApi: this._api,
407
499
  group: this.groupPanel,
408
500
  });
409
501
  this.watermark = watermark;
@@ -436,10 +528,32 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
436
528
  }
437
529
  return false;
438
530
  }
439
- handleDropEvent(event, position, index) {
531
+ handleDropEvent(type, event, position, index) {
440
532
  if (this.locked === 'no-drop-target') {
441
533
  return;
442
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
+ }
443
557
  const data = getPanelData();
444
558
  if (data && data.viewId === this.accessor.id) {
445
559
  if (data.panelId === null) {
@@ -472,12 +586,14 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
472
586
  });
473
587
  }
474
588
  else {
475
- this._onDidDrop.fire({
589
+ this._onDidDrop.fire(new DockviewDidDropEvent({
476
590
  nativeEvent: event,
477
591
  position,
478
- index,
592
+ panel,
479
593
  getData: () => getPanelData(),
480
- });
594
+ group: this.groupPanel,
595
+ api: this._api,
596
+ }));
481
597
  }
482
598
  }
483
599
  dispose() {
@@ -485,6 +601,7 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
485
601
  super.dispose();
486
602
  (_a = this.watermark) === null || _a === void 0 ? void 0 : _a.element.remove();
487
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;
488
605
  for (const panel of this.panels) {
489
606
  panel.dispose();
490
607
  }
@@ -492,4 +609,3 @@ export class DockviewGroupPanelModel extends CompositeDisposable {
492
609
  this.contentContainer.dispose();
493
610
  }
494
611
  }
495
- //# sourceMappingURL=dockviewGroupPanelModel.js.map