flexlayout-react 0.8.9 → 0.8.11

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 (312) hide show
  1. package/ChangeLog.txt +12 -0
  2. package/README.md +30 -24
  3. package/declarations/view/BorderTab.d.ts +1 -2
  4. package/declarations/view/Icons.d.ts +7 -8
  5. package/declarations/view/Layout.d.ts +1 -1
  6. package/declarations/view/SizeTracker.d.ts +1 -1
  7. package/dist/flexlayout.js +51 -31
  8. package/dist/flexlayout_min.js +1 -1
  9. package/dist/flexlayout_min.js.LICENSE.txt +10 -0
  10. package/dist/src/Attribute.js +43 -0
  11. package/dist/src/Attribute.js.map +1 -0
  12. package/dist/src/AttributeDefinitions.js +132 -0
  13. package/dist/src/AttributeDefinitions.js.map +1 -0
  14. package/dist/src/DockLocation.js +121 -0
  15. package/dist/src/DockLocation.js.map +1 -0
  16. package/dist/src/DropInfo.js +10 -0
  17. package/dist/src/DropInfo.js.map +1 -0
  18. package/dist/src/I18nLabel.js +14 -0
  19. package/dist/src/I18nLabel.js.map +1 -0
  20. package/dist/src/Orientation.js +23 -0
  21. package/dist/src/Orientation.js.map +1 -0
  22. package/dist/src/Rect.js +111 -0
  23. package/dist/src/Rect.js.map +1 -0
  24. package/dist/src/Types.js +95 -0
  25. package/dist/src/Types.js.map +1 -0
  26. package/dist/src/index.js +22 -0
  27. package/dist/src/index.js.map +1 -0
  28. package/dist/src/model/Action.js +7 -0
  29. package/dist/src/model/Action.js.map +1 -0
  30. package/dist/src/model/Actions.js +170 -0
  31. package/dist/src/model/Actions.js.map +1 -0
  32. package/dist/src/model/BorderNode.js +390 -0
  33. package/dist/src/model/BorderNode.js.map +1 -0
  34. package/dist/src/model/BorderSet.js +67 -0
  35. package/dist/src/model/BorderSet.js.map +1 -0
  36. package/dist/src/model/ICloseType.js +7 -0
  37. package/dist/src/model/ICloseType.js.map +1 -0
  38. package/dist/src/model/IDraggable.js +2 -0
  39. package/dist/src/model/IDraggable.js.map +1 -0
  40. package/dist/src/model/IDropTarget.js +2 -0
  41. package/dist/src/model/IDropTarget.js.map +1 -0
  42. package/dist/src/model/IJsonModel.js +2 -0
  43. package/dist/src/model/IJsonModel.js.map +1 -0
  44. package/dist/src/model/LayoutWindow.js +81 -0
  45. package/dist/src/model/LayoutWindow.js.map +1 -0
  46. package/dist/src/model/Model.js +608 -0
  47. package/dist/src/model/Model.js.map +1 -0
  48. package/dist/src/model/Node.js +218 -0
  49. package/dist/src/model/Node.js.map +1 -0
  50. package/dist/src/model/RowNode.js +492 -0
  51. package/dist/src/model/RowNode.js.map +1 -0
  52. package/dist/src/model/TabNode.js +293 -0
  53. package/dist/src/model/TabNode.js.map +1 -0
  54. package/dist/src/model/TabSetNode.js +469 -0
  55. package/dist/src/model/TabSetNode.js.map +1 -0
  56. package/dist/src/model/Utils.js +48 -0
  57. package/dist/src/model/Utils.js.map +1 -0
  58. package/dist/src/view/BorderButton.js +126 -0
  59. package/dist/src/view/BorderButton.js.map +1 -0
  60. package/dist/src/view/BorderTab.js +44 -0
  61. package/dist/src/view/BorderTab.js.map +1 -0
  62. package/dist/src/view/BorderTabSet.js +138 -0
  63. package/dist/src/view/BorderTabSet.js.map +1 -0
  64. package/dist/src/view/DragContainer.js +16 -0
  65. package/dist/src/view/DragContainer.js.map +1 -0
  66. package/dist/src/view/ErrorBoundary.js +24 -0
  67. package/dist/src/view/ErrorBoundary.js.map +1 -0
  68. package/dist/src/view/Icons.js +29 -0
  69. package/dist/src/view/Icons.js.map +1 -0
  70. package/dist/src/view/Layout.js +881 -0
  71. package/dist/src/view/Layout.js.map +1 -0
  72. package/dist/src/view/Overlay.js +9 -0
  73. package/dist/src/view/Overlay.js.map +1 -0
  74. package/dist/src/view/PopoutWindow.js +129 -0
  75. package/dist/src/view/PopoutWindow.js.map +1 -0
  76. package/dist/src/view/PopupMenu.js +89 -0
  77. package/dist/src/view/PopupMenu.js.map +1 -0
  78. package/dist/src/view/Row.js +46 -0
  79. package/dist/src/view/Row.js.map +1 -0
  80. package/dist/src/view/SizeTracker.js +12 -0
  81. package/dist/src/view/SizeTracker.js.map +1 -0
  82. package/dist/src/view/Splitter.js +192 -0
  83. package/dist/src/view/Splitter.js.map +1 -0
  84. package/dist/src/view/Tab.js +91 -0
  85. package/dist/src/view/Tab.js.map +1 -0
  86. package/dist/src/view/TabButton.js +124 -0
  87. package/dist/src/view/TabButton.js.map +1 -0
  88. package/dist/src/view/TabButtonStamp.js +15 -0
  89. package/dist/src/view/TabButtonStamp.js.map +1 -0
  90. package/dist/src/view/TabOverflowHook.js +266 -0
  91. package/dist/src/view/TabOverflowHook.js.map +1 -0
  92. package/dist/src/view/TabSet.js +256 -0
  93. package/dist/src/view/TabSet.js.map +1 -0
  94. package/dist/src/view/Utils.js +110 -0
  95. package/dist/src/view/Utils.js.map +1 -0
  96. package/lib/AttributeDefinitions.js +2 -2
  97. package/lib/AttributeDefinitions.js.map +1 -1
  98. package/lib/Rect.js +1 -1
  99. package/lib/Rect.js.map +1 -1
  100. package/lib/view/BorderButton.js +7 -9
  101. package/lib/view/BorderButton.js.map +1 -1
  102. package/lib/view/BorderTab.js +18 -9
  103. package/lib/view/BorderTab.js.map +1 -1
  104. package/lib/view/BorderTabSet.js +11 -17
  105. package/lib/view/BorderTabSet.js.map +1 -1
  106. package/lib/view/DragContainer.js +2 -2
  107. package/lib/view/DragContainer.js.map +1 -1
  108. package/lib/view/ErrorBoundary.js +2 -2
  109. package/lib/view/ErrorBoundary.js.map +1 -1
  110. package/lib/view/Icons.js +8 -20
  111. package/lib/view/Icons.js.map +1 -1
  112. package/lib/view/Layout.js +44 -84
  113. package/lib/view/Layout.js.map +1 -1
  114. package/lib/view/Overlay.js +2 -2
  115. package/lib/view/Overlay.js.map +1 -1
  116. package/lib/view/PopupMenu.js +4 -5
  117. package/lib/view/PopupMenu.js.map +1 -1
  118. package/lib/view/Row.js +5 -4
  119. package/lib/view/Row.js.map +1 -1
  120. package/lib/view/SizeTracker.js +2 -1
  121. package/lib/view/SizeTracker.js.map +1 -1
  122. package/lib/view/Splitter.js +9 -4
  123. package/lib/view/Splitter.js.map +1 -1
  124. package/lib/view/Tab.js +3 -4
  125. package/lib/view/Tab.js.map +1 -1
  126. package/lib/view/TabButton.js +7 -9
  127. package/lib/view/TabButton.js.map +1 -1
  128. package/lib/view/TabButtonStamp.js +4 -6
  129. package/lib/view/TabButtonStamp.js.map +1 -1
  130. package/lib/view/TabSet.js +38 -42
  131. package/lib/view/TabSet.js.map +1 -1
  132. package/lib/view/Utils.js +3 -3
  133. package/lib/view/Utils.js.map +1 -1
  134. package/package.json +87 -77
  135. package/playwright-report/data/01f8ff379b7b7c06b0f8dbd65cbd55e95f8ca470.zip +0 -0
  136. package/playwright-report/data/02a706b995d751dee8ac0429e29eafb796a23f96.zip +0 -0
  137. package/playwright-report/data/04468c5a7304bad1acbe32d3376bfc5038e172d9.zip +0 -0
  138. package/playwright-report/data/04ffe14721deea0c6402bb96c78055475f6cd687.zip +0 -0
  139. package/playwright-report/data/07e1bb8bd6407ceafa7a1051839d398f34b41a52.zip +0 -0
  140. package/playwright-report/data/0d17b99e2ddd975da4868f295b370a9fc9b55993.zip +0 -0
  141. package/playwright-report/data/108805618d29c7800d55d7dd8da36829fec366bd.zip +0 -0
  142. package/playwright-report/data/1271fd2bc76809c25b62351f4321b396e745a199.zip +0 -0
  143. package/playwright-report/data/16bd316f5e3e9ad6c9dc2a6a0388f3425c1a61d9.zip +0 -0
  144. package/playwright-report/data/1a1b06cebe59d981e21198164093230b0a1704fd.zip +0 -0
  145. package/playwright-report/data/1b3b6bba4aca415bc586b2a0abb18410af26fbf1.zip +0 -0
  146. package/playwright-report/data/1ce927369a55edf14ec99e0029d1a342cb0fcfa4.zip +0 -0
  147. package/playwright-report/data/20a694648a90f0a805a4397b73699142e5dd50c1.zip +0 -0
  148. package/playwright-report/data/211f1c8fc3f5d052d935906201f29a1e42a2fbd8.zip +0 -0
  149. package/playwright-report/data/2176124681e769fbba593a272e67331fd69e56ef.zip +0 -0
  150. package/playwright-report/data/2487db6273b09acd9a62a9ecfa8f1e411cc769df.zip +0 -0
  151. package/playwright-report/data/25abefed6606e15cac6dc83e3ea4e85896233020.zip +0 -0
  152. package/playwright-report/data/2752051b8593d432be1a623813f2dbee043dc959.zip +0 -0
  153. package/playwright-report/data/2d72001a7f57a11282fe741ca22501b34f7576a2.zip +0 -0
  154. package/playwright-report/data/308de4d252afe1db5aeda783ea3eaf09368aa812.zip +0 -0
  155. package/playwright-report/data/30f265807a34ee9bb2ddd931970be6f572a42ffe.zip +0 -0
  156. package/playwright-report/data/326599ace543d3340403f5eaa0f28ef73f7d3cfc.zip +0 -0
  157. package/playwright-report/data/3662fcf1839c6bb164e1aceea5e25b410bae6286.zip +0 -0
  158. package/playwright-report/data/38cdebbb090386af04f96f13bf45b2a23feb6cf5.zip +0 -0
  159. package/playwright-report/data/3b45c7876ca7a4208061f69fa0cce9f9e619557c.zip +0 -0
  160. package/playwright-report/data/3c6115f8ff03527f3b888e8c6626d086146bb961.zip +0 -0
  161. package/playwright-report/data/3e976a69f9bc188048c96969507a28fc5411da40.zip +0 -0
  162. package/playwright-report/data/420bd6c0ed97c53e6ee5108c11c337690ed9dd71.zip +0 -0
  163. package/playwright-report/data/424c925f1d020f7918c5b1d4e93a3aff4ffd0d35.zip +0 -0
  164. package/playwright-report/data/4459657c233583f0bb5f541ba2a56d14fc04324f.zip +0 -0
  165. package/playwright-report/data/45dbca16424f69b6af3f201fd918186e66e6a921.zip +0 -0
  166. package/playwright-report/data/4c7242437d15e34066b69d5f3a71e21f436d81bb.zip +0 -0
  167. package/playwright-report/data/56f84e2288e6485b68f0f78f79af97016d066eea.zip +0 -0
  168. package/playwright-report/data/679d4cfcb398dd2d19703be59bbf1de72f73fa3e.zip +0 -0
  169. package/playwright-report/data/686279f3ccdca1213fe91a9901f1ca469a41db4b.zip +0 -0
  170. package/playwright-report/data/69403980b98daeb052c732f3d984b7ccc51022aa.zip +0 -0
  171. package/playwright-report/data/6d91e10cd5dc95944881ea0f875bf0e531c63164.zip +0 -0
  172. package/playwright-report/data/6f362695f59905c3acdcafb6eeacfa4b068bc030.zip +0 -0
  173. package/playwright-report/data/71dd5897288168b0f7fb2e187f2b543e880733b1.zip +0 -0
  174. package/playwright-report/data/7540a41a9c123cffc1750447ccb69d9fb8cc8ba5.zip +0 -0
  175. package/playwright-report/data/78f8483a26c47ca761f43b1f142a9fb9d001b27e.zip +0 -0
  176. package/playwright-report/data/7e8bd5ba547094dcf303d450853b2f74f41749b2.zip +0 -0
  177. package/playwright-report/data/7fbec8e63ea2ee1702a94fe4d837067192e661f0.zip +0 -0
  178. package/playwright-report/data/87f2ea42a46cbd21813358d7d6e31d9999fca953.zip +0 -0
  179. package/playwright-report/data/8db527a1f9b753036cf63bb4afc96a765007fe82.zip +0 -0
  180. package/playwright-report/data/8e5ccd4bd56f3843f4e788c5e9842165221c2748.zip +0 -0
  181. package/playwright-report/data/8fc12e2795e02ee2ad773ec7be25f94b6ca697ed.zip +0 -0
  182. package/playwright-report/data/9d10ab1649ded4751d19014847e110b0b03ad126.zip +0 -0
  183. package/playwright-report/data/ab82c3994c6614fa6873fc92fd44ca78cb45f9d6.zip +0 -0
  184. package/playwright-report/data/ac554655d509fe64199a053e715def4ce4bbd618.zip +0 -0
  185. package/playwright-report/data/ad8e5a0cec5ec3369478099a58b7652c0dd636f1.zip +0 -0
  186. package/playwright-report/data/ae30baf5dea2dc0dd2ca87ffa08afb936b27fef1.zip +0 -0
  187. package/playwright-report/data/bc7631ffd4df693573a3233ec403a1f9cbcb00a9.zip +0 -0
  188. package/playwright-report/data/bcfe71e7532702969ecdde584a294907ed21525e.zip +0 -0
  189. package/playwright-report/data/bf020e09e20d0cd6e1b8aa82153e84f9d40c7f74.zip +0 -0
  190. package/playwright-report/data/c3452f499f82ef644c3d314626d3d9c762ff5c20.zip +0 -0
  191. package/playwright-report/data/c5dfbb00ea0965a4214f02cde22245958bb31c86.zip +0 -0
  192. package/playwright-report/data/c716ede7c5174d8a83653a6862605eca04783bad.zip +0 -0
  193. package/playwright-report/data/c95ca5869740edf6d1d627d120aa9ba26b1d3415.zip +0 -0
  194. package/playwright-report/data/cc17390169d327b4dfc2a9b3a8279e74ff975b1d.zip +0 -0
  195. package/playwright-report/data/d0ff6b9f342d792119f1513cc53c9f315a56251b.zip +0 -0
  196. package/playwright-report/data/d26377153bff611b5ba5a1148fc8858f7bb2cb7b.zip +0 -0
  197. package/playwright-report/data/dc0608de1b624a691f2f393bf450fc01591076ef.zip +0 -0
  198. package/playwright-report/data/dee4c585c248f4827601afbde02d3732761bdd8b.zip +0 -0
  199. package/playwright-report/data/e4cdfceef70735028de78f94f7e07a1e65fa317d.zip +0 -0
  200. package/playwright-report/data/e64d89424643af3f746a091f7567db49b0b45f3c.zip +0 -0
  201. package/playwright-report/data/e70483c7d13bb871f5c5b4aa54149172d58bf0c0.zip +0 -0
  202. package/playwright-report/data/e8333b653df262d800ee7b5329503b975d420e87.zip +0 -0
  203. package/playwright-report/data/ed1bd19a957a6165ba73a644af4959590b23eed9.zip +0 -0
  204. package/playwright-report/data/f35cf046cdf897abd96f318f79443407e58b8f0b.zip +0 -0
  205. package/playwright-report/data/f8793a7c69b939ac07422cf41aac45ebe4a86908.zip +0 -0
  206. package/playwright-report/data/fb2a383b96839380e90e0137363a574e665aed38.zip +0 -0
  207. package/playwright-report/data/fede8e774c66e329bdac055d6d67e73aa75b14fc.zip +0 -0
  208. package/playwright-report/index.html +71 -0
  209. package/playwright-report/trace/assets/codeMirrorModule-DpJ-EmBQ.js +24 -0
  210. package/playwright-report/trace/assets/defaultSettingsView-DTenqiGw.js +259 -0
  211. package/playwright-report/trace/codeMirrorModule.C3UTv-Ge.css +1 -0
  212. package/playwright-report/trace/codicon.DCmgc-ay.ttf +0 -0
  213. package/playwright-report/trace/defaultSettingsView.5fN5lw10.css +1 -0
  214. package/playwright-report/trace/index.CFOW-Ezb.css +1 -0
  215. package/playwright-report/trace/index.CUq7VgrV.js +2 -0
  216. package/playwright-report/trace/index.html +43 -0
  217. package/playwright-report/trace/playwright-logo.svg +9 -0
  218. package/playwright-report/trace/snapshot.html +21 -0
  219. package/playwright-report/trace/sw.bundle.js +3 -0
  220. package/playwright-report/trace/uiMode.BatfzHMG.css +1 -0
  221. package/playwright-report/trace/uiMode.CHJSAD7F.js +5 -0
  222. package/playwright-report/trace/uiMode.html +17 -0
  223. package/playwright-report/trace/xtermModule.Beg8tuEN.css +32 -0
  224. package/playwright.config.ts +79 -0
  225. package/screenshots/PlaywrightUI.png +0 -0
  226. package/src/AttributeDefinitions.ts +2 -2
  227. package/src/Rect.ts +1 -1
  228. package/src/view/BorderButton.tsx +1 -1
  229. package/src/view/BorderTab.tsx +18 -7
  230. package/src/view/Icons.tsx +0 -2
  231. package/src/view/Layout.tsx +14 -10
  232. package/src/view/Overlay.tsx +0 -1
  233. package/src/view/Splitter.tsx +6 -0
  234. package/src/view/TabButton.tsx +1 -1
  235. package/src/view/TabButtonStamp.tsx +0 -1
  236. package/src/view/TabSet.tsx +16 -7
  237. package/test-results/view-Add-methods-add-to-active-tabset-chromium/trace.zip +0 -0
  238. package/test-results/view-Add-methods-drag-to-border-chromium/trace.zip +0 -0
  239. package/test-results/view-Add-methods-drag-to-tabset-chromium/trace.zip +0 -0
  240. package/test-results/view-Delete-methods-delete-all-tabs-chromium/trace.zip +0 -0
  241. package/test-results/view-Delete-methods-delete-tab-chromium/trace.zip +0 -0
  242. package/test-results/view-Extended-App-onRenderTab-chromium/trace.zip +0 -0
  243. package/test-results/view-Extended-App-onRenderTab-in-border-chromium/trace.zip +0 -0
  244. package/test-results/view-Extended-App-onRenderTabSet-chromium/trace.zip +0 -0
  245. package/test-results/view-Extended-App-onRenderTabSet-for-border-chromium/trace.zip +0 -0
  246. package/test-results/view-Extended-App-onRenderTabSet-sticky-buttons-chromium/trace.zip +0 -0
  247. package/test-results/view-Extended-layout2-borders-autohide-left-chromium/trace.zip +0 -0
  248. package/test-results/view-Extended-layout2-borders-autohide-top-chromium/trace.zip +0 -0
  249. package/test-results/view-Extended-layout2-check-border-bottom-min-size-chromium/trace.zip +0 -0
  250. package/test-results/view-Extended-layout2-check-border-left-min-size-chromium/trace.zip +0 -0
  251. package/test-results/view-Extended-layout2-check-border-right-min-size-chromium/trace.zip +0 -0
  252. package/test-results/view-Extended-layout2-check-border-top-min-size-chromium/trace.zip +0 -0
  253. package/test-results/view-Extended-layout2-check-tabset-min-size-chromium/trace.zip +0 -0
  254. package/test-results/view-Extended-layout2-tabset-close-chromium/trace.zip +0 -0
  255. package/test-results/view-Maximize-methods-maximize-tabset-using-double-click-chromium/trace.zip +0 -0
  256. package/test-results/view-Maximize-methods-maximize-tabset-using-max-button-chromium/trace.zip +0 -0
  257. package/test-results/view-Others-click-on-tab-button-causes-tabset-activate-chromium/trace.zip +0 -0
  258. package/test-results/view-Others-click-on-tab-contents-causes-tabset-activate-chromium/trace.zip +0 -0
  259. package/test-results/view-Others-click-on-tabstrip-causes-tabset-activate-chromium/trace.zip +0 -0
  260. package/test-results/view-Others-rename-tab-cancelled-with-esc-chromium/trace.zip +0 -0
  261. package/test-results/view-Others-rename-tab-chromium/trace.zip +0 -0
  262. package/test-results/view-Overflow-menu-show-menu-chromium/trace.zip +0 -0
  263. package/test-results/view-Splitters-horizontal--5a358-ter-to-bottom-edge-and-back-chromium/trace.zip +0 -0
  264. package/test-results/view-Splitters-horizontal--f02d2-litter-to-top-edge-and-back-chromium/trace.zip +0 -0
  265. package/test-results/view-Splitters-horizontal-resizes-with-hsplitter-chromium/trace.zip +0 -0
  266. package/test-results/view-Splitters-vsplitter-chromium/trace.zip +0 -0
  267. package/test-results/view-Splitters-vsplitter-to-edge-chromium/trace.zip +0 -0
  268. package/test-results/view-Splitters-vsplitter-to-edge-left-chromium/trace.zip +0 -0
  269. package/test-results/view-borders-border-bottom-to-tab-chromium/trace.zip +0 -0
  270. package/test-results/view-borders-border-left-to-tab-chromium/trace.zip +0 -0
  271. package/test-results/view-borders-border-right-to-tab-chromium/trace.zip +0 -0
  272. package/test-results/view-borders-border-top-to-tab-chromium/trace.zip +0 -0
  273. package/test-results/view-borders-move-tab-in-border-bottom-chromium/trace.zip +0 -0
  274. package/test-results/view-borders-move-tab-in-border-left-chromium/trace.zip +0 -0
  275. package/test-results/view-borders-move-tab-in-border-right-chromium/trace.zip +0 -0
  276. package/test-results/view-borders-move-tab-in-border-top-chromium/trace.zip +0 -0
  277. package/test-results/view-borders-tab-to-border-bottom-chromium/trace.zip +0 -0
  278. package/test-results/view-borders-tab-to-border-left-chromium/trace.zip +0 -0
  279. package/test-results/view-borders-tab-to-border-right-chromium/trace.zip +0 -0
  280. package/test-results/view-borders-tab-to-border-top-chromium/trace.zip +0 -0
  281. package/test-results/view-borders-tab-to-open-border-bottom-center-chromium/trace.zip +0 -0
  282. package/test-results/view-borders-tab-to-open-border-bottom-chromium/trace.zip +0 -0
  283. package/test-results/view-borders-tab-to-open-border-left-center-chromium/trace.zip +0 -0
  284. package/test-results/view-borders-tab-to-open-border-left-chromium/trace.zip +0 -0
  285. package/test-results/view-borders-tab-to-open-border-right-center-chromium/trace.zip +0 -0
  286. package/test-results/view-borders-tab-to-open-border-right-chromium/trace.zip +0 -0
  287. package/test-results/view-borders-tab-to-open-border-top-center-chromium/trace.zip +0 -0
  288. package/test-results/view-borders-tab-to-open-border-top-chromium/trace.zip +0 -0
  289. package/test-results/view-drag-tests-two-tabs-tab-to-edge-chromium/trace.zip +0 -0
  290. package/test-results/view-drag-tests-two-tabs-tab-to-tab-bottom-chromium/trace.zip +0 -0
  291. package/test-results/view-drag-tests-two-tabs-tab-to-tab-center-chromium/trace.zip +0 -0
  292. package/test-results/view-drag-tests-two-tabs-tab-to-tab-left-chromium/trace.zip +0 -0
  293. package/test-results/view-drag-tests-two-tabs-tab-to-tab-right-chromium/trace.zip +0 -0
  294. package/test-results/view-drag-tests-two-tabs-tab-to-tab-top-chromium/trace.zip +0 -0
  295. package/test-results/view-tab-can-have-icon-chromium/trace.zip +0 -0
  296. package/test-results/view-three-tabs-move-tab-in-tabstrip-chromium/trace.zip +0 -0
  297. package/test-results/view-three-tabs-move-tabstrip-chromium/trace.zip +0 -0
  298. package/test-results/view-three-tabs-row-to-column-chromium/trace.zip +0 -0
  299. package/test-results/view-three-tabs-row-to-single-tabset-chromium/trace.zip +0 -0
  300. package/test-results/view-three-tabs-tab-to-edge-bottom-chromium/trace.zip +0 -0
  301. package/test-results/view-three-tabs-tab-to-edge-left-chromium/trace.zip +0 -0
  302. package/test-results/view-three-tabs-tab-to-edge-right-chromium/trace.zip +0 -0
  303. package/test-results/view-three-tabs-tab-to-edge-top-chromium/trace.zip +0 -0
  304. package/test-results/view-three-tabs-tab-to-tab-bottom-chromium/trace.zip +0 -0
  305. package/test-results/view-three-tabs-tab-to-tab-center-chromium/trace.zip +0 -0
  306. package/test-results/view-three-tabs-tab-to-tab-left-chromium/trace.zip +0 -0
  307. package/test-results/view-three-tabs-tab-to-tab-right-chromium/trace.zip +0 -0
  308. package/test-results/view-three-tabs-tab-to-tab-top-chromium/trace.zip +0 -0
  309. package/test-results/view-three-tabs-tab-to-tabset-chromium/trace.zip +0 -0
  310. package/tests-playwright/helpers.ts +124 -0
  311. package/tests-playwright/view.spec.ts +911 -0
  312. package/declarations/examples/demo/Utils.d.ts +0 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Layout.js","sourceRoot":"","sources":["../../../src/view/Layout.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { CLASSES } from "../Types";
