dockview-core 7.0.4 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (380) 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/dataTransfer.d.ts +1 -0
  9. package/dist/cjs/dnd/dropTargetAnchorContainer.d.ts +12 -0
  10. package/dist/cjs/dnd/droptarget.d.ts +94 -0
  11. package/dist/cjs/dnd/ghost.d.ts +1 -0
  12. package/dist/cjs/dnd/pointer/longPress.d.ts +2 -2
  13. package/dist/cjs/dnd/pointer/pointerDragController.d.ts +5 -2
  14. package/dist/cjs/dnd/pointer/pointerDragSource.d.ts +1 -1
  15. package/dist/cjs/dnd/pointer/pointerDropTarget.d.ts +30 -1
  16. package/dist/cjs/dnd/pointer/pointerGhost.d.ts +1 -1
  17. package/dist/cjs/dockview/accessibilityMessages.d.ts +6 -0
  18. package/dist/cjs/dockview/advancedDnDService.d.ts +31 -0
  19. package/dist/cjs/dockview/components/panel/content.d.ts +1 -1
  20. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +2 -0
  21. package/dist/cjs/dockview/components/tab/tab.d.ts +2 -0
  22. package/dist/cjs/dockview/components/titlebar/floatingTitleBar.d.ts +2 -2
  23. package/dist/cjs/dockview/components/titlebar/groupDragSource.d.ts +1 -1
  24. package/dist/cjs/dockview/components/titlebar/tabGroupChip.d.ts +1 -1
  25. package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.d.ts +73 -2
  26. package/dist/cjs/dockview/components/titlebar/tabGroups.d.ts +1 -1
  27. package/dist/cjs/dockview/components/titlebar/tabReorderController.d.ts +295 -0
  28. package/dist/cjs/dockview/components/titlebar/tabs.d.ts +120 -50
  29. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +48 -0
  30. package/dist/cjs/dockview/dndCapabilities.d.ts +1 -1
  31. package/dist/cjs/dockview/dockviewComponent.d.ts +307 -19
  32. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +5 -0
  33. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +76 -2
  34. package/dist/cjs/dockview/dockviewPanel.d.ts +12 -0
  35. package/dist/cjs/dockview/dockviewShell.d.ts +48 -24
  36. package/dist/cjs/dockview/edgeGroupService.d.ts +20 -0
  37. package/dist/cjs/dockview/events.d.ts +6 -0
  38. package/dist/cjs/dockview/liveRegionService.d.ts +18 -5
  39. package/dist/cjs/dockview/moduleContracts.d.ts +485 -14
  40. package/dist/cjs/dockview/modules.d.ts +101 -22
  41. package/dist/cjs/dockview/options.d.ts +336 -30
  42. package/dist/cjs/dockview/optionsModules.d.ts +73 -0
  43. package/dist/cjs/dockview/popoutWindowService.d.ts +15 -10
  44. package/dist/cjs/dockview/rootDropTargetService.d.ts +11 -0
  45. package/dist/cjs/dockview/tabGroup.d.ts +3 -0
  46. package/dist/cjs/dockview/tabGroupAccent.d.ts +1 -1
  47. package/dist/cjs/dockview/tabGroupChipsService.d.ts +10 -0
  48. package/dist/cjs/dockview/theme.d.ts +2 -2
  49. package/dist/cjs/dockview/types.d.ts +3 -0
  50. package/dist/cjs/dom.d.ts +9 -1
  51. package/dist/cjs/events.d.ts +1 -1
  52. package/dist/cjs/gridview/baseComponentGridview.d.ts +2 -2
  53. package/dist/cjs/gridview/branchNode.d.ts +16 -0
  54. package/dist/cjs/gridview/gridview.d.ts +2 -0
  55. package/dist/cjs/index.d.ts +35 -29
  56. package/dist/cjs/lifecycle.d.ts +1 -0
  57. package/dist/cjs/overlay/overlay.d.ts +4 -2
  58. package/dist/cjs/overlay/overlayRenderContainer.d.ts +8 -0
  59. package/dist/cjs/paneview/paneview.d.ts +2 -1
  60. package/dist/cjs/paneview/paneviewComponent.d.ts +3 -0
  61. package/dist/cjs/paneview/paneviewPanel.d.ts +5 -0
  62. package/dist/cjs/scrollbar.d.ts +10 -0
  63. package/dist/cjs/splitview/viewItem.d.ts +10 -0
  64. package/dist/cjs/svg.d.ts +1 -0
  65. package/dist/cjs/types.d.ts +8 -0
  66. package/dist/dockview-core.js +18513 -19679
  67. package/dist/dockview-core.min.js +4138 -6
  68. package/dist/dockview-core.min.noStyle.js +6 -7
  69. package/dist/dockview-core.noStyle.js +18512 -19656
  70. package/dist/package/main.cjs.js +18123 -19267
  71. package/dist/package/main.cjs.min.js +6 -6
  72. package/dist/package/main.esm.min.mjs +6 -6
  73. package/dist/package/main.esm.mjs +18081 -19260
  74. package/package.json +81 -77
  75. package/dist/cjs/api/component.api.js +0 -1242
  76. package/dist/cjs/api/dockviewGroupPanelApi.js +0 -200
  77. package/dist/cjs/api/dockviewPanelApi.js +0 -172
  78. package/dist/cjs/api/entryPoints.js +0 -27
  79. package/dist/cjs/api/gridviewPanelApi.js +0 -45
  80. package/dist/cjs/api/panelApi.js +0 -133
  81. package/dist/cjs/api/paneviewPanelApi.js +0 -57
  82. package/dist/cjs/api/splitviewPanelApi.js +0 -47
  83. package/dist/cjs/array.js +0 -66
  84. package/dist/cjs/constants.js +0 -11
  85. package/dist/cjs/dnd/backend.js +0 -171
  86. package/dist/cjs/dnd/dataTransfer.js +0 -100
  87. package/dist/cjs/dnd/dnd.js +0 -74
  88. package/dist/cjs/dnd/dropOverlay.js +0 -197
  89. package/dist/cjs/dnd/dropTargetAnchorContainer.js +0 -104
  90. package/dist/cjs/dnd/droptarget.js +0 -362
  91. package/dist/cjs/dnd/ghost.js +0 -17
  92. package/dist/cjs/dnd/pointer/index.js +0 -13
  93. package/dist/cjs/dnd/pointer/longPress.js +0 -151
  94. package/dist/cjs/dnd/pointer/pointerDragController.js +0 -243
  95. package/dist/cjs/dnd/pointer/pointerDragSource.js +0 -197
  96. package/dist/cjs/dnd/pointer/pointerDropTarget.js +0 -198
  97. package/dist/cjs/dnd/pointer/pointerGhost.js +0 -44
  98. package/dist/cjs/dnd/pointer/types.js +0 -2
  99. package/dist/cjs/dockview/accessibilityMessages.js +0 -51
  100. package/dist/cjs/dockview/allModules.js +0 -25
  101. package/dist/cjs/dockview/components/panel/content.js +0 -213
  102. package/dist/cjs/dockview/components/popupService.js +0 -132
  103. package/dist/cjs/dockview/components/tab/defaultTab.js +0 -70
  104. package/dist/cjs/dockview/components/tab/tab.js +0 -281
  105. package/dist/cjs/dockview/components/titlebar/floatingTitleBar.js +0 -95
  106. package/dist/cjs/dockview/components/titlebar/groupDragSource.js +0 -218
  107. package/dist/cjs/dockview/components/titlebar/tabGroupChip.js +0 -104
  108. package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.js +0 -477
  109. package/dist/cjs/dockview/components/titlebar/tabGroups.js +0 -854
  110. package/dist/cjs/dockview/components/titlebar/tabOverflowControl.js +0 -19
  111. package/dist/cjs/dockview/components/titlebar/tabs.js +0 -2016
  112. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +0 -458
  113. package/dist/cjs/dockview/components/titlebar/voidContainer.js +0 -120
  114. package/dist/cjs/dockview/components/watermark/watermark.js +0 -40
  115. package/dist/cjs/dockview/deserializer.js +0 -39
  116. package/dist/cjs/dockview/dndCapabilities.js +0 -39
  117. package/dist/cjs/dockview/dockviewComponent.js +0 -3896
  118. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +0 -70
  119. package/dist/cjs/dockview/dockviewGroupPanel.js +0 -204
  120. package/dist/cjs/dockview/dockviewGroupPanelModel.js +0 -1514
  121. package/dist/cjs/dockview/dockviewPanel.js +0 -265
  122. package/dist/cjs/dockview/dockviewPanelModel.js +0 -105
  123. package/dist/cjs/dockview/dockviewShell.js +0 -744
  124. package/dist/cjs/dockview/edgeGroupService.js +0 -128
  125. package/dist/cjs/dockview/events.js +0 -67
  126. package/dist/cjs/dockview/floatingGroupService.js +0 -231
  127. package/dist/cjs/dockview/framework.js +0 -2
  128. package/dist/cjs/dockview/headerActionsService.js +0 -149
  129. package/dist/cjs/dockview/liveRegionService.js +0 -185
  130. package/dist/cjs/dockview/moduleContracts.js +0 -2
  131. package/dist/cjs/dockview/modules.js +0 -304
  132. package/dist/cjs/dockview/options.js +0 -103
  133. package/dist/cjs/dockview/popoutWindowService.js +0 -261
  134. package/dist/cjs/dockview/rootDropTargetService.js +0 -87
  135. package/dist/cjs/dockview/strictEventsSequencing.js +0 -63
  136. package/dist/cjs/dockview/tabGroup.js +0 -219
  137. package/dist/cjs/dockview/tabGroupAccent.js +0 -126
  138. package/dist/cjs/dockview/theme.js +0 -139
  139. package/dist/cjs/dockview/types.js +0 -2
  140. package/dist/cjs/dockview/validate.js +0 -76
  141. package/dist/cjs/dockview/watermarkService.js +0 -61
  142. package/dist/cjs/dom.js +0 -543
  143. package/dist/cjs/events.js +0 -296
  144. package/dist/cjs/framwork.js +0 -2
  145. package/dist/cjs/gridview/baseComponentGridview.js +0 -330
  146. package/dist/cjs/gridview/basePanelView.js +0 -162
  147. package/dist/cjs/gridview/branchNode.js +0 -372
  148. package/dist/cjs/gridview/gridview.js +0 -776
  149. package/dist/cjs/gridview/gridviewComponent.js +0 -363
  150. package/dist/cjs/gridview/gridviewPanel.js +0 -249
  151. package/dist/cjs/gridview/leafNode.js +0 -169
  152. package/dist/cjs/gridview/options.js +0 -17
  153. package/dist/cjs/gridview/types.js +0 -2
  154. package/dist/cjs/index.js +0 -105
  155. package/dist/cjs/lifecycle.js +0 -80
  156. package/dist/cjs/math.js +0 -38
  157. package/dist/cjs/overlay/overlay.js +0 -602
  158. package/dist/cjs/overlay/overlayRenderContainer.js +0 -309
  159. package/dist/cjs/panel/types.js +0 -2
  160. package/dist/cjs/paneview/defaultPaneviewHeader.js +0 -92
  161. package/dist/cjs/paneview/draggablePaneviewPanel.js +0 -141
  162. package/dist/cjs/paneview/options.js +0 -44
  163. package/dist/cjs/paneview/paneview.js +0 -203
  164. package/dist/cjs/paneview/paneviewComponent.js +0 -430
  165. package/dist/cjs/paneview/paneviewPanel.js +0 -275
  166. package/dist/cjs/popoutWindow.js +0 -244
  167. package/dist/cjs/resizable.js +0 -97
  168. package/dist/cjs/scrollbar.js +0 -169
  169. package/dist/cjs/splitview/options.js +0 -19
  170. package/dist/cjs/splitview/splitview.js +0 -999
  171. package/dist/cjs/splitview/splitviewComponent.js +0 -401
  172. package/dist/cjs/splitview/splitviewPanel.js +0 -179
  173. package/dist/cjs/splitview/viewItem.js +0 -119
  174. package/dist/cjs/svg.js +0 -43
  175. package/dist/cjs/types.js +0 -2
  176. package/dist/dockview-core.min.js.map +0 -1
  177. package/dist/dockview-core.min.noStyle.js.map +0 -1
  178. package/dist/esm/api/component.api.d.ts +0 -640
  179. package/dist/esm/api/component.api.js +0 -887
  180. package/dist/esm/api/dockviewGroupPanelApi.d.ts +0 -109
  181. package/dist/esm/api/dockviewGroupPanelApi.js +0 -155
  182. package/dist/esm/api/dockviewPanelApi.d.ts +0 -84
  183. package/dist/esm/api/dockviewPanelApi.js +0 -124
  184. package/dist/esm/api/entryPoints.d.ts +0 -9
  185. package/dist/esm/api/entryPoints.js +0 -21
  186. package/dist/esm/api/gridviewPanelApi.d.ts +0 -37
  187. package/dist/esm/api/gridviewPanelApi.js +0 -23
  188. package/dist/esm/api/panelApi.d.ts +0 -100
  189. package/dist/esm/api/panelApi.js +0 -87
  190. package/dist/esm/api/paneviewPanelApi.d.ts +0 -26
  191. package/dist/esm/api/paneviewPanelApi.js +0 -27
  192. package/dist/esm/api/splitviewPanelApi.d.ts +0 -32
  193. package/dist/esm/api/splitviewPanelApi.js +0 -25
  194. package/dist/esm/array.d.ts +0 -13
  195. package/dist/esm/array.js +0 -57
  196. package/dist/esm/constants.d.ts +0 -8
  197. package/dist/esm/constants.js +0 -8
  198. package/dist/esm/dnd/backend.d.ts +0 -70
  199. package/dist/esm/dnd/backend.js +0 -148
  200. package/dist/esm/dnd/dataTransfer.d.ts +0 -31
  201. package/dist/esm/dnd/dataTransfer.js +0 -67
  202. package/dist/esm/dnd/dnd.d.ts +0 -32
  203. package/dist/esm/dnd/dnd.js +0 -51
  204. package/dist/esm/dnd/dropOverlay.d.ts +0 -20
  205. package/dist/esm/dnd/dropOverlay.js +0 -192
  206. package/dist/esm/dnd/dropTargetAnchorContainer.d.ts +0 -16
  207. package/dist/esm/dnd/dropTargetAnchorContainer.js +0 -73
  208. package/dist/esm/dnd/droptarget.d.ts +0 -116
  209. package/dist/esm/dnd/droptarget.js +0 -316
  210. package/dist/esm/dnd/ghost.d.ts +0 -4
  211. package/dist/esm/dnd/ghost.js +0 -14
  212. package/dist/esm/dnd/pointer/index.d.ts +0 -11
  213. package/dist/esm/dnd/pointer/index.js +0 -5
  214. package/dist/esm/dnd/pointer/longPress.d.ts +0 -32
  215. package/dist/esm/dnd/pointer/longPress.js +0 -127
  216. package/dist/esm/dnd/pointer/pointerDragController.d.ts +0 -60
  217. package/dist/esm/dnd/pointer/pointerDragController.js +0 -193
  218. package/dist/esm/dnd/pointer/pointerDragSource.d.ts +0 -61
  219. package/dist/esm/dnd/pointer/pointerDragSource.js +0 -173
  220. package/dist/esm/dnd/pointer/pointerDropTarget.d.ts +0 -39
  221. package/dist/esm/dnd/pointer/pointerDropTarget.js +0 -168
  222. package/dist/esm/dnd/pointer/pointerGhost.d.ts +0 -30
  223. package/dist/esm/dnd/pointer/pointerGhost.js +0 -39
  224. package/dist/esm/dnd/pointer/types.d.ts +0 -16
  225. package/dist/esm/dnd/pointer/types.js +0 -1
  226. package/dist/esm/dockview/accessibilityMessages.d.ts +0 -32
  227. package/dist/esm/dockview/accessibilityMessages.js +0 -30
  228. package/dist/esm/dockview/allModules.d.ts +0 -8
  229. package/dist/esm/dockview/allModules.js +0 -22
  230. package/dist/esm/dockview/components/panel/content.d.ts +0 -54
  231. package/dist/esm/dockview/components/panel/content.js +0 -185
  232. package/dist/esm/dockview/components/popupService.d.ts +0 -21
  233. package/dist/esm/dockview/components/popupService.js +0 -108
  234. package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -12
  235. package/dist/esm/dockview/components/tab/defaultTab.js +0 -43
  236. package/dist/esm/dockview/components/tab/tab.d.ts +0 -44
  237. package/dist/esm/dockview/components/tab/tab.js +0 -242
  238. package/dist/esm/dockview/components/titlebar/floatingTitleBar.d.ts +0 -34
  239. package/dist/esm/dockview/components/titlebar/floatingTitleBar.js +0 -65
  240. package/dist/esm/dockview/components/titlebar/groupDragSource.d.ts +0 -51
  241. package/dist/esm/dockview/components/titlebar/groupDragSource.js +0 -178
  242. package/dist/esm/dockview/components/titlebar/tabGroupChip.d.ts +0 -37
  243. package/dist/esm/dockview/components/titlebar/tabGroupChip.js +0 -77
  244. package/dist/esm/dockview/components/titlebar/tabGroupIndicator.d.ts +0 -72
  245. package/dist/esm/dockview/components/titlebar/tabGroupIndicator.js +0 -360
  246. package/dist/esm/dockview/components/titlebar/tabGroups.d.ts +0 -107
  247. package/dist/esm/dockview/components/titlebar/tabGroups.js +0 -621
  248. package/dist/esm/dockview/components/titlebar/tabOverflowControl.d.ts +0 -8
  249. package/dist/esm/dockview/components/titlebar/tabOverflowControl.js +0 -16
  250. package/dist/esm/dockview/components/titlebar/tabs.d.ts +0 -167
  251. package/dist/esm/dockview/components/titlebar/tabs.js +0 -1653
  252. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +0 -104
  253. package/dist/esm/dockview/components/titlebar/tabsContainer.js +0 -359
  254. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +0 -21
  255. package/dist/esm/dockview/components/titlebar/voidContainer.js +0 -92
  256. package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -8
  257. package/dist/esm/dockview/components/watermark/watermark.js +0 -14
  258. package/dist/esm/dockview/deserializer.d.ts +0 -12
  259. package/dist/esm/dockview/deserializer.js +0 -34
  260. package/dist/esm/dockview/dndCapabilities.d.ts +0 -19
  261. package/dist/esm/dockview/dndCapabilities.js +0 -36
  262. package/dist/esm/dockview/dockviewComponent.d.ts +0 -626
  263. package/dist/esm/dockview/dockviewComponent.js +0 -3214
  264. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +0 -45
  265. package/dist/esm/dockview/dockviewFloatingGroupPanel.js +0 -44
  266. package/dist/esm/dockview/dockviewGroupPanel.d.ts +0 -35
  267. package/dist/esm/dockview/dockviewGroupPanel.js +0 -142
  268. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +0 -358
  269. package/dist/esm/dockview/dockviewGroupPanelModel.js +0 -1180
  270. package/dist/esm/dockview/dockviewPanel.d.ts +0 -69
  271. package/dist/esm/dockview/dockviewPanel.js +0 -178
  272. package/dist/esm/dockview/dockviewPanelModel.d.ts +0 -37
  273. package/dist/esm/dockview/dockviewPanelModel.js +0 -81
  274. package/dist/esm/dockview/dockviewShell.d.ts +0 -150
  275. package/dist/esm/dockview/dockviewShell.js +0 -678
  276. package/dist/esm/dockview/edgeGroupService.d.ts +0 -38
  277. package/dist/esm/dockview/edgeGroupService.js +0 -63
  278. package/dist/esm/dockview/events.d.ts +0 -38
  279. package/dist/esm/dockview/events.js +0 -34
  280. package/dist/esm/dockview/floatingGroupService.d.ts +0 -37
  281. package/dist/esm/dockview/floatingGroupService.js +0 -150
  282. package/dist/esm/dockview/framework.d.ts +0 -65
  283. package/dist/esm/dockview/framework.js +0 -1
  284. package/dist/esm/dockview/headerActionsService.d.ts +0 -32
  285. package/dist/esm/dockview/headerActionsService.js +0 -86
  286. package/dist/esm/dockview/liveRegionService.d.ts +0 -53
  287. package/dist/esm/dockview/liveRegionService.js +0 -159
  288. package/dist/esm/dockview/moduleContracts.d.ts +0 -119
  289. package/dist/esm/dockview/moduleContracts.js +0 -1
  290. package/dist/esm/dockview/modules.d.ts +0 -110
  291. package/dist/esm/dockview/modules.js +0 -170
  292. package/dist/esm/dockview/options.d.ts +0 -474
  293. package/dist/esm/dockview/options.js +0 -77
  294. package/dist/esm/dockview/popoutWindowService.d.ts +0 -95
  295. package/dist/esm/dockview/popoutWindowService.js +0 -175
  296. package/dist/esm/dockview/rootDropTargetService.d.ts +0 -35
  297. package/dist/esm/dockview/rootDropTargetService.js +0 -82
  298. package/dist/esm/dockview/strictEventsSequencing.d.ts +0 -7
  299. package/dist/esm/dockview/strictEventsSequencing.js +0 -41
  300. package/dist/esm/dockview/tabGroup.d.ts +0 -99
  301. package/dist/esm/dockview/tabGroup.js +0 -144
  302. package/dist/esm/dockview/tabGroupAccent.d.ts +0 -65
  303. package/dist/esm/dockview/tabGroupAccent.js +0 -114
  304. package/dist/esm/dockview/theme.d.ts +0 -86
  305. package/dist/esm/dockview/theme.js +0 -136
  306. package/dist/esm/dockview/types.d.ts +0 -53
  307. package/dist/esm/dockview/types.js +0 -1
  308. package/dist/esm/dockview/validate.d.ts +0 -0
  309. package/dist/esm/dockview/validate.js +0 -76
  310. package/dist/esm/dockview/watermarkService.d.ts +0 -30
  311. package/dist/esm/dockview/watermarkService.js +0 -56
  312. package/dist/esm/dom.d.ts +0 -60
  313. package/dist/esm/dom.js +0 -375
  314. package/dist/esm/events.d.ts +0 -79
  315. package/dist/esm/events.js +0 -219
  316. package/dist/esm/framwork.d.ts +0 -4
  317. package/dist/esm/framwork.js +0 -1
  318. package/dist/esm/gridview/baseComponentGridview.d.ts +0 -111
  319. package/dist/esm/gridview/baseComponentGridview.js +0 -237
  320. package/dist/esm/gridview/basePanelView.d.ts +0 -40
  321. package/dist/esm/gridview/basePanelView.js +0 -91
  322. package/dist/esm/gridview/branchNode.d.ts +0 -57
  323. package/dist/esm/gridview/branchNode.js +0 -257
  324. package/dist/esm/gridview/gridview.d.ts +0 -158
  325. package/dist/esm/gridview/gridview.js +0 -681
  326. package/dist/esm/gridview/gridviewComponent.d.ts +0 -88
  327. package/dist/esm/gridview/gridviewComponent.js +0 -265
  328. package/dist/esm/gridview/gridviewPanel.d.ts +0 -77
  329. package/dist/esm/gridview/gridviewPanel.js +0 -182
  330. package/dist/esm/gridview/leafNode.d.ts +0 -34
  331. package/dist/esm/gridview/leafNode.js +0 -102
  332. package/dist/esm/gridview/options.d.ts +0 -15
  333. package/dist/esm/gridview/options.js +0 -14
  334. package/dist/esm/gridview/types.d.ts +0 -3
  335. package/dist/esm/gridview/types.js +0 -1
  336. package/dist/esm/index.d.ts +0 -58
  337. package/dist/esm/index.js +0 -44
  338. package/dist/esm/lifecycle.d.ts +0 -25
  339. package/dist/esm/lifecycle.js +0 -56
  340. package/dist/esm/math.d.ts +0 -5
  341. package/dist/esm/math.js +0 -32
  342. package/dist/esm/overlay/overlay.d.ts +0 -91
  343. package/dist/esm/overlay/overlay.js +0 -520
  344. package/dist/esm/overlay/overlayRenderContainer.d.ts +0 -24
  345. package/dist/esm/overlay/overlayRenderContainer.js +0 -249
  346. package/dist/esm/panel/types.d.ts +0 -33
  347. package/dist/esm/panel/types.js +0 -1
  348. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +0 -21
  349. package/dist/esm/paneview/defaultPaneviewHeader.js +0 -65
  350. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +0 -38
  351. package/dist/esm/paneview/draggablePaneviewPanel.js +0 -107
  352. package/dist/esm/paneview/options.d.ts +0 -30
  353. package/dist/esm/paneview/options.js +0 -22
  354. package/dist/esm/paneview/paneview.d.ts +0 -41
  355. package/dist/esm/paneview/paneview.js +0 -148
  356. package/dist/esm/paneview/paneviewComponent.d.ts +0 -133
  357. package/dist/esm/paneview/paneviewComponent.js +0 -306
  358. package/dist/esm/paneview/paneviewPanel.d.ts +0 -98
  359. package/dist/esm/paneview/paneviewPanel.js +0 -192
  360. package/dist/esm/popoutWindow.d.ts +0 -38
  361. package/dist/esm/popoutWindow.js +0 -170
  362. package/dist/esm/resizable.d.ts +0 -12
  363. package/dist/esm/resizable.js +0 -66
  364. package/dist/esm/scrollbar.d.ts +0 -15
  365. package/dist/esm/scrollbar.js +0 -139
  366. package/dist/esm/splitview/options.d.ts +0 -21
  367. package/dist/esm/splitview/options.js +0 -16
  368. package/dist/esm/splitview/splitview.d.ts +0 -145
  369. package/dist/esm/splitview/splitview.js +0 -770
  370. package/dist/esm/splitview/splitviewComponent.d.ts +0 -101
  371. package/dist/esm/splitview/splitviewComponent.js +0 -267
  372. package/dist/esm/splitview/splitviewPanel.d.ts +0 -45
  373. package/dist/esm/splitview/splitviewPanel.js +0 -108
  374. package/dist/esm/splitview/viewItem.d.ts +0 -25
  375. package/dist/esm/splitview/viewItem.js +0 -74
  376. package/dist/esm/svg.d.ts +0 -3
  377. package/dist/esm/svg.js +0 -31
  378. package/dist/esm/types.d.ts +0 -31
  379. package/dist/esm/types.js +0 -1
  380. package/dist/styles/dockview.css +0 -3436
