dockview-core 1.8.3 → 1.8.5

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 (357) hide show
  1. package/README.md +51 -51
  2. package/dist/cjs/api/component.api.d.ts +455 -152
  3. package/dist/cjs/api/component.api.d.ts.map +1 -1
  4. package/dist/cjs/api/component.api.js +895 -592
  5. package/dist/cjs/api/component.api.js.map +1 -1
  6. package/dist/cjs/api/dockviewGroupPanelApi.d.ts +29 -29
  7. package/dist/cjs/api/dockviewGroupPanelApi.js +53 -53
  8. package/dist/cjs/api/dockviewPanelApi.d.ts +47 -47
  9. package/dist/cjs/api/dockviewPanelApi.js +88 -88
  10. package/dist/cjs/api/gridviewPanelApi.d.ts +37 -37
  11. package/dist/cjs/api/gridviewPanelApi.js +47 -47
  12. package/dist/cjs/api/panelApi.d.ts +88 -88
  13. package/dist/cjs/api/panelApi.js +135 -135
  14. package/dist/cjs/api/paneviewPanelApi.d.ts +26 -26
  15. package/dist/cjs/api/paneviewPanelApi.js +57 -57
  16. package/dist/cjs/api/splitviewPanelApi.d.ts +32 -32
  17. package/dist/cjs/api/splitviewPanelApi.js +47 -47
  18. package/dist/cjs/array.d.ts +13 -13
  19. package/dist/cjs/array.js +67 -67
  20. package/dist/cjs/dnd/abstractDragHandler.d.ts +12 -12
  21. package/dist/cjs/dnd/abstractDragHandler.js +141 -141
  22. package/dist/cjs/dnd/dataTransfer.d.ts +30 -31
  23. package/dist/cjs/dnd/dataTransfer.d.ts.map +1 -1
  24. package/dist/cjs/dnd/dataTransfer.js +99 -100
  25. package/dist/cjs/dnd/dataTransfer.js.map +1 -1
  26. package/dist/cjs/dnd/dnd.d.ts +27 -27
  27. package/dist/cjs/dnd/dnd.js +59 -59
  28. package/dist/cjs/dnd/droptarget.d.ts +53 -53
  29. package/dist/cjs/dnd/droptarget.js +304 -304
  30. package/dist/cjs/dnd/droptarget.js.map +1 -1
  31. package/dist/cjs/dnd/ghost.d.ts +1 -1
  32. package/dist/cjs/dnd/ghost.js +15 -15
  33. package/dist/cjs/dnd/groupDragHandler.d.ts +12 -12
  34. package/dist/cjs/dnd/groupDragHandler.js +77 -77
  35. package/dist/cjs/dnd/overlay.d.ts +43 -43
  36. package/dist/cjs/dnd/overlay.d.ts.map +1 -1
  37. package/dist/cjs/dnd/overlay.js +412 -412
  38. package/dist/cjs/dnd/overlay.js.map +1 -1
  39. package/dist/cjs/dockview/components/panel/content.d.ts +30 -30
  40. package/dist/cjs/dockview/components/panel/content.js +100 -100
  41. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +21 -21
  42. package/dist/cjs/dockview/components/tab/defaultTab.js +105 -105
  43. package/dist/cjs/dockview/components/tab/tab.d.ts +34 -34
  44. package/dist/cjs/dockview/components/tab/tab.js +120 -120
  45. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +81 -77
  46. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts.map +1 -1
  47. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +325 -309
  48. package/dist/cjs/dockview/components/titlebar/tabsContainer.js.map +1 -1
  49. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +17 -17
  50. package/dist/cjs/dockview/components/titlebar/voidContainer.js +77 -77
  51. package/dist/cjs/dockview/components/watermark/watermark.d.ts +18 -18
  52. package/dist/cjs/dockview/components/watermark/watermark.js +87 -87
  53. package/dist/cjs/dockview/deserializer.d.ts +12 -12
  54. package/dist/cjs/dockview/deserializer.js +33 -33
  55. package/dist/cjs/dockview/deserializer.js.map +1 -1
  56. package/dist/cjs/dockview/dockviewComponent.d.ts +159 -159
  57. package/dist/cjs/dockview/dockviewComponent.d.ts.map +1 -1
  58. package/dist/cjs/dockview/dockviewComponent.js +1170 -1002
  59. package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
  60. package/dist/cjs/dockview/dockviewFloatingGroupPanel.d.ts +23 -23
  61. package/dist/cjs/dockview/dockviewFloatingGroupPanel.js +34 -34
  62. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +30 -30
  63. package/dist/cjs/dockview/dockviewGroupPanel.js +97 -97
  64. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +185 -184
  65. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts.map +1 -1
  66. package/dist/cjs/dockview/dockviewGroupPanelModel.js +632 -621
  67. package/dist/cjs/dockview/dockviewGroupPanelModel.js.map +1 -1
  68. package/dist/cjs/dockview/dockviewPanel.d.ts +41 -41
  69. package/dist/cjs/dockview/dockviewPanel.js +172 -171
  70. package/dist/cjs/dockview/dockviewPanel.js.map +1 -1
  71. package/dist/cjs/dockview/dockviewPanelModel.d.ts +35 -35
  72. package/dist/cjs/dockview/dockviewPanelModel.js +98 -98
  73. package/dist/cjs/dockview/dockviewPanelModel.js.map +1 -1
  74. package/dist/cjs/dockview/options.d.ts +133 -135
  75. package/dist/cjs/dockview/options.d.ts.map +1 -1
  76. package/dist/cjs/dockview/options.js +31 -31
  77. package/dist/cjs/dockview/options.js.map +1 -1
  78. package/dist/cjs/dockview/types.d.ts +63 -63
  79. package/dist/cjs/dockview/types.js +10 -10
  80. package/dist/cjs/dockview/types.js.map +1 -1
  81. package/dist/cjs/dom.d.ts +16 -16
  82. package/dist/cjs/dom.js +197 -197
  83. package/dist/cjs/events.d.ts +47 -47
  84. package/dist/cjs/events.js +216 -216
  85. package/dist/cjs/events.js.map +1 -1
  86. package/dist/cjs/gridview/baseComponentGridview.d.ts +88 -87
  87. package/dist/cjs/gridview/baseComponentGridview.d.ts.map +1 -1
  88. package/dist/cjs/gridview/baseComponentGridview.js +270 -270
  89. package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
  90. package/dist/cjs/gridview/basePanelView.d.ts +40 -40
  91. package/dist/cjs/gridview/basePanelView.js +156 -156
  92. package/dist/cjs/gridview/branchNode.d.ts +49 -49
  93. package/dist/cjs/gridview/branchNode.d.ts.map +1 -1
  94. package/dist/cjs/gridview/branchNode.js +343 -342
  95. package/dist/cjs/gridview/branchNode.js.map +1 -1
  96. package/dist/cjs/gridview/gridview.d.ts +133 -133
  97. package/dist/cjs/gridview/gridview.d.ts.map +1 -1
  98. package/dist/cjs/gridview/gridview.js +547 -539
  99. package/dist/cjs/gridview/gridview.js.map +1 -1
  100. package/dist/cjs/gridview/gridviewComponent.d.ts +80 -80
  101. package/dist/cjs/gridview/gridviewComponent.d.ts.map +1 -1
  102. package/dist/cjs/gridview/gridviewComponent.js +362 -328
  103. package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
  104. package/dist/cjs/gridview/gridviewPanel.d.ts +65 -65
  105. package/dist/cjs/gridview/gridviewPanel.js +214 -214
  106. package/dist/cjs/gridview/leafNode.d.ts +34 -34
  107. package/dist/cjs/gridview/leafNode.js +170 -170
  108. package/dist/cjs/gridview/leafNode.js.map +1 -1
  109. package/dist/cjs/gridview/options.d.ts +17 -18
  110. package/dist/cjs/gridview/options.d.ts.map +1 -1
  111. package/dist/cjs/gridview/options.js +2 -2
  112. package/dist/cjs/gridview/types.d.ts +3 -3
  113. package/dist/cjs/gridview/types.js +2 -2
  114. package/dist/cjs/index.d.ts +42 -41
  115. package/dist/cjs/index.d.ts.map +1 -1
  116. package/dist/cjs/index.js +61 -61
  117. package/dist/cjs/index.js.map +1 -1
  118. package/dist/cjs/lifecycle.d.ts +23 -23
  119. package/dist/cjs/lifecycle.js +65 -65
  120. package/dist/cjs/lifecycle.js.map +1 -1
  121. package/dist/cjs/math.d.ts +5 -5
  122. package/dist/cjs/math.js +34 -34
  123. package/dist/cjs/panel/componentFactory.d.ts +11 -10
  124. package/dist/cjs/panel/componentFactory.d.ts.map +1 -1
  125. package/dist/cjs/panel/componentFactory.js +30 -30
  126. package/dist/cjs/panel/componentFactory.js.map +1 -1
  127. package/dist/cjs/panel/types.d.ts +33 -33
  128. package/dist/cjs/panel/types.js +2 -2
  129. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +21 -21
  130. package/dist/cjs/paneview/defaultPaneviewHeader.js +90 -90
  131. package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +21 -21
  132. package/dist/cjs/paneview/draggablePaneviewPanel.js +131 -131
  133. package/dist/cjs/paneview/options.d.ts +25 -28
  134. package/dist/cjs/paneview/options.d.ts.map +1 -1
  135. package/dist/cjs/paneview/options.js +2 -2
  136. package/dist/cjs/paneview/paneview.d.ts +40 -40
  137. package/dist/cjs/paneview/paneview.d.ts.map +1 -1
  138. package/dist/cjs/paneview/paneview.js +200 -201
  139. package/dist/cjs/paneview/paneview.js.map +1 -1
  140. package/dist/cjs/paneview/paneviewComponent.d.ts +128 -128
  141. package/dist/cjs/paneview/paneviewComponent.js +400 -397
  142. package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
  143. package/dist/cjs/paneview/paneviewPanel.d.ts +92 -92
  144. package/dist/cjs/paneview/paneviewPanel.d.ts.map +1 -1
  145. package/dist/cjs/paneview/paneviewPanel.js +275 -275
  146. package/dist/cjs/resizable.d.ts +10 -7
  147. package/dist/cjs/resizable.d.ts.map +1 -1
  148. package/dist/cjs/resizable.js +79 -56
  149. package/dist/cjs/resizable.js.map +1 -1
  150. package/dist/cjs/splitview/options.d.ts +26 -27
  151. package/dist/cjs/splitview/options.d.ts.map +1 -1
  152. package/dist/cjs/splitview/options.js +2 -2
  153. package/dist/cjs/splitview/splitview.d.ts +128 -128
  154. package/dist/cjs/splitview/splitview.d.ts.map +1 -1
  155. package/dist/cjs/splitview/splitview.js +936 -926
  156. package/dist/cjs/splitview/splitview.js.map +1 -1
  157. package/dist/cjs/splitview/splitviewComponent.d.ts +101 -101
  158. package/dist/cjs/splitview/splitviewComponent.js +395 -392
  159. package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
  160. package/dist/cjs/splitview/splitviewPanel.d.ts +45 -45
  161. package/dist/cjs/splitview/splitviewPanel.d.ts.map +1 -1
  162. package/dist/cjs/splitview/splitviewPanel.js +179 -179
  163. package/dist/cjs/splitview/splitviewPanel.js.map +1 -1
  164. package/dist/cjs/splitview/viewItem.d.ts +25 -25
  165. package/dist/cjs/splitview/viewItem.js +119 -119
  166. package/dist/cjs/svg.d.ts +3 -3
  167. package/dist/cjs/svg.js +43 -43
  168. package/dist/cjs/types.d.ts +2 -2
  169. package/dist/cjs/types.js +2 -2
  170. package/dist/dockview-core.amd.js +7650 -7188
  171. package/dist/dockview-core.amd.js.map +1 -1
  172. package/dist/dockview-core.amd.min.js +2 -2
  173. package/dist/dockview-core.amd.min.js.map +1 -1
  174. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  175. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  176. package/dist/dockview-core.amd.noStyle.js +7601 -7139
  177. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  178. package/dist/dockview-core.cjs.js +7650 -7188
  179. package/dist/dockview-core.cjs.js.map +1 -1
  180. package/dist/dockview-core.esm.js +7650 -7188
  181. package/dist/dockview-core.esm.js.map +1 -1
  182. package/dist/dockview-core.esm.min.js +2 -2
  183. package/dist/dockview-core.esm.min.js.map +1 -1
  184. package/dist/dockview-core.js +7650 -7188
  185. package/dist/dockview-core.js.map +1 -1
  186. package/dist/dockview-core.min.js +2 -2
  187. package/dist/dockview-core.min.js.map +1 -1
  188. package/dist/dockview-core.min.noStyle.js +2 -2
  189. package/dist/dockview-core.min.noStyle.js.map +1 -1
  190. package/dist/dockview-core.noStyle.js +7601 -7139
  191. package/dist/dockview-core.noStyle.js.map +1 -1
  192. package/dist/esm/api/component.api.d.ts +455 -152
  193. package/dist/esm/api/component.api.d.ts.map +1 -1
  194. package/dist/esm/api/component.api.js +638 -335
  195. package/dist/esm/api/component.api.js.map +1 -1
  196. package/dist/esm/api/dockviewGroupPanelApi.d.ts +29 -29
  197. package/dist/esm/api/dockviewGroupPanelApi.js +27 -27
  198. package/dist/esm/api/dockviewPanelApi.d.ts +47 -47
  199. package/dist/esm/api/dockviewPanelApi.js +53 -53
  200. package/dist/esm/api/gridviewPanelApi.d.ts +37 -37
  201. package/dist/esm/api/gridviewPanelApi.js +25 -25
  202. package/dist/esm/api/panelApi.d.ts +88 -88
  203. package/dist/esm/api/panelApi.js +93 -93
  204. package/dist/esm/api/paneviewPanelApi.d.ts +26 -26
  205. package/dist/esm/api/paneviewPanelApi.js +27 -27
  206. package/dist/esm/api/splitviewPanelApi.d.ts +32 -32
  207. package/dist/esm/api/splitviewPanelApi.js +25 -25
  208. package/dist/esm/array.d.ts +13 -13
  209. package/dist/esm/array.js +57 -57
  210. package/dist/esm/dnd/abstractDragHandler.d.ts +12 -12
  211. package/dist/esm/dnd/abstractDragHandler.js +63 -63
  212. package/dist/esm/dnd/dataTransfer.d.ts +30 -31
  213. package/dist/esm/dnd/dataTransfer.d.ts.map +1 -1
  214. package/dist/esm/dnd/dataTransfer.js +66 -69
  215. package/dist/esm/dnd/dataTransfer.js.map +1 -1
  216. package/dist/esm/dnd/dnd.d.ts +27 -27
  217. package/dist/esm/dnd/dnd.js +36 -36
  218. package/dist/esm/dnd/droptarget.d.ts +53 -53
  219. package/dist/esm/dnd/droptarget.js +274 -274
  220. package/dist/esm/dnd/droptarget.js.map +1 -1
  221. package/dist/esm/dnd/ghost.d.ts +1 -1
  222. package/dist/esm/dnd/ghost.js +11 -11
  223. package/dist/esm/dnd/groupDragHandler.d.ts +12 -12
  224. package/dist/esm/dnd/groupDragHandler.js +54 -54
  225. package/dist/esm/dnd/overlay.d.ts +43 -43
  226. package/dist/esm/dnd/overlay.d.ts.map +1 -1
  227. package/dist/esm/dnd/overlay.js +304 -304
  228. package/dist/esm/dnd/overlay.js.map +1 -1
  229. package/dist/esm/dockview/components/panel/content.d.ts +30 -30
  230. package/dist/esm/dockview/components/panel/content.js +73 -73
  231. package/dist/esm/dockview/components/tab/defaultTab.d.ts +21 -21
  232. package/dist/esm/dockview/components/tab/defaultTab.js +67 -67
  233. package/dist/esm/dockview/components/tab/tab.d.ts +34 -34
  234. package/dist/esm/dockview/components/tab/tab.js +90 -90
  235. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +81 -77
  236. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts.map +1 -1
  237. package/dist/esm/dockview/components/titlebar/tabsContainer.js +239 -223
  238. package/dist/esm/dockview/components/titlebar/tabsContainer.js.map +1 -1
  239. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +17 -17
  240. package/dist/esm/dockview/components/titlebar/voidContainer.js +51 -51
  241. package/dist/esm/dockview/components/watermark/watermark.d.ts +18 -18
  242. package/dist/esm/dockview/components/watermark/watermark.js +61 -61
  243. package/dist/esm/dockview/deserializer.d.ts +12 -12
  244. package/dist/esm/dockview/deserializer.js +28 -28
  245. package/dist/esm/dockview/deserializer.js.map +1 -1
  246. package/dist/esm/dockview/dockviewComponent.d.ts +159 -159
  247. package/dist/esm/dockview/dockviewComponent.d.ts.map +1 -1
  248. package/dist/esm/dockview/dockviewComponent.js +932 -804
  249. package/dist/esm/dockview/dockviewComponent.js.map +1 -1
  250. package/dist/esm/dockview/dockviewFloatingGroupPanel.d.ts +23 -23
  251. package/dist/esm/dockview/dockviewFloatingGroupPanel.js +12 -12
  252. package/dist/esm/dockview/dockviewGroupPanel.d.ts +30 -30
  253. package/dist/esm/dockview/dockviewGroupPanel.js +51 -51
  254. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +185 -184
  255. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts.map +1 -1
  256. package/dist/esm/dockview/dockviewGroupPanelModel.js +499 -488
  257. package/dist/esm/dockview/dockviewGroupPanelModel.js.map +1 -1
  258. package/dist/esm/dockview/dockviewPanel.d.ts +41 -41
  259. package/dist/esm/dockview/dockviewPanel.js +105 -104
  260. package/dist/esm/dockview/dockviewPanel.js.map +1 -1
  261. package/dist/esm/dockview/dockviewPanelModel.d.ts +35 -35
  262. package/dist/esm/dockview/dockviewPanelModel.js +74 -74
  263. package/dist/esm/dockview/dockviewPanelModel.js.map +1 -1
  264. package/dist/esm/dockview/options.d.ts +133 -135
  265. package/dist/esm/dockview/options.d.ts.map +1 -1
  266. package/dist/esm/dockview/options.js +24 -24
  267. package/dist/esm/dockview/options.js.map +1 -1
  268. package/dist/esm/dockview/types.d.ts +63 -63
  269. package/dist/esm/dockview/types.js +7 -7
  270. package/dist/esm/dom.d.ts +16 -16
  271. package/dist/esm/dom.js +126 -126
  272. package/dist/esm/events.d.ts +47 -47
  273. package/dist/esm/events.js +156 -156
  274. package/dist/esm/events.js.map +1 -1
  275. package/dist/esm/gridview/baseComponentGridview.d.ts +88 -87
  276. package/dist/esm/gridview/baseComponentGridview.d.ts.map +1 -1
  277. package/dist/esm/gridview/baseComponentGridview.js +184 -184
  278. package/dist/esm/gridview/baseComponentGridview.js.map +1 -1
  279. package/dist/esm/gridview/basePanelView.d.ts +40 -40
  280. package/dist/esm/gridview/basePanelView.js +85 -85
  281. package/dist/esm/gridview/branchNode.d.ts +49 -49
  282. package/dist/esm/gridview/branchNode.d.ts.map +1 -1
  283. package/dist/esm/gridview/branchNode.js +219 -218
  284. package/dist/esm/gridview/branchNode.js.map +1 -1
  285. package/dist/esm/gridview/gridview.d.ts +133 -133
  286. package/dist/esm/gridview/gridview.d.ts.map +1 -1
  287. package/dist/esm/gridview/gridview.js +461 -453
  288. package/dist/esm/gridview/gridview.js.map +1 -1
  289. package/dist/esm/gridview/gridviewComponent.d.ts +80 -80
  290. package/dist/esm/gridview/gridviewComponent.d.ts.map +1 -1
  291. package/dist/esm/gridview/gridviewComponent.js +264 -241
  292. package/dist/esm/gridview/gridviewComponent.js.map +1 -1
  293. package/dist/esm/gridview/gridviewPanel.d.ts +65 -65
  294. package/dist/esm/gridview/gridviewPanel.js +151 -151
  295. package/dist/esm/gridview/leafNode.d.ts +34 -34
  296. package/dist/esm/gridview/leafNode.js +103 -103
  297. package/dist/esm/gridview/options.d.ts +17 -18
  298. package/dist/esm/gridview/options.d.ts.map +1 -1
  299. package/dist/esm/gridview/options.js +1 -1
  300. package/dist/esm/gridview/types.d.ts +3 -3
  301. package/dist/esm/gridview/types.js +1 -1
  302. package/dist/esm/index.d.ts +42 -41
  303. package/dist/esm/index.d.ts.map +1 -1
  304. package/dist/esm/index.js +34 -34
  305. package/dist/esm/index.js.map +1 -1
  306. package/dist/esm/lifecycle.d.ts +23 -23
  307. package/dist/esm/lifecycle.js +41 -41
  308. package/dist/esm/math.d.ts +5 -5
  309. package/dist/esm/math.js +28 -28
  310. package/dist/esm/panel/componentFactory.d.ts +11 -10
  311. package/dist/esm/panel/componentFactory.d.ts.map +1 -1
  312. package/dist/esm/panel/componentFactory.js +24 -24
  313. package/dist/esm/panel/componentFactory.js.map +1 -1
  314. package/dist/esm/panel/types.d.ts +33 -33
  315. package/dist/esm/panel/types.js +1 -1
  316. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +21 -21
  317. package/dist/esm/paneview/defaultPaneviewHeader.js +63 -63
  318. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +21 -21
  319. package/dist/esm/paneview/draggablePaneviewPanel.js +92 -92
  320. package/dist/esm/paneview/options.d.ts +25 -28
  321. package/dist/esm/paneview/options.d.ts.map +1 -1
  322. package/dist/esm/paneview/options.js +1 -1
  323. package/dist/esm/paneview/paneview.d.ts +40 -40
  324. package/dist/esm/paneview/paneview.d.ts.map +1 -1
  325. package/dist/esm/paneview/paneview.js +145 -145
  326. package/dist/esm/paneview/paneviewComponent.d.ts +128 -128
  327. package/dist/esm/paneview/paneviewComponent.js +276 -273
  328. package/dist/esm/paneview/paneviewComponent.js.map +1 -1
  329. package/dist/esm/paneview/paneviewPanel.d.ts +92 -92
  330. package/dist/esm/paneview/paneviewPanel.d.ts.map +1 -1
  331. package/dist/esm/paneview/paneviewPanel.js +192 -192
  332. package/dist/esm/resizable.d.ts +10 -7
  333. package/dist/esm/resizable.d.ts.map +1 -1
  334. package/dist/esm/resizable.js +48 -30
  335. package/dist/esm/resizable.js.map +1 -1
  336. package/dist/esm/splitview/options.d.ts +26 -27
  337. package/dist/esm/splitview/options.d.ts.map +1 -1
  338. package/dist/esm/splitview/options.js +1 -1
  339. package/dist/esm/splitview/splitview.d.ts +128 -128
  340. package/dist/esm/splitview/splitview.d.ts.map +1 -1
  341. package/dist/esm/splitview/splitview.js +704 -694
  342. package/dist/esm/splitview/splitview.js.map +1 -1
  343. package/dist/esm/splitview/splitviewComponent.d.ts +101 -101
  344. package/dist/esm/splitview/splitviewComponent.js +261 -258
  345. package/dist/esm/splitview/splitviewComponent.js.map +1 -1
  346. package/dist/esm/splitview/splitviewPanel.d.ts +45 -45
  347. package/dist/esm/splitview/splitviewPanel.d.ts.map +1 -1
  348. package/dist/esm/splitview/splitviewPanel.js +108 -108
  349. package/dist/esm/splitview/splitviewPanel.js.map +1 -1
  350. package/dist/esm/splitview/viewItem.d.ts +25 -25
  351. package/dist/esm/splitview/viewItem.js +74 -74
  352. package/dist/esm/svg.d.ts +3 -3
  353. package/dist/esm/svg.js +31 -31
  354. package/dist/esm/types.d.ts +2 -2
  355. package/dist/esm/types.js +1 -1
  356. package/package.json +30 -43
  357. package/LICENSE +0 -21