3
+ /** @internal */
4
+ export const Overlay = (props) => {
5
+ const { layout, show } = props;
6
+ return (_jsx("div", { className: layout.getClassName(CLASSES.FLEXLAYOUT__LAYOUT_OVERLAY), style: { display: (show ? "flex" : "none")
7
+ } }));
8
+ };
9
+ //# sourceMappingURL=Overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Overlay.js","sourceRoot":"","sources":["../../../src/view/Overlay.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAQnC,gBAAgB;AAChB,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC5C,MAAM,EAAC,MAAM,EAAE,IAAI,EAAC,GAAG,KAAK,CAAC;IAE7B,OAAO,CACH,cACI,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,0BAA0B,CAAC,EAClE,KAAK,EAAE,EAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;SAC5C,GACC,CACL,CAAC;AACN,CAAC,CAAA"}
@@ -0,0 +1,129 @@
1
+ import * as React from "react";
2
+ import { createPortal } from "react-dom";
3
+ import { CLASSES } from "../Types";
4
+ /** @internal */
5
+ export const PopoutWindow = (props) => {
6
+ const { title, layout, layoutWindow, url, onCloseWindow, onSetWindow, children } = props;
7
+ const popoutWindow = React.useRef(null);
8
+ const [content, setContent] = React.useState(undefined);
9
+ // map from main docs style -> this docs equivalent style
10
+ const styleMap = new Map();
11
+ React.useLayoutEffect(() => {
12
+ if (!popoutWindow.current) { // only create window once, even in strict mode
13
+ const windowId = layoutWindow.windowId;
14
+ const rect = layoutWindow.rect;
15
+ popoutWindow.current = window.open(url, windowId, `left=${rect.x},top=${rect.y},width=${rect.width},height=${rect.height}`);
16
+ if (popoutWindow.current) {
17
+ layoutWindow.window = popoutWindow.current;
18
+ onSetWindow(layoutWindow, popoutWindow.current);
19
+ // listen for parent unloading to remove all popouts
20
+ window.addEventListener("beforeunload", () => {
21
+ if (popoutWindow.current) {
22
+ const closedWindow = popoutWindow.current;
23
+ popoutWindow.current = null; // need to set to null before close, since this will trigger popup window before unload...
24
+ closedWindow.close();
25
+ }
26
+ });
27
+ popoutWindow.current.addEventListener("load", () => {
28
+ if (popoutWindow.current) {
29
+ popoutWindow.current.focus();
30
+ // note: resizeto must be before moveto in chrome otherwise the window will end up at 0,0
31
+ popoutWindow.current.resizeTo(rect.width, rect.height);
32
+ popoutWindow.current.moveTo(rect.x, rect.y);
33
+ const popoutDocument = popoutWindow.current.document;
34
+ popoutDocument.title = title;
35
+ const popoutContent = popoutDocument.createElement("div");
36
+ popoutContent.className = CLASSES.FLEXLAYOUT__FLOATING_WINDOW_CONTENT;
37
+ popoutDocument.body.appendChild(popoutContent);
38
+ copyStyles(popoutDocument, styleMap).then(() => {
39
+ setContent(popoutContent); // re-render once link styles loaded
40
+ });
41
+ // listen for style mutations
42
+ const observer = new MutationObserver((mutationsList) => handleStyleMutations(mutationsList, popoutDocument, styleMap));
43
+ observer.observe(document.head, { childList: true });
44
+ // listen for popout unloading (needs to be after load for safari)
45
+ popoutWindow.current.addEventListener("beforeunload", () => {
46
+ if (popoutWindow.current) {
47
+ onCloseWindow(layoutWindow); // remove the layoutWindow in the model
48
+ popoutWindow.current = null;
49
+ observer.disconnect();
50
+ }
51
+ });
52
+ }
53
+ });
54
+ }
55
+ else {
56
+ console.warn(`Unable to open window ${url}`);
57
+ onCloseWindow(layoutWindow); // remove the layoutWindow in the model
58
+ }
59
+ }
60
+ return () => {
61
+ var _a;
62
+ // only close popoutWindow if windowId has been removed from the model (ie this was due to model change)
63
+ if (!layout.getModel().getwindowsMap().has(layoutWindow.windowId)) {
64
+ (_a = popoutWindow.current) === null || _a === void 0 ? void 0 : _a.close();
65
+ popoutWindow.current = null;
66
+ }
67
+ };
68
+ }, []);
69
+ if (content !== undefined) {
70
+ return createPortal(children, content);
71
+ }
72
+ else {
73
+ return null;
74
+ }
75
+ };
76
+ function handleStyleMutations(mutationsList, popoutDocument, styleMap) {
77
+ for (const mutation of mutationsList) {
78
+ if (mutation.type === 'childList') {
79
+ for (const addition of mutation.addedNodes) {
80
+ if (addition instanceof HTMLLinkElement || addition instanceof HTMLStyleElement) {
81
+ copyStyle(popoutDocument, addition, styleMap);
82
+ }
83
+ }
84
+ for (const removal of mutation.removedNodes) {
85
+ if (removal instanceof HTMLLinkElement || removal instanceof HTMLStyleElement) {
86
+ const popoutStyle = styleMap.get(removal);
87
+ if (popoutStyle) {
88
+ popoutDocument.head.removeChild(popoutStyle);
89
+ }
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ ;
96
+ /** @internal */
97
+ function copyStyles(popoutDoc, styleMap) {
98
+ const promises = [];
99
+ const styleElements = document.querySelectorAll('style, link[rel="stylesheet"]');
100
+ for (const element of styleElements) {
101
+ copyStyle(popoutDoc, element, styleMap, promises);
102
+ }
103
+ return Promise.all(promises);
104
+ }
105
+ /** @internal */
106
+ function copyStyle(popoutDoc, element, styleMap, promises) {
107
+ if (element instanceof HTMLLinkElement) {
108
+ // prefer links since they will keep paths to images etc
109
+ const linkElement = element.cloneNode(true);
110
+ popoutDoc.head.appendChild(linkElement);
111
+ styleMap.set(element, linkElement);
112
+ if (promises) {
113
+ promises.push(new Promise((resolve) => {
114
+ linkElement.onload = () => resolve(true);
115
+ }));
116
+ }
117
+ }
118
+ else if (element instanceof HTMLStyleElement) {
119
+ try {
120
+ const styleElement = element.cloneNode(true);
121
+ popoutDoc.head.appendChild(styleElement);
122
+ styleMap.set(element, styleElement);
123
+ }
124
+ catch (e) {
125
+ // can throw an exception
126
+ }
127
+ }
128
+ }
129
+ //# sourceMappingURL=PopoutWindow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopoutWindow.js","sourceRoot":"","sources":["../../../src/view/PopoutWindow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { CLASSES } from "../Types";
3
+ import { TabButtonStamp } from "./TabButtonStamp";
4
+ import { useEffect, useRef } from "react";
5
+ /** @internal */
6
+ export function showPopup(triggerElement, parentNode, items, onSelect, layout) {
7
+ var _a;
8
+ const layoutDiv = layout.getRootDiv();
9
+ const classNameMapper = layout.getClassName;
10
+ const currentDocument = triggerElement.ownerDocument;
11
+ const triggerRect = triggerElement.getBoundingClientRect();
12
+ const layoutRect = (_a = layoutDiv === null || layoutDiv === void 0 ? void 0 : layoutDiv.getBoundingClientRect()) !== null && _a !== void 0 ? _a : new DOMRect(0, 0, 100, 100);
13
+ const elm = currentDocument.createElement("div");
14
+ elm.className = classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU_CONTAINER);
15
+ if (triggerRect.left < layoutRect.left + layoutRect.width / 2) {
16
+ elm.style.left = triggerRect.left - layoutRect.left + "px";
17
+ }
18
+ else {
19
+ elm.style.right = layoutRect.right - triggerRect.right + "px";
20
+ }
21
+ if (triggerRect.top < layoutRect.top + layoutRect.height / 2) {
22
+ elm.style.top = triggerRect.top - layoutRect.top + "px";
23
+ }
24
+ else {
25
+ elm.style.bottom = layoutRect.bottom - triggerRect.bottom + "px";
26
+ }
27
+ layout.showOverlay(true);
28
+ if (layoutDiv) {
29
+ layoutDiv.appendChild(elm);
30
+ }
31
+ const onHide = () => {
32
+ layout.hideControlInPortal();
33
+ layout.showOverlay(false);
34
+ if (layoutDiv) {
35
+ layoutDiv.removeChild(elm);
36
+ }
37
+ elm.removeEventListener("pointerdown", onElementPointerDown);
38
+ currentDocument.removeEventListener("pointerdown", onDocPointerDown);
39
+ };
40
+ const onElementPointerDown = (event) => {
41
+ event.stopPropagation();
42
+ };
43
+ const onDocPointerDown = (_event) => {
44
+ onHide();
45
+ };
46
+ elm.addEventListener("pointerdown", onElementPointerDown);
47
+ currentDocument.addEventListener("pointerdown", onDocPointerDown);
48
+ layout.showControlInPortal(_jsx(PopupMenu, { currentDocument: currentDocument, parentNode: parentNode, onSelect: onSelect, onHide: onHide, items: items, classNameMapper: classNameMapper, layout: layout }), elm);
49
+ }
50
+ /** @internal */
51
+ const PopupMenu = (props) => {
52
+ const { parentNode, items, onHide, onSelect, classNameMapper, layout } = props;
53
+ const divRef = useRef(null);
54
+ useEffect(() => {
55
+ // Set focus when the component mounts
56
+ if (divRef.current) {
57
+ divRef.current.focus();
58
+ }
59
+ }, []);
60
+ const onItemClick = (item, event) => {
61
+ onSelect(item);
62
+ onHide();
63
+ event.stopPropagation();
64
+ };
65
+ const onDragStart = (event, node) => {
66
+ event.stopPropagation(); // prevent starting a tabset drag as well
67
+ layout.setDragNode(event.nativeEvent, node);
68
+ setTimeout(() => {
69
+ onHide();
70
+ }, 0);
71
+ };
72
+ const onDragEnd = (event) => {
73
+ layout.clearDragMain();
74
+ };
75
+ const handleKeyDown = (event) => {
76
+ if (event.key === "Escape") {
77
+ onHide();
78
+ }
79
+ };
80
+ const itemElements = items.map((item, i) => {
81
+ let classes = classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU_ITEM);
82
+ if (parentNode.getSelected() === item.index) {
83
+ classes += " " + classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU_ITEM__SELECTED);
84
+ }
85
+ return (_jsx("div", { className: classes, "data-layout-path": "/popup-menu/tb" + i, onClick: (event) => onItemClick(item, event), draggable: true, onDragStart: (e) => onDragStart(e, item.node), onDragEnd: onDragEnd, title: item.node.getHelpText(), children: _jsx(TabButtonStamp, { node: item.node, layout: layout }) }, item.index));
86
+ });
87
+ return (_jsx("div", { className: classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU), ref: divRef, tabIndex: 0, onKeyDown: handleKeyDown, "data-layout-path": "/popup-menu", children: itemElements }));
88
+ };
89
+ //# sourceMappingURL=PopupMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopupMenu.js","sourceRoot":"","sources":["../../../src/view/PopupMenu.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { RowNode } from "../model/RowNode";
4
+ import { TabSetNode } from "../model/TabSetNode";
5
+ import { CLASSES } from "../Types";
6
+ import { TabSet } from "./TabSet";
7
+ import { Splitter } from "./Splitter";
8
+ import { Orientation } from "../Orientation";
9
+ /** @internal */
10
+ export const Row = (props) => {
11
+ const { layout, node } = props;
12
+ const selfRef = React.useRef(null);
13
+ const horizontal = node.getOrientation() === Orientation.HORZ;
14
+ React.useLayoutEffect(() => {
15
+ node.setRect(layout.getBoundingClientRect(selfRef.current));
16
+ });
17
+ const items = [];
18
+ let i = 0;
19
+ for (const child of node.getChildren()) {
20
+ if (i > 0) {
21
+ items.push(_jsx(Splitter, { layout: layout, node: node, index: i, horizontal: horizontal }, "splitter" + i));
22
+ }
23
+ if (child instanceof RowNode) {
24
+ items.push(_jsx(Row, { layout: layout, node: child }, child.getId()));
25
+ }
26
+ else if (child instanceof TabSetNode) {
27
+ items.push(_jsx(TabSet, { layout: layout, node: child }, child.getId()));
28
+ }
29
+ i++;
30
+ }
31
+ const style = {
32
+ flexGrow: Math.max(1, node.getWeight() * 1000), // NOTE: flex-grow cannot have values < 1 otherwise will not fill parent, need to normalize
33
+ minWidth: node.getMinWidth(),
34
+ minHeight: node.getMinHeight(),
35
+ maxWidth: node.getMaxWidth(),
36
+ maxHeight: node.getMaxHeight(),
37
+ };
38
+ if (horizontal) {
39
+ style.flexDirection = "row";
40
+ }
41
+ else {
42
+ style.flexDirection = "column";
43
+ }
44
+ return (_jsx("div", { ref: selfRef, className: layout.getClassName(CLASSES.FLEXLAYOUT__ROW), style: style, children: items }));
45
+ };
46
+ //# sourceMappingURL=Row.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Row.js","sourceRoot":"","sources":["../../../src/view/Row.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQ7C,gBAAgB;AAChB,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,KAAgB,EAAE,EAAE;IACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAwB,IAAI,CAAC,CAAC;IAE1D,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,KAAK,WAAW,CAAC,IAAI,CAAC;IAE9D,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE;QACvB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,OAAQ,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAsB,EAAE,CAAC;IAEpC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACR,KAAK,CAAC,IAAI,CAAC,KAAC,QAAQ,IAAsB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,UAAU,IAA5E,UAAU,GAAG,CAAC,CAAkE,CAAC,CAAA;QAC/G,CAAC;QACD,IAAI,KAAK,YAAY,OAAO,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,KAAC,GAAG,IAAqB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,IAA1C,KAAK,CAAC,KAAK,EAAE,CAAiC,CAAC,CAAC;QACzE,CAAC;aAAM,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,KAAC,MAAM,IAAqB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,IAA1C,KAAK,CAAC,KAAK,EAAE,CAAiC,CAAC,CAAC;QAC5E,CAAC;QACD,CAAC,EAAE,CAAC;IACR,CAAC;IAED,MAAM,KAAK,GAAwB;QAC/B,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,GAAC,IAAI,CAAC,EAAE,6FAA6F;QAC3I,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;QAC5B,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE;QAC9B,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE;QAC5B,SAAS,EAAE,IAAI,CAAC,YAAY,EAAE;KACjC,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACb,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;IAChC,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC;IACnC,CAAC;IAEA,OAAO,CACJ,cACI,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,EACvD,KAAK,EAAE,KAAK,YAEX,KAAK,GACJ,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ // only render if size changed or forceRevision changed or tabsRevision changed
4
+ export const SizeTracker = React.memo(({ children }) => {
5
+ return _jsx(_Fragment, { children: children });
6
+ }, (prevProps, nextProps) => {
7
+ return prevProps.rect.equalSize(nextProps.rect) &&
8
+ prevProps.selected === nextProps.selected &&
9
+ prevProps.forceRevision === nextProps.forceRevision &&
10
+ prevProps.tabsRevision === nextProps.tabsRevision;
11
+ });
12
+ //# sourceMappingURL=SizeTracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SizeTracker.js","sourceRoot":"","sources":["../../../src/view/SizeTracker.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,+EAA+E;AAC/E,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAqB,EAAE,EAAE;IACtE,OAAO,4BAAG,QAAQ,GAAI,CAAA;AAC1B,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACxB,OAAO,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC;QAC/C,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ;QACzC,SAAS,CAAC,aAAa,KAAK,SAAS,CAAC,aAAa;QACnD,SAAS,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY,CAAA;AACrD,CAAC,CAAC,CAAC"}
@@ -0,0 +1,192 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { Actions } from "../model/Actions";
4
+ import { BorderNode } from "../model/BorderNode";
5
+ import { RowNode } from "../model/RowNode";
6
+ import { Orientation } from "../Orientation";
7
+ import { CLASSES } from "../Types";
8
+ import { enablePointerOnIFrames, isDesktop, startDrag } from "./Utils";
9
+ import { Rect } from "../Rect";
10
+ /** @internal */
11
+ export const Splitter = (props) => {
12
+ const { layout, node, index, horizontal } = props;
13
+ const [dragging, setDragging] = React.useState(false);
14
+ const selfRef = React.useRef(null);
15
+ const extendedRef = React.useRef(null);
16
+ const pBounds = React.useRef([]);
17
+ const outlineDiv = React.useRef(undefined);
18
+ const handleDiv = React.useRef(undefined);
19
+ const dragStartX = React.useRef(0);
20
+ const dragStartY = React.useRef(0);
21
+ const initalSizes = React.useRef({ initialSizes: [], sum: 0, startPosition: 0 });
22
+ // const throttleTimer = React.useRef<NodeJS.Timeout | undefined>(undefined);
23
+ const size = node.getModel().getSplitterSize();
24
+ let extra = node.getModel().getSplitterExtra();
25
+ if (!isDesktop()) {
26
+ // make hit test area on mobile at least 20px
27
+ extra = Math.max(20, extra + size) - size;
28
+ }
29
+ React.useEffect(() => {
30
+ var _a, _b;
31
+ // Android fix: must have passive touchstart handler to prevent default handling
32
+ (_a = selfRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener("touchstart", onTouchStart, { passive: false });
33
+ (_b = extendedRef.current) === null || _b === void 0 ? void 0 : _b.addEventListener("touchstart", onTouchStart, { passive: false });
34
+ return () => {
35
+ var _a, _b;
36
+ (_a = selfRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener("touchstart", onTouchStart);
37
+ (_b = extendedRef.current) === null || _b === void 0 ? void 0 : _b.removeEventListener("touchstart", onTouchStart);
38
+ };
39
+ }, []);
40
+ const onTouchStart = (event) => {
41
+ event.preventDefault();
42
+ event.stopImmediatePropagation();
43
+ };
44
+ const onPointerDown = (event) => {
45
+ var _a;
46
+ event.stopPropagation();
47
+ if (node instanceof RowNode) {
48
+ initalSizes.current = node.getSplitterInitials(index);
49
+ }
50
+ enablePointerOnIFrames(false, layout.getCurrentDocument());
51
+ startDrag(event.currentTarget.ownerDocument, event, onDragMove, onDragEnd, onDragCancel);
52
+ pBounds.current = node.getSplitterBounds(index, true);
53
+ const rootdiv = layout.getRootDiv();
54
+ outlineDiv.current = layout.getCurrentDocument().createElement("div");
55
+ outlineDiv.current.style.flexDirection = horizontal ? "row" : "column";
56
+ outlineDiv.current.className = layout.getClassName(CLASSES.FLEXLAYOUT__SPLITTER_DRAG);
57
+ outlineDiv.current.style.cursor = node.getOrientation() === Orientation.VERT ? "ns-resize" : "ew-resize";
58
+ if (node.getModel().isSplitterEnableHandle()) {
59
+ handleDiv.current = layout.getCurrentDocument().createElement("div");
60
+ handleDiv.current.className = cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE) + " " +
61
+ (horizontal ? cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE_HORZ) : cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE_VERT));
62
+ outlineDiv.current.appendChild(handleDiv.current);
63
+ }
64
+ const r = (_a = selfRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
65
+ const rect = new Rect(r.x - layout.getDomRect().x, r.y - layout.getDomRect().y, r.width, r.height);
66
+ dragStartX.current = event.clientX - r.x;
67
+ dragStartY.current = event.clientY - r.y;
68
+ rect.positionElement(outlineDiv.current);
69
+ if (rootdiv) {
70
+ rootdiv.appendChild(outlineDiv.current);
71
+ }
72
+ setDragging(true);
73
+ };
74
+ const onDragCancel = () => {
75
+ const rootdiv = layout.getRootDiv();
76
+ if (rootdiv && outlineDiv.current) {
77
+ rootdiv.removeChild(outlineDiv.current);
78
+ }
79
+ outlineDiv.current = undefined;
80
+ setDragging(false);
81
+ };
82
+ const onDragMove = (x, y) => {
83
+ if (outlineDiv.current) {
84
+ const clientRect = layout.getDomRect();
85
+ if (!clientRect) {
86
+ return;
87
+ }
88
+ if (node.getOrientation() === Orientation.VERT) {
89
+ outlineDiv.current.style.top = getBoundPosition(y - clientRect.y - dragStartY.current) + "px";
90
+ }
91
+ else {
92
+ outlineDiv.current.style.left = getBoundPosition(x - clientRect.x - dragStartX.current) + "px";
93
+ }
94
+ if (layout.isRealtimeResize()) {
95
+ updateLayout(true);
96
+ }
97
+ }
98
+ };
99
+ const onDragEnd = () => {
100
+ if (outlineDiv.current) {
101
+ updateLayout(false);
102
+ const rootdiv = layout.getRootDiv();
103
+ if (rootdiv && outlineDiv.current) {
104
+ rootdiv.removeChild(outlineDiv.current);
105
+ }
106
+ outlineDiv.current = undefined;
107
+ }
108
+ enablePointerOnIFrames(true, layout.getCurrentDocument());
109
+ setDragging(false);
110
+ };
111
+ const updateLayout = (realtime) => {
112
+ const redraw = () => {
113
+ if (outlineDiv.current) {
114
+ let value = 0;
115
+ if (node.getOrientation() === Orientation.VERT) {
116
+ value = outlineDiv.current.offsetTop;
117
+ }
118
+ else {
119
+ value = outlineDiv.current.offsetLeft;
120
+ }
121
+ if (node instanceof BorderNode) {
122
+ const pos = node.calculateSplit(node, value);
123
+ layout.doAction(Actions.adjustBorderSplit(node.getId(), pos));
124
+ }
125
+ else {
126
+ const init = initalSizes.current;
127
+ const weights = node.calculateSplit(index, value, init.initialSizes, init.sum, init.startPosition);
128
+ layout.doAction(Actions.adjustWeights(node.getId(), weights));
129
+ }
130
+ }
131
+ };
132
+ redraw();
133
+ };
134
+ const getBoundPosition = (p) => {
135
+ const bounds = pBounds.current;
136
+ let rtn = p;
137
+ if (p < bounds[0]) {
138
+ rtn = bounds[0];
139
+ }
140
+ if (p > bounds[1]) {
141
+ rtn = bounds[1];
142
+ }
143
+ return rtn;
144
+ };
145
+ const cm = layout.getClassName;
146
+ const style = {
147
+ cursor: horizontal ? "ew-resize" : "ns-resize",
148
+ flexDirection: horizontal ? "column" : "row"
149
+ };
150
+ let className = cm(CLASSES.FLEXLAYOUT__SPLITTER) + " " + cm(CLASSES.FLEXLAYOUT__SPLITTER_ + node.getOrientation().getName());
151
+ if (node instanceof BorderNode) {
152
+ className += " " + cm(CLASSES.FLEXLAYOUT__SPLITTER_BORDER);
153
+ }
154
+ else {
155
+ if (node.getModel().getMaximizedTabset(layout.getWindowId()) !== undefined) {
156
+ style.display = "none";
157
+ }
158
+ }
159
+ if (horizontal) {
160
+ style.width = size + "px";
161
+ style.minWidth = size + "px";
162
+ }
163
+ else {
164
+ style.height = size + "px";
165
+ style.minHeight = size + "px";
166
+ }
167
+ let handle;
168
+ if (!dragging && node.getModel().isSplitterEnableHandle()) {
169
+ handle = (_jsx("div", { className: cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE) + " " +
170
+ (horizontal ? cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE_HORZ) : cm(CLASSES.FLEXLAYOUT__SPLITTER_HANDLE_VERT)) }));
171
+ }
172
+ if (extra === 0) {
173
+ return (_jsx("div", { className: className, style: style, ref: selfRef, "data-layout-path": node.getPath() + "/s" + (index - 1), onPointerDown: onPointerDown, children: handle }));
174
+ }
175
+ else {
176
+ // add extended transparent div for hit testing
177
+ const style2 = {};
178
+ if (node.getOrientation() === Orientation.HORZ) {
179
+ style2.height = "100%";
180
+ style2.width = size + extra + "px";
181
+ style2.cursor = "ew-resize";
182
+ }
183
+ else {
184
+ style2.height = size + extra + "px";
185
+ style2.width = "100%";
186
+ style2.cursor = "ns-resize";
187
+ }
188
+ const className2 = cm(CLASSES.FLEXLAYOUT__SPLITTER_EXTRA);
189
+ return (_jsx("div", { className: className, style: style, ref: selfRef, "data-layout-path": node.getPath() + "/s" + (index - 1), onPointerDown: onPointerDown, children: _jsx("div", { style: style2, ref: extendedRef, className: className2, onPointerDown: onPointerDown }) }));
190
+ }
191
+ };
192
+ //# sourceMappingURL=Splitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Splitter.js","sourceRoot":"","sources":["../../../src/view/Splitter.tsx"],"names":[],"mappings":"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"}