@@ -1,175 +0,0 @@
1
- import { Emitter } from '../events';
2
- import { remove } from '../array';
3
- import { defineModule } from './modules';
4
- export class PopoutWindowService {
5
- constructor(host) {
6
- this._entries = [];
7
- this._popupServices = new Map();
8
- this._restorationCleanups = new Set();
9
- this._restorationPromise = Promise.resolve();
10
- this._onDidRemove = new Emitter();
11
- this.onDidRemove = this._onDidRemove.event;
12
- this._host = host;
13
- }
14
- get entries() {
15
- return this._entries;
16
- }
17
- get restorationPromise() {
18
- return this._restorationPromise;
19
- }
20
- add(entry) {
21
- this._entries.push(entry);
22
- }
23
- remove(entry) {
24
- // Fire only on a genuine removal, and not while the host component is
25
- // tearing down (consumers don't want popout-removed events during
26
- // dispose).
27
- if (remove(this._entries, entry) && !this._host.isDisposed) {
28
- this._onDidRemove.fire(entry);
29
- }
30
- }
31
- findByGroup(group) {
32
- // A popout window may host several groups in a nested gridview, so
33
- // match by membership (DOM containment) rather than only the anchor.
34
- return this._entries.find((entry) => entry.popoutGroup === group ||
35
- entry.gridview.element.contains(group.element));
36
- }
37
- findReferenceGroupId(group) {
38
- var _a;
39
- return (_a = this._entries.find((entry) => entry.popoutGroup === group)) === null || _a === void 0 ? void 0 : _a.referenceGroup;
40
- }
41
- /**
42
- * The popout window's innerWidth/innerHeight are often 0/stale until it has
43
- * painted, and the nested gridview lays its children out to the size passed
44
- * to layout() (a plain group fills via CSS instead). To stop content
45
- * rendering into a zero box until a manual resize — and to avoid the race a
46
- * fixed number of animation frames had — observe the gridview element with
47
- * a ResizeObserver created in the POPOUT window's OWN realm. A parent-realm
48
- * observer fires unreliably across the window boundary; a same-realm one
49
- * fires reliably, including the initial observation once the window is
50
- * sized.
51
- *
52
- * @returns a disposable that disconnects the observer, or `undefined` when
53
- * the popout realm has no ResizeObserver (e.g. jsdom).
54
- */
55
- observeGridviewSize(popoutWindow, gridview, overlayRenderContainer) {
56
- var _a;
57
- const PopoutResizeObserver = (_a = popoutWindow.window) === null || _a === void 0 ? void 0 : _a.ResizeObserver;
58
- if (!PopoutResizeObserver) {
59
- return undefined;
60
- }
61
- let lastWidth = -1;
62
- let lastHeight = -1;
63
- const relayout = () => {
64
- const win = popoutWindow.window;
65
- if (this._host.isDisposed || !win || win.closed) {
66
- return;
67
- }
68
- const width = Math.round(gridview.element.clientWidth);
69
- const height = Math.round(gridview.element.clientHeight);
70
- if (width === lastWidth && height === lastHeight) {
71
- return;
72
- }
73
- lastWidth = width;
74
- lastHeight = height;
75
- if (width > 0 && height > 0) {
76
- gridview.layout(width, height);
77
- }
78
- overlayRenderContainer.updateAllPositions();
79
- };
80
- const observer = new PopoutResizeObserver(() => {
81
- var _a;
82
- // Defer out of the observer callback into the popout's own frame to
83
- // size against the settled layout and to avoid resize-loop warnings.
84
- const raf = (_a = popoutWindow.window) === null || _a === void 0 ? void 0 : _a.requestAnimationFrame;
85
- if (raf) {
86
- raf.call(popoutWindow.window, relayout);
87
- }
88
- else {
89
- relayout();
90
- }
91
- });
92
- observer.observe(gridview.element);
93
- return { dispose: () => observer.disconnect() };
94
- }
95
- getPopupService(groupId) {
96
- return this._popupServices.get(groupId);
97
- }
98
- setPopupService(groupId, service) {
99
- this._popupServices.set(groupId, service);
100
- }
101
- deletePopupService(groupId) {
102
- this._popupServices.delete(groupId);
103
- }
104
- scheduleRestoration(delayMs, work, onCancel) {
105
- return new Promise((resolve) => {
106
- const cleanup = () => {
107
- this._restorationCleanups.delete(cleanup);
108
- clearTimeout(handle);
109
- onCancel === null || onCancel === void 0 ? void 0 : onCancel();
110
- resolve();
111
- };
112
- const handle = setTimeout(() => {
113
- this._restorationCleanups.delete(cleanup);
114
- // Guard against the component being disposed before this
115
- // timer fires. Under React StrictMode the component is
116
- // mounted -> disposed -> remounted, and without this guard
117
- // the first instance's queued restoration would open a
118
- // second popout window. See issue #851.
119
- if (this._host.isDisposed) {
120
- resolve();
121
- return;
122
- }
123
- work();
124
- resolve();
125
- }, delayMs);
126
- this._restorationCleanups.add(cleanup);
127
- });
128
- }
129
- finishRestoration(promises) {
130
- this._restorationPromise = Promise.all(promises).then(() => void 0);
131
- }
132
- cancelPendingRestorations() {
133
- for (const cleanup of [...this._restorationCleanups]) {
134
- cleanup();
135
- }
136
- this._restorationCleanups.clear();
137
- }
138
- serialize() {
139
- return this._entries.map((entry) => {
140
- const grid = entry.gridview.serialize();
141
- const root = grid.root;
142
- const url = entry.popoutGroup.api.location.type === 'popout'
143
- ? entry.popoutGroup.api.location.popoutUrl
144
- : undefined;
145
- const base = {
146
- gridReferenceGroup: entry.referenceGroup,
147
- position: entry.window.dimensions(),
148
- url,
149
- };
150
- // Single-group window keeps the legacy `data` shape so layouts
151
- // round-trip byte-stably and older readers keep working.
152
- if (root.type === 'branch' &&
153
- root.data.length === 1 &&
154
- root.data[0].type === 'leaf') {
155
- return Object.assign(Object.assign({}, base), { data: root.data[0].data });
156
- }
157
- return Object.assign(Object.assign({}, base), { grid });
158
- });
159
- }
160
- disposeAll() {
161
- for (const entry of [...this._entries]) {
162
- entry.disposable.dispose();
163
- }
164
- }
165
- dispose() {
166
- this.cancelPendingRestorations();
167
- this.disposeAll();
168
- this._onDidRemove.dispose();
169
- }
170
- }
171
- export const PopoutWindowModule = defineModule({
172
- name: 'PopoutWindow',
173
- serviceKey: 'popoutWindowService',
174
- create: (host) => new PopoutWindowService(host),
175
- });
@@ -1,35 +0,0 @@
1
- import { IDisposable } from '../lifecycle';
2
- import { Event } from '../events';
3
- import { DroptargetEvent, DropTargetTargetModel, Position, WillShowOverlayEvent } from '../dnd/droptarget';
4
- import { DockviewComponentOptions } from './options';
5
- export interface IRootDropTargetHost {
6
- readonly id: string;
7
- readonly element: HTMLElement;
8
- readonly options: DockviewComponentOptions;
9
- isGridEmpty(): boolean;
10
- rootDropTargetOverrideTarget(): DropTargetTargetModel | undefined;
11
- /**
12
- * Build, fire, and return the verdict for an unhandled-drag-over event.
13
- * Implemented on the component side so the service stays free of
14
- * circular imports with the event class declared in dockviewComponent.
15
- */
16
- dispatchUnhandledDragOver(nativeEvent: DragEvent | PointerEvent, position: Position): boolean;
17
- }
18
- export interface IRootDropTargetService extends IDisposable {
19
- /** Merged stream from both DnD backends. */
20
- readonly onWillShowOverlay: Event<WillShowOverlayEvent>;
21
- /** Merged stream from both DnD backends. */
22
- readonly onDrop: Event<DroptargetEvent>;
23
- /** Apply changed options (dndEdges). */
24
- setOptions(options: Partial<DockviewComponentOptions>): void;
25
- }
26
- export declare class RootDropTargetService implements IRootDropTargetService {
27
- private readonly _html5Target;
28
- private readonly _pointerTarget;
29
- readonly onWillShowOverlay: Event<WillShowOverlayEvent>;
30
- readonly onDrop: Event<DroptargetEvent>;
31
- constructor(host: IRootDropTargetHost);
32
- setOptions(options: Partial<DockviewComponentOptions>): void;
33
- dispose(): void;
34
- }
35
- export declare const RootDropTargetModule: import("./modules").DockviewModule<IRootDropTargetHost>;
@@ -1,82 +0,0 @@
1
- import { Event } from '../events';
2
- import { html5Backend, pointerBackend } from '../dnd/backend';
3
- import { getPanelData } from '../dnd/dataTransfer';
4
- import { defineModule } from './modules';
5
- const DEFAULT_ROOT_OVERLAY_MODEL = {
6
- activationSize: { type: 'pixels', value: 10 },
7
- size: { type: 'pixels', value: 20 },
8
- };
9
- export class RootDropTargetService {
10
- constructor(host) {
11
- const canDisplayOverlay = (event, position) => {
12
- const data = getPanelData();
13
- if (data) {
14
- if (data.viewId !== host.id) {
15
- return false;
16
- }
17
- if (position === 'center') {
18
- // center drop target only allowed if no panels in primary
19
- // grid; floating panels are allowed
20
- return host.isGridEmpty();
21
- }
22
- return true;
23
- }
24
- if (position === 'center' && !host.isGridEmpty()) {
25
- // for external events only show the four-corner drag overlays,
26
- // disable center so external drag events can fall through to
27
- // the group and panel drop target handlers
28
- return false;
29
- }
30
- return host.dispatchUnhandledDragOver(event, position);
31
- };
32
- const overlayModel = typeof host.options.dndEdges === 'object' &&
33
- host.options.dndEdges !== null
34
- ? host.options.dndEdges
35
- : DEFAULT_ROOT_OVERLAY_MODEL;
36
- this._html5Target = html5Backend.createDropTarget(host.element, {
37
- className: 'dv-drop-target-edge',
38
- canDisplayOverlay,
39
- acceptedTargetZones: ['top', 'bottom', 'left', 'right', 'center'],
40
- overlayModel,
41
- getOverrideTarget: () => host.rootDropTargetOverrideTarget(),
42
- });
43
- this._pointerTarget = pointerBackend.createDropTarget(host.element, {
44
- className: 'dv-drop-target-edge',
45
- canDisplayOverlay,
46
- acceptedTargetZones: ['top', 'bottom', 'left', 'right', 'center'],
47
- overlayModel,
48
- getOverrideTarget: () => host.rootDropTargetOverrideTarget(),
49
- });
50
- this.onWillShowOverlay = Event.any(this._html5Target.onWillShowOverlay, this._pointerTarget.onWillShowOverlay);
51
- this.onDrop = Event.any(this._html5Target.onDrop, this._pointerTarget.onDrop);
52
- // Apply initial-state options now that the targets exist; setOptions
53
- // handles dndEdges (disable + overlay model) and late changes.
54
- this.setOptions(host.options);
55
- }
56
- setOptions(options) {
57
- if ('dndEdges' in options) {
58
- const disabled = typeof options.dndEdges === 'boolean' &&
59
- options.dndEdges === false;
60
- this._html5Target.disabled = disabled;
61
- this._pointerTarget.disabled = disabled;
62
- if (typeof options.dndEdges === 'object' &&
63
- options.dndEdges !== null) {
64
- this._html5Target.setOverlayModel(options.dndEdges);
65
- this._pointerTarget.setOverlayModel(options.dndEdges);
66
- }
67
- else {
68
- this._html5Target.setOverlayModel(DEFAULT_ROOT_OVERLAY_MODEL);
69
- this._pointerTarget.setOverlayModel(DEFAULT_ROOT_OVERLAY_MODEL);
70
- }
71
- }
72
- }
73
- dispose() {
74
- this._html5Target.dispose();
75
- this._pointerTarget.dispose();
76
- }
77
- }
78
- export const RootDropTargetModule = defineModule({
79
- name: 'RootDropTarget',
80
- serviceKey: 'rootDropTargetService',
81
- create: (host) => new RootDropTargetService(host),
82
- });
@@ -1,7 +0,0 @@
1
- import { CompositeDisposable } from '../lifecycle';
2
- import { DockviewComponent } from './dockviewComponent';
3
- export declare class StrictEventsSequencing extends CompositeDisposable {
4
- private readonly accessor;
5
- constructor(accessor: DockviewComponent);
6
- private init;
7
- }
@@ -1,41 +0,0 @@
1
- import { CompositeDisposable } from '../lifecycle';
2
- export class StrictEventsSequencing extends CompositeDisposable {
3
- constructor(accessor) {
4
- super();
5
- this.accessor = accessor;
6
- this.init();
7
- }
8
- init() {
9
- const panels = new Set();
10
- const groups = new Set();
11
- this.addDisposables(this.accessor.onDidAddPanel((panel) => {
12
- if (panels.has(panel.api.id)) {
13
- throw new Error(`dockview: Invalid event sequence. [onDidAddPanel] called for panel ${panel.api.id} but panel already exists`);
14
- }
15
- else {
16
- panels.add(panel.api.id);
17
- }
18
- }), this.accessor.onDidRemovePanel((panel) => {
19
- if (panels.has(panel.api.id)) {
20
- panels.delete(panel.api.id);
21
- }
22
- else {
23
- throw new Error(`dockview: Invalid event sequence. [onDidRemovePanel] called for panel ${panel.api.id} but panel does not exists`);
24
- }
25
- }), this.accessor.onDidAddGroup((group) => {
26
- if (groups.has(group.api.id)) {
27
- throw new Error(`dockview: Invalid event sequence. [onDidAddGroup] called for group ${group.api.id} but group already exists`);
28
- }
29
- else {
30
- groups.add(group.api.id);
31
- }
32
- }), this.accessor.onDidRemoveGroup((group) => {
33
- if (groups.has(group.api.id)) {
34
- groups.delete(group.api.id);
35
- }
36
- else {
37
- throw new Error(`dockview: Invalid event sequence. [onDidRemoveGroup] called for group ${group.api.id} but group does not exists`);
38
- }
39
- }));
40
- }
41
- }
@@ -1,99 +0,0 @@
1
- import { Event } from '../events';
2
- import { CompositeDisposable } from '../lifecycle';
3
- /**
4
- * The accent color associated with a tab group.
5
- *
6
- * This is any CSS color expression: a palette id (e.g. `'grey'`, `'blue'`),
7
- * a raw color literal (`'#abc123'`, `'rgb(0,0,0)'`), or `undefined` to inherit
8
- * the default. Resolution to a concrete CSS value is handled by the
9
- * dockview's `TabGroupColorPalette` (see `tabGroupAccent.ts`).
10
- */
11
- export type DockviewTabGroupColor = string;
12
- export interface SerializedTabGroup {
13
- id: string;
14
- label?: string;
15
- color?: string;
16
- collapsed: boolean;
17
- panelIds: string[];
18
- componentParams?: Record<string, unknown>;
19
- }
20
- export interface TabGroupOptions {
21
- label?: string;
22
- color?: string;
23
- collapsed?: boolean;
24
- /**
25
- * Free-form data passed to a custom chip renderer
26
- * (`createTabGroupChipComponent`). Read via `tabGroup.componentParams`
27
- * inside the renderer's `init` / `update`. Must be JSON-serializable to
28
- * round-trip through layout serialization.
29
- */
30
- componentParams?: Record<string, unknown>;
31
- }
32
- export interface ITabGroup {
33
- readonly id: string;
34
- readonly label: string;
35
- readonly color: string | undefined;
36
- readonly collapsed: boolean;
37
- readonly panelIds: readonly string[];
38
- readonly size: number;
39
- readonly isEmpty: boolean;
40
- readonly componentParams: Record<string, unknown> | undefined;
41
- readonly onDidChange: Event<void>;
42
- readonly onDidPanelChange: Event<{
43
- panelId: string;
44
- type: 'add' | 'remove';
45
- }>;
46
- readonly onDidCollapseChange: Event<boolean>;
47
- readonly onDidDestroy: Event<void>;
48
- addPanel(panelId: string, index?: number): void;
49
- removePanel(panelId: string): boolean;
50
- indexOfPanel(panelId: string): number;
51
- containsPanel(panelId: string): boolean;
52
- setLabel(value: string): void;
53
- setColor(value: string | undefined): void;
54
- setComponentParams(value: Record<string, unknown> | undefined): void;
55
- collapse(): void;
56
- expand(): void;
57
- toggle(): void;
58
- toJSON(): SerializedTabGroup;
59
- dispose(): void;
60
- }
61
- export declare class TabGroup extends CompositeDisposable implements ITabGroup {
62
- readonly id: string;
63
- private _label;
64
- private _color;
65
- private _collapsed;
66
- private _componentParams;
67
- private readonly _panelIds;
68
- private readonly _onDidChange;
69
- readonly onDidChange: Event<void>;
70
- private readonly _onDidPanelChange;
71
- readonly onDidPanelChange: Event<{
72
- panelId: string;
73
- type: "add" | "remove";
74
- }>;
75
- private readonly _onDidCollapseChange;
76
- readonly onDidCollapseChange: Event<boolean>;
77
- private readonly _onDidDestroy;
78
- readonly onDidDestroy: Event<void>;
79
- get label(): string;
80
- get color(): string | undefined;
81
- get componentParams(): Record<string, unknown> | undefined;
82
- setLabel(value: string): void;
83
- setColor(value: string | undefined): void;
84
- setComponentParams(value: Record<string, unknown> | undefined): void;
85
- get collapsed(): boolean;
86
- get panelIds(): readonly string[];
87
- get size(): number;
88
- get isEmpty(): boolean;
89
- constructor(id: string, options?: TabGroupOptions);
90
- addPanel(panelId: string, index?: number): void;
91
- removePanel(panelId: string): boolean;
92
- indexOfPanel(panelId: string): number;
93
- containsPanel(panelId: string): boolean;
94
- collapse(): void;
95
- expand(): void;
96
- toggle(): void;
97
- toJSON(): SerializedTabGroup;
98
- dispose(): void;
99
- }
@@ -1,144 +0,0 @@
1
- import { Emitter } from '../events';
2
- import { CompositeDisposable } from '../lifecycle';
3
- export class TabGroup extends CompositeDisposable {
4
- get label() {
5
- return this._label;
6
- }
7
- get color() {
8
- return this._color;
9
- }
10
- get componentParams() {
11
- return this._componentParams;
12
- }
13
- setLabel(value) {
14
- if (this.isDisposed || this._label === value) {
15
- return;
16
- }
17
- this._label = value;
18
- this._onDidChange.fire();
19
- }
20
- setColor(value) {
21
- if (this.isDisposed) {
22
- return;
23
- }
24
- const next = value === '' ? undefined : value;
25
- if (this._color === next) {
26
- return;
27
- }
28
- this._color = next;
29
- this._onDidChange.fire();
30
- }
31
- setComponentParams(value) {
32
- if (this.isDisposed) {
33
- return;
34
- }
35
- this._componentParams = value;
36
- this._onDidChange.fire();
37
- }
38
- get collapsed() {
39
- return this._collapsed;
40
- }
41
- get panelIds() {
42
- return this._panelIds;
43
- }
44
- get size() {
45
- return this._panelIds.length;
46
- }
47
- get isEmpty() {
48
- return this._panelIds.length === 0;
49
- }
50
- constructor(id, options) {
51
- var _a, _b;
52
- super();
53
- this.id = id;
54
- this._collapsed = false;
55
- this._panelIds = [];
56
- this._onDidChange = new Emitter();
57
- this.onDidChange = this._onDidChange.event;
58
- this._onDidPanelChange = new Emitter();
59
- this.onDidPanelChange = this._onDidPanelChange.event;
60
- this._onDidCollapseChange = new Emitter();
61
- this.onDidCollapseChange = this._onDidCollapseChange.event;
62
- this._onDidDestroy = new Emitter();
63
- this.onDidDestroy = this._onDidDestroy.event;
64
- this._label = (_a = options === null || options === void 0 ? void 0 : options.label) !== null && _a !== void 0 ? _a : '';
65
- this._color = (options === null || options === void 0 ? void 0 : options.color) === '' ? undefined : options === null || options === void 0 ? void 0 : options.color;
66
- this._collapsed = (_b = options === null || options === void 0 ? void 0 : options.collapsed) !== null && _b !== void 0 ? _b : false;
67
- this._componentParams = options === null || options === void 0 ? void 0 : options.componentParams;
68
- this.addDisposables(this._onDidChange, this._onDidPanelChange, this._onDidCollapseChange, this._onDidDestroy);
69
- }
70
- addPanel(panelId, index) {
71
- if (this.isDisposed) {
72
- return;
73
- }
74
- if (this._panelIds.includes(panelId)) {
75
- return;
76
- }
77
- const insertIndex = index === undefined
78
- ? this._panelIds.length
79
- : Math.max(0, Math.min(index, this._panelIds.length));
80
- this._panelIds.splice(insertIndex, 0, panelId);
81
- this._onDidPanelChange.fire({ panelId, type: 'add' });
82
- }
83
- removePanel(panelId) {
84
- if (this.isDisposed) {
85
- return false;
86
- }
87
- const index = this._panelIds.indexOf(panelId);
88
- if (index === -1) {
89
- return false;
90
- }
91
- this._panelIds.splice(index, 1);
92
- this._onDidPanelChange.fire({ panelId, type: 'remove' });
93
- return true;
94
- }
95
- indexOfPanel(panelId) {
96
- return this._panelIds.indexOf(panelId);
97
- }
98
- containsPanel(panelId) {
99
- return this._panelIds.includes(panelId);
100
- }
101
- collapse() {
102
- if (this.isDisposed || this._collapsed) {
103
- return;
104
- }
105
- this._collapsed = true;
106
- this._onDidCollapseChange.fire(true);
107
- }
108
- expand() {
109
- if (this.isDisposed || !this._collapsed) {
110
- return;
111
- }
112
- this._collapsed = false;
113
- this._onDidCollapseChange.fire(false);
114
- }
115
- toggle() {
116
- if (this._collapsed) {
117
- this.expand();
118
- }
119
- else {
120
- this.collapse();
121
- }
122
- }
123
- toJSON() {
124
- const result = {
125
- id: this.id,
126
- collapsed: this._collapsed,
127
- panelIds: [...this._panelIds],
128
- };
129
- if (this._label) {
130
- result.label = this._label;
131
- }
132
- if (this._color !== undefined) {
133
- result.color = this._color;
134
- }
135
- if (this._componentParams !== undefined) {
136
- result.componentParams = this._componentParams;
137
- }
138
- return result;
139
- }
140
- dispose() {
141
- this._onDidDestroy.fire();
142
- super.dispose();
143
- }
144
- }
@@ -1,65 +0,0 @@
1
- /**
2
- * A single entry in the tab-group color palette.
3
- *
4
- * `id` is the value stored on `ITabGroup.color` and serialized in
5
- * `SerializedTabGroup.color`. `value` is any CSS color expression — a hex
6
- * literal, an rgb()/hsl()/oklch() function, or a `var(...)` reference.
7
- *
8
- * The default palette ships with `var(--dv-tab-group-color-${id})` values so
9
- * themes can override the defaults purely in CSS. User-supplied palettes
10
- * typically use raw color literals.
11
- */
12
- export interface DockviewTabGroupColorEntry {
13
- id: string;
14
- value: string;
15
- label?: string;
16
- }
17
- export declare const DEFAULT_TAB_GROUP_COLORS: readonly DockviewTabGroupColorEntry[];
18
- /**
19
- * Runtime palette for tab-group color accents.
20
- *
21
- * Resolves a stored `color` string to a CSS color expression, with three
22
- * fall-through modes:
23
- * 1. `id` matches an entry → entry's `value`
24
- * 2. `id` doesn't match → `id` itself (raw CSS literal pass-through)
25
- * 3. `id` is empty or undefined → undefined (caller skips assignment)
26
- *
27
- * When `enabled` is false the palette returns undefined for everything; this
28
- * is the `tabGroupAccent: 'off'` opt-out path.
29
- */
30
- export declare class TabGroupColorPalette {
31
- private _entries;
32
- private _byId;
33
- private _enabled;
34
- constructor(entries: readonly DockviewTabGroupColorEntry[], enabled?: boolean);
35
- get enabled(): boolean;
36
- set enabled(value: boolean);
37
- /**
38
- * Replace the entry list in place. Used by `updateOptions` so that
39
- * existing palette references (held by chips, indicators, etc.) see
40
- * the new palette without needing to be re-wired.
41
- */
42
- setEntries(entries: readonly DockviewTabGroupColorEntry[]): void;
43
- entries(): readonly DockviewTabGroupColorEntry[];
44
- has(id: string): boolean;
45
- get(id: string): DockviewTabGroupColorEntry | undefined;
46
- /** First entry's id; used as the default when a color is unset. */
47
- defaultId(): string | undefined;
48
- /**
49
- * Resolve a stored color to its CSS value, or undefined if no value
50
- * should be written (palette disabled, or color empty/undefined).
51
- */
52
- resolveValue(color: string | undefined): string | undefined;
53
- }
54
- /**
55
- * Set the `--dv-tab-group-color` custom property on `el` to the resolved
56
- * accent value, or remove it when the palette is disabled / color is unset.
57
- */
58
- export declare function applyTabGroupAccent(el: HTMLElement, color: string | undefined, palette: TabGroupColorPalette | undefined): void;
59
- /**
60
- * Return the resolved CSS color for a tab group, or undefined when the
61
- * palette is disabled or no color is set. Use this when you need the raw
62
- * value to assign to a non-custom-property style (e.g. SVG stroke,
63
- * backgroundColor on the indicator underline).
64
- */
65
- export declare function resolveTabGroupAccent(color: string | undefined, palette: TabGroupColorPalette | undefined): string | undefined;