@@ -1,64 +1,64 @@
1
- import { IDockviewComponent } from './dockviewComponent';
2
- import { DockviewPanelApi } from '../api/dockviewPanelApi';
3
- import { PanelInitParameters, IPanel } from '../panel/types';
4
- import { DockviewApi } from '../api/component.api';
5
- import { Event } from '../events';
6
- import { Optional } from '../types';
7
- import { DockviewGroupPanel, IDockviewGroupPanel } from './dockviewGroupPanel';
8
- export declare enum DockviewDropTargets {
9
- Tab = 0,
10
- Panel = 1,
11
- TabContainer = 2,
12
- Edge = 3
13
- }
14
- export interface HeaderPartInitParameters {
15
- title: string;
16
- }
17
- export interface GroupPanelPartInitParameters extends PanelInitParameters, HeaderPartInitParameters {
18
- api: DockviewPanelApi;
19
- containerApi: DockviewApi;
20
- }
21
- export interface GroupPanelContentPartInitParameters extends GroupPanelPartInitParameters {
22
- tab: ITabRenderer;
23
- }
24
- export interface WatermarkRendererInitParameters {
25
- containerApi: DockviewApi;
26
- group?: IDockviewGroupPanel;
27
- }
28
- export interface IWatermarkRenderer extends Optional<Omit<IPanel, 'id' | 'init'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
29
- readonly element: HTMLElement;
30
- init: (params: WatermarkRendererInitParameters) => void;
31
- updateParentGroup(group: DockviewGroupPanel, visible: boolean): void;
32
- }
33
- export interface ITabRenderer extends Optional<Omit<IPanel, 'id'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
34
- readonly element: HTMLElement;
35
- init(parameters: GroupPanelPartInitParameters): void;
36
- onGroupChange?(group: DockviewGroupPanel): void;
37
- onPanelVisibleChange?(isPanelVisible: boolean): void;
38
- }
39
- export interface IContentRenderer extends Optional<Omit<IPanel, 'id'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
40
- readonly element: HTMLElement;
41
- readonly onDidFocus?: Event<void>;
42
- readonly onDidBlur?: Event<void>;
43
- init(parameters: GroupPanelContentPartInitParameters): void;
44
- onGroupChange?(group: DockviewGroupPanel): void;
45
- onPanelVisibleChange?(isPanelVisible: boolean): void;
46
- }
47
- export interface WatermarkPartInitParameters {
48
- accessor: IDockviewComponent;
49
- }
50
- export interface WatermarkConstructor {
51
- new (): IWatermarkRenderer;
52
- }
53
- export interface IGroupPanelInitParameters extends PanelInitParameters, HeaderPartInitParameters {
54
- }
55
- export interface GroupviewPanelState {
56
- id: string;
57
- contentComponent?: string;
58
- tabComponent?: string;
59
- title?: string;
60
- params?: {
61
- [key: string]: any;
62
- };
63
- }
1
+ import { IDockviewComponent } from './dockviewComponent';
2
+ import { DockviewPanelApi } from '../api/dockviewPanelApi';
3
+ import { PanelInitParameters, IPanel } from '../panel/types';
4
+ import { DockviewApi } from '../api/component.api';
5
+ import { Event } from '../events';
6
+ import { Optional } from '../types';
7
+ import { DockviewGroupPanel, IDockviewGroupPanel } from './dockviewGroupPanel';
8
+ export declare enum DockviewDropTargets {
9
+ Tab = 0,
10
+ Panel = 1,
11
+ TabContainer = 2,
12
+ Edge = 3
13
+ }
14
+ export interface HeaderPartInitParameters {
15
+ title: string;
16
+ }
17
+ export interface GroupPanelPartInitParameters extends PanelInitParameters, HeaderPartInitParameters {
18
+ api: DockviewPanelApi;
19
+ containerApi: DockviewApi;
20
+ }
21
+ export interface GroupPanelContentPartInitParameters extends GroupPanelPartInitParameters {
22
+ tab: ITabRenderer;
23
+ }
24
+ export interface WatermarkRendererInitParameters {
25
+ containerApi: DockviewApi;
26
+ group?: IDockviewGroupPanel;
27
+ }
28
+ export interface IWatermarkRenderer extends Optional<Omit<IPanel, 'id' | 'init'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
29
+ readonly element: HTMLElement;
30
+ init: (params: WatermarkRendererInitParameters) => void;
31
+ updateParentGroup(group: DockviewGroupPanel, visible: boolean): void;
32
+ }
33
+ export interface ITabRenderer extends Optional<Omit<IPanel, 'id'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
34
+ readonly element: HTMLElement;
35
+ init(parameters: GroupPanelPartInitParameters): void;
36
+ onGroupChange?(group: DockviewGroupPanel): void;
37
+ onPanelVisibleChange?(isPanelVisible: boolean): void;
38
+ }
39
+ export interface IContentRenderer extends Optional<Omit<IPanel, 'id'>, 'dispose' | 'update' | 'layout' | 'toJSON'> {
40
+ readonly element: HTMLElement;
41
+ readonly onDidFocus?: Event<void>;
42
+ readonly onDidBlur?: Event<void>;
43
+ init(parameters: GroupPanelContentPartInitParameters): void;
44
+ onGroupChange?(group: DockviewGroupPanel): void;
45
+ onPanelVisibleChange?(isPanelVisible: boolean): void;
46
+ }
47
+ export interface WatermarkPartInitParameters {
48
+ accessor: IDockviewComponent;
49
+ }
50
+ export interface WatermarkConstructor {
51
+ new (): IWatermarkRenderer;
52
+ }
53
+ export interface IGroupPanelInitParameters extends PanelInitParameters, HeaderPartInitParameters {
54
+ }
55
+ export interface GroupviewPanelState {
56
+ id: string;
57
+ contentComponent?: string;
58
+ tabComponent?: string;
59
+ title?: string;
60
+ params?: {
61
+ [key: string]: any;
62
+ };
63
+ }
64
64
  //# sourceMappingURL=types.d.ts.map
