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.
- package/LICENCE.md +21 -0
- package/README.md +17 -86
- package/dist/cjs/api/component.api.d.ts +100 -9
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts +45 -1
- package/dist/cjs/api/dockviewPanelApi.d.ts +21 -0
- package/dist/cjs/dismissableLayer.d.ts +57 -0
- package/dist/cjs/dnd/backend.d.ts +2 -2
- package/dist/cjs/dnd/dataTransfer.d.ts +1 -0
- package/dist/cjs/dnd/dropTargetAnchorContainer.d.ts +12 -0
- package/dist/cjs/dnd/droptarget.d.ts +94 -0
- package/dist/cjs/dnd/ghost.d.ts +1 -0
- package/dist/cjs/dnd/pointer/longPress.d.ts +2 -2
- package/dist/cjs/dnd/pointer/pointerDragController.d.ts +5 -2
- package/dist/cjs/dnd/pointer/pointerDragSource.d.ts +1 -1
- package/dist/cjs/dnd/pointer/pointerDropTarget.d.ts +30 -1
- package/dist/cjs/dnd/pointer/pointerGhost.d.ts +1 -1
- package/dist/cjs/dockview/accessibilityMessages.d.ts +6 -0
- package/dist/cjs/dockview/advancedDnDService.d.ts +31 -0
- package/dist/cjs/dockview/components/panel/content.d.ts +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +2 -0
- package/dist/cjs/dockview/components/tab/tab.d.ts +2 -0
- package/dist/cjs/dockview/components/titlebar/floatingTitleBar.d.ts +2 -2
- package/dist/cjs/dockview/components/titlebar/groupDragSource.d.ts +1 -1
- package/dist/cjs/dockview/components/titlebar/tabGroupChip.d.ts +1 -1
- package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.d.ts +73 -2
- package/dist/cjs/dockview/components/titlebar/tabGroups.d.ts +1 -1
- package/dist/cjs/dockview/components/titlebar/tabReorderController.d.ts +295 -0
- package/dist/cjs/dockview/components/titlebar/tabs.d.ts +120 -50
- package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +48 -0
- package/dist/cjs/dockview/dndCapabilities.d.ts +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +307 -19
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +5 -0
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +76 -2
- package/dist/cjs/dockview/dockviewPanel.d.ts +12 -0
- package/dist/cjs/dockview/dockviewShell.d.ts +48 -24
- package/dist/cjs/dockview/edgeGroupService.d.ts +20 -0
- package/dist/cjs/dockview/events.d.ts +6 -0
- package/dist/cjs/dockview/liveRegionService.d.ts +18 -5
- package/dist/cjs/dockview/moduleContracts.d.ts +485 -14
- package/dist/cjs/dockview/modules.d.ts +101 -22
- package/dist/cjs/dockview/options.d.ts +336 -30
- package/dist/cjs/dockview/optionsModules.d.ts +73 -0
- package/dist/cjs/dockview/popoutWindowService.d.ts +15 -10
- package/dist/cjs/dockview/rootDropTargetService.d.ts +11 -0
- package/dist/cjs/dockview/tabGroup.d.ts +3 -0
- package/dist/cjs/dockview/tabGroupAccent.d.ts +1 -1
- package/dist/cjs/dockview/tabGroupChipsService.d.ts +10 -0
- package/dist/cjs/dockview/theme.d.ts +2 -2
- package/dist/cjs/dockview/types.d.ts +3 -0
- package/dist/cjs/dom.d.ts +9 -1
- package/dist/cjs/events.d.ts +1 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +2 -2
- package/dist/cjs/gridview/branchNode.d.ts +16 -0
- package/dist/cjs/gridview/gridview.d.ts +2 -0
- package/dist/cjs/index.d.ts +35 -29
- package/dist/cjs/lifecycle.d.ts +1 -0
- package/dist/cjs/overlay/overlay.d.ts +4 -2
- package/dist/cjs/overlay/overlayRenderContainer.d.ts +8 -0
- package/dist/cjs/paneview/paneview.d.ts +2 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +3 -0
- package/dist/cjs/paneview/paneviewPanel.d.ts +5 -0
- package/dist/cjs/scrollbar.d.ts +10 -0
- package/dist/cjs/splitview/viewItem.d.ts +10 -0
- package/dist/cjs/svg.d.ts +1 -0
- package/dist/cjs/types.d.ts +8 -0
- package/dist/dockview-core.js +18513 -19679
- package/dist/dockview-core.min.js +4138 -6
- package/dist/dockview-core.min.noStyle.js +6 -7
- package/dist/dockview-core.noStyle.js +18512 -19656
- package/dist/package/main.cjs.js +18123 -19267
- package/dist/package/main.cjs.min.js +6 -6
- package/dist/package/main.esm.min.mjs +6 -6
- package/dist/package/main.esm.mjs +18081 -19260
- package/package.json +81 -77
- package/dist/cjs/api/component.api.js +0 -1242
- package/dist/cjs/api/dockviewGroupPanelApi.js +0 -200
- package/dist/cjs/api/dockviewPanelApi.js +0 -172
- package/dist/cjs/api/entryPoints.js +0 -27
- package/dist/cjs/api/gridviewPanelApi.js +0 -45
- package/dist/cjs/api/panelApi.js +0 -133
- package/dist/cjs/api/paneviewPanelApi.js +0 -57
- package/dist/cjs/api/splitviewPanelApi.js +0 -47
- package/dist/cjs/array.js +0 -66
- package/dist/cjs/constants.js +0 -11
- package/dist/cjs/dnd/backend.js +0 -171
- package/dist/cjs/dnd/dataTransfer.js +0 -100
- package/dist/cjs/dnd/dnd.js +0 -74
- package/dist/cjs/dnd/dropOverlay.js +0 -197
- package/dist/cjs/dnd/dropTargetAnchorContainer.js +0 -104
- package/dist/cjs/dnd/droptarget.js +0 -362
- package/dist/cjs/dnd/ghost.js +0 -17
- package/dist/cjs/dnd/pointer/index.js +0 -13
- package/dist/cjs/dnd/pointer/longPress.js +0 -151
- package/dist/cjs/dnd/pointer/pointerDragController.js +0 -243
- package/dist/cjs/dnd/pointer/pointerDragSource.js +0 -197
- package/dist/cjs/dnd/pointer/pointerDropTarget.js +0 -198
- package/dist/cjs/dnd/pointer/pointerGhost.js +0 -44
- package/dist/cjs/dnd/pointer/types.js +0 -2
- package/dist/cjs/dockview/accessibilityMessages.js +0 -51
- package/dist/cjs/dockview/allModules.js +0 -25
- package/dist/cjs/dockview/components/panel/content.js +0 -213
- package/dist/cjs/dockview/components/popupService.js +0 -132
- package/dist/cjs/dockview/components/tab/defaultTab.js +0 -70
- package/dist/cjs/dockview/components/tab/tab.js +0 -281
- package/dist/cjs/dockview/components/titlebar/floatingTitleBar.js +0 -95
- package/dist/cjs/dockview/components/titlebar/groupDragSource.js +0 -218
- package/dist/cjs/dockview/components/titlebar/tabGroupChip.js +0 -104
- package/dist/cjs/dockview/components/titlebar/tabGroupIndicator.js +0 -477
- package/dist/cjs/dockview/components/titlebar/tabGroups.js +0 -854
- package/dist/cjs/dockview/components/titlebar/tabOverflowControl.js +0 -19
- package/dist/cjs/dockview/components/titlebar/tabs.js +0 -2016
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +0 -458
- package/dist/cjs/dockview/components/titlebar/voidContainer.js +0 -120
- package/dist/cjs/dockview/components/watermark/watermark.js +0 -40
- package/dist/cjs/dockview/deserializer.js +0 -39
- package/dist/cjs/dockview/dndCapabilities.js +0 -39
- package/dist/cjs/dockview/dockviewComponent.js +0 -3896
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +0 -70
- package/dist/cjs/dockview/dockviewGroupPanel.js +0 -204
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +0 -1514
- package/dist/cjs/dockview/dockviewPanel.js +0 -265
- package/dist/cjs/dockview/dockviewPanelModel.js +0 -105
- package/dist/cjs/dockview/dockviewShell.js +0 -744
- package/dist/cjs/dockview/edgeGroupService.js +0 -128
- package/dist/cjs/dockview/events.js +0 -67
- package/dist/cjs/dockview/floatingGroupService.js +0 -231
- package/dist/cjs/dockview/framework.js +0 -2
- package/dist/cjs/dockview/headerActionsService.js +0 -149
- package/dist/cjs/dockview/liveRegionService.js +0 -185
- package/dist/cjs/dockview/moduleContracts.js +0 -2
- package/dist/cjs/dockview/modules.js +0 -304
- package/dist/cjs/dockview/options.js +0 -103
- package/dist/cjs/dockview/popoutWindowService.js +0 -261
- package/dist/cjs/dockview/rootDropTargetService.js +0 -87
- package/dist/cjs/dockview/strictEventsSequencing.js +0 -63
- package/dist/cjs/dockview/tabGroup.js +0 -219
- package/dist/cjs/dockview/tabGroupAccent.js +0 -126
- package/dist/cjs/dockview/theme.js +0 -139
- package/dist/cjs/dockview/types.js +0 -2
- package/dist/cjs/dockview/validate.js +0 -76
- package/dist/cjs/dockview/watermarkService.js +0 -61
- package/dist/cjs/dom.js +0 -543
- package/dist/cjs/events.js +0 -296
- package/dist/cjs/framwork.js +0 -2
- package/dist/cjs/gridview/baseComponentGridview.js +0 -330
- package/dist/cjs/gridview/basePanelView.js +0 -162
- package/dist/cjs/gridview/branchNode.js +0 -372
- package/dist/cjs/gridview/gridview.js +0 -776
- package/dist/cjs/gridview/gridviewComponent.js +0 -363
- package/dist/cjs/gridview/gridviewPanel.js +0 -249
- package/dist/cjs/gridview/leafNode.js +0 -169
- package/dist/cjs/gridview/options.js +0 -17
- package/dist/cjs/gridview/types.js +0 -2
- package/dist/cjs/index.js +0 -105
- package/dist/cjs/lifecycle.js +0 -80
- package/dist/cjs/math.js +0 -38
- package/dist/cjs/overlay/overlay.js +0 -602
- package/dist/cjs/overlay/overlayRenderContainer.js +0 -309
- package/dist/cjs/panel/types.js +0 -2
- package/dist/cjs/paneview/defaultPaneviewHeader.js +0 -92
- package/dist/cjs/paneview/draggablePaneviewPanel.js +0 -141
- package/dist/cjs/paneview/options.js +0 -44
- package/dist/cjs/paneview/paneview.js +0 -203
- package/dist/cjs/paneview/paneviewComponent.js +0 -430
- package/dist/cjs/paneview/paneviewPanel.js +0 -275
- package/dist/cjs/popoutWindow.js +0 -244
- package/dist/cjs/resizable.js +0 -97
- package/dist/cjs/scrollbar.js +0 -169
- package/dist/cjs/splitview/options.js +0 -19
- package/dist/cjs/splitview/splitview.js +0 -999
- package/dist/cjs/splitview/splitviewComponent.js +0 -401
- package/dist/cjs/splitview/splitviewPanel.js +0 -179
- package/dist/cjs/splitview/viewItem.js +0 -119
- package/dist/cjs/svg.js +0 -43
- package/dist/cjs/types.js +0 -2
- package/dist/dockview-core.min.js.map +0 -1
- package/dist/dockview-core.min.noStyle.js.map +0 -1
- package/dist/esm/api/component.api.d.ts +0 -640
- package/dist/esm/api/component.api.js +0 -887
- package/dist/esm/api/dockviewGroupPanelApi.d.ts +0 -109
- package/dist/esm/api/dockviewGroupPanelApi.js +0 -155
- package/dist/esm/api/dockviewPanelApi.d.ts +0 -84
- package/dist/esm/api/dockviewPanelApi.js +0 -124
- package/dist/esm/api/entryPoints.d.ts +0 -9
- package/dist/esm/api/entryPoints.js +0 -21
- package/dist/esm/api/gridviewPanelApi.d.ts +0 -37
- package/dist/esm/api/gridviewPanelApi.js +0 -23
- package/dist/esm/api/panelApi.d.ts +0 -100
- package/dist/esm/api/panelApi.js +0 -87
- package/dist/esm/api/paneviewPanelApi.d.ts +0 -26
- package/dist/esm/api/paneviewPanelApi.js +0 -27
- package/dist/esm/api/splitviewPanelApi.d.ts +0 -32
- package/dist/esm/api/splitviewPanelApi.js +0 -25
- package/dist/esm/array.d.ts +0 -13
- package/dist/esm/array.js +0 -57
- package/dist/esm/constants.d.ts +0 -8
- package/dist/esm/constants.js +0 -8
- package/dist/esm/dnd/backend.d.ts +0 -70
- package/dist/esm/dnd/backend.js +0 -148
- package/dist/esm/dnd/dataTransfer.d.ts +0 -31
- package/dist/esm/dnd/dataTransfer.js +0 -67
- package/dist/esm/dnd/dnd.d.ts +0 -32
- package/dist/esm/dnd/dnd.js +0 -51
- package/dist/esm/dnd/dropOverlay.d.ts +0 -20
- package/dist/esm/dnd/dropOverlay.js +0 -192
- package/dist/esm/dnd/dropTargetAnchorContainer.d.ts +0 -16
- package/dist/esm/dnd/dropTargetAnchorContainer.js +0 -73
- package/dist/esm/dnd/droptarget.d.ts +0 -116
- package/dist/esm/dnd/droptarget.js +0 -316
- package/dist/esm/dnd/ghost.d.ts +0 -4
- package/dist/esm/dnd/ghost.js +0 -14
- package/dist/esm/dnd/pointer/index.d.ts +0 -11
- package/dist/esm/dnd/pointer/index.js +0 -5
- package/dist/esm/dnd/pointer/longPress.d.ts +0 -32
- package/dist/esm/dnd/pointer/longPress.js +0 -127
- package/dist/esm/dnd/pointer/pointerDragController.d.ts +0 -60
- package/dist/esm/dnd/pointer/pointerDragController.js +0 -193
- package/dist/esm/dnd/pointer/pointerDragSource.d.ts +0 -61
- package/dist/esm/dnd/pointer/pointerDragSource.js +0 -173
- package/dist/esm/dnd/pointer/pointerDropTarget.d.ts +0 -39
- package/dist/esm/dnd/pointer/pointerDropTarget.js +0 -168
- package/dist/esm/dnd/pointer/pointerGhost.d.ts +0 -30
- package/dist/esm/dnd/pointer/pointerGhost.js +0 -39
- package/dist/esm/dnd/pointer/types.d.ts +0 -16
- package/dist/esm/dnd/pointer/types.js +0 -1
- package/dist/esm/dockview/accessibilityMessages.d.ts +0 -32
- package/dist/esm/dockview/accessibilityMessages.js +0 -30
- package/dist/esm/dockview/allModules.d.ts +0 -8
- package/dist/esm/dockview/allModules.js +0 -22
- package/dist/esm/dockview/components/panel/content.d.ts +0 -54
- package/dist/esm/dockview/components/panel/content.js +0 -185
- package/dist/esm/dockview/components/popupService.d.ts +0 -21
- package/dist/esm/dockview/components/popupService.js +0 -108
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +0 -12
- package/dist/esm/dockview/components/tab/defaultTab.js +0 -43
- package/dist/esm/dockview/components/tab/tab.d.ts +0 -44
- package/dist/esm/dockview/components/tab/tab.js +0 -242
- package/dist/esm/dockview/components/titlebar/floatingTitleBar.d.ts +0 -34
- package/dist/esm/dockview/components/titlebar/floatingTitleBar.js +0 -65
- package/dist/esm/dockview/components/titlebar/groupDragSource.d.ts +0 -51
- package/dist/esm/dockview/components/titlebar/groupDragSource.js +0 -178
- package/dist/esm/dockview/components/titlebar/tabGroupChip.d.ts +0 -37
- package/dist/esm/dockview/components/titlebar/tabGroupChip.js +0 -77
- package/dist/esm/dockview/components/titlebar/tabGroupIndicator.d.ts +0 -72
- package/dist/esm/dockview/components/titlebar/tabGroupIndicator.js +0 -360
- package/dist/esm/dockview/components/titlebar/tabGroups.d.ts +0 -107
- package/dist/esm/dockview/components/titlebar/tabGroups.js +0 -621
- package/dist/esm/dockview/components/titlebar/tabOverflowControl.d.ts +0 -8
- package/dist/esm/dockview/components/titlebar/tabOverflowControl.js +0 -16
- package/dist/esm/dockview/components/titlebar/tabs.d.ts +0 -167
- package/dist/esm/dockview/components/titlebar/tabs.js +0 -1653
- package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +0 -104
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +0 -359
- package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +0 -21
- package/dist/esm/dockview/components/titlebar/voidContainer.js +0 -92
- package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -8
- package/dist/esm/dockview/components/watermark/watermark.js +0 -14
- package/dist/esm/dockview/deserializer.d.ts +0 -12
- package/dist/esm/dockview/deserializer.js +0 -34
- package/dist/esm/dockview/dndCapabilities.d.ts +0 -19
- package/dist/esm/dockview/dndCapabilities.js +0 -36
- package/dist/esm/dockview/dockviewComponent.d.ts +0 -626
- package/dist/esm/dockview/dockviewComponent.js +0 -3214
- package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +0 -45
- package/dist/esm/dockview/dockviewFloatingGroupPanel.js +0 -44
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +0 -35
- package/dist/esm/dockview/dockviewGroupPanel.js +0 -142
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +0 -358
- package/dist/esm/dockview/dockviewGroupPanelModel.js +0 -1180
- package/dist/esm/dockview/dockviewPanel.d.ts +0 -69
- package/dist/esm/dockview/dockviewPanel.js +0 -178
- package/dist/esm/dockview/dockviewPanelModel.d.ts +0 -37
- package/dist/esm/dockview/dockviewPanelModel.js +0 -81
- package/dist/esm/dockview/dockviewShell.d.ts +0 -150
- package/dist/esm/dockview/dockviewShell.js +0 -678
- package/dist/esm/dockview/edgeGroupService.d.ts +0 -38
- package/dist/esm/dockview/edgeGroupService.js +0 -63
- package/dist/esm/dockview/events.d.ts +0 -38
- package/dist/esm/dockview/events.js +0 -34
- package/dist/esm/dockview/floatingGroupService.d.ts +0 -37
- package/dist/esm/dockview/floatingGroupService.js +0 -150
- package/dist/esm/dockview/framework.d.ts +0 -65
- package/dist/esm/dockview/framework.js +0 -1
- package/dist/esm/dockview/headerActionsService.d.ts +0 -32
- package/dist/esm/dockview/headerActionsService.js +0 -86
- package/dist/esm/dockview/liveRegionService.d.ts +0 -53
- package/dist/esm/dockview/liveRegionService.js +0 -159
- package/dist/esm/dockview/moduleContracts.d.ts +0 -119
- package/dist/esm/dockview/moduleContracts.js +0 -1
- package/dist/esm/dockview/modules.d.ts +0 -110
- package/dist/esm/dockview/modules.js +0 -170
- package/dist/esm/dockview/options.d.ts +0 -474
- package/dist/esm/dockview/options.js +0 -77
- package/dist/esm/dockview/popoutWindowService.d.ts +0 -95
- package/dist/esm/dockview/popoutWindowService.js +0 -175
- package/dist/esm/dockview/rootDropTargetService.d.ts +0 -35
- package/dist/esm/dockview/rootDropTargetService.js +0 -82
- package/dist/esm/dockview/strictEventsSequencing.d.ts +0 -7
- package/dist/esm/dockview/strictEventsSequencing.js +0 -41
- package/dist/esm/dockview/tabGroup.d.ts +0 -99
- package/dist/esm/dockview/tabGroup.js +0 -144
- package/dist/esm/dockview/tabGroupAccent.d.ts +0 -65
- package/dist/esm/dockview/tabGroupAccent.js +0 -114
- package/dist/esm/dockview/theme.d.ts +0 -86
- package/dist/esm/dockview/theme.js +0 -136
- package/dist/esm/dockview/types.d.ts +0 -53
- package/dist/esm/dockview/types.js +0 -1
- package/dist/esm/dockview/validate.d.ts +0 -0
- package/dist/esm/dockview/validate.js +0 -76
- package/dist/esm/dockview/watermarkService.d.ts +0 -30
- package/dist/esm/dockview/watermarkService.js +0 -56
- package/dist/esm/dom.d.ts +0 -60
- package/dist/esm/dom.js +0 -375
- package/dist/esm/events.d.ts +0 -79
- package/dist/esm/events.js +0 -219
- package/dist/esm/framwork.d.ts +0 -4
- package/dist/esm/framwork.js +0 -1
- package/dist/esm/gridview/baseComponentGridview.d.ts +0 -111
- package/dist/esm/gridview/baseComponentGridview.js +0 -237
- package/dist/esm/gridview/basePanelView.d.ts +0 -40
- package/dist/esm/gridview/basePanelView.js +0 -91
- package/dist/esm/gridview/branchNode.d.ts +0 -57
- package/dist/esm/gridview/branchNode.js +0 -257
- package/dist/esm/gridview/gridview.d.ts +0 -158
- package/dist/esm/gridview/gridview.js +0 -681
- package/dist/esm/gridview/gridviewComponent.d.ts +0 -88
- package/dist/esm/gridview/gridviewComponent.js +0 -265
- package/dist/esm/gridview/gridviewPanel.d.ts +0 -77
- package/dist/esm/gridview/gridviewPanel.js +0 -182
- package/dist/esm/gridview/leafNode.d.ts +0 -34
- package/dist/esm/gridview/leafNode.js +0 -102
- package/dist/esm/gridview/options.d.ts +0 -15
- package/dist/esm/gridview/options.js +0 -14
- package/dist/esm/gridview/types.d.ts +0 -3
- package/dist/esm/gridview/types.js +0 -1
- package/dist/esm/index.d.ts +0 -58
- package/dist/esm/index.js +0 -44
- package/dist/esm/lifecycle.d.ts +0 -25
- package/dist/esm/lifecycle.js +0 -56
- package/dist/esm/math.d.ts +0 -5
- package/dist/esm/math.js +0 -32
- package/dist/esm/overlay/overlay.d.ts +0 -91
- package/dist/esm/overlay/overlay.js +0 -520
- package/dist/esm/overlay/overlayRenderContainer.d.ts +0 -24
- package/dist/esm/overlay/overlayRenderContainer.js +0 -249
- package/dist/esm/panel/types.d.ts +0 -33
- package/dist/esm/panel/types.js +0 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +0 -21
- package/dist/esm/paneview/defaultPaneviewHeader.js +0 -65
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +0 -38
- package/dist/esm/paneview/draggablePaneviewPanel.js +0 -107
- package/dist/esm/paneview/options.d.ts +0 -30
- package/dist/esm/paneview/options.js +0 -22
- package/dist/esm/paneview/paneview.d.ts +0 -41
- package/dist/esm/paneview/paneview.js +0 -148
- package/dist/esm/paneview/paneviewComponent.d.ts +0 -133
- package/dist/esm/paneview/paneviewComponent.js +0 -306
- package/dist/esm/paneview/paneviewPanel.d.ts +0 -98
- package/dist/esm/paneview/paneviewPanel.js +0 -192
- package/dist/esm/popoutWindow.d.ts +0 -38
- package/dist/esm/popoutWindow.js +0 -170
- package/dist/esm/resizable.d.ts +0 -12
- package/dist/esm/resizable.js +0 -66
- package/dist/esm/scrollbar.d.ts +0 -15
- package/dist/esm/scrollbar.js +0 -139
- package/dist/esm/splitview/options.d.ts +0 -21
- package/dist/esm/splitview/options.js +0 -16
- package/dist/esm/splitview/splitview.d.ts +0 -145
- package/dist/esm/splitview/splitview.js +0 -770
- package/dist/esm/splitview/splitviewComponent.d.ts +0 -101
- package/dist/esm/splitview/splitviewComponent.js +0 -267
- package/dist/esm/splitview/splitviewPanel.d.ts +0 -45
- package/dist/esm/splitview/splitviewPanel.js +0 -108
- package/dist/esm/splitview/viewItem.d.ts +0 -25
- package/dist/esm/splitview/viewItem.js +0 -74
- package/dist/esm/svg.d.ts +0 -3
- package/dist/esm/svg.js +0 -31
- package/dist/esm/types.d.ts +0 -31
- package/dist/esm/types.js +0 -1
- package/dist/styles/dockview.css +0 -3436
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { IDisposable, CompositeDisposable } from '../../../lifecycle';
|
|
2
|
-
import { Event } from '../../../events';
|
|
3
|
-
import { Tab } from '../tab/tab';
|
|
4
|
-
import { DockviewGroupPanel } from '../../dockviewGroupPanel';
|
|
5
|
-
import { IDockviewPanel } from '../../dockviewPanel';
|
|
6
|
-
import { DockviewComponent } from '../../dockviewComponent';
|
|
7
|
-
import { DockviewWillShowOverlayLocationEvent } from '../../events';
|
|
8
|
-
import { DockviewHeaderDirection } from '../../options';
|
|
9
|
-
export interface TabDropIndexEvent {
|
|
10
|
-
readonly event: DragEvent | PointerEvent;
|
|
11
|
-
readonly index: number;
|
|
12
|
-
readonly targetTabGroupId?: string | null;
|
|
13
|
-
}
|
|
14
|
-
export interface TabDragEvent {
|
|
15
|
-
/** Narrow with `instanceof DragEvent` before reading `dataTransfer`. */
|
|
16
|
-
readonly nativeEvent: DragEvent | PointerEvent;
|
|
17
|
-
readonly panel: IDockviewPanel;
|
|
18
|
-
}
|
|
19
|
-
export interface GroupDragEvent {
|
|
20
|
-
/** Narrow with `instanceof DragEvent` before reading `dataTransfer`. */
|
|
21
|
-
readonly nativeEvent: DragEvent | PointerEvent;
|
|
22
|
-
readonly group: DockviewGroupPanel;
|
|
23
|
-
}
|
|
24
|
-
export interface ITabsContainer extends IDisposable {
|
|
25
|
-
readonly element: HTMLElement;
|
|
26
|
-
readonly panels: string[];
|
|
27
|
-
readonly size: number;
|
|
28
|
-
readonly onDrop: Event<TabDropIndexEvent>;
|
|
29
|
-
readonly onTabDragStart: Event<TabDragEvent>;
|
|
30
|
-
readonly onGroupDragStart: Event<GroupDragEvent>;
|
|
31
|
-
readonly onWillShowOverlay: Event<DockviewWillShowOverlayLocationEvent>;
|
|
32
|
-
hidden: boolean;
|
|
33
|
-
direction: DockviewHeaderDirection;
|
|
34
|
-
delete(id: string): void;
|
|
35
|
-
indexOf(id: string): number;
|
|
36
|
-
getTabId(panelId: string): string | undefined;
|
|
37
|
-
setActive(isGroupActive: boolean): void;
|
|
38
|
-
setActivePanel(panel: IDockviewPanel): void;
|
|
39
|
-
focusActiveTab(): void;
|
|
40
|
-
isActive(tab: Tab): boolean;
|
|
41
|
-
closePanel(panel: IDockviewPanel): void;
|
|
42
|
-
openPanel(panel: IDockviewPanel, index?: number): void;
|
|
43
|
-
setRightActionsElement(element: HTMLElement | undefined): void;
|
|
44
|
-
setLeftActionsElement(element: HTMLElement | undefined): void;
|
|
45
|
-
setPrefixActionsElement(element: HTMLElement | undefined): void;
|
|
46
|
-
show(): void;
|
|
47
|
-
hide(): void;
|
|
48
|
-
updateDragAndDropState(): void;
|
|
49
|
-
updateTabGroups(): void;
|
|
50
|
-
refreshTabGroupAccent(): void;
|
|
51
|
-
}
|
|
52
|
-
export declare class TabsContainer extends CompositeDisposable implements ITabsContainer {
|
|
53
|
-
private readonly accessor;
|
|
54
|
-
private readonly group;
|
|
55
|
-
private readonly _element;
|
|
56
|
-
private readonly tabs;
|
|
57
|
-
private readonly rightActionsContainer;
|
|
58
|
-
private readonly leftActionsContainer;
|
|
59
|
-
private readonly preActionsContainer;
|
|
60
|
-
private readonly voidContainer;
|
|
61
|
-
private rightActions;
|
|
62
|
-
private leftActions;
|
|
63
|
-
private preActions;
|
|
64
|
-
private _hidden;
|
|
65
|
-
private _direction;
|
|
66
|
-
private dropdownPart;
|
|
67
|
-
private _overflowTabs;
|
|
68
|
-
private _overflowTabGroups;
|
|
69
|
-
private readonly _dropdownDisposable;
|
|
70
|
-
private readonly _onDrop;
|
|
71
|
-
readonly onDrop: Event<TabDropIndexEvent>;
|
|
72
|
-
get onTabDragStart(): Event<TabDragEvent>;
|
|
73
|
-
private readonly _onGroupDragStart;
|
|
74
|
-
readonly onGroupDragStart: Event<GroupDragEvent>;
|
|
75
|
-
private readonly _onWillShowOverlay;
|
|
76
|
-
readonly onWillShowOverlay: Event<DockviewWillShowOverlayLocationEvent>;
|
|
77
|
-
get panels(): string[];
|
|
78
|
-
get size(): number;
|
|
79
|
-
get hidden(): boolean;
|
|
80
|
-
set hidden(value: boolean);
|
|
81
|
-
get direction(): DockviewHeaderDirection;
|
|
82
|
-
set direction(value: DockviewHeaderDirection);
|
|
83
|
-
get element(): HTMLElement;
|
|
84
|
-
constructor(accessor: DockviewComponent, group: DockviewGroupPanel);
|
|
85
|
-
show(): void;
|
|
86
|
-
hide(): void;
|
|
87
|
-
setRightActionsElement(element: HTMLElement | undefined): void;
|
|
88
|
-
setLeftActionsElement(element: HTMLElement | undefined): void;
|
|
89
|
-
setPrefixActionsElement(element: HTMLElement | undefined): void;
|
|
90
|
-
isActive(tab: Tab): boolean;
|
|
91
|
-
indexOf(id: string): number;
|
|
92
|
-
getTabId(panelId: string): string | undefined;
|
|
93
|
-
setActive(_isGroupActive: boolean): void;
|
|
94
|
-
delete(id: string): void;
|
|
95
|
-
setActivePanel(panel: IDockviewPanel): void;
|
|
96
|
-
focusActiveTab(): void;
|
|
97
|
-
openPanel(panel: IDockviewPanel, index?: number): void;
|
|
98
|
-
closePanel(panel: IDockviewPanel): void;
|
|
99
|
-
private updateClassnames;
|
|
100
|
-
private toggleDropdown;
|
|
101
|
-
updateDragAndDropState(): void;
|
|
102
|
-
updateTabGroups(): void;
|
|
103
|
-
refreshTabGroupAccent(): void;
|
|
104
|
-
}
|
|
@@ -1,359 +0,0 @@
|
|
|
1
|
-
import { CompositeDisposable, Disposable, MutableDisposable, } from '../../../lifecycle';
|
|
2
|
-
import { addDisposableListener, Emitter } from '../../../events';
|
|
3
|
-
import { VoidContainer } from './voidContainer';
|
|
4
|
-
import { addClasses, findRelativeZIndexParent, removeClasses, toggleClass, } from '../../../dom';
|
|
5
|
-
import { DockviewWillShowOverlayLocationEvent } from '../../events';
|
|
6
|
-
import { getPanelData } from '../../../dnd/dataTransfer';
|
|
7
|
-
import { Tabs } from './tabs';
|
|
8
|
-
import { createDropdownElementHandle, } from './tabOverflowControl';
|
|
9
|
-
import { applyTabGroupAccent } from '../../tabGroupAccent';
|
|
10
|
-
export class TabsContainer extends CompositeDisposable {
|
|
11
|
-
get onTabDragStart() {
|
|
12
|
-
return this.tabs.onTabDragStart;
|
|
13
|
-
}
|
|
14
|
-
get panels() {
|
|
15
|
-
return this.tabs.panels;
|
|
16
|
-
}
|
|
17
|
-
get size() {
|
|
18
|
-
return this.tabs.size;
|
|
19
|
-
}
|
|
20
|
-
get hidden() {
|
|
21
|
-
return this._hidden;
|
|
22
|
-
}
|
|
23
|
-
set hidden(value) {
|
|
24
|
-
this._hidden = value;
|
|
25
|
-
this.element.style.display = value ? 'none' : '';
|
|
26
|
-
}
|
|
27
|
-
get direction() {
|
|
28
|
-
return this._direction;
|
|
29
|
-
}
|
|
30
|
-
set direction(value) {
|
|
31
|
-
this._direction = value;
|
|
32
|
-
if (value === 'vertical') {
|
|
33
|
-
addClasses(this._element, 'dv-groupview-header-vertical');
|
|
34
|
-
addClasses(this.rightActionsContainer, 'dv-right-actions-container-vertical');
|
|
35
|
-
this.tabs.direction = value;
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
removeClasses(this._element, 'dv-groupview-header-vertical');
|
|
39
|
-
removeClasses(this.rightActionsContainer, 'dv-right-actions-container-vertical');
|
|
40
|
-
this.tabs.direction = value;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
get element() {
|
|
44
|
-
return this._element;
|
|
45
|
-
}
|
|
46
|
-
constructor(accessor, group) {
|
|
47
|
-
super();
|
|
48
|
-
this.accessor = accessor;
|
|
49
|
-
this.group = group;
|
|
50
|
-
this._hidden = false;
|
|
51
|
-
this._direction = 'horizontal';
|
|
52
|
-
this.dropdownPart = null;
|
|
53
|
-
this._overflowTabs = [];
|
|
54
|
-
this._overflowTabGroups = [];
|
|
55
|
-
this._dropdownDisposable = new MutableDisposable();
|
|
56
|
-
this._onDrop = new Emitter();
|
|
57
|
-
this.onDrop = this._onDrop.event;
|
|
58
|
-
this._onGroupDragStart = new Emitter();
|
|
59
|
-
this.onGroupDragStart = this._onGroupDragStart.event;
|
|
60
|
-
this._onWillShowOverlay = new Emitter();
|
|
61
|
-
this.onWillShowOverlay = this._onWillShowOverlay.event;
|
|
62
|
-
this._element = document.createElement('div');
|
|
63
|
-
this._element.className = 'dv-tabs-and-actions-container';
|
|
64
|
-
toggleClass(this._element, 'dv-full-width-single-tab', this.accessor.options.singleTabMode === 'fullwidth');
|
|
65
|
-
this.rightActionsContainer = document.createElement('div');
|
|
66
|
-
this.rightActionsContainer.className = 'dv-right-actions-container';
|
|
67
|
-
this.leftActionsContainer = document.createElement('div');
|
|
68
|
-
this.leftActionsContainer.className = 'dv-left-actions-container';
|
|
69
|
-
this.preActionsContainer = document.createElement('div');
|
|
70
|
-
this.preActionsContainer.className = 'dv-pre-actions-container';
|
|
71
|
-
this.tabs = new Tabs(group, accessor, {
|
|
72
|
-
showTabsOverflowControl: !accessor.options.disableTabsOverflowList,
|
|
73
|
-
});
|
|
74
|
-
this.voidContainer = new VoidContainer(this.accessor, this.group);
|
|
75
|
-
this.tabs.voidContainer = this.voidContainer.element;
|
|
76
|
-
this._element.appendChild(this.preActionsContainer);
|
|
77
|
-
this._element.appendChild(this.tabs.element);
|
|
78
|
-
this._element.appendChild(this.leftActionsContainer);
|
|
79
|
-
this._element.appendChild(this.voidContainer.element);
|
|
80
|
-
this._element.appendChild(this.rightActionsContainer);
|
|
81
|
-
this.tabs.setExtendedDropZone(this._element);
|
|
82
|
-
this.addDisposables(this.tabs.onDrop((e) => this._onDrop.fire(e)), this.tabs.onWillShowOverlay((e) => this._onWillShowOverlay.fire(e)), accessor.onDidOptionsChange(() => {
|
|
83
|
-
this.tabs.showTabsOverflowControl =
|
|
84
|
-
!accessor.options.disableTabsOverflowList;
|
|
85
|
-
}), this.tabs.onOverflowTabsChange((event) => {
|
|
86
|
-
this.toggleDropdown(event);
|
|
87
|
-
}), this.tabs, this._onWillShowOverlay, this._onDrop, this._onGroupDragStart, this.voidContainer, this.voidContainer.onDragStart((event) => {
|
|
88
|
-
this._onGroupDragStart.fire({
|
|
89
|
-
nativeEvent: event,
|
|
90
|
-
group: this.group,
|
|
91
|
-
});
|
|
92
|
-
}), this.voidContainer.onDrop((event) => {
|
|
93
|
-
// If an active group drag is in progress, let Tabs handle it
|
|
94
|
-
if (this.tabs.handleVoidDrop()) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
this._onDrop.fire({
|
|
98
|
-
event: event.nativeEvent,
|
|
99
|
-
index: this.tabs.size,
|
|
100
|
-
});
|
|
101
|
-
}), this.voidContainer.onWillShowOverlay((event) => {
|
|
102
|
-
this._onWillShowOverlay.fire(new DockviewWillShowOverlayLocationEvent(event, {
|
|
103
|
-
kind: 'header_space',
|
|
104
|
-
panel: this.group.activePanel,
|
|
105
|
-
api: this.accessor.api,
|
|
106
|
-
group: this.group,
|
|
107
|
-
getData: getPanelData,
|
|
108
|
-
}));
|
|
109
|
-
}), addDisposableListener(this.leftActionsContainer, 'dragleave', (event) => {
|
|
110
|
-
const related = event.relatedTarget;
|
|
111
|
-
if (!this.leftActionsContainer.contains(related) &&
|
|
112
|
-
!this._element.contains(related)) {
|
|
113
|
-
// Left the header entirely
|
|
114
|
-
this.tabs.clearExternalAnimState();
|
|
115
|
-
}
|
|
116
|
-
}), addDisposableListener(this.voidContainer.element, 'dragleave', (event) => {
|
|
117
|
-
const related = event.relatedTarget;
|
|
118
|
-
if (!this.voidContainer.element.contains(related)) {
|
|
119
|
-
if (this._element.contains(related)) {
|
|
120
|
-
// Moved to another part of the header — keep state
|
|
121
|
-
this.tabs.setExternalInsertionIndex(null);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
// Left the header entirely
|
|
125
|
-
this.tabs.clearExternalAnimState();
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}), addDisposableListener(this.voidContainer.element, 'pointerdown', (event) => {
|
|
129
|
-
if (event.defaultPrevented) {
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
const isFloatingGroupsEnabled = !this.accessor.options.disableFloatingGroups;
|
|
133
|
-
if (isFloatingGroupsEnabled &&
|
|
134
|
-
event.shiftKey &&
|
|
135
|
-
this.group.api.location.type !== 'floating' &&
|
|
136
|
-
this.group.api.location.type !== 'edge') {
|
|
137
|
-
event.preventDefault();
|
|
138
|
-
const { top, left } = this.element.getBoundingClientRect();
|
|
139
|
-
const { top: rootTop, left: rootLeft } = this.accessor.element.getBoundingClientRect();
|
|
140
|
-
this.accessor.addFloatingGroup(this.group, {
|
|
141
|
-
x: left - rootLeft + 20,
|
|
142
|
-
y: top - rootTop + 20,
|
|
143
|
-
inDragMode: true,
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
}));
|
|
147
|
-
}
|
|
148
|
-
show() {
|
|
149
|
-
if (!this.hidden) {
|
|
150
|
-
this.element.style.display = '';
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
hide() {
|
|
154
|
-
this._element.style.display = 'none';
|
|
155
|
-
}
|
|
156
|
-
setRightActionsElement(element) {
|
|
157
|
-
if (this.rightActions === element) {
|
|
158
|
-
return;
|
|
159
|
-
}
|
|
160
|
-
if (this.rightActions) {
|
|
161
|
-
this.rightActions.remove();
|
|
162
|
-
this.rightActions = undefined;
|
|
163
|
-
}
|
|
164
|
-
if (element) {
|
|
165
|
-
this.rightActionsContainer.appendChild(element);
|
|
166
|
-
this.rightActions = element;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
setLeftActionsElement(element) {
|
|
170
|
-
if (this.leftActions === element) {
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
if (this.leftActions) {
|
|
174
|
-
this.leftActions.remove();
|
|
175
|
-
this.leftActions = undefined;
|
|
176
|
-
}
|
|
177
|
-
if (element) {
|
|
178
|
-
this.leftActionsContainer.appendChild(element);
|
|
179
|
-
this.leftActions = element;
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
setPrefixActionsElement(element) {
|
|
183
|
-
if (this.preActions === element) {
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
if (this.preActions) {
|
|
187
|
-
this.preActions.remove();
|
|
188
|
-
this.preActions = undefined;
|
|
189
|
-
}
|
|
190
|
-
if (element) {
|
|
191
|
-
this.preActionsContainer.appendChild(element);
|
|
192
|
-
this.preActions = element;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
isActive(tab) {
|
|
196
|
-
return this.tabs.isActive(tab);
|
|
197
|
-
}
|
|
198
|
-
indexOf(id) {
|
|
199
|
-
return this.tabs.indexOf(id);
|
|
200
|
-
}
|
|
201
|
-
getTabId(panelId) {
|
|
202
|
-
return this.tabs.getTabId(panelId);
|
|
203
|
-
}
|
|
204
|
-
setActive(_isGroupActive) {
|
|
205
|
-
// noop
|
|
206
|
-
}
|
|
207
|
-
delete(id) {
|
|
208
|
-
this.tabs.delete(id);
|
|
209
|
-
this.updateClassnames();
|
|
210
|
-
}
|
|
211
|
-
setActivePanel(panel) {
|
|
212
|
-
this.tabs.setActivePanel(panel);
|
|
213
|
-
}
|
|
214
|
-
focusActiveTab() {
|
|
215
|
-
this.tabs.focusActiveTab();
|
|
216
|
-
}
|
|
217
|
-
openPanel(panel, index = this.tabs.size) {
|
|
218
|
-
this.tabs.openPanel(panel, index);
|
|
219
|
-
this.updateClassnames();
|
|
220
|
-
}
|
|
221
|
-
closePanel(panel) {
|
|
222
|
-
this.delete(panel.id);
|
|
223
|
-
}
|
|
224
|
-
updateClassnames() {
|
|
225
|
-
toggleClass(this._element, 'dv-single-tab', this.size === 1);
|
|
226
|
-
}
|
|
227
|
-
toggleDropdown(options) {
|
|
228
|
-
const tabs = options.reset ? [] : options.tabs;
|
|
229
|
-
const tabGroups = options.reset ? [] : options.tabGroups;
|
|
230
|
-
this._overflowTabs = tabs;
|
|
231
|
-
this._overflowTabGroups = tabGroups;
|
|
232
|
-
const totalCount = this._overflowTabs.length;
|
|
233
|
-
if (totalCount > 0 && this.dropdownPart) {
|
|
234
|
-
this.dropdownPart.update({ tabs: totalCount });
|
|
235
|
-
return;
|
|
236
|
-
}
|
|
237
|
-
if (totalCount === 0) {
|
|
238
|
-
this._dropdownDisposable.dispose();
|
|
239
|
-
return;
|
|
240
|
-
}
|
|
241
|
-
const root = document.createElement('div');
|
|
242
|
-
root.className = 'dv-tabs-overflow-dropdown-root';
|
|
243
|
-
const part = createDropdownElementHandle();
|
|
244
|
-
part.update({ tabs: totalCount });
|
|
245
|
-
this.dropdownPart = part;
|
|
246
|
-
root.appendChild(part.element);
|
|
247
|
-
this.rightActionsContainer.prepend(root);
|
|
248
|
-
this._dropdownDisposable.value = new CompositeDisposable(Disposable.from(() => {
|
|
249
|
-
var _a, _b;
|
|
250
|
-
root.remove();
|
|
251
|
-
(_b = (_a = this.dropdownPart) === null || _a === void 0 ? void 0 : _a.dispose) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
252
|
-
this.dropdownPart = null;
|
|
253
|
-
}), addDisposableListener(root, 'pointerdown', (event) => {
|
|
254
|
-
event.preventDefault();
|
|
255
|
-
}, { capture: true }), addDisposableListener(root, 'click', (event) => {
|
|
256
|
-
const el = document.createElement('div');
|
|
257
|
-
el.style.overflow = 'auto';
|
|
258
|
-
el.className = 'dv-tabs-overflow-container';
|
|
259
|
-
// Build lookup: panelId → tabGroup for overflow groups
|
|
260
|
-
const overflowGroupSet = new Set(this._overflowTabGroups);
|
|
261
|
-
const allTabGroups = this.group.model.getTabGroups();
|
|
262
|
-
const panelToGroup = new Map();
|
|
263
|
-
for (const tg of allTabGroups) {
|
|
264
|
-
if (overflowGroupSet.has(tg.id)) {
|
|
265
|
-
for (const pid of tg.panelIds) {
|
|
266
|
-
panelToGroup.set(pid, tg);
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
// Track which groups have already been rendered
|
|
271
|
-
const renderedGroups = new Set();
|
|
272
|
-
for (const tab of this.tabs.tabs.filter((tab) => this._overflowTabs.includes(tab.panel.id))) {
|
|
273
|
-
const tg = panelToGroup.get(tab.panel.id);
|
|
274
|
-
// If this tab belongs to an overflow group, render the
|
|
275
|
-
// group header before its first member tab.
|
|
276
|
-
if (tg && !renderedGroups.has(tg.id)) {
|
|
277
|
-
renderedGroups.add(tg.id);
|
|
278
|
-
const groupHeader = document.createElement('div');
|
|
279
|
-
groupHeader.className = 'dv-tabs-overflow-group-header';
|
|
280
|
-
const colorDot = document.createElement('span');
|
|
281
|
-
colorDot.className = 'dv-tabs-overflow-group-color';
|
|
282
|
-
applyTabGroupAccent(colorDot, tg.color, this.accessor.tabGroupColorPalette);
|
|
283
|
-
groupHeader.appendChild(colorDot);
|
|
284
|
-
const labelSpan = document.createElement('span');
|
|
285
|
-
labelSpan.className = 'dv-tabs-overflow-group-label';
|
|
286
|
-
labelSpan.textContent = tg.label || tg.id;
|
|
287
|
-
groupHeader.appendChild(labelSpan);
|
|
288
|
-
if (tg.collapsed) {
|
|
289
|
-
const badge = document.createElement('span');
|
|
290
|
-
badge.className =
|
|
291
|
-
'dv-tabs-overflow-group-collapsed-badge';
|
|
292
|
-
badge.textContent = `${tg.panelIds.length}`;
|
|
293
|
-
groupHeader.appendChild(badge);
|
|
294
|
-
}
|
|
295
|
-
groupHeader.addEventListener('click', () => {
|
|
296
|
-
this.accessor
|
|
297
|
-
.getPopupServiceForGroup(this.group)
|
|
298
|
-
.close();
|
|
299
|
-
if (tg.collapsed) {
|
|
300
|
-
tg.expand();
|
|
301
|
-
}
|
|
302
|
-
// Activate the first panel in the group
|
|
303
|
-
const firstPanelId = tg.panelIds[0];
|
|
304
|
-
if (firstPanelId) {
|
|
305
|
-
const panel = this.group.panels.find((p) => p.id === firstPanelId);
|
|
306
|
-
this.accessor.withOrigin('user', () => panel === null || panel === void 0 ? void 0 : panel.api.setActive());
|
|
307
|
-
}
|
|
308
|
-
});
|
|
309
|
-
el.appendChild(groupHeader);
|
|
310
|
-
}
|
|
311
|
-
const panelObject = this.group.panels.find((panel) => panel === tab.panel);
|
|
312
|
-
const tabComponent = panelObject.view.createTabRenderer('headerOverflow');
|
|
313
|
-
const child = tabComponent.element;
|
|
314
|
-
const wrapper = document.createElement('div');
|
|
315
|
-
toggleClass(wrapper, 'dv-tab', true);
|
|
316
|
-
toggleClass(wrapper, 'dv-active-tab', panelObject.api.isActive);
|
|
317
|
-
toggleClass(wrapper, 'dv-inactive-tab', !panelObject.api.isActive);
|
|
318
|
-
if (tg) {
|
|
319
|
-
toggleClass(wrapper, 'dv-tab--grouped', true);
|
|
320
|
-
}
|
|
321
|
-
wrapper.addEventListener('click', (event) => {
|
|
322
|
-
this.accessor
|
|
323
|
-
.getPopupServiceForGroup(this.group)
|
|
324
|
-
.close();
|
|
325
|
-
if (event.defaultPrevented) {
|
|
326
|
-
return;
|
|
327
|
-
}
|
|
328
|
-
if (tg === null || tg === void 0 ? void 0 : tg.collapsed) {
|
|
329
|
-
tg.expand();
|
|
330
|
-
}
|
|
331
|
-
tab.element.scrollIntoView();
|
|
332
|
-
this.accessor.withOrigin('user', () => tab.panel.api.setActive());
|
|
333
|
-
});
|
|
334
|
-
wrapper.appendChild(child);
|
|
335
|
-
el.appendChild(wrapper);
|
|
336
|
-
}
|
|
337
|
-
const relativeParent = findRelativeZIndexParent(root);
|
|
338
|
-
this.accessor
|
|
339
|
-
.getPopupServiceForGroup(this.group)
|
|
340
|
-
.openPopover(el, {
|
|
341
|
-
x: event.clientX,
|
|
342
|
-
y: event.clientY,
|
|
343
|
-
zIndex: (relativeParent === null || relativeParent === void 0 ? void 0 : relativeParent.style.zIndex)
|
|
344
|
-
? `calc(${relativeParent.style.zIndex} * 2)`
|
|
345
|
-
: undefined,
|
|
346
|
-
});
|
|
347
|
-
}));
|
|
348
|
-
}
|
|
349
|
-
updateDragAndDropState() {
|
|
350
|
-
this.tabs.updateDragAndDropState();
|
|
351
|
-
this.voidContainer.updateDragAndDropState();
|
|
352
|
-
}
|
|
353
|
-
updateTabGroups() {
|
|
354
|
-
this.tabs.updateTabGroups();
|
|
355
|
-
}
|
|
356
|
-
refreshTabGroupAccent() {
|
|
357
|
-
this.tabs.refreshTabGroupAccent();
|
|
358
|
-
}
|
|
359
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { DroptargetEvent, WillShowOverlayEvent } from '../../../dnd/droptarget';
|
|
2
|
-
import { DockviewComponent } from '../../dockviewComponent';
|
|
3
|
-
import { Event } from '../../../events';
|
|
4
|
-
import { CompositeDisposable } from '../../../lifecycle';
|
|
5
|
-
import { DockviewGroupPanel } from '../../dockviewGroupPanel';
|
|
6
|
-
export declare class VoidContainer extends CompositeDisposable {
|
|
7
|
-
private readonly accessor;
|
|
8
|
-
private readonly group;
|
|
9
|
-
private readonly _element;
|
|
10
|
-
private readonly dropTarget;
|
|
11
|
-
private readonly pointerDropTarget;
|
|
12
|
-
private readonly dragSource;
|
|
13
|
-
private readonly _onDrop;
|
|
14
|
-
readonly onDrop: Event<DroptargetEvent>;
|
|
15
|
-
private readonly _onDragStart;
|
|
16
|
-
readonly onDragStart: Event<PointerEvent | DragEvent>;
|
|
17
|
-
readonly onWillShowOverlay: Event<WillShowOverlayEvent>;
|
|
18
|
-
get element(): HTMLElement;
|
|
19
|
-
constructor(accessor: DockviewComponent, group: DockviewGroupPanel);
|
|
20
|
-
updateDragAndDropState(): void;
|
|
21
|
-
}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { getPanelData } from '../../../dnd/dataTransfer';
|
|
2
|
-
import { html5Backend, pointerBackend } from '../../../dnd/backend';
|
|
3
|
-
import { addDisposableListener, Emitter, Event } from '../../../events';
|
|
4
|
-
import { CompositeDisposable, Disposable } from '../../../lifecycle';
|
|
5
|
-
import { quasiPreventDefault } from '../../../dom';
|
|
6
|
-
import { GroupDragSource } from './groupDragSource';
|
|
7
|
-
export class VoidContainer extends CompositeDisposable {
|
|
8
|
-
get element() {
|
|
9
|
-
return this._element;
|
|
10
|
-
}
|
|
11
|
-
constructor(accessor, group) {
|
|
12
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
13
|
-
super();
|
|
14
|
-
this.accessor = accessor;
|
|
15
|
-
this.group = group;
|
|
16
|
-
this._onDrop = new Emitter();
|
|
17
|
-
this.onDrop = this._onDrop.event;
|
|
18
|
-
this._onDragStart = new Emitter();
|
|
19
|
-
this.onDragStart = this._onDragStart.event;
|
|
20
|
-
this._element = document.createElement('div');
|
|
21
|
-
this._element.className = 'dv-void-container';
|
|
22
|
-
this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
|
|
23
|
-
this.accessor.doSetGroupActive(this.group);
|
|
24
|
-
}),
|
|
25
|
-
// Shift+pointerdown marks the event so the group's overlay
|
|
26
|
-
// drag (move-by-floating) sees it was consumed and doesn't
|
|
27
|
-
// fire alongside the HTML5 drag. quasiPreventDefault sets the
|
|
28
|
-
// marker without calling preventDefault — that would also
|
|
29
|
-
// block dragstart, which we need to fire.
|
|
30
|
-
addDisposableListener(this._element, 'pointerdown', (e) => {
|
|
31
|
-
if (e.shiftKey) {
|
|
32
|
-
quasiPreventDefault(e);
|
|
33
|
-
}
|
|
34
|
-
}, true));
|
|
35
|
-
// The drag-source (move-the-float disambiguation, redock ghost and
|
|
36
|
-
// group-level PanelTransfer) is shared with the floating title bar.
|
|
37
|
-
this.dragSource = new GroupDragSource({
|
|
38
|
-
element: this._element,
|
|
39
|
-
accessor: this.accessor,
|
|
40
|
-
group: this.group,
|
|
41
|
-
// The void container is the float's move handle only when there is
|
|
42
|
-
// no dedicated title bar. When a title bar moves the float (the
|
|
43
|
-
// overlay is `.dv-resize-container-with-titlebar`), the void
|
|
44
|
-
// container redocks with a plain drag, like a group in the grid.
|
|
45
|
-
isFloatingMoveHandle: () => !this._element.closest('.dv-resize-container-with-titlebar'),
|
|
46
|
-
});
|
|
47
|
-
const canDisplayOverlay = (event, position) => {
|
|
48
|
-
if (this.group.api.locked) {
|
|
49
|
-
// Dropping on the void/header space adds the panel
|
|
50
|
-
// to this group, which `locked` is meant to prevent
|
|
51
|
-
// (both `true` and `'no-drop-target'`).
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
|
-
const data = getPanelData();
|
|
55
|
-
if (this.accessor.id === (data === null || data === void 0 ? void 0 : data.viewId)) {
|
|
56
|
-
return true;
|
|
57
|
-
}
|
|
58
|
-
return group.model.canDisplayOverlay(event, position, 'header_space');
|
|
59
|
-
};
|
|
60
|
-
this.dropTarget = html5Backend.createDropTarget(this._element, {
|
|
61
|
-
acceptedTargetZones: ['center'],
|
|
62
|
-
canDisplayOverlay,
|
|
63
|
-
getOverrideTarget: () => { var _a; return (_a = group.model.dropTargetContainer) === null || _a === void 0 ? void 0 : _a.model; },
|
|
64
|
-
overlayModel: (_b = (_a = this.accessor).resolveDropOverlayModel) === null || _b === void 0 ? void 0 : _b.call(_a, 'header_space', this.group),
|
|
65
|
-
});
|
|
66
|
-
this.pointerDropTarget = pointerBackend.createDropTarget(this._element, {
|
|
67
|
-
acceptedTargetZones: ['center'],
|
|
68
|
-
canDisplayOverlay,
|
|
69
|
-
getOverrideTarget: () => { var _a; return (_a = group.model.dropTargetContainer) === null || _a === void 0 ? void 0 : _a.model; },
|
|
70
|
-
overlayModel: (_d = (_c = this.accessor).resolveDropOverlayModel) === null || _d === void 0 ? void 0 : _d.call(_c, 'header_space', this.group),
|
|
71
|
-
});
|
|
72
|
-
this.onWillShowOverlay = Event.any(this.dropTarget.onWillShowOverlay, this.pointerDropTarget.onWillShowOverlay);
|
|
73
|
-
this.addDisposables(this.dragSource, this.dragSource.onDragStart((event) => {
|
|
74
|
-
this._onDragStart.fire(event);
|
|
75
|
-
}), this.dropTarget.onDrop((event) => {
|
|
76
|
-
this._onDrop.fire(event);
|
|
77
|
-
}), this.pointerDropTarget.onDrop((event) => {
|
|
78
|
-
this._onDrop.fire(event);
|
|
79
|
-
}), this.dropTarget, this.pointerDropTarget,
|
|
80
|
-
// Re-apply the app-supplied overlay model when options change.
|
|
81
|
-
// `{}` resets to the built-in default (all fields optional).
|
|
82
|
-
(_g = (_f = (_e = this.accessor).onDidOptionsChange) === null || _f === void 0 ? void 0 : _f.call(_e, () => {
|
|
83
|
-
var _a, _b, _c;
|
|
84
|
-
const model = (_c = (_b = (_a = this.accessor).resolveDropOverlayModel) === null || _b === void 0 ? void 0 : _b.call(_a, 'header_space', this.group)) !== null && _c !== void 0 ? _c : {};
|
|
85
|
-
this.dropTarget.setOverlayModel(model);
|
|
86
|
-
this.pointerDropTarget.setOverlayModel(model);
|
|
87
|
-
})) !== null && _g !== void 0 ? _g : Disposable.NONE);
|
|
88
|
-
}
|
|
89
|
-
updateDragAndDropState() {
|
|
90
|
-
this.dragSource.updateDragAndDropState();
|
|
91
|
-
}
|
|
92
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { IWatermarkRenderer, WatermarkRendererInitParameters } from '../../types';
|
|
2
|
-
import { CompositeDisposable } from '../../../lifecycle';
|
|
3
|
-
export declare class Watermark extends CompositeDisposable implements IWatermarkRenderer {
|
|
4
|
-
private readonly _element;
|
|
5
|
-
get element(): HTMLElement;
|
|
6
|
-
constructor();
|
|
7
|
-
init(_params: WatermarkRendererInitParameters): void;
|
|
8
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { CompositeDisposable } from '../../../lifecycle';
|
|
2
|
-
export class Watermark extends CompositeDisposable {
|
|
3
|
-
get element() {
|
|
4
|
-
return this._element;
|
|
5
|
-
}
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
|
-
this._element = document.createElement('div');
|
|
9
|
-
this._element.className = 'dv-watermark';
|
|
10
|
-
}
|
|
11
|
-
init(_params) {
|
|
12
|
-
// noop
|
|
13
|
-
}
|
|
14
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { GroupviewPanelState } from './types';
|
|
2
|
-
import { DockviewGroupPanel } from './dockviewGroupPanel';
|
|
3
|
-
import { IDockviewPanel } from './dockviewPanel';
|
|
4
|
-
import { DockviewComponent } from './dockviewComponent';
|
|
5
|
-
export interface IPanelDeserializer {
|
|
6
|
-
fromJSON(panelData: GroupviewPanelState, group: DockviewGroupPanel): IDockviewPanel;
|
|
7
|
-
}
|
|
8
|
-
export declare class DefaultDockviewDeserialzier implements IPanelDeserializer {
|
|
9
|
-
private readonly accessor;
|
|
10
|
-
constructor(accessor: DockviewComponent);
|
|
11
|
-
fromJSON(panelData: GroupviewPanelState, group: DockviewGroupPanel): IDockviewPanel;
|
|
12
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { DockviewPanel } from './dockviewPanel';
|
|
2
|
-
import { DockviewPanelModel } from './dockviewPanelModel';
|
|
3
|
-
import { DockviewApi } from '../api/component.api';
|
|
4
|
-
export class DefaultDockviewDeserialzier {
|
|
5
|
-
constructor(accessor) {
|
|
6
|
-
this.accessor = accessor;
|
|
7
|
-
}
|
|
8
|
-
fromJSON(panelData, group) {
|
|
9
|
-
var _a, _b;
|
|
10
|
-
const panelId = panelData.id;
|
|
11
|
-
const params = panelData.params;
|
|
12
|
-
const title = panelData.title;
|
|
13
|
-
const viewData = panelData.view;
|
|
14
|
-
const contentComponent = viewData
|
|
15
|
-
? viewData.content.id
|
|
16
|
-
: ((_a = panelData.contentComponent) !== null && _a !== void 0 ? _a : 'unknown');
|
|
17
|
-
const tabComponent = viewData
|
|
18
|
-
? (_b = viewData.tab) === null || _b === void 0 ? void 0 : _b.id
|
|
19
|
-
: panelData.tabComponent;
|
|
20
|
-
const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
|
|
21
|
-
const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
|
|
22
|
-
renderer: panelData.renderer,
|
|
23
|
-
minimumWidth: panelData.minimumWidth,
|
|
24
|
-
minimumHeight: panelData.minimumHeight,
|
|
25
|
-
maximumWidth: panelData.maximumWidth,
|
|
26
|
-
maximumHeight: panelData.maximumHeight,
|
|
27
|
-
});
|
|
28
|
-
panel.init({
|
|
29
|
-
title: title !== null && title !== void 0 ? title : panelId,
|
|
30
|
-
params: params !== null && params !== void 0 ? params : {},
|
|
31
|
-
});
|
|
32
|
-
return panel;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { DockviewOptions } from './options';
|
|
2
|
-
/**
|
|
3
|
-
* Internal mapping of the user-facing `dndStrategy` option into the
|
|
4
|
-
* per-backend capability flags consumed by drag-source / drop-target
|
|
5
|
-
* construction sites. Not part of the public API — consumers only see
|
|
6
|
-
* the `dndStrategy` option itself.
|
|
7
|
-
*/
|
|
8
|
-
export interface DndCapabilities {
|
|
9
|
-
/** HTML5 drag/drop wiring active (draggable attr, dragstart). */
|
|
10
|
-
readonly html5: boolean;
|
|
11
|
-
/** Pointer-event drag source active. */
|
|
12
|
-
readonly pointer: boolean;
|
|
13
|
-
/**
|
|
14
|
-
* When true, the pointer source handles mouse pointers too
|
|
15
|
-
* (`touchOnly: false`). Implies `pointer` is true.
|
|
16
|
-
*/
|
|
17
|
-
readonly pointerHandlesMouse: boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare function resolveDndCapabilities(options: Pick<DockviewOptions, 'dndStrategy' | 'disableDnd'>): DndCapabilities;
|