dockview 0.0.28 → 1.0.2
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/LICENSE +21 -21
- package/README.md +60 -0
- package/dist/cjs/actionbar/actionsContainer.d.ts +7 -7
- package/dist/cjs/actionbar/actionsContainer.js +26 -26
- package/dist/cjs/api/component.api.d.ts +135 -131
- package/dist/cjs/api/component.api.js +486 -444
- package/dist/cjs/api/component.api.js.map +1 -1
- package/dist/cjs/api/gridviewPanelApi.d.ts +36 -36
- package/dist/cjs/api/gridviewPanelApi.js +46 -46
- package/dist/cjs/api/groupPanelApi.d.ts +44 -44
- package/dist/cjs/api/groupPanelApi.js +94 -94
- package/dist/cjs/api/groupPanelApi.js.map +1 -1
- package/dist/cjs/api/panelApi.d.ts +107 -107
- package/dist/cjs/api/panelApi.js +140 -140
- package/dist/cjs/api/paneviewPanelApi.d.ts +26 -26
- package/dist/cjs/api/paneviewPanelApi.js +56 -56
- package/dist/cjs/api/splitviewPanelApi.d.ts +33 -33
- package/dist/cjs/api/splitviewPanelApi.js +51 -51
- package/dist/cjs/array.d.ts +13 -13
- package/dist/cjs/array.js +77 -77
- package/dist/cjs/dnd/abstractDragHandler.d.ts +11 -11
- package/dist/cjs/dnd/abstractDragHandler.js +115 -115
- package/dist/cjs/dnd/dataTransfer.d.ts +56 -56
- package/dist/cjs/dnd/dataTransfer.js +144 -144
- package/dist/cjs/dnd/dataTransfer.js.map +1 -1
- package/dist/cjs/dnd/dnd.d.ts +40 -40
- package/dist/cjs/dnd/dnd.js +142 -142
- package/dist/cjs/dnd/droptarget.d.ts +33 -37
- package/dist/cjs/dnd/droptarget.js +177 -177
- package/dist/cjs/dnd/droptarget.js.map +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +44 -44
- package/dist/cjs/dockview/components/tab/defaultTab.js +186 -186
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/cjs/dockview/components/watermark/watermark.js +99 -99
- package/dist/cjs/dockview/defaultGroupPanelView.d.ts +34 -34
- package/dist/cjs/dockview/defaultGroupPanelView.js +85 -83
- package/dist/cjs/dockview/defaultGroupPanelView.js.map +1 -1
- package/dist/cjs/dockview/deserializer.d.ts +14 -14
- package/dist/cjs/dockview/deserializer.js +47 -47
- package/dist/cjs/dockview/dockviewComponent.d.ts +121 -121
- package/dist/cjs/dockview/dockviewComponent.js +692 -692
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +35 -35
- package/dist/cjs/dockview/dockviewGroupPanel.js +195 -195
- package/dist/cjs/dockview/options.d.ts +79 -79
- package/dist/cjs/dockview/options.js +2 -2
- package/dist/cjs/dom.d.ts +14 -14
- package/dist/cjs/dom.js +182 -182
- package/dist/cjs/events.d.ts +30 -23
- package/dist/cjs/events.js +108 -87
- package/dist/cjs/events.js.map +1 -1
- package/dist/cjs/functions.d.ts +1 -1
- package/dist/cjs/functions.js +41 -41
- package/dist/cjs/gridview/baseComponentGridview.d.ts +98 -98
- package/dist/cjs/gridview/baseComponentGridview.js +285 -292
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/basePanelView.d.ts +46 -46
- package/dist/cjs/gridview/basePanelView.js +115 -115
- package/dist/cjs/gridview/branchNode.d.ts +46 -46
- package/dist/cjs/gridview/branchNode.js +342 -342
- package/dist/cjs/gridview/gridview.d.ts +123 -123
- package/dist/cjs/gridview/gridview.js +476 -477
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.d.ts +88 -88
- package/dist/cjs/gridview/gridviewComponent.js +303 -303
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/gridview/gridviewPanel.d.ts +62 -62
- package/dist/cjs/gridview/gridviewPanel.js +205 -205
- package/dist/cjs/gridview/leafNode.d.ts +31 -31
- package/dist/cjs/gridview/leafNode.js +164 -164
- package/dist/cjs/gridview/options.d.ts +18 -18
- package/dist/cjs/gridview/options.js +2 -2
- package/dist/cjs/gridview/types.d.ts +3 -3
- package/dist/cjs/gridview/types.js +2 -2
- package/dist/cjs/groupview/dnd.d.ts +5 -5
- package/dist/cjs/groupview/dnd.js +9 -9
- package/dist/cjs/groupview/groupPanel.d.ts +41 -41
- package/dist/cjs/groupview/groupPanel.js +2 -2
- package/dist/cjs/groupview/groupview.d.ts +154 -154
- package/dist/cjs/groupview/groupview.js +633 -633
- package/dist/cjs/groupview/groupview.js.map +1 -1
- package/dist/cjs/groupview/groupviewPanel.d.ts +18 -18
- package/dist/cjs/groupview/groupviewPanel.js +83 -83
- package/dist/cjs/groupview/panel/content.d.ts +30 -30
- package/dist/cjs/groupview/panel/content.js +99 -99
- package/dist/cjs/groupview/panel/hostedPanel.d.ts +22 -22
- package/dist/cjs/groupview/panel/hostedPanel.js +56 -56
- package/dist/cjs/groupview/panel/hostedPanel.js.map +1 -1
- package/dist/cjs/groupview/tab.d.ts +44 -44
- package/dist/cjs/groupview/tab.js +182 -182
- package/dist/cjs/groupview/titlebar/tabsContainer.d.ts +66 -66
- package/dist/cjs/groupview/titlebar/tabsContainer.js +260 -260
- package/dist/cjs/groupview/titlebar/tabsContainer.js.map +1 -1
- package/dist/cjs/groupview/types.d.ts +59 -59
- package/dist/cjs/groupview/types.js +2 -2
- package/dist/cjs/hostedContainer.d.ts +23 -23
- package/dist/cjs/hostedContainer.js +73 -73
- package/dist/cjs/hostedContainer.js.map +1 -1
- package/dist/cjs/index.d.ts +28 -26
- package/dist/cjs/index.js +37 -35
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/json.d.ts +1 -1
- package/dist/cjs/json.js +13 -13
- package/dist/cjs/lifecycle.d.ts +22 -22
- package/dist/cjs/lifecycle.js +87 -87
- package/dist/cjs/math.d.ts +4 -4
- package/dist/cjs/math.js +15 -15
- package/dist/cjs/math.js.map +1 -1
- package/dist/cjs/panel/componentFactory.d.ts +8 -8
- package/dist/cjs/panel/componentFactory.js +30 -30
- package/dist/cjs/panel/componentFactory.js.map +1 -1
- package/dist/cjs/panel/types.d.ts +34 -34
- package/dist/cjs/panel/types.js +2 -2
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +18 -18
- package/dist/cjs/paneview/defaultPaneviewHeader.js +64 -64
- package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +17 -17
- package/dist/cjs/paneview/draggablePaneviewPanel.js +111 -111
- package/dist/cjs/paneview/options.d.ts +25 -25
- package/dist/cjs/paneview/options.js +2 -2
- package/dist/cjs/paneview/paneview.d.ts +38 -38
- package/dist/cjs/paneview/paneview.js +195 -198
- package/dist/cjs/paneview/paneview.js.map +1 -1
- package/dist/cjs/paneview/paneviewComponent.d.ts +115 -113
- package/dist/cjs/paneview/paneviewComponent.js +338 -338
- package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
- package/dist/cjs/paneview/paneviewPanel.d.ts +85 -85
- package/dist/cjs/paneview/paneviewPanel.js +262 -262
- package/dist/cjs/paneview/paneviewPanel.js.map +1 -1
- package/dist/cjs/react/deserializer.d.ts +8 -8
- package/dist/cjs/react/deserializer.js +39 -39
- package/dist/cjs/react/dockview/components.d.ts +11 -11
- package/dist/cjs/react/dockview/components.js +76 -76
- package/dist/cjs/react/dockview/dockview.d.ts +34 -34
- package/dist/cjs/react/dockview/dockview.js +151 -135
- package/dist/cjs/react/dockview/dockview.js.map +1 -1
- package/dist/cjs/react/dockview/reactContentPart.d.ts +47 -47
- package/dist/cjs/react/dockview/reactContentPart.js +88 -88
- package/dist/cjs/react/dockview/reactHeaderPart.d.ts +24 -24
- package/dist/cjs/react/dockview/reactHeaderPart.js +50 -50
- package/dist/cjs/react/dockview/reactWatermarkPart.d.ts +30 -30
- package/dist/cjs/react/dockview/reactWatermarkPart.js +66 -66
- package/dist/cjs/react/dockview/v2/reactContentRenderer.d.ts +30 -30
- package/dist/cjs/react/dockview/v2/reactContentRenderer.js +90 -90
- package/dist/cjs/react/dockview/v2/reactGroupPanelView.d.ts +7 -7
- package/dist/cjs/react/dockview/v2/reactGroupPanelView.js +34 -34
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.d.ts +18 -18
- package/dist/cjs/react/dockview/v2/webviewContentRenderer.js +45 -45
- package/dist/cjs/react/gridview/gridview.d.ts +24 -24
- package/dist/cjs/react/gridview/gridview.js +104 -96
- package/dist/cjs/react/gridview/gridview.js.map +1 -1
- package/dist/cjs/react/gridview/view.d.ts +10 -10
- package/dist/cjs/react/gridview/view.js +40 -40
- package/dist/cjs/react/index.d.ts +9 -9
- package/dist/cjs/react/index.js +21 -21
- package/dist/cjs/react/paneview/paneview.d.ts +28 -28
- package/dist/cjs/react/paneview/paneview.js +142 -138
- package/dist/cjs/react/paneview/paneview.js.map +1 -1
- package/dist/cjs/react/paneview/view.d.ts +20 -20
- package/dist/cjs/react/paneview/view.js +44 -44
- package/dist/cjs/react/react.d.ts +35 -35
- package/dist/cjs/react/react.js +181 -181
- package/dist/cjs/react/react.js.map +1 -1
- package/dist/cjs/react/splitview/splitview.d.ts +24 -24
- package/dist/cjs/react/splitview/splitview.js +101 -93
- package/dist/cjs/react/splitview/splitview.js.map +1 -1
- package/dist/cjs/react/splitview/view.d.ts +10 -10
- package/dist/cjs/react/splitview/view.js +40 -40
- package/dist/cjs/react/types.d.ts +7 -7
- package/dist/cjs/react/types.js +2 -2
- package/dist/cjs/splitview/core/options.d.ts +26 -26
- package/dist/cjs/splitview/core/options.js +2 -2
- package/dist/cjs/splitview/core/splitview.d.ts +124 -124
- package/dist/cjs/splitview/core/splitview.js +908 -908
- package/dist/cjs/splitview/core/splitview.js.map +1 -1
- package/dist/cjs/splitview/core/viewItem.d.ts +25 -25
- package/dist/cjs/splitview/core/viewItem.js +124 -124
- package/dist/cjs/splitview/splitviewComponent.d.ts +100 -100
- package/dist/cjs/splitview/splitviewComponent.js +327 -327
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/cjs/splitview/splitviewPanel.d.ts +47 -47
- package/dist/cjs/splitview/splitviewPanel.js +178 -178
- package/dist/cjs/types.d.ts +7 -7
- package/dist/cjs/types.js +2 -2
- package/dist/dockview.amd.js +6759 -6712
- package/dist/dockview.amd.min.js +3 -3
- package/dist/dockview.amd.min.noStyle.js +3 -3
- package/dist/dockview.amd.noStyle.js +6752 -6705
- package/dist/dockview.cjs.js +6755 -6708
- package/dist/dockview.esm.js +6750 -6707
- package/dist/dockview.esm.min.js +3 -3
- package/dist/dockview.js +6759 -6712
- package/dist/dockview.min.js +3 -3
- package/dist/dockview.min.noStyle.js +3 -3
- package/dist/dockview.noStyle.js +6752 -6705
- package/dist/esm/actionbar/actionsContainer.d.ts +7 -7
- package/dist/esm/actionbar/actionsContainer.js +17 -17
- package/dist/esm/api/component.api.d.ts +135 -131
- package/dist/esm/api/component.api.js +305 -287
- package/dist/esm/api/gridviewPanelApi.d.ts +36 -36
- package/dist/esm/api/gridviewPanelApi.js +24 -24
- package/dist/esm/api/groupPanelApi.d.ts +44 -44
- package/dist/esm/api/groupPanelApi.js +52 -52
- package/dist/esm/api/panelApi.d.ts +107 -107
- package/dist/esm/api/panelApi.js +98 -98
- package/dist/esm/api/paneviewPanelApi.d.ts +26 -26
- package/dist/esm/api/paneviewPanelApi.js +26 -26
- package/dist/esm/api/splitviewPanelApi.d.ts +33 -33
- package/dist/esm/api/splitviewPanelApi.js +29 -29
- package/dist/esm/array.d.ts +13 -13
- package/dist/esm/array.js +67 -67
- package/dist/esm/dnd/abstractDragHandler.d.ts +11 -11
- package/dist/esm/dnd/abstractDragHandler.js +37 -37
- package/dist/esm/dnd/dataTransfer.d.ts +56 -56
- package/dist/esm/dnd/dataTransfer.js +109 -109
- package/dist/esm/dnd/dnd.d.ts +40 -40
- package/dist/esm/dnd/dnd.js +109 -109
- package/dist/esm/dnd/droptarget.d.ts +33 -37
- package/dist/esm/dnd/droptarget.js +143 -143
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +44 -44
- package/dist/esm/dockview/components/tab/defaultTab.js +130 -130
- package/dist/esm/dockview/components/watermark/watermark.d.ts +20 -20
- package/dist/esm/dockview/components/watermark/watermark.js +68 -68
- package/dist/esm/dockview/defaultGroupPanelView.d.ts +34 -34
- package/dist/esm/dockview/defaultGroupPanelView.js +57 -55
- package/dist/esm/dockview/deserializer.d.ts +14 -14
- package/dist/esm/dockview/deserializer.js +20 -20
- package/dist/esm/dockview/dockviewComponent.d.ts +121 -121
- package/dist/esm/dockview/dockviewComponent.js +533 -533
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +35 -35
- package/dist/esm/dockview/dockviewGroupPanel.js +145 -145
- package/dist/esm/dockview/options.d.ts +79 -79
- package/dist/esm/dockview/options.js +1 -1
- package/dist/esm/dom.d.ts +14 -14
- package/dist/esm/dom.js +113 -113
- package/dist/esm/events.d.ts +30 -23
- package/dist/esm/events.js +89 -71
- package/dist/esm/functions.d.ts +1 -1
- package/dist/esm/functions.js +8 -8
- package/dist/esm/gridview/baseComponentGridview.d.ts +98 -98
- package/dist/esm/gridview/baseComponentGridview.js +217 -224
- package/dist/esm/gridview/basePanelView.d.ts +46 -46
- package/dist/esm/gridview/basePanelView.js +70 -70
- package/dist/esm/gridview/branchNode.d.ts +46 -46
- package/dist/esm/gridview/branchNode.js +218 -218
- package/dist/esm/gridview/gridview.d.ts +123 -123
- package/dist/esm/gridview/gridview.js +395 -396
- package/dist/esm/gridview/gridviewComponent.d.ts +88 -88
- package/dist/esm/gridview/gridviewComponent.js +238 -238
- package/dist/esm/gridview/gridviewPanel.d.ts +62 -62
- package/dist/esm/gridview/gridviewPanel.js +141 -141
- package/dist/esm/gridview/leafNode.d.ts +31 -31
- package/dist/esm/gridview/leafNode.js +97 -97
- package/dist/esm/gridview/options.d.ts +18 -18
- package/dist/esm/gridview/options.js +1 -1
- package/dist/esm/gridview/types.d.ts +3 -3
- package/dist/esm/gridview/types.js +1 -1
- package/dist/esm/groupview/dnd.d.ts +5 -5
- package/dist/esm/groupview/dnd.js +6 -6
- package/dist/esm/groupview/groupPanel.d.ts +41 -41
- package/dist/esm/groupview/groupPanel.js +1 -1
- package/dist/esm/groupview/groupview.d.ts +154 -154
- package/dist/esm/groupview/groupview.js +448 -448
- package/dist/esm/groupview/groupviewPanel.d.ts +18 -18
- package/dist/esm/groupview/groupviewPanel.js +41 -41
- package/dist/esm/groupview/panel/content.d.ts +30 -30
- package/dist/esm/groupview/panel/content.js +72 -72
- package/dist/esm/groupview/panel/hostedPanel.d.ts +22 -22
- package/dist/esm/groupview/panel/hostedPanel.js +43 -43
- package/dist/esm/groupview/tab.d.ts +44 -44
- package/dist/esm/groupview/tab.js +101 -101
- package/dist/esm/groupview/titlebar/tabsContainer.d.ts +66 -66
- package/dist/esm/groupview/titlebar/tabsContainer.js +185 -185
- package/dist/esm/groupview/types.d.ts +59 -59
- package/dist/esm/groupview/types.js +1 -1
- package/dist/esm/hostedContainer.d.ts +23 -23
- package/dist/esm/hostedContainer.js +63 -63
- package/dist/esm/index.d.ts +28 -26
- package/dist/esm/index.js +23 -21
- package/dist/esm/json.d.ts +1 -1
- package/dist/esm/json.js +9 -9
- package/dist/esm/lifecycle.d.ts +22 -22
- package/dist/esm/lifecycle.js +38 -38
- package/dist/esm/math.d.ts +4 -4
- package/dist/esm/math.js +10 -10
- package/dist/esm/panel/componentFactory.d.ts +8 -8
- package/dist/esm/panel/componentFactory.js +24 -24
- package/dist/esm/panel/types.d.ts +34 -34
- package/dist/esm/panel/types.js +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +18 -18
- package/dist/esm/paneview/defaultPaneviewHeader.js +37 -37
- package/dist/esm/paneview/draggablePaneviewPanel.d.ts +17 -17
- package/dist/esm/paneview/draggablePaneviewPanel.js +72 -72
- package/dist/esm/paneview/options.d.ts +25 -25
- package/dist/esm/paneview/options.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +38 -38
- package/dist/esm/paneview/paneview.js +141 -144
- package/dist/esm/paneview/paneviewComponent.d.ts +115 -113
- package/dist/esm/paneview/paneviewComponent.js +247 -247
- package/dist/esm/paneview/paneviewPanel.d.ts +85 -85
- package/dist/esm/paneview/paneviewPanel.js +183 -183
- package/dist/esm/react/deserializer.d.ts +8 -8
- package/dist/esm/react/deserializer.js +34 -34
- package/dist/esm/react/dockview/components.d.ts +11 -11
- package/dist/esm/react/dockview/components.js +54 -54
- package/dist/esm/react/dockview/dockview.d.ts +34 -34
- package/dist/esm/react/dockview/dockview.js +113 -97
- package/dist/esm/react/dockview/reactContentPart.d.ts +47 -47
- package/dist/esm/react/dockview/reactContentPart.js +75 -75
- package/dist/esm/react/dockview/reactHeaderPart.d.ts +24 -24
- package/dist/esm/react/dockview/reactHeaderPart.js +41 -41
- package/dist/esm/react/dockview/reactWatermarkPart.d.ts +30 -30
- package/dist/esm/react/dockview/reactWatermarkPart.js +56 -56
- package/dist/esm/react/dockview/v2/reactContentRenderer.d.ts +30 -30
- package/dist/esm/react/dockview/v2/reactContentRenderer.js +72 -72
- package/dist/esm/react/dockview/v2/reactGroupPanelView.d.ts +7 -7
- package/dist/esm/react/dockview/v2/reactGroupPanelView.js +12 -12
- package/dist/esm/react/dockview/v2/webviewContentRenderer.d.ts +18 -18
- package/dist/esm/react/dockview/v2/webviewContentRenderer.js +36 -36
- package/dist/esm/react/gridview/gridview.d.ts +24 -24
- package/dist/esm/react/gridview/gridview.js +66 -58
- package/dist/esm/react/gridview/view.d.ts +10 -10
- package/dist/esm/react/gridview/view.js +18 -18
- package/dist/esm/react/index.d.ts +9 -9
- package/dist/esm/react/index.js +9 -9
- package/dist/esm/react/paneview/paneview.d.ts +28 -28
- package/dist/esm/react/paneview/paneview.js +91 -87
- package/dist/esm/react/paneview/view.d.ts +20 -20
- package/dist/esm/react/paneview/view.js +35 -35
- package/dist/esm/react/react.d.ts +35 -35
- package/dist/esm/react/react.js +116 -116
- package/dist/esm/react/splitview/splitview.d.ts +24 -24
- package/dist/esm/react/splitview/splitview.js +63 -55
- package/dist/esm/react/splitview/view.d.ts +10 -10
- package/dist/esm/react/splitview/view.js +18 -18
- package/dist/esm/react/types.d.ts +7 -7
- package/dist/esm/react/types.js +1 -1
- package/dist/esm/splitview/core/options.d.ts +26 -26
- package/dist/esm/splitview/core/options.js +1 -1
- package/dist/esm/splitview/core/splitview.d.ts +124 -124
- package/dist/esm/splitview/core/splitview.js +689 -689
- package/dist/esm/splitview/core/viewItem.d.ts +25 -25
- package/dist/esm/splitview/core/viewItem.js +79 -79
- package/dist/esm/splitview/splitviewComponent.d.ts +100 -100
- package/dist/esm/splitview/splitviewComponent.js +241 -241
- package/dist/esm/splitview/splitviewPanel.d.ts +47 -47
- package/dist/esm/splitview/splitviewPanel.js +107 -107
- package/dist/esm/types.d.ts +7 -7
- package/dist/esm/types.js +1 -1
- package/dist/styles/dockview.css +45 -45
- package/package.json +75 -75
- package/dist/cjs/footnote.d.ts +0 -1
- package/dist/cjs/footnote.js +0 -20
- package/dist/cjs/footnote.js.map +0 -1
- package/dist/esm/footnote.d.ts +0 -1
- package/dist/esm/footnote.js +0 -19
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import { tryParseJSON } from '../json';
|
|
2
|
-
class TransferObject {
|
|
3
|
-
constructor() {
|
|
4
|
-
//
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
export class PanelTransfer extends TransferObject {
|
|
8
|
-
constructor(viewId, groupId, panelId) {
|
|
9
|
-
super();
|
|
10
|
-
this.viewId = viewId;
|
|
11
|
-
this.groupId = groupId;
|
|
12
|
-
this.panelId = panelId;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
export class PaneTransfer extends TransferObject {
|
|
16
|
-
constructor(viewId, paneId) {
|
|
17
|
-
super();
|
|
18
|
-
this.viewId = viewId;
|
|
19
|
-
this.paneId = paneId;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
export const DATA_KEY = 'splitview/transfer';
|
|
23
|
-
export const isPanelTransferEvent = (event) => {
|
|
24
|
-
if (!event.dataTransfer) {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return event.dataTransfer.types.includes(DATA_KEY);
|
|
28
|
-
};
|
|
29
|
-
export var DragType;
|
|
30
|
-
(function (DragType) {
|
|
31
|
-
DragType["DOCKVIEW_TAB"] = "dockview_tab";
|
|
32
|
-
DragType["EXTERNAL"] = "external_group_drag";
|
|
33
|
-
})(DragType || (DragType = {}));
|
|
34
|
-
/**
|
|
35
|
-
* Determine whether this data belong to that of an event that was started by
|
|
36
|
-
* dragging a tab component
|
|
37
|
-
*/
|
|
38
|
-
export const isTabDragEvent = (data) => {
|
|
39
|
-
return data.type === DragType.DOCKVIEW_TAB;
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* Determine whether this data belong to that of an event that was started by
|
|
43
|
-
* a custom drag-enable component
|
|
44
|
-
*/
|
|
45
|
-
export const isCustomDragEvent = (data) => {
|
|
46
|
-
return data.type === DragType.EXTERNAL;
|
|
47
|
-
};
|
|
48
|
-
export const extractData = (event) => {
|
|
49
|
-
if (!event.dataTransfer) {
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
const data = tryParseJSON(event.dataTransfer.getData(DATA_KEY));
|
|
53
|
-
if (!data) {
|
|
54
|
-
console.warn(`[dragEvent] ${DATA_KEY} data is missing`);
|
|
55
|
-
}
|
|
56
|
-
if (typeof data.type !== 'string') {
|
|
57
|
-
console.warn(`[dragEvent] invalid type ${data.type}`);
|
|
58
|
-
}
|
|
59
|
-
return data;
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* A singleton to store transfer data during drag & drop operations that are only valid within the application.
|
|
63
|
-
*/
|
|
64
|
-
export class LocalSelectionTransfer {
|
|
65
|
-
constructor() {
|
|
66
|
-
// protect against external instantiation
|
|
67
|
-
}
|
|
68
|
-
static getInstance() {
|
|
69
|
-
return LocalSelectionTransfer.INSTANCE;
|
|
70
|
-
}
|
|
71
|
-
hasData(proto) {
|
|
72
|
-
return proto && proto === this.proto;
|
|
73
|
-
}
|
|
74
|
-
clearData(proto) {
|
|
75
|
-
if (this.hasData(proto)) {
|
|
76
|
-
this.proto = undefined;
|
|
77
|
-
this.data = undefined;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
getData(proto) {
|
|
81
|
-
if (this.hasData(proto)) {
|
|
82
|
-
return this.data;
|
|
83
|
-
}
|
|
84
|
-
return undefined;
|
|
85
|
-
}
|
|
86
|
-
setData(data, proto) {
|
|
87
|
-
if (proto) {
|
|
88
|
-
this.data = data;
|
|
89
|
-
this.proto = proto;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
LocalSelectionTransfer.INSTANCE = new LocalSelectionTransfer();
|
|
94
|
-
export function getPanelData() {
|
|
95
|
-
const panelTransfer = LocalSelectionTransfer.getInstance();
|
|
96
|
-
const isPanelEvent = panelTransfer.hasData(PanelTransfer.prototype);
|
|
97
|
-
if (!isPanelEvent) {
|
|
98
|
-
return undefined;
|
|
99
|
-
}
|
|
100
|
-
return panelTransfer.getData(PanelTransfer.prototype)[0];
|
|
101
|
-
}
|
|
102
|
-
export function getPaneData() {
|
|
103
|
-
const paneTransfer = LocalSelectionTransfer.getInstance();
|
|
104
|
-
const isPanelEvent = paneTransfer.hasData(PaneTransfer.prototype);
|
|
105
|
-
if (!isPanelEvent) {
|
|
106
|
-
return undefined;
|
|
107
|
-
}
|
|
108
|
-
return paneTransfer.getData(PaneTransfer.prototype)[0];
|
|
109
|
-
}
|
|
1
|
+
import { tryParseJSON } from '../json';
|
|
2
|
+
class TransferObject {
|
|
3
|
+
constructor() {
|
|
4
|
+
//
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export class PanelTransfer extends TransferObject {
|
|
8
|
+
constructor(viewId, groupId, panelId) {
|
|
9
|
+
super();
|
|
10
|
+
this.viewId = viewId;
|
|
11
|
+
this.groupId = groupId;
|
|
12
|
+
this.panelId = panelId;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export class PaneTransfer extends TransferObject {
|
|
16
|
+
constructor(viewId, paneId) {
|
|
17
|
+
super();
|
|
18
|
+
this.viewId = viewId;
|
|
19
|
+
this.paneId = paneId;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export const DATA_KEY = 'splitview/transfer';
|
|
23
|
+
export const isPanelTransferEvent = (event) => {
|
|
24
|
+
if (!event.dataTransfer) {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
return event.dataTransfer.types.includes(DATA_KEY);
|
|
28
|
+
};
|
|
29
|
+
export var DragType;
|
|
30
|
+
(function (DragType) {
|
|
31
|
+
DragType["DOCKVIEW_TAB"] = "dockview_tab";
|
|
32
|
+
DragType["EXTERNAL"] = "external_group_drag";
|
|
33
|
+
})(DragType || (DragType = {}));
|
|
34
|
+
/**
|
|
35
|
+
* Determine whether this data belong to that of an event that was started by
|
|
36
|
+
* dragging a tab component
|
|
37
|
+
*/
|
|
38
|
+
export const isTabDragEvent = (data) => {
|
|
39
|
+
return data.type === DragType.DOCKVIEW_TAB;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Determine whether this data belong to that of an event that was started by
|
|
43
|
+
* a custom drag-enable component
|
|
44
|
+
*/
|
|
45
|
+
export const isCustomDragEvent = (data) => {
|
|
46
|
+
return data.type === DragType.EXTERNAL;
|
|
47
|
+
};
|
|
48
|
+
export const extractData = (event) => {
|
|
49
|
+
if (!event.dataTransfer) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
const data = tryParseJSON(event.dataTransfer.getData(DATA_KEY));
|
|
53
|
+
if (!data) {
|
|
54
|
+
console.warn(`[dragEvent] ${DATA_KEY} data is missing`);
|
|
55
|
+
}
|
|
56
|
+
if (typeof data.type !== 'string') {
|
|
57
|
+
console.warn(`[dragEvent] invalid type ${data.type}`);
|
|
58
|
+
}
|
|
59
|
+
return data;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* A singleton to store transfer data during drag & drop operations that are only valid within the application.
|
|
63
|
+
*/
|
|
64
|
+
export class LocalSelectionTransfer {
|
|
65
|
+
constructor() {
|
|
66
|
+
// protect against external instantiation
|
|
67
|
+
}
|
|
68
|
+
static getInstance() {
|
|
69
|
+
return LocalSelectionTransfer.INSTANCE;
|
|
70
|
+
}
|
|
71
|
+
hasData(proto) {
|
|
72
|
+
return proto && proto === this.proto;
|
|
73
|
+
}
|
|
74
|
+
clearData(proto) {
|
|
75
|
+
if (this.hasData(proto)) {
|
|
76
|
+
this.proto = undefined;
|
|
77
|
+
this.data = undefined;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
getData(proto) {
|
|
81
|
+
if (this.hasData(proto)) {
|
|
82
|
+
return this.data;
|
|
83
|
+
}
|
|
84
|
+
return undefined;
|
|
85
|
+
}
|
|
86
|
+
setData(data, proto) {
|
|
87
|
+
if (proto) {
|
|
88
|
+
this.data = data;
|
|
89
|
+
this.proto = proto;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
LocalSelectionTransfer.INSTANCE = new LocalSelectionTransfer();
|
|
94
|
+
export function getPanelData() {
|
|
95
|
+
const panelTransfer = LocalSelectionTransfer.getInstance();
|
|
96
|
+
const isPanelEvent = panelTransfer.hasData(PanelTransfer.prototype);
|
|
97
|
+
if (!isPanelEvent) {
|
|
98
|
+
return undefined;
|
|
99
|
+
}
|
|
100
|
+
return panelTransfer.getData(PanelTransfer.prototype)[0];
|
|
101
|
+
}
|
|
102
|
+
export function getPaneData() {
|
|
103
|
+
const paneTransfer = LocalSelectionTransfer.getInstance();
|
|
104
|
+
const isPanelEvent = paneTransfer.hasData(PaneTransfer.prototype);
|
|
105
|
+
if (!isPanelEvent) {
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
return paneTransfer.getData(PaneTransfer.prototype)[0];
|
|
109
|
+
}
|
package/dist/esm/dnd/dnd.d.ts
CHANGED
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { CompositeDisposable, IDisposable } from '../lifecycle';
|
|
2
|
-
export interface IDragAndDropObserverCallbacks {
|
|
3
|
-
onDragEnter: (e: DragEvent) => void;
|
|
4
|
-
onDragLeave: (e: DragEvent) => void;
|
|
5
|
-
onDrop: (e: DragEvent) => void;
|
|
6
|
-
onDragEnd: (e: DragEvent) => void;
|
|
7
|
-
onDragOver?: (e: DragEvent) => void;
|
|
8
|
-
}
|
|
9
|
-
export declare class DragAndDropObserver extends CompositeDisposable {
|
|
10
|
-
private element;
|
|
11
|
-
private callbacks;
|
|
12
|
-
private counter;
|
|
13
|
-
constructor(element: HTMLElement, callbacks: IDragAndDropObserverCallbacks);
|
|
14
|
-
private registerListeners;
|
|
15
|
-
}
|
|
16
|
-
export interface IDraggedCompositeData {
|
|
17
|
-
eventData: DragEvent;
|
|
18
|
-
dragAndDropData: any;
|
|
19
|
-
}
|
|
20
|
-
export interface ICompositeDragAndDropObserverCallbacks {
|
|
21
|
-
onDragEnter?: (e: IDraggedCompositeData) => void;
|
|
22
|
-
onDragLeave?: (e: IDraggedCompositeData) => void;
|
|
23
|
-
onDrop?: (e: IDraggedCompositeData) => void;
|
|
24
|
-
onDragOver?: (e: IDraggedCompositeData) => void;
|
|
25
|
-
onDragStart?: (e: IDraggedCompositeData) => void;
|
|
26
|
-
onDragEnd?: (e: IDraggedCompositeData) => void;
|
|
27
|
-
}
|
|
28
|
-
export declare class DragAndDrop extends CompositeDisposable {
|
|
29
|
-
private _onDragStart;
|
|
30
|
-
private _onDragEnd;
|
|
31
|
-
private static _instance;
|
|
32
|
-
static get INSTANCE(): DragAndDrop;
|
|
33
|
-
private transferData;
|
|
34
|
-
private constructor();
|
|
35
|
-
registerTarget(element: HTMLElement, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable;
|
|
36
|
-
registerDraggable(element: HTMLElement, draggedItemProvider: () => {
|
|
37
|
-
type: string;
|
|
38
|
-
id: string;
|
|
39
|
-
}, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable;
|
|
40
|
-
}
|
|
1
|
+
import { CompositeDisposable, IDisposable } from '../lifecycle';
|
|
2
|
+
export interface IDragAndDropObserverCallbacks {
|
|
3
|
+
onDragEnter: (e: DragEvent) => void;
|
|
4
|
+
onDragLeave: (e: DragEvent) => void;
|
|
5
|
+
onDrop: (e: DragEvent) => void;
|
|
6
|
+
onDragEnd: (e: DragEvent) => void;
|
|
7
|
+
onDragOver?: (e: DragEvent) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare class DragAndDropObserver extends CompositeDisposable {
|
|
10
|
+
private element;
|
|
11
|
+
private callbacks;
|
|
12
|
+
private counter;
|
|
13
|
+
constructor(element: HTMLElement, callbacks: IDragAndDropObserverCallbacks);
|
|
14
|
+
private registerListeners;
|
|
15
|
+
}
|
|
16
|
+
export interface IDraggedCompositeData {
|
|
17
|
+
eventData: DragEvent;
|
|
18
|
+
dragAndDropData: any;
|
|
19
|
+
}
|
|
20
|
+
export interface ICompositeDragAndDropObserverCallbacks {
|
|
21
|
+
onDragEnter?: (e: IDraggedCompositeData) => void;
|
|
22
|
+
onDragLeave?: (e: IDraggedCompositeData) => void;
|
|
23
|
+
onDrop?: (e: IDraggedCompositeData) => void;
|
|
24
|
+
onDragOver?: (e: IDraggedCompositeData) => void;
|
|
25
|
+
onDragStart?: (e: IDraggedCompositeData) => void;
|
|
26
|
+
onDragEnd?: (e: IDraggedCompositeData) => void;
|
|
27
|
+
}
|
|
28
|
+
export declare class DragAndDrop extends CompositeDisposable {
|
|
29
|
+
private _onDragStart;
|
|
30
|
+
private _onDragEnd;
|
|
31
|
+
private static _instance;
|
|
32
|
+
static get INSTANCE(): DragAndDrop;
|
|
33
|
+
private transferData;
|
|
34
|
+
private constructor();
|
|
35
|
+
registerTarget(element: HTMLElement, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable;
|
|
36
|
+
registerDraggable(element: HTMLElement, draggedItemProvider: () => {
|
|
37
|
+
type: string;
|
|
38
|
+
id: string;
|
|
39
|
+
}, callbacks: ICompositeDragAndDropObserverCallbacks): IDisposable;
|
|
40
|
+
}
|
package/dist/esm/dnd/dnd.js
CHANGED
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
import { addDisposableListener, Emitter } from '../events';
|
|
2
|
-
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
-
import { LocalSelectionTransfer } from './dataTransfer';
|
|
4
|
-
export class DragAndDropObserver extends CompositeDisposable {
|
|
5
|
-
constructor(element, callbacks) {
|
|
6
|
-
super();
|
|
7
|
-
this.element = element;
|
|
8
|
-
this.callbacks = callbacks;
|
|
9
|
-
// A helper to fix issues with repeated DRAG_ENTER / DRAG_LEAVE
|
|
10
|
-
// calls see https://github.com/microsoft/vscode/issues/14470
|
|
11
|
-
// when the element has child elements where the events are fired
|
|
12
|
-
// repeadedly.
|
|
13
|
-
this.counter = 0;
|
|
14
|
-
this.registerListeners();
|
|
15
|
-
}
|
|
16
|
-
registerListeners() {
|
|
17
|
-
this.addDisposables(addDisposableListener(this.element, 'dragenter', (e) => {
|
|
18
|
-
this.counter++;
|
|
19
|
-
this.callbacks.onDragEnter(e);
|
|
20
|
-
}));
|
|
21
|
-
this.addDisposables(addDisposableListener(this.element, 'dragover', (e) => {
|
|
22
|
-
e.preventDefault(); // needed so that the drop event fires (https://stackoverflow.com/questions/21339924/drop-event-not-firing-in-chrome)
|
|
23
|
-
if (this.callbacks.onDragOver) {
|
|
24
|
-
this.callbacks.onDragOver(e);
|
|
25
|
-
}
|
|
26
|
-
}));
|
|
27
|
-
this.addDisposables(addDisposableListener(this.element, 'dragleave', (e) => {
|
|
28
|
-
this.counter--;
|
|
29
|
-
if (this.counter === 0) {
|
|
30
|
-
this.callbacks.onDragLeave(e);
|
|
31
|
-
}
|
|
32
|
-
}));
|
|
33
|
-
this.addDisposables(addDisposableListener(this.element, 'dragend', (e) => {
|
|
34
|
-
this.counter = 0;
|
|
35
|
-
this.callbacks.onDragEnd(e);
|
|
36
|
-
}));
|
|
37
|
-
this.addDisposables(addDisposableListener(this.element, 'drop', (e) => {
|
|
38
|
-
this.counter = 0;
|
|
39
|
-
this.callbacks.onDrop(e);
|
|
40
|
-
}));
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
class DockviewIdentifier {
|
|
44
|
-
constructor(data) {
|
|
45
|
-
this.data = data;
|
|
46
|
-
//
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
export class DragAndDrop extends CompositeDisposable {
|
|
50
|
-
constructor() {
|
|
51
|
-
super();
|
|
52
|
-
this._onDragStart = new Emitter();
|
|
53
|
-
this._onDragEnd = new Emitter();
|
|
54
|
-
this.transferData = LocalSelectionTransfer.getInstance();
|
|
55
|
-
this.addDisposables(this._onDragStart, this._onDragEnd);
|
|
56
|
-
}
|
|
57
|
-
static get INSTANCE() {
|
|
58
|
-
if (!DragAndDrop._instance) {
|
|
59
|
-
DragAndDrop._instance = new DragAndDrop();
|
|
60
|
-
}
|
|
61
|
-
return DragAndDrop._instance;
|
|
62
|
-
}
|
|
63
|
-
registerTarget(element, callbacks) {
|
|
64
|
-
const disposables = new CompositeDisposable();
|
|
65
|
-
disposables.addDisposables(new DragAndDropObserver(element, {
|
|
66
|
-
onDragEnd: (e) => {
|
|
67
|
-
// no-op
|
|
68
|
-
},
|
|
69
|
-
onDragEnter: (e) => {
|
|
70
|
-
e.preventDefault();
|
|
71
|
-
},
|
|
72
|
-
onDragLeave: (e) => {
|
|
73
|
-
//
|
|
74
|
-
},
|
|
75
|
-
onDrop: (e) => {
|
|
76
|
-
//
|
|
77
|
-
},
|
|
78
|
-
onDragOver: (e) => {
|
|
79
|
-
//
|
|
80
|
-
},
|
|
81
|
-
}));
|
|
82
|
-
return disposables;
|
|
83
|
-
}
|
|
84
|
-
registerDraggable(element, draggedItemProvider, callbacks) {
|
|
85
|
-
element.draggable = true;
|
|
86
|
-
const disposables = new CompositeDisposable();
|
|
87
|
-
disposables.addDisposables(addDisposableListener(element, 'dragstart', (e) => {
|
|
88
|
-
this._onDragStart.fire({ event: e });
|
|
89
|
-
}));
|
|
90
|
-
disposables.addDisposables(new DragAndDropObserver(element, {
|
|
91
|
-
onDragEnd: (e) => {
|
|
92
|
-
// no-op
|
|
93
|
-
},
|
|
94
|
-
onDragEnter: (e) => {
|
|
95
|
-
//
|
|
96
|
-
},
|
|
97
|
-
onDragLeave: (e) => {
|
|
98
|
-
//
|
|
99
|
-
},
|
|
100
|
-
onDrop: (e) => {
|
|
101
|
-
//
|
|
102
|
-
},
|
|
103
|
-
onDragOver: (e) => {
|
|
104
|
-
//
|
|
105
|
-
},
|
|
106
|
-
}));
|
|
107
|
-
return disposables;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
1
|
+
import { addDisposableListener, Emitter } from '../events';
|
|
2
|
+
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
+
import { LocalSelectionTransfer } from './dataTransfer';
|
|
4
|
+
export class DragAndDropObserver extends CompositeDisposable {
|
|
5
|
+
constructor(element, callbacks) {
|
|
6
|
+
super();
|
|
7
|
+
this.element = element;
|
|
8
|
+
this.callbacks = callbacks;
|
|
9
|
+
// A helper to fix issues with repeated DRAG_ENTER / DRAG_LEAVE
|
|
10
|
+
// calls see https://github.com/microsoft/vscode/issues/14470
|
|
11
|
+
// when the element has child elements where the events are fired
|
|
12
|
+
// repeadedly.
|
|
13
|
+
this.counter = 0;
|
|
14
|
+
this.registerListeners();
|
|
15
|
+
}
|
|
16
|
+
registerListeners() {
|
|
17
|
+
this.addDisposables(addDisposableListener(this.element, 'dragenter', (e) => {
|
|
18
|
+
this.counter++;
|
|
19
|
+
this.callbacks.onDragEnter(e);
|
|
20
|
+
}));
|
|
21
|
+
this.addDisposables(addDisposableListener(this.element, 'dragover', (e) => {
|
|
22
|
+
e.preventDefault(); // needed so that the drop event fires (https://stackoverflow.com/questions/21339924/drop-event-not-firing-in-chrome)
|
|
23
|
+
if (this.callbacks.onDragOver) {
|
|
24
|
+
this.callbacks.onDragOver(e);
|
|
25
|
+
}
|
|
26
|
+
}));
|
|
27
|
+
this.addDisposables(addDisposableListener(this.element, 'dragleave', (e) => {
|
|
28
|
+
this.counter--;
|
|
29
|
+
if (this.counter === 0) {
|
|
30
|
+
this.callbacks.onDragLeave(e);
|
|
31
|
+
}
|
|
32
|
+
}));
|
|
33
|
+
this.addDisposables(addDisposableListener(this.element, 'dragend', (e) => {
|
|
34
|
+
this.counter = 0;
|
|
35
|
+
this.callbacks.onDragEnd(e);
|
|
36
|
+
}));
|
|
37
|
+
this.addDisposables(addDisposableListener(this.element, 'drop', (e) => {
|
|
38
|
+
this.counter = 0;
|
|
39
|
+
this.callbacks.onDrop(e);
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
class DockviewIdentifier {
|
|
44
|
+
constructor(data) {
|
|
45
|
+
this.data = data;
|
|
46
|
+
//
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
export class DragAndDrop extends CompositeDisposable {
|
|
50
|
+
constructor() {
|
|
51
|
+
super();
|
|
52
|
+
this._onDragStart = new Emitter();
|
|
53
|
+
this._onDragEnd = new Emitter();
|
|
54
|
+
this.transferData = LocalSelectionTransfer.getInstance();
|
|
55
|
+
this.addDisposables(this._onDragStart, this._onDragEnd);
|
|
56
|
+
}
|
|
57
|
+
static get INSTANCE() {
|
|
58
|
+
if (!DragAndDrop._instance) {
|
|
59
|
+
DragAndDrop._instance = new DragAndDrop();
|
|
60
|
+
}
|
|
61
|
+
return DragAndDrop._instance;
|
|
62
|
+
}
|
|
63
|
+
registerTarget(element, callbacks) {
|
|
64
|
+
const disposables = new CompositeDisposable();
|
|
65
|
+
disposables.addDisposables(new DragAndDropObserver(element, {
|
|
66
|
+
onDragEnd: (e) => {
|
|
67
|
+
// no-op
|
|
68
|
+
},
|
|
69
|
+
onDragEnter: (e) => {
|
|
70
|
+
e.preventDefault();
|
|
71
|
+
},
|
|
72
|
+
onDragLeave: (e) => {
|
|
73
|
+
//
|
|
74
|
+
},
|
|
75
|
+
onDrop: (e) => {
|
|
76
|
+
//
|
|
77
|
+
},
|
|
78
|
+
onDragOver: (e) => {
|
|
79
|
+
//
|
|
80
|
+
},
|
|
81
|
+
}));
|
|
82
|
+
return disposables;
|
|
83
|
+
}
|
|
84
|
+
registerDraggable(element, draggedItemProvider, callbacks) {
|
|
85
|
+
element.draggable = true;
|
|
86
|
+
const disposables = new CompositeDisposable();
|
|
87
|
+
disposables.addDisposables(addDisposableListener(element, 'dragstart', (e) => {
|
|
88
|
+
this._onDragStart.fire({ event: e });
|
|
89
|
+
}));
|
|
90
|
+
disposables.addDisposables(new DragAndDropObserver(element, {
|
|
91
|
+
onDragEnd: (e) => {
|
|
92
|
+
// no-op
|
|
93
|
+
},
|
|
94
|
+
onDragEnter: (e) => {
|
|
95
|
+
//
|
|
96
|
+
},
|
|
97
|
+
onDragLeave: (e) => {
|
|
98
|
+
//
|
|
99
|
+
},
|
|
100
|
+
onDrop: (e) => {
|
|
101
|
+
//
|
|
102
|
+
},
|
|
103
|
+
onDragOver: (e) => {
|
|
104
|
+
//
|
|
105
|
+
},
|
|
106
|
+
}));
|
|
107
|
+
return disposables;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
@@ -1,37 +1,33 @@
|
|
|
1
|
-
import { Event } from '../events';
|
|
2
|
-
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
export
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
private
|
|
22
|
-
private readonly
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
});
|
|
35
|
-
dispose(): void;
|
|
36
|
-
private removeDropTarget;
|
|
37
|
-
}
|
|
1
|
+
import { Event } from '../events';
|
|
2
|
+
import { CompositeDisposable } from '../lifecycle';
|
|
3
|
+
export declare enum Position {
|
|
4
|
+
Top = "Top",
|
|
5
|
+
Left = "Left",
|
|
6
|
+
Bottom = "Bottom",
|
|
7
|
+
Right = "Right",
|
|
8
|
+
Center = "Center"
|
|
9
|
+
}
|
|
10
|
+
export interface DroptargetEvent {
|
|
11
|
+
position: Position;
|
|
12
|
+
nativeEvent: DragEvent;
|
|
13
|
+
}
|
|
14
|
+
export declare type DropTargetDirections = 'vertical' | 'horizontal' | 'all' | 'none';
|
|
15
|
+
export declare type CanDisplayOverlay = boolean | ((dragEvent: DragEvent) => boolean);
|
|
16
|
+
export declare class Droptarget extends CompositeDisposable {
|
|
17
|
+
private readonly element;
|
|
18
|
+
private readonly options;
|
|
19
|
+
private target;
|
|
20
|
+
private overlay;
|
|
21
|
+
private _state;
|
|
22
|
+
private readonly _onDrop;
|
|
23
|
+
readonly onDrop: Event<DroptargetEvent>;
|
|
24
|
+
get state(): Position | undefined;
|
|
25
|
+
set validOverlays(value: DropTargetDirections);
|
|
26
|
+
set canDisplayOverlay(value: CanDisplayOverlay);
|
|
27
|
+
constructor(element: HTMLElement, options: {
|
|
28
|
+
canDisplayOverlay: CanDisplayOverlay;
|
|
29
|
+
validOverlays: DropTargetDirections;
|
|
30
|
+
});
|
|
31
|
+
dispose(): void;
|
|
32
|
+
private removeDropTarget;
|
|
33
|
+
}
|