@@ -1,11 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DockviewDropTargets = void 0;
4
- var DockviewDropTargets;
5
- (function (DockviewDropTargets) {
6
- DockviewDropTargets[DockviewDropTargets["Tab"] = 0] = "Tab";
7
- DockviewDropTargets[DockviewDropTargets["Panel"] = 1] = "Panel";
8
- DockviewDropTargets[DockviewDropTargets["TabContainer"] = 2] = "TabContainer";
9
- DockviewDropTargets[DockviewDropTargets["Edge"] = 3] = "Edge";
10
- })(DockviewDropTargets = exports.DockviewDropTargets || (exports.DockviewDropTargets = {}));
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DockviewDropTargets = void 0;
4
+ var DockviewDropTargets;
5
+ (function (DockviewDropTargets) {
6
+ DockviewDropTargets[DockviewDropTargets["Tab"] = 0] = "Tab";
7
+ DockviewDropTargets[DockviewDropTargets["Panel"] = 1] = "Panel";
8
+ DockviewDropTargets[DockviewDropTargets["TabContainer"] = 2] = "TabContainer";
9
+ DockviewDropTargets[DockviewDropTargets["Edge"] = 3] = "Edge";
10
+ })(DockviewDropTargets || (exports.DockviewDropTargets = DockviewDropTargets = {}));
11
11
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dockview/types.ts"],"names":[],"mappings":";;;AAQA,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC3B,2DAAG,CAAA;IACH,+DAAK,CAAA;IACL,6EAAY,CAAA;IACZ,6DAAI,CAAA;AACR,CAAC,EALW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAK9B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dockview/types.ts"],"names":[],"mappings":";;;AAQA,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC3B,2DAAG,CAAA;IACH,+DAAK,CAAA;IACL,6EAAY,CAAA;IACZ,6DAAI,CAAA;AACR,CAAC,EALW,mBAAmB,mCAAnB,mBAAmB,QAK9B"}
package/dist/cjs/dom.d.ts CHANGED
@@ -1,17 +1,17 @@
1
- import { Event as DockviewEvent } from './events';
2
- import { IDisposable } from './lifecycle';
3
- export declare function watchElementResize(element: HTMLElement, cb: (entry: ResizeObserverEntry) => void): IDisposable;
4
- export declare const removeClasses: (element: HTMLElement, ...classes: string[]) => void;
5
- export declare const addClasses: (element: HTMLElement, ...classes: string[]) => void;
6
- export declare const toggleClass: (element: HTMLElement, className: string, isToggled: boolean) => void;
7
- export declare function isAncestor(testChild: Node | null, testAncestor: Node | null): boolean;
8
- export declare function getElementsByTagName(tag: string): HTMLElement[];
9
- export interface IFocusTracker extends IDisposable {
10
- readonly onDidFocus: DockviewEvent<void>;
11
- readonly onDidBlur: DockviewEvent<void>;
12
- refreshState?(): void;
13
- }
14
- export declare function trackFocus(element: HTMLElement | Window): IFocusTracker;
15
- export declare function quasiPreventDefault(event: Event): void;
16
- export declare function quasiDefaultPrevented(event: Event): boolean;
1
+ import { Event as DockviewEvent } from './events';
2
+ import { IDisposable } from './lifecycle';
3
+ export declare function watchElementResize(element: HTMLElement, cb: (entry: ResizeObserverEntry) => void): IDisposable;
4
+ export declare const removeClasses: (element: HTMLElement, ...classes: string[]) => void;
5
+ export declare const addClasses: (element: HTMLElement, ...classes: string[]) => void;
6
+ export declare const toggleClass: (element: HTMLElement, className: string, isToggled: boolean) => void;
7
+ export declare function isAncestor(testChild: Node | null, testAncestor: Node | null): boolean;
8
+ export declare function getElementsByTagName(tag: string): HTMLElement[];
9
+ export interface IFocusTracker extends IDisposable {
10
+ readonly onDidFocus: DockviewEvent<void>;
11
+ readonly onDidBlur: DockviewEvent<void>;
12
+ refreshState?(): void;
13
+ }
14
+ export declare function trackFocus(element: HTMLElement | Window): IFocusTracker;
15
+ export declare function quasiPreventDefault(event: Event): void;
16
+ export declare function quasiDefaultPrevented(event: Event): boolean;
17
17
  //# sourceMappingURL=dom.d.ts.map
