dockview-core 7.0.3 → 8.0.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 (374) hide show
  1. package/LICENCE.md +21 -0
  2. package/README.md +17 -86
  3. package/dist/cjs/api/component.api.d.ts +100 -9
  4. package/dist/cjs/api/dockviewGroupPanelApi.d.ts +45 -1
  5. package/dist/cjs/api/dockviewPanelApi.d.ts +21 -0
  6. package/dist/cjs/dismissableLayer.d.ts +57 -0
  7. package/dist/cjs/dnd/backend.d.ts +2 -2
  8. package/dist/cjs/dnd/dropTargetAnchorContainer.d.ts +12 -0
  9. package/dist/cjs/dnd/droptarget.d.ts +94 -0
  10. package/dist/cjs/dnd/ghost.d.ts +1 -0
  11. package/dist/cjs/dnd/pointer/longPress.d.ts +2 -2
  12. package/dist/cjs/dnd/pointer/pointerDragController.d.ts +5 -2
  13. package/dist/cjs/dnd/pointer/pointerDragSource.d.ts +1 -1
  14. package/dist/cjs/dnd/pointer/pointerDropTarget.d.ts +30 -1
  15. package/dist/cjs/dnd/pointer/pointerGhost.d.ts +1 -1
  16. package/dist/cjs/dockview/accessibilityMessages.d.ts +6 -0
  17. package/dist/cjs/dockview/advancedDnDService.d.ts +46 -0
  18. package/dist/cjs/dockview/components/panel/content.d.ts +1 -1
  19. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +2 -0
  20. package/dist/cjs/dockview/components/tab/tab.d.ts +2 -0
  21. package/dist/cjs/dockview/components/titlebar/floatingTitleBar.d.ts +2 -2
  22. package/dist/cjs/dockview/components/titlebar/groupDragSource.d.ts +1 -1
  23. package/dist/cjs/dockview/components/titlebar/tabGroupChip.d.ts +1 -1
  24. package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.d.ts +73 -2
  25. package/dist/cjs/dockview/components/titlebar/tabGroups.d.ts +1 -1
  26. package/dist/cjs/dockview/components/titlebar/tabReorderController.d.ts +295 -0
  27. package/dist/cjs/dockview/components/titlebar/tabs.d.ts +120 -50
  28. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +48 -0
  29. package/dist/cjs/dockview/dndCapabilities.d.ts +1 -1
  30. package/dist/cjs/dockview/dockviewComponent.d.ts +303 -19
  31. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +5 -0
  32. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +52 -2
  33. package/dist/cjs/dockview/dockviewPanel.d.ts +12 -0
  34. package/dist/cjs/dockview/dockviewShell.d.ts +48 -24
  35. package/dist/cjs/dockview/edgeGroupService.d.ts +20 -0
  36. package/dist/cjs/dockview/events.d.ts +6 -0
  37. package/dist/cjs/dockview/liveRegionService.d.ts +18 -5
  38. package/dist/cjs/dockview/moduleContracts.d.ts +480 -14
  39. package/dist/cjs/dockview/modules.d.ts +101 -22
  40. package/dist/cjs/dockview/options.d.ts +337 -30
  41. package/dist/cjs/dockview/optionsModules.d.ts +73 -0
  42. package/dist/cjs/dockview/popoutWindowService.d.ts +15 -10
  43. package/dist/cjs/dockview/rootDropTargetService.d.ts +11 -0
  44. package/dist/cjs/dockview/tabGroupAccent.d.ts +1 -1
  45. package/dist/cjs/dockview/tabGroupChipsService.d.ts +10 -0
  46. package/dist/cjs/dockview/theme.d.ts +2 -2
  47. package/dist/cjs/dockview/types.d.ts +3 -0
  48. package/dist/cjs/dom.d.ts +9 -1
  49. package/dist/cjs/gridview/baseComponentGridview.d.ts +2 -2
  50. package/dist/cjs/gridview/gridview.d.ts +2 -0
  51. package/dist/cjs/index.d.ts +35 -29
  52. package/dist/cjs/lifecycle.d.ts +1 -0
  53. package/dist/cjs/overlay/overlay.d.ts +4 -2
  54. package/dist/cjs/overlay/overlayRenderContainer.d.ts +8 -0
  55. package/dist/cjs/paneview/paneview.d.ts +2 -1
  56. package/dist/cjs/paneview/paneviewComponent.d.ts +3 -0
  57. package/dist/cjs/paneview/paneviewPanel.d.ts +5 -0
  58. package/dist/cjs/svg.d.ts +1 -0
  59. package/dist/cjs/types.d.ts +8 -0
  60. package/dist/dockview-core.js +18391 -19679
  61. package/dist/dockview-core.min.js +4138 -6
  62. package/dist/dockview-core.min.noStyle.js +6 -7
  63. package/dist/dockview-core.noStyle.js +18390 -19656
  64. package/dist/package/main.cjs.js +18002 -19268
  65. package/dist/package/main.cjs.min.js +6 -6
  66. package/dist/package/main.esm.min.mjs +6 -6
  67. package/dist/package/main.esm.mjs +17959 -19260
  68. package/package.json +81 -77
  69. package/dist/cjs/api/component.api.js +0 -1242
  70. package/dist/cjs/api/dockviewGroupPanelApi.js +0 -200
  71. package/dist/cjs/api/dockviewPanelApi.js +0 -172
  72. package/dist/cjs/api/entryPoints.js +0 -27
  73. package/dist/cjs/api/gridviewPanelApi.js +0 -45
  74. package/dist/cjs/api/panelApi.js +0 -133
  75. package/dist/cjs/api/paneviewPanelApi.js +0 -57
  76. package/dist/cjs/api/splitviewPanelApi.js +0 -47
  77. package/dist/cjs/array.js +0 -66
  78. package/dist/cjs/constants.js +0 -11
  79. package/dist/cjs/dnd/backend.js +0 -171
  80. package/dist/cjs/dnd/dataTransfer.js +0 -100
  81. package/dist/cjs/dnd/dnd.js +0 -74
  82. package/dist/cjs/dnd/dropOverlay.js +0 -197
  83. package/dist/cjs/dnd/dropTargetAnchorContainer.js +0 -104
  84. package/dist/cjs/dnd/droptarget.js +0 -362
  85. package/dist/cjs/dnd/ghost.js +0 -17
  86. package/dist/cjs/dnd/pointer/index.js +0 -13
  87. package/dist/cjs/dnd/pointer/longPress.js +0 -151
  88. package/dist/cjs/dnd/pointer/pointerDragController.js +0 -243
  89. package/dist/cjs/dnd/pointer/pointerDragSource.js +0 -197
  90. package/dist/cjs/dnd/pointer/pointerDropTarget.js +0 -198
  91. package/dist/cjs/dnd/pointer/pointerGhost.js +0 -44
  92. package/dist/cjs/dnd/pointer/types.js +0 -2
  93. package/dist/cjs/dockview/accessibilityMessages.js +0 -51
  94. package/dist/cjs/dockview/allModules.js +0 -25
  95. package/dist/cjs/dockview/components/panel/content.js +0 -213
  96. package/dist/cjs/dockview/components/popupService.js +0 -132
  97. package/dist/cjs/dockview/components/tab/defaultTab.js +0 -70
  98. package/dist/cjs/dockview/components/tab/tab.js +0 -281
  99. package/dist/cjs/dockview/components/titlebar/floatingTitleBar.js +0 -95
  100. package/dist/cjs/dockview/components/titlebar/groupDragSource.js +0 -218
  101. package/dist/cjs/dockview/components/titlebar/tabGroupChip.js +0 -104
  102. package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.js +0 -477
  103. package/dist/cjs/dockview/components/titlebar/tabGroups.js +0 -854
  104. package/dist/cjs/dockview/components/titlebar/tabOverflowControl.js +0 -19
  105. package/dist/cjs/dockview/components/titlebar/tabs.js +0 -2016
  106. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +0 -458
  107. package/dist/cjs/dockview/components/titlebar/voidContainer.js +0 -120
  108. package/dist/cjs/dockview/components/watermark/watermark.js +0 -40
  109. package/dist/cjs/dockview/deserializer.js +0 -39
  110. package/dist/cjs/dockview/dndCapabilities.js +0 -39
  111. package/dist/cjs/dockview/dockviewComponent.js +0 -3896
  112. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +0 -70
  113. package/dist/cjs/dockview/dockviewGroupPanel.js +0 -204
  114. package/dist/cjs/dockview/dockviewGroupPanelModel.js +0 -1514
  115. package/dist/cjs/dockview/dockviewPanel.js +0 -265
  116. package/dist/cjs/dockview/dockviewPanelModel.js +0 -105
  117. package/dist/cjs/dockview/dockviewShell.js +0 -744
  118. package/dist/cjs/dockview/edgeGroupService.js +0 -128
  119. package/dist/cjs/dockview/events.js +0 -67
  120. package/dist/cjs/dockview/floatingGroupService.js +0 -231
  121. package/dist/cjs/dockview/framework.js +0 -2
  122. package/dist/cjs/dockview/headerActionsService.js +0 -149
  123. package/dist/cjs/dockview/liveRegionService.js +0 -185
  124. package/dist/cjs/dockview/moduleContracts.js +0 -2
  125. package/dist/cjs/dockview/modules.js +0 -304
  126. package/dist/cjs/dockview/options.js +0 -103
  127. package/dist/cjs/dockview/popoutWindowService.js +0 -261
  128. package/dist/cjs/dockview/rootDropTargetService.js +0 -87
  129. package/dist/cjs/dockview/strictEventsSequencing.js +0 -63
  130. package/dist/cjs/dockview/tabGroup.js +0 -219
  131. package/dist/cjs/dockview/tabGroupAccent.js +0 -126
  132. package/dist/cjs/dockview/theme.js +0 -139
  133. package/dist/cjs/dockview/types.js +0 -2
  134. package/dist/cjs/dockview/validate.js +0 -76
  135. package/dist/cjs/dockview/watermarkService.js +0 -61
  136. package/dist/cjs/dom.js +0 -543
  137. package/dist/cjs/events.js +0 -296
  138. package/dist/cjs/framwork.js +0 -2
  139. package/dist/cjs/gridview/baseComponentGridview.js +0 -330
  140. package/dist/cjs/gridview/basePanelView.js +0 -162
  141. package/dist/cjs/gridview/branchNode.js +0 -372
  142. package/dist/cjs/gridview/gridview.js +0 -776
  143. package/dist/cjs/gridview/gridviewComponent.js +0 -363
  144. package/dist/cjs/gridview/gridviewPanel.js +0 -249
  145. package/dist/cjs/gridview/leafNode.js +0 -169
  146. package/dist/cjs/gridview/options.js +0 -17
  147. package/dist/cjs/gridview/types.js +0 -2
  148. package/dist/cjs/index.js +0 -105
  149. package/dist/cjs/lifecycle.js +0 -80
  150. package/dist/cjs/math.js +0 -38
  151. package/dist/cjs/overlay/overlay.js +0 -602
  152. package/dist/cjs/overlay/overlayRenderContainer.js +0 -309
  153. package/dist/cjs/panel/types.js +0 -2
  154. package/dist/cjs/paneview/defaultPaneviewHeader.js +0 -92
  155. package/dist/cjs/paneview/draggablePaneviewPanel.js +0 -141
  156. package/dist/cjs/paneview/options.js +0 -44
  157. package/dist/cjs/paneview/paneview.js +0 -203
  158. package/dist/cjs/paneview/paneviewComponent.js +0 -430
  159. package/dist/cjs/paneview/paneviewPanel.js +0 -275
  160. package/dist/cjs/popoutWindow.js +0 -244
  161. package/dist/cjs/resizable.js +0 -97
  162. package/dist/cjs/scrollbar.js +0 -169
  163. package/dist/cjs/splitview/options.js +0 -19
  164. package/dist/cjs/splitview/splitview.js +0 -999
  165. package/dist/cjs/splitview/splitviewComponent.js +0 -401
  166. package/dist/cjs/splitview/splitviewPanel.js +0 -179
  167. package/dist/cjs/splitview/viewItem.js +0 -119
  168. package/dist/cjs/svg.js +0 -43
  169. package/dist/cjs/types.js +0 -2
  170. package/dist/dockview-core.min.js.map +0 -1
  171. package/dist/dockview-core.min.noStyle.js.map +0 -1
  172. package/dist/esm/api/component.api.d.ts +0 -640
  173. package/dist/esm/api/component.api.js +0 -887
  174. package/dist/esm/api/dockviewGroupPanelApi.d.ts +0 -109
  175. package/dist/esm/api/dockviewGroupPanelApi.js +0 -155
  176. package/dist/esm/api/dockviewPanelApi.d.ts +0 -84
  177. package/dist/esm/api/dockviewPanelApi.js +0 -124
  178. package/dist/esm/api/entryPoints.d.ts +0 -9
  179. package/dist/esm/api/entryPoints.js +0 -21
  180. package/dist/esm/api/gridviewPanelApi.d.ts +0 -37
  181. package/dist/esm/api/gridviewPanelApi.js +0 -23
  182. package/dist/esm/api/panelApi.d.ts +0 -100
  183. package/dist/esm/api/panelApi.js +0 -87
  184. package/dist/esm/api/paneviewPanelApi.d.ts +0 -26
  185. package/dist/esm/api/paneviewPanelApi.js +0 -27
  186. package/dist/esm/api/splitviewPanelApi.d.ts +0 -32
  187. package/dist/esm/api/splitviewPanelApi.js +0 -25
  188. package/dist/esm/array.d.ts +0 -13
  189. package/dist/esm/array.js +0 -57
  190. package/dist/esm/constants.d.ts +0 -8
  191. package/dist/esm/constants.js +0 -8
  192. package/dist/esm/dnd/backend.d.ts +0 -70
  193. package/dist/esm/dnd/backend.js +0 -148
  194. package/dist/esm/dnd/dataTransfer.d.ts +0 -31
  195. package/dist/esm/dnd/dataTransfer.js +0 -67
  196. package/dist/esm/dnd/dnd.d.ts +0 -32
  197. package/dist/esm/dnd/dnd.js +0 -51
  198. package/dist/esm/dnd/dropOverlay.d.ts +0 -20
  199. package/dist/esm/dnd/dropOverlay.js +0 -192
  200. package/dist/esm/dnd/dropTargetAnchorContainer.d.ts +0 -16
  201. package/dist/esm/dnd/dropTargetAnchorContainer.js +0 -73
  202. package/dist/esm/dnd/droptarget.d.ts +0 -116
  203. package/dist/esm/dnd/droptarget.js +0 -316
  204. package/dist/esm/dnd/ghost.d.ts +0 -4
  205. package/dist/esm/dnd/ghost.js +0 -14
  206. package/dist/esm/dnd/pointer/index.d.ts +0 -11
  207. package/dist/esm/dnd/pointer/index.js +0 -5
  208. package/dist/esm/dnd/pointer/longPress.d.ts +0 -32
  209. package/dist/esm/dnd/pointer/longPress.js +0 -127
  210. package/dist/esm/dnd/pointer/pointerDragController.d.ts +0 -60
  211. package/dist/esm/dnd/pointer/pointerDragController.js +0 -193
  212. package/dist/esm/dnd/pointer/pointerDragSource.d.ts +0 -61
  213. package/dist/esm/dnd/pointer/pointerDragSource.js +0 -173
  214. package/dist/esm/dnd/pointer/pointerDropTarget.d.ts +0 -39
  215. package/dist/esm/dnd/pointer/pointerDropTarget.js +0 -168
  216. package/dist/esm/dnd/pointer/pointerGhost.d.ts +0 -30
  217. package/dist/esm/dnd/pointer/pointerGhost.js +0 -39
  218. package/dist/esm/dnd/pointer/types.d.ts +0 -16
  219. package/dist/esm/dnd/pointer/types.js +0 -1
  220. package/dist/esm/dockview/accessibilityMessages.d.ts +0 -32
  221. package/dist/esm/dockview/accessibilityMessages.js +0 -30
  222. package/dist/esm/dockview/allModules.d.ts +0 -8
  223. package/dist/esm/dockview/allModules.js +0 -22
  224. package/dist/esm/dockview/components/panel/content.d.ts +0 -54
  225. package/dist/esm/dockview/components/panel/content.js +0 -185
  226. package/dist/esm/dockview/components/popupService.d.ts +0 -21
  227. package/dist/esm/dockview/components/popupService.js +0 -108
  228. package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -12
  229. package/dist/esm/dockview/components/tab/defaultTab.js +0 -43
  230. package/dist/esm/dockview/components/tab/tab.d.ts +0 -44
  231. package/dist/esm/dockview/components/tab/tab.js +0 -242
  232. package/dist/esm/dockview/components/titlebar/floatingTitleBar.d.ts +0 -34
  233. package/dist/esm/dockview/components/titlebar/floatingTitleBar.js +0 -65
  234. package/dist/esm/dockview/components/titlebar/groupDragSource.d.ts +0 -51
  235. package/dist/esm/dockview/components/titlebar/groupDragSource.js +0 -178
  236. package/dist/esm/dockview/components/titlebar/tabGroupChip.d.ts +0 -37
  237. package/dist/esm/dockview/components/titlebar/tabGroupChip.js +0 -77
  238. package/dist/esm/dockview/components/titlebar/tabGroupIndicator.d.ts +0 -72
  239. package/dist/esm/dockview/components/titlebar/tabGroupIndicator.js +0 -360
  240. package/dist/esm/dockview/components/titlebar/tabGroups.d.ts +0 -107
  241. package/dist/esm/dockview/components/titlebar/tabGroups.js +0 -621
  242. package/dist/esm/dockview/components/titlebar/tabOverflowControl.d.ts +0 -8
  243. package/dist/esm/dockview/components/titlebar/tabOverflowControl.js +0 -16
  244. package/dist/esm/dockview/components/titlebar/tabs.d.ts +0 -167
  245. package/dist/esm/dockview/components/titlebar/tabs.js +0 -1653
  246. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +0 -104
  247. package/dist/esm/dockview/components/titlebar/tabsContainer.js +0 -359
  248. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +0 -21
  249. package/dist/esm/dockview/components/titlebar/voidContainer.js +0 -92
  250. package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -8
  251. package/dist/esm/dockview/components/watermark/watermark.js +0 -14
  252. package/dist/esm/dockview/deserializer.d.ts +0 -12
  253. package/dist/esm/dockview/deserializer.js +0 -34
  254. package/dist/esm/dockview/dndCapabilities.d.ts +0 -19
  255. package/dist/esm/dockview/dndCapabilities.js +0 -36
  256. package/dist/esm/dockview/dockviewComponent.d.ts +0 -626
  257. package/dist/esm/dockview/dockviewComponent.js +0 -3214
  258. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +0 -45
  259. package/dist/esm/dockview/dockviewFloatingGroupPanel.js +0 -44
  260. package/dist/esm/dockview/dockviewGroupPanel.d.ts +0 -35
  261. package/dist/esm/dockview/dockviewGroupPanel.js +0 -142
  262. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +0 -358
  263. package/dist/esm/dockview/dockviewGroupPanelModel.js +0 -1180
  264. package/dist/esm/dockview/dockviewPanel.d.ts +0 -69
  265. package/dist/esm/dockview/dockviewPanel.js +0 -178
  266. package/dist/esm/dockview/dockviewPanelModel.d.ts +0 -37
  267. package/dist/esm/dockview/dockviewPanelModel.js +0 -81
  268. package/dist/esm/dockview/dockviewShell.d.ts +0 -150
  269. package/dist/esm/dockview/dockviewShell.js +0 -678
  270. package/dist/esm/dockview/edgeGroupService.d.ts +0 -38
  271. package/dist/esm/dockview/edgeGroupService.js +0 -63
  272. package/dist/esm/dockview/events.d.ts +0 -38
  273. package/dist/esm/dockview/events.js +0 -34
  274. package/dist/esm/dockview/floatingGroupService.d.ts +0 -37
  275. package/dist/esm/dockview/floatingGroupService.js +0 -150
  276. package/dist/esm/dockview/framework.d.ts +0 -65
  277. package/dist/esm/dockview/framework.js +0 -1
  278. package/dist/esm/dockview/headerActionsService.d.ts +0 -32
  279. package/dist/esm/dockview/headerActionsService.js +0 -86
  280. package/dist/esm/dockview/liveRegionService.d.ts +0 -53
  281. package/dist/esm/dockview/liveRegionService.js +0 -159
  282. package/dist/esm/dockview/moduleContracts.d.ts +0 -119
  283. package/dist/esm/dockview/moduleContracts.js +0 -1
  284. package/dist/esm/dockview/modules.d.ts +0 -110
  285. package/dist/esm/dockview/modules.js +0 -170
  286. package/dist/esm/dockview/options.d.ts +0 -474
  287. package/dist/esm/dockview/options.js +0 -77
  288. package/dist/esm/dockview/popoutWindowService.d.ts +0 -95
  289. package/dist/esm/dockview/popoutWindowService.js +0 -175
  290. package/dist/esm/dockview/rootDropTargetService.d.ts +0 -35
  291. package/dist/esm/dockview/rootDropTargetService.js +0 -82
  292. package/dist/esm/dockview/strictEventsSequencing.d.ts +0 -7
  293. package/dist/esm/dockview/strictEventsSequencing.js +0 -41
  294. package/dist/esm/dockview/tabGroup.d.ts +0 -99
  295. package/dist/esm/dockview/tabGroup.js +0 -144
  296. package/dist/esm/dockview/tabGroupAccent.d.ts +0 -65
  297. package/dist/esm/dockview/tabGroupAccent.js +0 -114
  298. package/dist/esm/dockview/theme.d.ts +0 -86
  299. package/dist/esm/dockview/theme.js +0 -136
  300. package/dist/esm/dockview/types.d.ts +0 -53
  301. package/dist/esm/dockview/types.js +0 -1
  302. package/dist/esm/dockview/validate.d.ts +0 -0
  303. package/dist/esm/dockview/validate.js +0 -76
  304. package/dist/esm/dockview/watermarkService.d.ts +0 -30
  305. package/dist/esm/dockview/watermarkService.js +0 -56
  306. package/dist/esm/dom.d.ts +0 -60
  307. package/dist/esm/dom.js +0 -375
  308. package/dist/esm/events.d.ts +0 -79
  309. package/dist/esm/events.js +0 -219
  310. package/dist/esm/framwork.d.ts +0 -4
  311. package/dist/esm/framwork.js +0 -1
  312. package/dist/esm/gridview/baseComponentGridview.d.ts +0 -111
  313. package/dist/esm/gridview/baseComponentGridview.js +0 -237
  314. package/dist/esm/gridview/basePanelView.d.ts +0 -40
  315. package/dist/esm/gridview/basePanelView.js +0 -91
  316. package/dist/esm/gridview/branchNode.d.ts +0 -57
  317. package/dist/esm/gridview/branchNode.js +0 -257
  318. package/dist/esm/gridview/gridview.d.ts +0 -158
  319. package/dist/esm/gridview/gridview.js +0 -681
  320. package/dist/esm/gridview/gridviewComponent.d.ts +0 -88
  321. package/dist/esm/gridview/gridviewComponent.js +0 -265
  322. package/dist/esm/gridview/gridviewPanel.d.ts +0 -77
  323. package/dist/esm/gridview/gridviewPanel.js +0 -182
  324. package/dist/esm/gridview/leafNode.d.ts +0 -34
  325. package/dist/esm/gridview/leafNode.js +0 -102
  326. package/dist/esm/gridview/options.d.ts +0 -15
  327. package/dist/esm/gridview/options.js +0 -14
  328. package/dist/esm/gridview/types.d.ts +0 -3
  329. package/dist/esm/gridview/types.js +0 -1
  330. package/dist/esm/index.d.ts +0 -58
  331. package/dist/esm/index.js +0 -44
  332. package/dist/esm/lifecycle.d.ts +0 -25
  333. package/dist/esm/lifecycle.js +0 -56
  334. package/dist/esm/math.d.ts +0 -5
  335. package/dist/esm/math.js +0 -32
  336. package/dist/esm/overlay/overlay.d.ts +0 -91
  337. package/dist/esm/overlay/overlay.js +0 -520
  338. package/dist/esm/overlay/overlayRenderContainer.d.ts +0 -24
  339. package/dist/esm/overlay/overlayRenderContainer.js +0 -249
  340. package/dist/esm/panel/types.d.ts +0 -33
  341. package/dist/esm/panel/types.js +0 -1
  342. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +0 -21
  343. package/dist/esm/paneview/defaultPaneviewHeader.js +0 -65
  344. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +0 -38
  345. package/dist/esm/paneview/draggablePaneviewPanel.js +0 -107
  346. package/dist/esm/paneview/options.d.ts +0 -30
  347. package/dist/esm/paneview/options.js +0 -22
  348. package/dist/esm/paneview/paneview.d.ts +0 -41
  349. package/dist/esm/paneview/paneview.js +0 -148
  350. package/dist/esm/paneview/paneviewComponent.d.ts +0 -133
  351. package/dist/esm/paneview/paneviewComponent.js +0 -306
  352. package/dist/esm/paneview/paneviewPanel.d.ts +0 -98
  353. package/dist/esm/paneview/paneviewPanel.js +0 -192
  354. package/dist/esm/popoutWindow.d.ts +0 -38
  355. package/dist/esm/popoutWindow.js +0 -170
  356. package/dist/esm/resizable.d.ts +0 -12
  357. package/dist/esm/resizable.js +0 -66
  358. package/dist/esm/scrollbar.d.ts +0 -15
  359. package/dist/esm/scrollbar.js +0 -139
  360. package/dist/esm/splitview/options.d.ts +0 -21
  361. package/dist/esm/splitview/options.js +0 -16
  362. package/dist/esm/splitview/splitview.d.ts +0 -145
  363. package/dist/esm/splitview/splitview.js +0 -770
  364. package/dist/esm/splitview/splitviewComponent.d.ts +0 -101
  365. package/dist/esm/splitview/splitviewComponent.js +0 -267
  366. package/dist/esm/splitview/splitviewPanel.d.ts +0 -45
  367. package/dist/esm/splitview/splitviewPanel.js +0 -108
  368. package/dist/esm/splitview/viewItem.d.ts +0 -25
  369. package/dist/esm/splitview/viewItem.js +0 -74
  370. package/dist/esm/svg.d.ts +0 -3
  371. package/dist/esm/svg.js +0 -31
  372. package/dist/esm/types.d.ts +0 -31
  373. package/dist/esm/types.js +0 -1
  374. package/dist/styles/dockview.css +0 -3436