package/dist/cjs/dom.js CHANGED
@@ -1,198 +1,198 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __values = (this && this.__values) || function(o) {
18
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
19
- if (m) return m.call(o);
20
- if (o && typeof o.length === "number") return {
21
- next: function () {
22
- if (o && i >= o.length) o = void 0;
23
- return { value: o && o[i++], done: !o };
24
- }
25
- };
26
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.quasiDefaultPrevented = exports.quasiPreventDefault = exports.trackFocus = exports.getElementsByTagName = exports.isAncestor = exports.toggleClass = exports.addClasses = exports.removeClasses = exports.watchElementResize = void 0;
30
- var events_1 = require("./events");
31
- var lifecycle_1 = require("./lifecycle");
32
- function watchElementResize(element, cb) {
33
- var observer = new ResizeObserver(function (entires) {
34
- /**
35
- * Fast browser window resize produces Error: ResizeObserver loop limit exceeded.
36
- * The error isn't visible in browser console, doesn't affect functionality, but degrades performance.
37
- * See https://stackoverflow.com/questions/49384120/resizeobserver-loop-limit-exceeded/58701523#58701523
38
- */
39
- requestAnimationFrame(function () {
40
- var firstEntry = entires[0];
41
- cb(firstEntry);
42
- });
43
- });
44
- observer.observe(element);
45
- return {
46
- dispose: function () {
47
- observer.unobserve(element);
48
- observer.disconnect();
49
- },
50
- };
51
- }
52
- exports.watchElementResize = watchElementResize;
53
- var removeClasses = function (element) {
54
- var e_1, _a;
55
- var classes = [];
56
- for (var _i = 1; _i < arguments.length; _i++) {
57
- classes[_i - 1] = arguments[_i];
58
- }
59
- try {
60
- for (var classes_1 = __values(classes), classes_1_1 = classes_1.next(); !classes_1_1.done; classes_1_1 = classes_1.next()) {
61
- var classname = classes_1_1.value;
62
- if (element.classList.contains(classname)) {
63
- element.classList.remove(classname);
64
- }
65
- }
66
- }
67
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
68
- finally {
69
- try {
70
- if (classes_1_1 && !classes_1_1.done && (_a = classes_1.return)) _a.call(classes_1);
71
- }
72
- finally { if (e_1) throw e_1.error; }
73
- }
74
- };
75
- exports.removeClasses = removeClasses;
76
- var addClasses = function (element) {
77
- var e_2, _a;
78
- var classes = [];
79
- for (var _i = 1; _i < arguments.length; _i++) {
80
- classes[_i - 1] = arguments[_i];
81
- }
82
- try {
83
- for (var classes_2 = __values(classes), classes_2_1 = classes_2.next(); !classes_2_1.done; classes_2_1 = classes_2.next()) {
84
- var classname = classes_2_1.value;
85
- if (!element.classList.contains(classname)) {
86
- element.classList.add(classname);
87
- }
88
- }
89
- }
90
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
91
- finally {
92
- try {
93
- if (classes_2_1 && !classes_2_1.done && (_a = classes_2.return)) _a.call(classes_2);
94
- }
95
- finally { if (e_2) throw e_2.error; }
96
- }
97
- };
98
- exports.addClasses = addClasses;
99
- var toggleClass = function (element, className, isToggled) {
100
- var hasClass = element.classList.contains(className);
101
- if (isToggled && !hasClass) {
102
- element.classList.add(className);
103
- }
104
- if (!isToggled && hasClass) {
105
- element.classList.remove(className);
106
- }
107
- };
108
- exports.toggleClass = toggleClass;
109
- function isAncestor(testChild, testAncestor) {
110
- while (testChild) {
111
- if (testChild === testAncestor) {
112
- return true;
113
- }
114
- testChild = testChild.parentNode;
115
- }
116
- return false;
117
- }
118
- exports.isAncestor = isAncestor;
119
- function getElementsByTagName(tag) {
120
- return Array.prototype.slice.call(document.getElementsByTagName(tag), 0);
121
- }
122
- exports.getElementsByTagName = getElementsByTagName;
123
- function trackFocus(element) {
124
- return new FocusTracker(element);
125
- }
126
- exports.trackFocus = trackFocus;
127
- /**
128
- * Track focus on an element. Ensure tabIndex is set when an HTMLElement is not focusable by default
129
- */
130
- var FocusTracker = /** @class */ (function (_super) {
131
- __extends(FocusTracker, _super);
132
- function FocusTracker(element) {
133
- var _this = _super.call(this) || this;
134
- _this._onDidFocus = new events_1.Emitter();
135
- _this.onDidFocus = _this._onDidFocus.event;
136
- _this._onDidBlur = new events_1.Emitter();
137
- _this.onDidBlur = _this._onDidBlur.event;
138
- _this.addDisposables(_this._onDidFocus, _this._onDidBlur);
139
- var hasFocus = isAncestor(document.activeElement, element);
140
- var loosingFocus = false;
141
- var onFocus = function () {
142
- loosingFocus = false;
143
- if (!hasFocus) {
144
- hasFocus = true;
145
- _this._onDidFocus.fire();
146
- }
147
- };
148
- var onBlur = function () {
149
- if (hasFocus) {
150
- loosingFocus = true;
151
- window.setTimeout(function () {
152
- if (loosingFocus) {
153
- loosingFocus = false;
154
- hasFocus = false;
155
- _this._onDidBlur.fire();
156
- }
157
- }, 0);
158
- }
159
- };
160
- _this._refreshStateHandler = function () {
161
- var currentNodeHasFocus = isAncestor(document.activeElement, element);
162
- if (currentNodeHasFocus !== hasFocus) {
163
- if (hasFocus) {
164
- onBlur();
165
- }
166
- else {
167
- onFocus();
168
- }
169
- }
170
- };
171
- if (element instanceof HTMLElement) {
172
- _this.addDisposables((0, events_1.addDisposableListener)(element, 'focus', onFocus, true));
173
- _this.addDisposables((0, events_1.addDisposableListener)(element, 'blur', onBlur, true));
174
- }
175
- else {
176
- _this.addDisposables((0, events_1.addDisposableWindowListener)(element, 'focus', onFocus, true));
177
- _this.addDisposables((0, events_1.addDisposableWindowListener)(element, 'blur', onBlur, true));
178
- }
179
- return _this;
180
- }
181
- FocusTracker.prototype.refreshState = function () {
182
- this._refreshStateHandler();
183
- };
184
- return FocusTracker;
185
- }(lifecycle_1.CompositeDisposable));
186
- // quasi: apparently, but not really; seemingly
187
- var QUASI_PREVENT_DEFAULT_KEY = 'dv-quasiPreventDefault';
188
- // mark an event directly for other listeners to check
189
- function quasiPreventDefault(event) {
190
- event[QUASI_PREVENT_DEFAULT_KEY] = true;
191
- }
192
- exports.quasiPreventDefault = quasiPreventDefault;
193
- // check if this event has been marked
194
- function quasiDefaultPrevented(event) {
195
- return event[QUASI_PREVENT_DEFAULT_KEY];
196
- }
197
- exports.quasiDefaultPrevented = quasiDefaultPrevented;
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __values = (this && this.__values) || function(o) {
18
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
19
+ if (m) return m.call(o);
20
+ if (o && typeof o.length === "number") return {
21
+ next: function () {
22
+ if (o && i >= o.length) o = void 0;
23
+ return { value: o && o[i++], done: !o };
24
+ }
25
+ };
26
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.quasiDefaultPrevented = exports.quasiPreventDefault = exports.trackFocus = exports.getElementsByTagName = exports.isAncestor = exports.toggleClass = exports.addClasses = exports.removeClasses = exports.watchElementResize = void 0;
30
+ var events_1 = require("./events");
31
+ var lifecycle_1 = require("./lifecycle");
32
+ function watchElementResize(element, cb) {
33
+ var observer = new ResizeObserver(function (entires) {
34
+ /**
35
+ * Fast browser window resize produces Error: ResizeObserver loop limit exceeded.
36
+ * The error isn't visible in browser console, doesn't affect functionality, but degrades performance.
37
+ * See https://stackoverflow.com/questions/49384120/resizeobserver-loop-limit-exceeded/58701523#58701523
38
+ */
39
+ requestAnimationFrame(function () {
40
+ var firstEntry = entires[0];
41
+ cb(firstEntry);
42
+ });
43
+ });
44
+ observer.observe(element);
45
+ return {
46
+ dispose: function () {
47
+ observer.unobserve(element);
48
+ observer.disconnect();
49
+ },
50
+ };
51
+ }
52
+ exports.watchElementResize = watchElementResize;
53
+ var removeClasses = function (element) {
54
+ var e_1, _a;
55
+ var classes = [];
56
+ for (var _i = 1; _i < arguments.length; _i++) {
57
+ classes[_i - 1] = arguments[_i];
58
+ }
59
+ try {
60
+ for (var classes_1 = __values(classes), classes_1_1 = classes_1.next(); !classes_1_1.done; classes_1_1 = classes_1.next()) {
61
+ var classname = classes_1_1.value;
62
+ if (element.classList.contains(classname)) {
63
+ element.classList.remove(classname);
64
+ }
65
+ }
66
+ }
67
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
68
+ finally {
69
+ try {
70
+ if (classes_1_1 && !classes_1_1.done && (_a = classes_1.return)) _a.call(classes_1);
71
+ }
72
+ finally { if (e_1) throw e_1.error; }
73
+ }
74
+ };
75
+ exports.removeClasses = removeClasses;
76
+ var addClasses = function (element) {
77
+ var e_2, _a;
78
+ var classes = [];
79
+ for (var _i = 1; _i < arguments.length; _i++) {
80
+ classes[_i - 1] = arguments[_i];
81
+ }
82
+ try {
83
+ for (var classes_2 = __values(classes), classes_2_1 = classes_2.next(); !classes_2_1.done; classes_2_1 = classes_2.next()) {
84
+ var classname = classes_2_1.value;
85
+ if (!element.classList.contains(classname)) {
86
+ element.classList.add(classname);
87
+ }
88
+ }
89
+ }
90
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
91
+ finally {
92
+ try {
93
+ if (classes_2_1 && !classes_2_1.done && (_a = classes_2.return)) _a.call(classes_2);
94
+ }
95
+ finally { if (e_2) throw e_2.error; }
96
+ }
97
+ };
98
+ exports.addClasses = addClasses;
99
+ var toggleClass = function (element, className, isToggled) {
100
+ var hasClass = element.classList.contains(className);
101
+ if (isToggled && !hasClass) {
102
+ element.classList.add(className);
103
+ }
104
+ if (!isToggled && hasClass) {
105
+ element.classList.remove(className);
106
+ }
107
+ };
108
+ exports.toggleClass = toggleClass;
109
+ function isAncestor(testChild, testAncestor) {
110
+ while (testChild) {
111
+ if (testChild === testAncestor) {
112
+ return true;
113
+ }
114
+ testChild = testChild.parentNode;
115
+ }
116
+ return false;
117
+ }
118
+ exports.isAncestor = isAncestor;
119
+ function getElementsByTagName(tag) {
120
+ return Array.prototype.slice.call(document.getElementsByTagName(tag), 0);
121
+ }
122
+ exports.getElementsByTagName = getElementsByTagName;
123
+ function trackFocus(element) {
124
+ return new FocusTracker(element);
125
+ }
126
+ exports.trackFocus = trackFocus;
127
+ /**
128
+ * Track focus on an element. Ensure tabIndex is set when an HTMLElement is not focusable by default
129
+ */
130
+ var FocusTracker = /** @class */ (function (_super) {
131
+ __extends(FocusTracker, _super);
132
+ function FocusTracker(element) {
133
+ var _this = _super.call(this) || this;
134
+ _this._onDidFocus = new events_1.Emitter();
135
+ _this.onDidFocus = _this._onDidFocus.event;
136
+ _this._onDidBlur = new events_1.Emitter();
137
+ _this.onDidBlur = _this._onDidBlur.event;
138
+ _this.addDisposables(_this._onDidFocus, _this._onDidBlur);
139
+ var hasFocus = isAncestor(document.activeElement, element);
140
+ var loosingFocus = false;
141
+ var onFocus = function () {
142
+ loosingFocus = false;
143
+ if (!hasFocus) {
144
+ hasFocus = true;
145
+ _this._onDidFocus.fire();
146
+ }
147
+ };
148
+ var onBlur = function () {
149
+ if (hasFocus) {
150
+ loosingFocus = true;
151
+ window.setTimeout(function () {
152
+ if (loosingFocus) {
153
+ loosingFocus = false;
154
+ hasFocus = false;
155
+ _this._onDidBlur.fire();
156
+ }
157
+ }, 0);
158
+ }
159
+ };
160
+ _this._refreshStateHandler = function () {
161
+ var currentNodeHasFocus = isAncestor(document.activeElement, element);
162
+ if (currentNodeHasFocus !== hasFocus) {
163
+ if (hasFocus) {
164
+ onBlur();
165
+ }
166
+ else {
167
+ onFocus();
168
+ }
169
+ }
170
+ };
171
+ if (element instanceof HTMLElement) {
172
+ _this.addDisposables((0, events_1.addDisposableListener)(element, 'focus', onFocus, true));
173
+ _this.addDisposables((0, events_1.addDisposableListener)(element, 'blur', onBlur, true));
174
+ }
175
+ else {
176
+ _this.addDisposables((0, events_1.addDisposableWindowListener)(element, 'focus', onFocus, true));
177
+ _this.addDisposables((0, events_1.addDisposableWindowListener)(element, 'blur', onBlur, true));
178
+ }
179
+ return _this;
180
+ }
181
+ FocusTracker.prototype.refreshState = function () {
182
+ this._refreshStateHandler();
183
+ };
184
+ return FocusTracker;
185
+ }(lifecycle_1.CompositeDisposable));
186
+ // quasi: apparently, but not really; seemingly
187
+ var QUASI_PREVENT_DEFAULT_KEY = 'dv-quasiPreventDefault';
188
+ // mark an event directly for other listeners to check
189
+ function quasiPreventDefault(event) {
190
+ event[QUASI_PREVENT_DEFAULT_KEY] = true;
191
+ }
192
+ exports.quasiPreventDefault = quasiPreventDefault;
193
+ // check if this event has been marked
194
+ function quasiDefaultPrevented(event) {
195
+ return event[QUASI_PREVENT_DEFAULT_KEY];
196
+ }
197
+ exports.quasiDefaultPrevented = quasiDefaultPrevented;
198
198
  //# sourceMappingURL=dom.js.map