@@ -1,474 +0,0 @@
1
- import { DockviewApi } from '../api/component.api';
2
- import { Direction } from '../gridview/baseComponentGridview';
3
- import { IGridView } from '../gridview/gridview';
4
- import { IContentRenderer, ITabRenderer, IWatermarkRenderer } from './types';
5
- import { Parameters } from '../panel/types';
6
- import { DockviewGroupPanel } from './dockviewGroupPanel';
7
- import { DockviewMessages } from './accessibilityMessages';
8
- export type { DockviewMessages } from './accessibilityMessages';
9
- import { PanelTransfer } from '../dnd/dataTransfer';
10
- import { IDisposable } from '../lifecycle';
11
- import { Box } from '../types';
12
- import { DroptargetOverlayModel, Position } from '../dnd/droptarget';
13
- import { GroupOptions } from './dockviewGroupPanelModel';
14
- import { DockviewGroupDropLocation } from './events';
15
- import { IDockviewPanel } from './dockviewPanel';
16
- import { DockviewPanelRenderer } from '../overlay/overlayRenderContainer';
17
- import { IGroupDragGhostRenderer, IGroupHeaderProps, ITabGroupChipRenderer } from './framework';
18
- import { FloatingGroupOptions } from './dockviewComponent';
19
- import { Constraints } from '../gridview/gridviewPanel';
20
- import { AcceptableEvent, IAcceptableEvent } from '../events';
21
- import { DockviewTheme } from './theme';
22
- import { ITabGroup } from './tabGroup';
23
- import { CspNonceProvider } from '../dom';
24
- export { CspNonceProvider };
25
- import { DockviewTabGroupColorEntry } from './tabGroupAccent';
26
- export interface IHeaderActionsRenderer extends IDisposable {
27
- readonly element: HTMLElement;
28
- init(params: IGroupHeaderProps): void;
29
- }
30
- export type BuiltInContextMenuItem = 'close' | 'closeOthers' | 'closeAll' | 'separator';
31
- export type BuiltInChipContextMenuItem = 'separator' | 'colorPicker' | 'rename';
32
- export interface ContextMenuItemConfig {
33
- label?: string;
34
- /**
35
- * A framework component to render as the menu item.
36
- * The component type is opaque to core; the framework adapter renders it.
37
- */
38
- component?: unknown;
39
- componentProps?: object;
40
- /**
41
- * A raw DOM element to embed as-is in the context menu.
42
- * Use this when you want to render custom content without a framework component.
43
- */
44
- element?: HTMLElement;
45
- action?: () => void;
46
- disabled?: boolean;
47
- }
48
- export type ContextMenuItem = BuiltInContextMenuItem | ContextMenuItemConfig;
49
- export interface DropOverlayModelParams {
50
- /** Which of a group's drop targets the overlay is for. `'edge'` is shaped by `dndEdges`, not this option. */
51
- location: DockviewGroupDropLocation;
52
- /** The group the target belongs to, where known (tab / header_space / content). */
53
- group?: DockviewGroupPanel;
54
- }
55
- /** A layout change to be announced — see the `getAnnouncement` option. */
56
- export interface LiveRegionEvent {
57
- /**
58
- * What changed: a panel was added (`'open'`) or removed (`'close'`); a
59
- * group was maximized (`'maximize'`) / restored (`'restore'`); or a group
60
- * moved to a floating window (`'float'`), back into the grid (`'dock'`), or
61
- * out to a popout window (`'popout'`). `panel` is the affected panel — for
62
- * group events, the group's active panel.
63
- */
64
- kind: 'open' | 'close' | 'maximize' | 'restore' | 'float' | 'dock' | 'popout';
65
- panel: IDockviewPanel;
66
- }
67
- /** A resolved announcement handed to a custom `announcer`. */
68
- export interface AnnouncementEvent {
69
- /** The (already localised) text to announce. */
70
- message: string;
71
- /** `'assertive'` interrupts the screen reader; `'polite'` waits for a pause. */
72
- politeness: 'polite' | 'assertive';
73
- }
74
- /**
75
- * Key bindings for {@link DockviewComponentOptions.keyboardNavigation}. Each
76
- * value is a string of `+`-separated parts, modifiers first, e.g. `'ctrl+]'`,
77
- * `'shift+f6'`. Recognised modifiers: `ctrl`, `shift`, `alt`, `meta` (alias
78
- * `cmd`). The final part is the `KeyboardEvent.key` to match, case-insensitively
79
- * (`']'`, `'f6'`, `'arrowleft'`).
80
- */
81
- export interface DockviewKeybindings {
82
- /** Switch to the next tab in the focused group. Default `ctrl+]`. */
83
- nextTab: string;
84
- /** Switch to the previous tab in the focused group. Default `ctrl+[`. */
85
- prevTab: string;
86
- /** Move focus to the next group. Default `f6`. */
87
- focusNextGroup: string;
88
- /** Move focus to the previous group. Default `shift+f6`. */
89
- focusPrevGroup: string;
90
- /** Move focus from panel content to the focused group's tab strip. Default `ctrl+shift+\`. */
91
- focusTabs: string;
92
- }
93
- export interface KeyboardNavigationOptions {
94
- /** Override individual {@link DockviewKeybindings}; unset keys keep their defaults. */
95
- keymap?: Partial<DockviewKeybindings>;
96
- }
97
- export interface GetTabContextMenuItemsParams {
98
- panel: IDockviewPanel;
99
- group: DockviewGroupPanel;
100
- api: DockviewApi;
101
- event: MouseEvent;
102
- }
103
- export interface GetTabGroupChipContextMenuItemsParams {
104
- tabGroup: ITabGroup;
105
- group: DockviewGroupPanel;
106
- api: DockviewApi;
107
- event: MouseEvent;
108
- }
109
- export interface IContextMenuItemComponentProps {
110
- panel: IDockviewPanel;
111
- group: DockviewGroupPanel;
112
- api: DockviewApi;
113
- /** Call to close the context menu */
114
- close: () => void;
115
- componentProps?: object;
116
- }
117
- export interface IContextMenuItemRenderer extends IDisposable {
118
- readonly element: HTMLElement;
119
- init(props: IContextMenuItemComponentProps): void;
120
- }
121
- export interface CreateContextMenuItemComponentOptions {
122
- id: string;
123
- component: unknown;
124
- }
125
- export interface ViewFactoryData {
126
- content: string;
127
- tab?: string;
128
- }
129
- export type DockviewHeaderPosition = 'top' | 'bottom' | 'left' | 'right';
130
- export type DockviewHeaderDirection = 'horizontal' | 'vertical';
131
- export type DockviewDndStrategy = 'auto' | 'pointer' | 'html5';
132
- /**
133
- * Context handed to {@link DockviewOptions.transformFloatingGroupDrag} on each
134
- * pointer-move frame while a floating group is being dragged.
135
- */
136
- export interface FloatingGroupDragContext {
137
- /** The floating group being dragged. */
138
- readonly group: DockviewGroupPanel;
139
- /** Proposed top-left + size this frame, in container pixels (pre-clamp). */
140
- readonly proposed: Box;
141
- /** Size of the container the floating group is dragged within. */
142
- readonly container: {
143
- width: number;
144
- height: number;
145
- };
146
- /**
147
- * Bounds of the other floating groups (relative to the same container),
148
- * snapshotted at drag start.
149
- */
150
- readonly others: readonly Box[];
151
- }
152
- export interface DockviewOptions {
153
- /**
154
- * Disable the auto-resizing which is controlled through a `ResizeObserver`.
155
- * Call `.layout(width, height)` to manually resize the container.
156
- */
157
- disableAutoResizing?: boolean;
158
- hideBorders?: boolean;
159
- singleTabMode?: 'fullwidth' | 'default';
160
- disableFloatingGroups?: boolean;
161
- floatingGroupBounds?: 'boundedWithinViewport' | {
162
- minimumHeightWithinViewport?: number;
163
- minimumWidthWithinViewport?: number;
164
- };
165
- /**
166
- * Adjust a floating group's position while it is being dragged. Runs on
167
- * each pointer-move frame with the proposed top-left (before the container
168
- * clamp) and returns an adjusted top-left, or nothing to leave it
169
- * unchanged. Use it for snapping, alignment, or custom bounds. Move only —
170
- * resizing a floating group is unaffected.
171
- *
172
- * `context.others` holds the bounds of the other floating groups (relative
173
- * to the same container), snapshotted at drag start, so the callback can
174
- * align the dragged group against its siblings.
175
- */
176
- transformFloatingGroupDrag?: (context: FloatingGroupDragContext) => {
177
- top: number;
178
- left: number;
179
- } | void;
180
- /**
181
- * Selects which element moves a floating group when dragged.
182
- *
183
- * - `'titlebar'` (default): a dedicated, blank drag-handle bar is rendered
184
- * above the group's tab bar. Dragging it moves the floating window;
185
- * shift+drag (mouse) / long-press (touch) redocks into the grid. Style
186
- * it with the `--dv-floating-titlebar-*` theme variables.
187
- * - `'tabbar'`: the legacy behaviour — the empty space in the tab bar
188
- * (the "void container") doubles as the move handle. No dedicated bar
189
- * is rendered.
190
- */
191
- floatingGroupDragHandle?: 'titlebar' | 'tabbar';
192
- popoutUrl?: string;
193
- nonce?: CspNonceProvider;
194
- defaultRenderer?: DockviewPanelRenderer;
195
- defaultHeaderPosition?: DockviewHeaderPosition;
196
- debug?: boolean;
197
- dndEdges?: false | DroptargetOverlayModel;
198
- disableDnd?: boolean;
199
- /**
200
- * Selects which drag-and-drop implementation is active.
201
- *
202
- * - `'auto'` (default): HTML5 drag-and-drop drives mouse drags; pointer
203
- * events drive touch and pen drags. Matches the historical behaviour.
204
- * - `'pointer'`: pointer events drive every input type. Useful in
205
- * environments where HTML5 drag-and-drop is unreliable (some Linux
206
- * browsers, certain Safari versions, embedded webviews). Cross-window
207
- * HTML5 drag and the HTML5 native drag image are not available in this
208
- * mode.
209
- * - `'html5'`: HTML5 drag-and-drop only — disables touch / pen drag.
210
- */
211
- dndStrategy?: DockviewDndStrategy;
212
- locked?: boolean;
213
- className?: string;
214
- /**
215
- * Define the behaviour of the dock when there are no panels to display. Defaults to `watermark`.
216
- */
217
- noPanelsOverlay?: 'emptyGroup' | 'watermark';
218
- theme?: DockviewTheme;
219
- disableTabsOverflowList?: boolean;
220
- /**
221
- * Select `native` to use built-in scrollbar behaviours and `custom` to use an internal implementation
222
- * that allows for improved scrollbar overlay UX.
223
- *
224
- * This is only applied to the tab header section. Defaults to `custom`.
225
- */
226
- scrollbars?: 'native' | 'custom';
227
- /**
228
- * Return the items to display in the tab context menu on right-click.
229
- *
230
- * Use built-in string shortcuts (`'close'`, `'closeOthers'`, `'closeAll'`, `'separator'`)
231
- * or provide a `ContextMenuItemConfig` object for custom items.
232
- *
233
- * If omitted, no context menu is shown.
234
- * Return an empty array to suppress the menu for specific cases.
235
- */
236
- getTabContextMenuItems?: (params: GetTabContextMenuItemsParams) => ContextMenuItem[];
237
- /**
238
- * Return the items to display in the tab group chip context menu on right-click.
239
- *
240
- * Use built-in string shortcuts (`'separator'`, `'colorPicker'`, `'rename'`) or provide a
241
- * `ContextMenuItemConfig` object for custom items.
242
- * `'colorPicker'` renders a native grid of color swatches for the tab group.
243
- * `'rename'` renders an inline text input to rename the tab group.
244
- *
245
- * If omitted, no context menu is shown on chip right-click.
246
- * Return an empty array to suppress the menu for specific cases.
247
- */
248
- getTabGroupChipContextMenuItems?: (params: GetTabGroupChipContextMenuItemsParams) => (BuiltInChipContextMenuItem | ContextMenuItemConfig)[];
249
- /**
250
- * Factory to create custom tab group chip renderers.
251
- * If not provided, the default chip renderer is used.
252
- */
253
- createTabGroupChipComponent?: (tabGroup: ITabGroup) => ITabGroupChipRenderer;
254
- /**
255
- * Factory to create the custom ghost element shown while dragging a
256
- * group of panels (the small floating chip that follows the cursor).
257
- *
258
- * If not provided, a default ghost rendering `"Multiple Panels (N)"`
259
- * is used. Supplying a factory replaces the entire default ghost,
260
- * enabling i18n / custom visuals.
261
- */
262
- createGroupDragGhostComponent?: (group: DockviewGroupPanel) => IGroupDragGhostRenderer;
263
- /**
264
- * Shape the drop overlay shown over a group's drop targets — the tab
265
- * strip (`'tab'`), the header void space (`'header_space'`) and the
266
- * panel content area (`'content'`). Return a {@link DroptargetOverlayModel}
267
- * to override that target's default overlay (size, activation threshold,
268
- * small-element boundaries), or `undefined` to keep the default.
269
- *
270
- * `group` is provided where known (tab / header_space). The outer-layout
271
- * edge overlay is shaped by `dndEdges`, not this option, so `'edge'` is
272
- * not dispatched here.
273
- */
274
- dropOverlayModel?: (params: DropOverlayModelParams) => DroptargetOverlayModel | undefined;
275
- /**
276
- * Built-in screen-reader announcements of layout changes (a visually-hidden
277
- * `aria-live` region narrating panel open/close etc.). On by default —
278
- * set to `false` to disable, e.g. when the host app provides its own
279
- * announcement system. Honoured live via `updateOptions`.
280
- */
281
- announcements?: boolean;
282
- /**
283
- * Localise or override the built-in announcement strings (the default
284
- * messages are English). Return a string to use it, `null` / `''` to
285
- * suppress that announcement, or `undefined` to keep the default. This is
286
- * how non-English apps translate announcements — core ships no message
287
- * catalog, only the default strings + this hook.
288
- */
289
- getAnnouncement?: (event: LiveRegionEvent) => string | null | undefined;
290
- /**
291
- * Route announcements to your own screen-reader infrastructure instead of
292
- * the built-in `aria-live` regions (e.g. an app-wide live region). When
293
- * set, dockview hands you each {@link AnnouncementEvent} and writes nothing
294
- * to its own regions. `getAnnouncement` (localisation) still applies first.
295
- */
296
- announcer?: (event: AnnouncementEvent) => void;
297
- /**
298
- * Translate / override the strings dockview speaks to assistive technology
299
- * — both the LiveRegion announcements and the keyboard-docking narration.
300
- * Provide any subset of {@link DockviewMessages}; unset entries keep the
301
- * English defaults. (`getAnnouncement` still applies first, per-event, for
302
- * announcements.)
303
- */
304
- messages?: Partial<DockviewMessages>;
305
- /**
306
- * Operate the dock with the keyboard. `true` enables the default bindings;
307
- * pass an object to override individual ones via `keymap`. Off by default
308
- * (opt-in while the feature matures). Enables:
309
- *
310
- * - **Switch tab** within the focused group — `Ctrl`+`]` / `Ctrl`+`[`.
311
- * - **Move focus between groups** — `F6` / `Shift`+`F6` (sequential) or
312
- * `Ctrl`+`Shift`+arrow keys (spatial: focus the group in that direction).
313
- * - **Dock the active panel** without a mouse — `Ctrl`+`M` arms a two-phase
314
- * move (arrows cycle the target group with a live drop preview +
315
- * screen-reader narration, `Enter` docks, `Escape` cancels).
316
- *
317
- * Defaults avoid `Cmd`-based and browser-reserved combinations (e.g.
318
- * `Cmd`+`M` is the macOS minimise-window shortcut); use {@link keymap} to
319
- * rebind for your platform.
320
- */
321
- keyboardNavigation?: boolean | KeyboardNavigationOptions;
322
- /**
323
- * Replace the built-in tab group color palette with a user-defined list.
324
- *
325
- * Each entry has an `id` (stored on `tabGroup.color` and serialized),
326
- * a `value` (any CSS color expression — hex, rgb(), `var(...)`, etc.),
327
- * and an optional `label` shown in the context menu picker.
328
- *
329
- * If omitted, the default 9-color palette is used. The list fully
330
- * replaces the defaults — there is no merge.
331
- */
332
- tabGroupColors?: DockviewTabGroupColorEntry[];
333
- /**
334
- * Controls how dockview applies tab group color accents.
335
- *
336
- * - `'palette'` (default): write `--dv-tab-group-color`, render the
337
- * color picker, and apply built-in accent styling.
338
- * - `'off'`: opt out entirely. No `--dv-tab-group-color` is written,
339
- * the color picker is suppressed, and chips/indicators render
340
- * without the accent. The `tg.color` data field is preserved so
341
- * custom chip renderers can still read it and roll their own visual.
342
- */
343
- tabGroupAccent?: 'palette' | 'off';
344
- }
345
- export type TabAnimation = 'smooth' | 'default';
346
- export interface DockviewDndOverlayEvent extends IAcceptableEvent {
347
- /** Narrow with `instanceof DragEvent` before reading `dataTransfer`. */
348
- nativeEvent: DragEvent | PointerEvent;
349
- target: DockviewGroupDropLocation;
350
- position: Position;
351
- group?: DockviewGroupPanel;
352
- getData: () => PanelTransfer | undefined;
353
- }
354
- export declare class DockviewUnhandledDragOverEvent extends AcceptableEvent implements DockviewDndOverlayEvent {
355
- readonly nativeEvent: DragEvent | PointerEvent;
356
- readonly target: DockviewGroupDropLocation;
357
- readonly position: Position;
358
- readonly getData: () => PanelTransfer | undefined;
359
- readonly group?: DockviewGroupPanel | undefined;
360
- constructor(nativeEvent: DragEvent | PointerEvent, target: DockviewGroupDropLocation, position: Position, getData: () => PanelTransfer | undefined, group?: DockviewGroupPanel | undefined);
361
- }
362
- export declare const PROPERTY_KEYS_DOCKVIEW: (keyof DockviewOptions)[];
363
- export interface CreateComponentOptions {
364
- /**
365
- * The unqiue identifer of the component
366
- */
367
- id: string;
368
- /**
369
- * The component name, this should determine what is rendered.
370
- */
371
- name: string;
372
- }
373
- export interface DockviewFrameworkOptions {
374
- defaultTabComponent?: string;
375
- createRightHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
376
- createLeftHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
377
- createPrefixHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
378
- createTabComponent?: (options: CreateComponentOptions) => ITabRenderer | undefined;
379
- createComponent: (options: CreateComponentOptions) => IContentRenderer;
380
- createWatermarkComponent?: () => IWatermarkRenderer;
381
- createContextMenuItemComponent?: (options: CreateContextMenuItemComponentOptions) => IContextMenuItemRenderer | undefined;
382
- }
383
- export type DockviewComponentOptions = DockviewOptions & DockviewFrameworkOptions;
384
- export interface PanelOptions<P extends object = Parameters> {
385
- component: string;
386
- tabComponent?: string;
387
- params?: P;
388
- id: string;
389
- title?: string;
390
- }
391
- type RelativePanel = {
392
- direction?: Direction;
393
- referencePanel: string | IDockviewPanel;
394
- /**
395
- * The index to place the panel within a group, only applicable if the placement is within an existing group
396
- */
397
- index?: number;
398
- };
399
- type RelativeGroup = {
400
- direction?: Direction;
401
- referenceGroup: string | DockviewGroupPanel;
402
- /**
403
- * The index to place the panel within a group, only applicable if the placement is within an existing group
404
- */
405
- index?: number;
406
- };
407
- type AbsolutePosition = {
408
- direction: Omit<Direction, 'within'>;
409
- };
410
- export type AddPanelPositionOptions = RelativePanel | RelativeGroup | AbsolutePosition;
411
- export declare function isPanelOptionsWithPanel(data: AddPanelPositionOptions): data is RelativePanel;
412
- export declare function isPanelOptionsWithGroup(data: AddPanelPositionOptions): data is RelativeGroup;
413
- type AddPanelFloatingGroupUnion = {
414
- floating: Partial<FloatingGroupOptions> | true;
415
- position: never;
416
- };
417
- type AddPanelPositionUnion = {
418
- floating: false;
419
- position: AddPanelPositionOptions;
420
- };
421
- type AddPanelOptionsUnion = AddPanelFloatingGroupUnion | AddPanelPositionUnion;
422
- export type AddPanelOptions<P extends object = Parameters> = {
423
- params?: P;
424
- /**
425
- * The unique id for the panel
426
- */
427
- id: string;
428
- /**
429
- * The title for the panel which can be accessed within both the tab and component.
430
- *
431
- * If using the default tab renderer this title will be displayed in the tab.
432
- */
433
- title?: string;
434
- /**
435
- * The id of the component renderer
436
- */
437
- component: string;
438
- /**
439
- * The id of the tab componnet renderer
440
- */
441
- tabComponent?: string;
442
- /**
443
- * The rendering mode of the panel.
444
- *
445
- * This dictates what happens to the HTML of the panel when it is hidden.
446
- */
447
- renderer?: DockviewPanelRenderer;
448
- /**
449
- * If true then add the panel without setting it as the active panel.
450
- *
451
- * Defaults to `false` which forces newly added panels to become active.
452
- */
453
- inactive?: boolean;
454
- initialWidth?: number;
455
- initialHeight?: number;
456
- } & Partial<AddPanelOptionsUnion> & Partial<Constraints>;
457
- type AddGroupOptionsWithPanel = {
458
- referencePanel: string | IDockviewPanel;
459
- direction?: Omit<Direction, 'within'>;
460
- };
461
- type AddGroupOptionsWithGroup = {
462
- referenceGroup: string | DockviewGroupPanel;
463
- direction?: Omit<Direction, 'within'>;
464
- };
465
- export type AddGroupOptions = (AddGroupOptionsWithGroup | AddGroupOptionsWithPanel | AbsolutePosition) & GroupOptions;
466
- export declare function isGroupOptionsWithPanel(data: AddGroupOptions): data is AddGroupOptionsWithPanel;
467
- export declare function isGroupOptionsWithGroup(data: AddGroupOptions): data is AddGroupOptionsWithGroup;
468
- export interface MovementOptions2 {
469
- group?: IGridView;
470
- }
471
- export interface MovementOptions extends MovementOptions2 {
472
- includePanel?: boolean;
473
- group?: DockviewGroupPanel;
474
- }
@@ -1,77 +0,0 @@
1
- import { AcceptableEvent } from '../events';
2
- export class DockviewUnhandledDragOverEvent extends AcceptableEvent {
3
- constructor(nativeEvent, target, position, getData, group) {
4
- super();
5
- this.nativeEvent = nativeEvent;
6
- this.target = target;
7
- this.position = position;
8
- this.getData = getData;
9
- this.group = group;
10
- }
11
- }
12
- export const PROPERTY_KEYS_DOCKVIEW = (() => {
13
- /**
14
- * by readong the keys from an empty value object TypeScript will error
15
- * when we add or remove new properties to `DockviewOptions`
16
- */
17
- const properties = {
18
- disableAutoResizing: undefined,
19
- hideBorders: undefined,
20
- singleTabMode: undefined,
21
- disableFloatingGroups: undefined,
22
- floatingGroupBounds: undefined,
23
- transformFloatingGroupDrag: undefined,
24
- floatingGroupDragHandle: undefined,
25
- popoutUrl: undefined,
26
- nonce: undefined,
27
- defaultRenderer: undefined,
28
- defaultHeaderPosition: undefined,
29
- debug: undefined,
30
- locked: undefined,
31
- disableDnd: undefined,
32
- dndStrategy: undefined,
33
- className: undefined,
34
- noPanelsOverlay: undefined,
35
- dndEdges: undefined,
36
- theme: undefined,
37
- disableTabsOverflowList: undefined,
38
- scrollbars: undefined,
39
- getTabContextMenuItems: undefined,
40
- getTabGroupChipContextMenuItems: undefined,
41
- createTabGroupChipComponent: undefined,
42
- createGroupDragGhostComponent: undefined,
43
- dropOverlayModel: undefined,
44
- announcements: undefined,
45
- getAnnouncement: undefined,
46
- announcer: undefined,
47
- messages: undefined,
48
- keyboardNavigation: undefined,
49
- tabGroupColors: undefined,
50
- tabGroupAccent: undefined,
51
- };
52
- return Object.keys(properties);
53
- })();
54
- export function isPanelOptionsWithPanel(data) {
55
- if (data.referencePanel) {
56
- return true;
57
- }
58
- return false;
59
- }
60
- export function isPanelOptionsWithGroup(data) {
61
- if (data.referenceGroup) {
62
- return true;
63
- }
64
- return false;
65
- }
66
- export function isGroupOptionsWithPanel(data) {
67
- if (data.referencePanel) {
68
- return true;
69
- }
70
- return false;
71
- }
72
- export function isGroupOptionsWithGroup(data) {
73
- if (data.referenceGroup) {
74
- return true;
75
- }
76
- return false;
77
- }
@@ -1,95 +0,0 @@
1
- import { IDisposable } from '../lifecycle';
2
- import { Event } from '../events';
3
- import { PopupService } from './components/popupService';
4
- import { PopoutWindow } from '../popoutWindow';
5
- import { DockviewGroupPanel } from './dockviewGroupPanel';
6
- import { SerializedPopoutGroup } from './dockviewComponent';
7
- import { Gridview } from '../gridview/gridview';
8
- import { OverlayRenderContainer } from '../overlay/overlayRenderContainer';
9
- import { DropTargetAnchorContainer } from '../dnd/dropTargetAnchorContainer';
10
- export interface PopoutGroupEntry {
11
- window: PopoutWindow;
12
- popoutGroup: DockviewGroupPanel;
13
- referenceGroup?: string;
14
- /**
15
- * The popout window hosts its own gridview so it can hold a nested
16
- * splitview layout of groups. `popoutGroup` is the window's anchor group.
17
- */
18
- gridview: Gridview;
19
- /**
20
- * Render / drop-target containers and window accessor for this popout, so
21
- * groups relocated into the window can be wired to its own document.
22
- */
23
- overlayRenderContainer: OverlayRenderContainer;
24
- dropTargetContainer: DropTargetAnchorContainer;
25
- getWindow: () => Window;
26
- popoutUrl?: string;
27
- disposable: {
28
- dispose: () => DockviewGroupPanel | undefined;
29
- };
30
- }
31
- /**
32
- * Narrow callback surface the PopoutWindowService needs from its host.
33
- */
34
- export interface IPopoutWindowHost {
35
- readonly isDisposed: boolean;
36
- }
37
- export interface IPopoutWindowService extends IDisposable {
38
- readonly entries: readonly PopoutGroupEntry[];
39
- readonly onDidRemove: Event<PopoutGroupEntry>;
40
- add(entry: PopoutGroupEntry): void;
41
- remove(entry: PopoutGroupEntry): void;
42
- findByGroup(group: DockviewGroupPanel): PopoutGroupEntry | undefined;
43
- findReferenceGroupId(group: DockviewGroupPanel): string | undefined;
44
- observeGridviewSize(popoutWindow: PopoutWindow, gridview: Gridview, overlayRenderContainer: OverlayRenderContainer): IDisposable | undefined;
45
- getPopupService(groupId: string): PopupService | undefined;
46
- setPopupService(groupId: string, service: PopupService): void;
47
- deletePopupService(groupId: string): void;
48
- readonly restorationPromise: Promise<void>;
49
- scheduleRestoration(delayMs: number, work: () => void, onCancel?: () => void): Promise<void>;
50
- finishRestoration(promises: Promise<void>[]): void;
51
- cancelPendingRestorations(): void;
52
- serialize(): SerializedPopoutGroup[];
53
- disposeAll(): void;
54
- }
55
- export declare class PopoutWindowService implements IPopoutWindowService {
56
- private readonly _host;
57
- private readonly _entries;
58
- private readonly _popupServices;
59
- private readonly _restorationCleanups;
60
- private _restorationPromise;
61
- private readonly _onDidRemove;
62
- readonly onDidRemove: Event<PopoutGroupEntry>;
63
- constructor(host: IPopoutWindowHost);
64
- get entries(): readonly PopoutGroupEntry[];
65
- get restorationPromise(): Promise<void>;
66
- add(entry: PopoutGroupEntry): void;
67
- remove(entry: PopoutGroupEntry): void;
68
- findByGroup(group: DockviewGroupPanel): PopoutGroupEntry | undefined;
69
- findReferenceGroupId(group: DockviewGroupPanel): string | undefined;
70
- /**
71
- * The popout window's innerWidth/innerHeight are often 0/stale until it has
72
- * painted, and the nested gridview lays its children out to the size passed
73
- * to layout() (a plain group fills via CSS instead). To stop content
74
- * rendering into a zero box until a manual resize — and to avoid the race a
75
- * fixed number of animation frames had — observe the gridview element with
76
- * a ResizeObserver created in the POPOUT window's OWN realm. A parent-realm
77
- * observer fires unreliably across the window boundary; a same-realm one
78
- * fires reliably, including the initial observation once the window is
79
- * sized.
80
- *
81
- * @returns a disposable that disconnects the observer, or `undefined` when
82
- * the popout realm has no ResizeObserver (e.g. jsdom).
83
- */
84
- observeGridviewSize(popoutWindow: PopoutWindow, gridview: Gridview, overlayRenderContainer: OverlayRenderContainer): IDisposable | undefined;
85
- getPopupService(groupId: string): PopupService | undefined;
86
- setPopupService(groupId: string, service: PopupService): void;
87
- deletePopupService(groupId: string): void;
88
- scheduleRestoration(delayMs: number, work: () => void, onCancel?: () => void): Promise<void>;
89
- finishRestoration(promises: Promise<void>[]): void;
90
- cancelPendingRestorations(): void;
91
- serialize(): SerializedPopoutGroup[];
92
- disposeAll(): void;
93
- dispose(): void;
94
- }
95
- export declare const PopoutWindowModule: import("./modules").DockviewModule<IPopoutWindowHost>;