@finsemble/finsemble-ui 8.3.0 → 8.4.0-beta.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.
Files changed (548) hide show
  1. package/FEA.d.ts +54 -24
  2. package/FEA.d.ts.map +1 -1
  3. package/FEA.js.map +1 -1
  4. package/clients/Interop/FinsembleDesktopAgent.d.ts.map +1 -1
  5. package/clients/Interop/FinsembleDesktopAgent.js +7 -10
  6. package/clients/Interop/FinsembleDesktopAgent.js.map +1 -1
  7. package/clients/Startup/FSBLDesktop.d.ts +2 -8
  8. package/clients/Startup/FSBLDesktop.d.ts.map +1 -1
  9. package/clients/Startup/FSBLDesktop.js +2 -4
  10. package/clients/Startup/FSBLDesktop.js.map +1 -1
  11. package/clients/Startup/unhandledErrors.d.ts.map +1 -1
  12. package/clients/Startup/unhandledErrors.js +6 -4
  13. package/clients/Startup/unhandledErrors.js.map +1 -1
  14. package/clients/Startup/windowStartup.d.ts.map +1 -1
  15. package/clients/Startup/windowStartup.js +125 -112
  16. package/clients/Startup/windowStartup.js.map +1 -1
  17. package/clients/StoreModel.d.ts +8 -8
  18. package/clients/StoreModel.js +8 -8
  19. package/clients/appsClient.d.ts +429 -0
  20. package/clients/appsClient.d.ts.map +1 -0
  21. package/clients/appsClient.js +649 -0
  22. package/clients/appsClient.js.map +1 -0
  23. package/clients/authenticationClient.d.ts +29 -27
  24. package/clients/authenticationClient.d.ts.map +1 -1
  25. package/clients/authenticationClient.js +11 -15
  26. package/clients/authenticationClient.js.map +1 -1
  27. package/clients/configClient.d.ts +134 -70
  28. package/clients/configClient.d.ts.map +1 -1
  29. package/clients/configClient.js +129 -112
  30. package/clients/configClient.js.map +1 -1
  31. package/clients/controller/DialogManagerClientController.d.ts +78 -0
  32. package/clients/controller/DialogManagerClientController.d.ts.map +1 -0
  33. package/clients/controller/DialogManagerClientController.js +213 -0
  34. package/clients/controller/DialogManagerClientController.js.map +1 -0
  35. package/clients/dialogManagerClient.d.ts +1 -75
  36. package/clients/dialogManagerClient.d.ts.map +1 -1
  37. package/clients/dialogManagerClient.js +1 -208
  38. package/clients/dialogManagerClient.js.map +1 -1
  39. package/clients/distributedStoreClient.d.ts +1 -0
  40. package/clients/distributedStoreClient.d.ts.map +1 -1
  41. package/clients/distributedStoreClient.js +1 -0
  42. package/clients/distributedStoreClient.js.map +1 -1
  43. package/clients/hotkeyClient.d.ts +18 -9
  44. package/clients/hotkeyClient.d.ts.map +1 -1
  45. package/clients/hotkeyClient.js +30 -14
  46. package/clients/hotkeyClient.js.map +1 -1
  47. package/clients/index.d.ts +2 -0
  48. package/clients/index.d.ts.map +1 -1
  49. package/clients/index.js +2 -0
  50. package/clients/index.js.map +1 -1
  51. package/clients/launcherClient.d.ts +50 -209
  52. package/clients/launcherClient.d.ts.map +1 -1
  53. package/clients/launcherClient.js +35 -422
  54. package/clients/launcherClient.js.map +1 -1
  55. package/clients/logger.d.ts.map +1 -1
  56. package/clients/logger.js +43 -41
  57. package/clients/logger.js.map +1 -1
  58. package/clients/notificationClient.d.ts +15 -8
  59. package/clients/notificationClient.d.ts.map +1 -1
  60. package/clients/notificationClient.js +15 -8
  61. package/clients/notificationClient.js.map +1 -1
  62. package/clients/routerClient.d.ts +25 -21
  63. package/clients/routerClient.d.ts.map +1 -1
  64. package/clients/routerClient.js +24 -20
  65. package/clients/routerClient.js.map +1 -1
  66. package/clients/searchClient.d.ts +2 -2
  67. package/clients/searchClient.js +2 -2
  68. package/clients/storageClient.d.ts +8 -5
  69. package/clients/storageClient.d.ts.map +1 -1
  70. package/clients/storageClient.js +7 -5
  71. package/clients/storageClient.js.map +1 -1
  72. package/clients/windowClient.d.ts +160 -79
  73. package/clients/windowClient.d.ts.map +1 -1
  74. package/clients/windowClient.js +244 -138
  75. package/clients/windowClient.js.map +1 -1
  76. package/clients/workspaceClient.d.ts +19 -14
  77. package/clients/workspaceClient.d.ts.map +1 -1
  78. package/clients/workspaceClient.js +15 -9
  79. package/clients/workspaceClient.js.map +1 -1
  80. package/common/Desktop.d.ts +9 -50
  81. package/common/Desktop.d.ts.map +1 -1
  82. package/common/Desktop.js +11 -64
  83. package/common/Desktop.js.map +1 -1
  84. package/common/FinsembleWindow.d.ts +4 -107
  85. package/common/FinsembleWindow.d.ts.map +1 -1
  86. package/common/FinsembleWindow.js +21 -342
  87. package/common/FinsembleWindow.js.map +1 -1
  88. package/common/Monitors.d.ts +30 -18
  89. package/common/Monitors.d.ts.map +1 -1
  90. package/common/Monitors.js +45 -80
  91. package/common/Monitors.js.map +1 -1
  92. package/common/Singleton.d.ts +7 -1
  93. package/common/Singleton.d.ts.map +1 -1
  94. package/common/Singleton.js +24 -11
  95. package/common/Singleton.js.map +1 -1
  96. package/common/constants.d.ts +3 -9
  97. package/common/constants.d.ts.map +1 -1
  98. package/common/constants.js +3 -14
  99. package/common/constants.js.map +1 -1
  100. package/common/events/FinsembleEvent.d.ts +1 -1
  101. package/common/events/FinsembleEvent.d.ts.map +1 -1
  102. package/common/redux/getRemoteStore.d.ts +53 -0
  103. package/common/redux/getRemoteStore.d.ts.map +1 -0
  104. package/common/redux/getRemoteStore.js +50 -0
  105. package/common/redux/getRemoteStore.js.map +1 -0
  106. package/common/redux/remoteReduxEnhancer.d.ts +7 -7
  107. package/common/redux/remoteReduxEnhancer.d.ts.map +1 -1
  108. package/common/redux/remoteReduxEnhancer.js +35 -20
  109. package/common/redux/remoteReduxEnhancer.js.map +1 -1
  110. package/common/redux/types.d.ts +14 -1
  111. package/common/redux/types.d.ts.map +1 -1
  112. package/common/systemManagerClient.d.ts +11 -5
  113. package/common/systemManagerClient.d.ts.map +1 -1
  114. package/common/systemManagerClient.js +25 -8
  115. package/common/systemManagerClient.js.map +1 -1
  116. package/common/util.d.ts +1 -7
  117. package/common/util.d.ts.map +1 -1
  118. package/common/util.js +1 -14
  119. package/common/util.js.map +1 -1
  120. package/deprecated/deprecatedFunctions.d.ts +1 -1
  121. package/deprecated/deprecatedFunctions.d.ts.map +1 -1
  122. package/deprecated/deprecatedFunctions.js +3 -4
  123. package/deprecated/deprecatedFunctions.js.map +1 -1
  124. package/deprecated/deprecatedlauncherClient.d.ts +1 -1
  125. package/deprecated/deprecatedlauncherClient.d.ts.map +1 -1
  126. package/deprecated/deprecatedlauncherClient.js.map +1 -1
  127. package/deprecated/dragAndDropClient.d.ts +3 -3
  128. package/deprecated/dragAndDropClient.d.ts.map +1 -1
  129. package/deprecated/dragAndDropClient.js +14 -4
  130. package/deprecated/dragAndDropClient.js.map +1 -1
  131. package/deprecated/linkerClient.d.ts +1 -1
  132. package/deprecated/linkerClient.d.ts.map +1 -1
  133. package/main.d.ts +277 -171
  134. package/main.d.ts.map +1 -1
  135. package/main.js +3 -1
  136. package/main.js.map +1 -1
  137. package/package.json +3 -3
  138. package/platform/services/Interop/types.d.ts +8 -1
  139. package/platform/services/Interop/types.d.ts.map +1 -1
  140. package/platform/services/Interop/types.js.map +1 -1
  141. package/platform/services/router/types.d.ts +5 -6
  142. package/platform/services/router/types.d.ts.map +1 -1
  143. package/platform/services/systemManager/_constants.d.ts +1 -0
  144. package/platform/services/systemManager/_constants.d.ts.map +1 -1
  145. package/platform/services/systemManager/_constants.js +2 -0
  146. package/platform/services/systemManager/_constants.js.map +1 -1
  147. package/platform/services/systemManager/types.d.ts +1 -1
  148. package/platform/services/systemManager/types.d.ts.map +1 -1
  149. package/platform/services/systemManager/types.js.map +1 -1
  150. package/platform/services/window/modules/actions.d.ts +63 -0
  151. package/platform/services/window/modules/actions.d.ts.map +1 -0
  152. package/platform/services/window/modules/actions.js +58 -0
  153. package/platform/services/window/modules/actions.js.map +1 -0
  154. package/platform/services/window/types.d.ts +257 -50
  155. package/platform/services/window/types.d.ts.map +1 -1
  156. package/platform/services/workspace/types.d.ts +4 -3
  157. package/platform/services/workspace/types.d.ts.map +1 -1
  158. package/react/assets/css/core/icons.css +0 -5
  159. package/react/assets/css/fonts/icons-reference.html +1 -1
  160. package/react/assets/css/processMonitor.css +9 -4
  161. package/react/assets/css/windowTitleBar.css +100 -284
  162. package/react/assets/icons/chevron-down.svg +1 -0
  163. package/react/assets/icons/chevron-up.svg +1 -0
  164. package/react/components/common/ButtonRow.d.ts.map +1 -1
  165. package/react/components/common/ButtonRow.js +4 -9
  166. package/react/components/common/ButtonRow.js.map +1 -1
  167. package/react/components/common/ContextMenu.d.ts.map +1 -1
  168. package/react/components/common/ContextMenu.js +2 -10
  169. package/react/components/common/ContextMenu.js.map +1 -1
  170. package/react/components/common/DropdownButton.d.ts.map +1 -1
  171. package/react/components/common/DropdownButton.js +11 -24
  172. package/react/components/common/DropdownButton.js.map +1 -1
  173. package/react/components/common/FinsembleIcon.d.ts +1 -1
  174. package/react/components/common/FinsembleIcon.d.ts.map +1 -1
  175. package/react/components/common/FinsembleIcon.js +6 -4
  176. package/react/components/common/FinsembleIcon.js.map +1 -1
  177. package/react/components/common/css/accordion.css +9 -21
  178. package/react/components/common/css/application-edit-page.css +0 -4
  179. package/react/components/common/css/selector.css +3 -1
  180. package/react/components/downloadManager/DownloadManager.d.ts +1 -1
  181. package/react/components/downloadManager/DownloadManager.d.ts.map +1 -1
  182. package/react/components/downloadManager/DownloadManager.js +2 -4
  183. package/react/components/downloadManager/DownloadManager.js.map +1 -1
  184. package/react/components/fdc3Resolver/ResolverContainer.d.ts +6 -0
  185. package/react/components/fdc3Resolver/ResolverContainer.d.ts.map +1 -1
  186. package/react/components/fdc3Resolver/ResolverContainer.js +37 -89
  187. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  188. package/react/components/fdc3Resolver/ResolverDialog.d.ts +10 -1
  189. package/react/components/fdc3Resolver/ResolverDialog.d.ts.map +1 -1
  190. package/react/components/fdc3Resolver/ResolverDialog.js +78 -66
  191. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  192. package/react/components/legacyControls/FinsembleDialogTextInput.d.ts +1 -1
  193. package/react/components/legacyControls/FinsembleDialogTextInput.d.ts.map +1 -1
  194. package/react/components/linker/remoteRedux.d.ts +2 -9
  195. package/react/components/linker/remoteRedux.d.ts.map +1 -1
  196. package/react/components/linker/remoteRedux.js +2 -22
  197. package/react/components/linker/remoteRedux.js.map +1 -1
  198. package/react/components/notifications/css/notification-center.css +2 -0
  199. package/react/components/processMonitor/ProcessMonitor.d.ts.map +1 -1
  200. package/react/components/processMonitor/ProcessMonitor.js +14 -36
  201. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  202. package/react/components/processMonitor/ProcessMonitorTypes.d.ts +0 -4
  203. package/react/components/processMonitor/ProcessMonitorTypes.d.ts.map +1 -1
  204. package/react/components/processMonitor/ProcessMonitorTypes.js +1 -5
  205. package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
  206. package/react/components/processMonitor/components/ChildWindow.d.ts +2 -3
  207. package/react/components/processMonitor/components/ChildWindow.d.ts.map +1 -1
  208. package/react/components/processMonitor/components/ChildWindow.js +5 -9
  209. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  210. package/react/components/processMonitor/components/ListHeader.d.ts +1 -5
  211. package/react/components/processMonitor/components/ListHeader.d.ts.map +1 -1
  212. package/react/components/processMonitor/components/ListHeader.js +3 -2
  213. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  214. package/react/components/processMonitor/components/Process.d.ts +10 -0
  215. package/react/components/processMonitor/components/Process.d.ts.map +1 -0
  216. package/react/components/processMonitor/components/Process.js +11 -0
  217. package/react/components/processMonitor/components/Process.js.map +1 -0
  218. package/react/components/processMonitor/components/ProcessStatistics.d.ts +5 -4
  219. package/react/components/processMonitor/components/ProcessStatistics.d.ts.map +1 -1
  220. package/react/components/processMonitor/components/ProcessStatistics.js +10 -7
  221. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  222. package/react/components/processMonitor/constants.d.ts +1 -2
  223. package/react/components/processMonitor/constants.d.ts.map +1 -1
  224. package/react/components/processMonitor/constants.js +2 -8
  225. package/react/components/processMonitor/constants.js.map +1 -1
  226. package/react/components/processMonitor/helpers.d.ts +0 -1
  227. package/react/components/processMonitor/helpers.d.ts.map +1 -1
  228. package/react/components/processMonitor/helpers.js +2 -9
  229. package/react/components/processMonitor/helpers.js.map +1 -1
  230. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +0 -4
  231. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts.map +1 -1
  232. package/react/components/processMonitor/stores/ProcessMonitorStore.js +0 -29
  233. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  234. package/react/components/search/SearchInput.d.ts +1 -2
  235. package/react/components/search/SearchInput.d.ts.map +1 -1
  236. package/react/components/search/SearchInput.js +11 -13
  237. package/react/components/search/SearchInput.js.map +1 -1
  238. package/react/components/search/SearchResults.d.ts.map +1 -1
  239. package/react/components/search/SearchResults.js +6 -6
  240. package/react/components/search/SearchResults.js.map +1 -1
  241. package/react/components/shared/openQuitConfirmationDialog.d.ts.map +1 -1
  242. package/react/components/shared/openQuitConfirmationDialog.js +31 -4
  243. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  244. package/react/components/singleInputDialog/SingleInputDialog.d.ts.map +1 -1
  245. package/react/components/singleInputDialog/SingleInputDialog.js +83 -100
  246. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  247. package/react/components/toolbar/DragHandle.d.ts.map +1 -1
  248. package/react/components/toolbar/DragHandle.js +8 -5
  249. package/react/components/toolbar/DragHandle.js.map +1 -1
  250. package/react/components/toolbar/ToolbarShell.d.ts +1 -0
  251. package/react/components/toolbar/ToolbarShell.d.ts.map +1 -1
  252. package/react/components/toolbar/ToolbarShell.js +3 -2
  253. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  254. package/react/components/userPreferences/components/content/Workspaces.d.ts +5 -0
  255. package/react/components/userPreferences/components/content/Workspaces.d.ts.map +1 -1
  256. package/react/components/userPreferences/components/content/Workspaces.js +14 -1
  257. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  258. package/react/components/utils.d.ts +50 -0
  259. package/react/components/utils.d.ts.map +1 -0
  260. package/react/components/utils.js +60 -0
  261. package/react/components/utils.js.map +1 -0
  262. package/react/components/windowTitleBar/AlwaysOnTopButton.d.ts +9 -0
  263. package/react/components/windowTitleBar/AlwaysOnTopButton.d.ts.map +1 -0
  264. package/react/components/windowTitleBar/AlwaysOnTopButton.js +29 -0
  265. package/react/components/windowTitleBar/AlwaysOnTopButton.js.map +1 -0
  266. package/react/components/windowTitleBar/{components/right/CloseButton.d.ts → CloseButton.d.ts} +0 -0
  267. package/react/components/windowTitleBar/CloseButton.d.ts.map +1 -0
  268. package/react/components/windowTitleBar/CloseButton.js +22 -0
  269. package/react/components/windowTitleBar/CloseButton.js.map +1 -0
  270. package/react/components/windowTitleBar/GroupingButton.d.ts +3 -0
  271. package/react/components/windowTitleBar/GroupingButton.d.ts.map +1 -0
  272. package/react/components/windowTitleBar/GroupingButton.js +25 -0
  273. package/react/components/windowTitleBar/GroupingButton.js.map +1 -0
  274. package/react/components/windowTitleBar/{components/left/LinkerButton.d.ts → LinkerButton.d.ts} +0 -0
  275. package/react/components/windowTitleBar/LinkerButton.d.ts.map +1 -0
  276. package/react/components/windowTitleBar/{components/left/LinkerButton.js → LinkerButton.js} +4 -4
  277. package/react/components/windowTitleBar/LinkerButton.js.map +1 -0
  278. package/react/components/windowTitleBar/LinkerButtonDeprecated.d.ts +11 -0
  279. package/react/components/windowTitleBar/LinkerButtonDeprecated.d.ts.map +1 -0
  280. package/react/components/windowTitleBar/LinkerButtonDeprecated.js +63 -0
  281. package/react/components/windowTitleBar/LinkerButtonDeprecated.js.map +1 -0
  282. package/react/components/windowTitleBar/{components/left/LinkerGroups.d.ts → LinkerGroups.d.ts} +0 -0
  283. package/react/components/windowTitleBar/LinkerGroups.d.ts.map +1 -0
  284. package/react/components/windowTitleBar/{components/left/LinkerGroups.js → LinkerGroups.js} +2 -3
  285. package/react/components/windowTitleBar/LinkerGroups.js.map +1 -0
  286. package/react/components/windowTitleBar/LinkerGroupsDeprecated.d.ts +7 -0
  287. package/react/components/windowTitleBar/LinkerGroupsDeprecated.d.ts.map +1 -0
  288. package/react/components/windowTitleBar/LinkerGroupsDeprecated.js +35 -0
  289. package/react/components/windowTitleBar/LinkerGroupsDeprecated.js.map +1 -0
  290. package/react/components/windowTitleBar/MaximizeButton.d.ts +3 -0
  291. package/react/components/windowTitleBar/MaximizeButton.d.ts.map +1 -0
  292. package/react/components/windowTitleBar/MaximizeButton.js +18 -0
  293. package/react/components/windowTitleBar/MaximizeButton.js.map +1 -0
  294. package/react/components/windowTitleBar/MinimizeButton.d.ts +3 -0
  295. package/react/components/windowTitleBar/MinimizeButton.d.ts.map +1 -0
  296. package/react/components/windowTitleBar/MinimizeButton.js +21 -0
  297. package/react/components/windowTitleBar/MinimizeButton.js.map +1 -0
  298. package/react/components/windowTitleBar/ShareButton.d.ts +3 -0
  299. package/react/components/windowTitleBar/ShareButton.d.ts.map +1 -0
  300. package/react/components/windowTitleBar/ShareButton.js +24 -0
  301. package/react/components/windowTitleBar/ShareButton.js.map +1 -0
  302. package/react/components/windowTitleBar/TabRegion.d.ts +7 -0
  303. package/react/components/windowTitleBar/TabRegion.d.ts.map +1 -0
  304. package/react/components/windowTitleBar/TabRegion.js +453 -0
  305. package/react/components/windowTitleBar/TabRegion.js.map +1 -0
  306. package/react/components/windowTitleBar/TabTitle.d.ts +8 -0
  307. package/react/components/windowTitleBar/TabTitle.d.ts.map +1 -0
  308. package/react/components/windowTitleBar/TabTitle.js +17 -0
  309. package/react/components/windowTitleBar/TabTitle.js.map +1 -0
  310. package/react/components/windowTitleBar/TitleEdit.d.ts +10 -0
  311. package/react/components/windowTitleBar/TitleEdit.d.ts.map +1 -0
  312. package/react/components/windowTitleBar/TitleEdit.js +30 -0
  313. package/react/components/windowTitleBar/TitleEdit.js.map +1 -0
  314. package/react/components/windowTitleBar/WindowTitleBarContext.d.ts +12 -0
  315. package/react/components/windowTitleBar/WindowTitleBarContext.d.ts.map +1 -0
  316. package/react/components/windowTitleBar/WindowTitleBarContext.js +3 -0
  317. package/react/components/windowTitleBar/WindowTitleBarContext.js.map +1 -0
  318. package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +14 -272
  319. package/react/components/windowTitleBar/WindowTitleBarShell.d.ts.map +1 -1
  320. package/react/components/windowTitleBar/WindowTitleBarShell.js +41 -929
  321. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  322. package/react/components/windowTitleBar/index.d.ts +9 -8
  323. package/react/components/windowTitleBar/index.d.ts.map +1 -1
  324. package/react/components/windowTitleBar/index.js +9 -8
  325. package/react/components/windowTitleBar/index.js.map +1 -1
  326. package/react/components/windowTitleBar/useKeyboardNavigation.d.ts +7 -0
  327. package/react/components/windowTitleBar/useKeyboardNavigation.d.ts.map +1 -0
  328. package/react/components/windowTitleBar/useKeyboardNavigation.js +57 -0
  329. package/react/components/windowTitleBar/useKeyboardNavigation.js.map +1 -0
  330. package/react/components/windowTitleBar/useMaximize.d.ts +5 -0
  331. package/react/components/windowTitleBar/useMaximize.d.ts.map +1 -0
  332. package/react/components/windowTitleBar/useMaximize.js +23 -0
  333. package/react/components/windowTitleBar/useMaximize.js.map +1 -0
  334. package/react/components/yesNoDialog/timer.js +2 -1
  335. package/react/components/yesNoDialog/timer.js.map +1 -1
  336. package/react/hooks/useDashbar.d.ts.map +1 -1
  337. package/react/hooks/useDashbar.js.map +1 -1
  338. package/react/hooks/useDragRegion.d.ts +27 -0
  339. package/react/hooks/useDragRegion.d.ts.map +1 -0
  340. package/react/hooks/useDragRegion.js +74 -0
  341. package/react/hooks/useDragRegion.js.map +1 -0
  342. package/react/hooks/useInjectedTitleBar.d.ts +3 -0
  343. package/react/hooks/useInjectedTitleBar.d.ts.map +1 -0
  344. package/react/hooks/useInjectedTitleBar.js +437 -0
  345. package/react/hooks/useInjectedTitleBar.js.map +1 -0
  346. package/react/hooks/useNotifications.d.ts +1 -1
  347. package/react/hooks/useToolbar.d.ts +1 -0
  348. package/react/hooks/useToolbar.d.ts.map +1 -1
  349. package/react/hooks/useToolbar.js +13 -3
  350. package/react/hooks/useToolbar.js.map +1 -1
  351. package/typedefs/FDC3/api/AppMetadata.d.ts +1 -0
  352. package/typedefs/FDC3/api/AppMetadata.d.ts.map +1 -1
  353. package/typedoc-types.d.ts +9 -0
  354. package/typedoc-types.d.ts.map +1 -0
  355. package/typedoc-types.js +6 -0
  356. package/typedoc-types.js.map +1 -0
  357. package/types.d.ts +5 -11
  358. package/types.d.ts.map +1 -1
  359. package/types.js +2 -0
  360. package/types.js.map +1 -1
  361. package/common/events/PrivateEventManager.d.ts +0 -95
  362. package/common/events/PrivateEventManager.d.ts.map +0 -1
  363. package/common/events/PrivateEventManager.js +0 -295
  364. package/common/events/PrivateEventManager.js.map +0 -1
  365. package/common/events/PrivateFinsembleEvent.d.ts +0 -30
  366. package/common/events/PrivateFinsembleEvent.d.ts.map +0 -1
  367. package/common/events/PrivateFinsembleEvent.js +0 -65
  368. package/common/events/PrivateFinsembleEvent.js.map +0 -1
  369. package/common/redux/createReducer.d.ts +0 -128
  370. package/common/redux/createReducer.d.ts.map +0 -1
  371. package/common/redux/createReducer.js +0 -298
  372. package/common/redux/createReducer.js.map +0 -1
  373. package/common/redux/index.d.ts +0 -3
  374. package/common/redux/index.d.ts.map +0 -1
  375. package/common/redux/index.js +0 -3
  376. package/common/redux/index.js.map +0 -1
  377. package/platform/services/window/Common/Pools/ObjectPool.d.ts +0 -11
  378. package/platform/services/window/Common/Pools/ObjectPool.d.ts.map +0 -1
  379. package/platform/services/window/Common/Pools/ObjectPool.js +0 -43
  380. package/platform/services/window/Common/Pools/ObjectPool.js.map +0 -1
  381. package/platform/services/window/Common/Pools/PoolSingletons.d.ts +0 -10
  382. package/platform/services/window/Common/Pools/PoolSingletons.d.ts.map +0 -1
  383. package/platform/services/window/Common/Pools/PoolSingletons.js +0 -10
  384. package/platform/services/window/Common/Pools/PoolSingletons.js.map +0 -1
  385. package/platform/services/window/Common/Pools/WindowPool.d.ts +0 -7
  386. package/platform/services/window/Common/Pools/WindowPool.d.ts.map +0 -1
  387. package/platform/services/window/Common/Pools/WindowPool.js +0 -16
  388. package/platform/services/window/Common/Pools/WindowPool.js.map +0 -1
  389. package/platform/services/window/Docking/boxMath.d.ts +0 -144
  390. package/platform/services/window/Docking/boxMath.d.ts.map +0 -1
  391. package/platform/services/window/Docking/boxMath.js +0 -511
  392. package/platform/services/window/Docking/boxMath.js.map +0 -1
  393. package/platform/services/window/Docking/constants.d.ts +0 -29
  394. package/platform/services/window/Docking/constants.d.ts.map +0 -1
  395. package/platform/services/window/Docking/constants.js +0 -29
  396. package/platform/services/window/Docking/constants.js.map +0 -1
  397. package/platform/services/window/Docking/dockableBox.d.ts +0 -117
  398. package/platform/services/window/Docking/dockableBox.d.ts.map +0 -1
  399. package/platform/services/window/Docking/dockableBox.js +0 -525
  400. package/platform/services/window/Docking/dockableBox.js.map +0 -1
  401. package/platform/services/window/Docking/dockableGroup.d.ts +0 -252
  402. package/platform/services/window/Docking/dockableGroup.d.ts.map +0 -1
  403. package/platform/services/window/Docking/dockableGroup.js +0 -1054
  404. package/platform/services/window/Docking/dockableGroup.js.map +0 -1
  405. package/platform/services/window/Docking/dockableMonitor.d.ts +0 -99
  406. package/platform/services/window/Docking/dockableMonitor.d.ts.map +0 -1
  407. package/platform/services/window/Docking/dockableMonitor.js +0 -427
  408. package/platform/services/window/Docking/dockableMonitor.js.map +0 -1
  409. package/platform/services/window/Docking/dockableWindow.d.ts +0 -272
  410. package/platform/services/window/Docking/dockableWindow.d.ts.map +0 -1
  411. package/platform/services/window/Docking/dockableWindow.js +0 -1239
  412. package/platform/services/window/Docking/dockableWindow.js.map +0 -1
  413. package/platform/services/window/Docking/dockingCalculator.d.ts +0 -741
  414. package/platform/services/window/Docking/dockingCalculator.d.ts.map +0 -1
  415. package/platform/services/window/Docking/dockingCalculator.js +0 -3438
  416. package/platform/services/window/Docking/dockingCalculator.js.map +0 -1
  417. package/platform/services/window/Docking/dockingMain.d.ts +0 -349
  418. package/platform/services/window/Docking/dockingMain.d.ts.map +0 -1
  419. package/platform/services/window/Docking/dockingMain.js +0 -2541
  420. package/platform/services/window/Docking/dockingMain.js.map +0 -1
  421. package/platform/services/window/Docking/maskBoundsCalculator.d.ts +0 -28
  422. package/platform/services/window/Docking/maskBoundsCalculator.d.ts.map +0 -1
  423. package/platform/services/window/Docking/maskBoundsCalculator.js +0 -67
  424. package/platform/services/window/Docking/maskBoundsCalculator.js.map +0 -1
  425. package/platform/services/window/Docking/monitorUpdateHandler.d.ts +0 -32
  426. package/platform/services/window/Docking/monitorUpdateHandler.d.ts.map +0 -1
  427. package/platform/services/window/Docking/monitorUpdateHandler.js +0 -117
  428. package/platform/services/window/Docking/monitorUpdateHandler.js.map +0 -1
  429. package/platform/services/window/Docking/types.d.ts +0 -334
  430. package/platform/services/window/Docking/types.d.ts.map +0 -1
  431. package/platform/services/window/Docking/types.js +0 -12
  432. package/platform/services/window/Docking/types.js.map +0 -1
  433. package/platform/services/window/MultiWindowFeatures/autoArrange.d.ts +0 -90
  434. package/platform/services/window/MultiWindowFeatures/autoArrange.d.ts.map +0 -1
  435. package/platform/services/window/MultiWindowFeatures/autoArrange.js +0 -510
  436. package/platform/services/window/MultiWindowFeatures/autoArrange.js.map +0 -1
  437. package/platform/services/window/StackedWindowManager/stackedWindowManager.d.ts +0 -411
  438. package/platform/services/window/StackedWindowManager/stackedWindowManager.d.ts.map +0 -1
  439. package/platform/services/window/StackedWindowManager/stackedWindowManager.js +0 -1641
  440. package/platform/services/window/StackedWindowManager/stackedWindowManager.js.map +0 -1
  441. package/platform/services/window/WindowAbstractions/BaseWindow.d.ts +0 -469
  442. package/platform/services/window/WindowAbstractions/BaseWindow.d.ts.map +0 -1
  443. package/platform/services/window/WindowAbstractions/BaseWindow.js +0 -1347
  444. package/platform/services/window/WindowAbstractions/BaseWindow.js.map +0 -1
  445. package/platform/services/window/WindowAbstractions/FinsembleWindowInternal.d.ts +0 -9
  446. package/platform/services/window/WindowAbstractions/FinsembleWindowInternal.d.ts.map +0 -1
  447. package/platform/services/window/WindowAbstractions/FinsembleWindowInternal.js +0 -23
  448. package/platform/services/window/WindowAbstractions/FinsembleWindowInternal.js.map +0 -1
  449. package/platform/services/window/WindowAbstractions/WebWindowWrapper.d.ts +0 -227
  450. package/platform/services/window/WindowAbstractions/WebWindowWrapper.d.ts.map +0 -1
  451. package/platform/services/window/WindowAbstractions/WebWindowWrapper.js +0 -1168
  452. package/platform/services/window/WindowAbstractions/WebWindowWrapper.js.map +0 -1
  453. package/platform/services/window/WindowAbstractions/externalWindowWrapper.d.ts +0 -121
  454. package/platform/services/window/WindowAbstractions/externalWindowWrapper.d.ts.map +0 -1
  455. package/platform/services/window/WindowAbstractions/externalWindowWrapper.js +0 -591
  456. package/platform/services/window/WindowAbstractions/externalWindowWrapper.js.map +0 -1
  457. package/platform/services/window/WindowAbstractions/stackedWindowWrapper.d.ts +0 -194
  458. package/platform/services/window/WindowAbstractions/stackedWindowWrapper.d.ts.map +0 -1
  459. package/platform/services/window/WindowAbstractions/stackedWindowWrapper.js +0 -680
  460. package/platform/services/window/WindowAbstractions/stackedWindowWrapper.js.map +0 -1
  461. package/platform/services/window/windowGroup.d.ts +0 -86
  462. package/platform/services/window/windowGroup.d.ts.map +0 -1
  463. package/platform/services/window/windowGroup.js +0 -323
  464. package/platform/services/window/windowGroup.js.map +0 -1
  465. package/platform/services/workspace/windowStorageManager.d.ts +0 -180
  466. package/platform/services/workspace/windowStorageManager.d.ts.map +0 -1
  467. package/platform/services/workspace/windowStorageManager.js +0 -195
  468. package/platform/services/workspace/windowStorageManager.js.map +0 -1
  469. package/react/assets/icons/question-circle.svg +0 -6
  470. package/react/components/legacyControls/FinsembleHoverDetector.d.ts +0 -23
  471. package/react/components/legacyControls/FinsembleHoverDetector.d.ts.map +0 -1
  472. package/react/components/legacyControls/FinsembleHoverDetector.js +0 -57
  473. package/react/components/legacyControls/FinsembleHoverDetector.js.map +0 -1
  474. package/react/components/sdd/Appearance.helpers.d.ts +0 -2
  475. package/react/components/sdd/Appearance.helpers.d.ts.map +0 -1
  476. package/react/components/sdd/Appearance.helpers.js +0 -2
  477. package/react/components/sdd/Appearance.helpers.js.map +0 -1
  478. package/react/components/shared/linkerUtil.d.ts +0 -4
  479. package/react/components/shared/linkerUtil.d.ts.map +0 -1
  480. package/react/components/shared/linkerUtil.js +0 -10
  481. package/react/components/shared/linkerUtil.js.map +0 -1
  482. package/react/components/windowTitleBar/components/center/Tab.d.ts +0 -31
  483. package/react/components/windowTitleBar/components/center/Tab.d.ts.map +0 -1
  484. package/react/components/windowTitleBar/components/center/Tab.js +0 -58
  485. package/react/components/windowTitleBar/components/center/Tab.js.map +0 -1
  486. package/react/components/windowTitleBar/components/center/TabList.d.ts +0 -138
  487. package/react/components/windowTitleBar/components/center/TabList.d.ts.map +0 -1
  488. package/react/components/windowTitleBar/components/center/TabList.js +0 -614
  489. package/react/components/windowTitleBar/components/center/TabList.js.map +0 -1
  490. package/react/components/windowTitleBar/components/center/TabRegion.d.ts +0 -3
  491. package/react/components/windowTitleBar/components/center/TabRegion.d.ts.map +0 -1
  492. package/react/components/windowTitleBar/components/center/TabRegion.js +0 -13
  493. package/react/components/windowTitleBar/components/center/TabRegion.js.map +0 -1
  494. package/react/components/windowTitleBar/components/left/LinkerButton.d.ts.map +0 -1
  495. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +0 -1
  496. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.d.ts +0 -85
  497. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.d.ts.map +0 -1
  498. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js +0 -172
  499. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +0 -1
  500. package/react/components/windowTitleBar/components/left/LinkerGroups.d.ts.map +0 -1
  501. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +0 -1
  502. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.d.ts +0 -50
  503. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.d.ts.map +0 -1
  504. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js +0 -120
  505. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +0 -1
  506. package/react/components/windowTitleBar/components/left/ShareButton.d.ts +0 -42
  507. package/react/components/windowTitleBar/components/left/ShareButton.d.ts.map +0 -1
  508. package/react/components/windowTitleBar/components/left/ShareButton.js +0 -82
  509. package/react/components/windowTitleBar/components/left/ShareButton.js.map +0 -1
  510. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.d.ts +0 -3
  511. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.d.ts.map +0 -1
  512. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js +0 -15
  513. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +0 -1
  514. package/react/components/windowTitleBar/components/right/CloseButton.d.ts.map +0 -1
  515. package/react/components/windowTitleBar/components/right/CloseButton.js +0 -16
  516. package/react/components/windowTitleBar/components/right/CloseButton.js.map +0 -1
  517. package/react/components/windowTitleBar/components/right/GroupingButton.d.ts +0 -50
  518. package/react/components/windowTitleBar/components/right/GroupingButton.d.ts.map +0 -1
  519. package/react/components/windowTitleBar/components/right/GroupingButton.js +0 -82
  520. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +0 -1
  521. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +0 -59
  522. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts.map +0 -1
  523. package/react/components/windowTitleBar/components/right/MaximizeButton.js +0 -96
  524. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +0 -1
  525. package/react/components/windowTitleBar/components/right/MinimizeButton.d.ts +0 -26
  526. package/react/components/windowTitleBar/components/right/MinimizeButton.d.ts.map +0 -1
  527. package/react/components/windowTitleBar/components/right/MinimizeButton.js +0 -32
  528. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +0 -1
  529. package/react/components/windowTitleBar/components/windowTitle.d.ts +0 -67
  530. package/react/components/windowTitleBar/components/windowTitle.d.ts.map +0 -1
  531. package/react/components/windowTitleBar/components/windowTitle.js +0 -382
  532. package/react/components/windowTitleBar/components/windowTitle.js.map +0 -1
  533. package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts +0 -69
  534. package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts.map +0 -1
  535. package/react/components/windowTitleBar/stores/windowTitleBarStore.js +0 -610
  536. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +0 -1
  537. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.d.ts +0 -44
  538. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.d.ts.map +0 -1
  539. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js +0 -43
  540. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +0 -1
  541. package/react/components/windowTitleBar/windowTitleBarContext.d.ts +0 -23
  542. package/react/components/windowTitleBar/windowTitleBarContext.d.ts.map +0 -1
  543. package/react/components/windowTitleBar/windowTitleBarContext.js +0 -22
  544. package/react/components/windowTitleBar/windowTitleBarContext.js.map +0 -1
  545. package/react/types/windowTitleBar.d.ts +0 -49
  546. package/react/types/windowTitleBar.d.ts.map +0 -1
  547. package/react/types/windowTitleBar.js +0 -2
  548. package/react/types/windowTitleBar.js.map +0 -1
@@ -1,117 +0,0 @@
1
- import { BoundingBox, SnappingRegions, BoxCoordinates, Vertex, XYCoordinates, MoveRequest, Edges, SharedEdges, SharedCorners } from "./types";
2
- declare class DockableBox {
3
- left: number;
4
- top: number;
5
- right: number;
6
- bottom: number;
7
- width: number;
8
- height: number;
9
- windowBoundingBox: BoundingBox;
10
- getVertices: (req: BoxCoordinates) => Vertex[];
11
- buffer: BoundingBox;
12
- innerBuffer: BoundingBox;
13
- monitor?: BoxCoordinates;
14
- resizeHandle: string | null;
15
- snappingRegions: SnappingRegions;
16
- bufferSize: number;
17
- constructor(bounds?: BoxCoordinates);
18
- /**
19
- * @function {function name}
20
- * @param {type} format {description}
21
- * @param {type} includeCorners {description}
22
- * @return {type} {description}
23
- */
24
- getEdges(format: string, includeCorners?: number | boolean): Edges | BoundingBox[];
25
- getCorners(): Record<string, Vertex>;
26
- /**
27
- * @function {function name}
28
- * @param {type} point {description}
29
- * @param {type} includeCorners {description}
30
- * @return {type} {description}
31
- */
32
- pointIsOnBoundingBox(point: XYCoordinates, includeCorners?: boolean): boolean;
33
- /**
34
- * @function {function name}
35
- * @param {type} corner {description}
36
- * @return {type} {description}
37
- */
38
- getPointByVertex(corner: string): XYCoordinates;
39
- /**
40
- * @function {function name}
41
- * @param {type} point {description}
42
- * @return {type} {description}
43
- */
44
- getEdgeByPoint(point: XYCoordinates): string;
45
- /**
46
- * @function {function name}
47
- * @param {type} point {description}
48
- * @param {type} tolerance {description}
49
- * @return {type} {description}
50
- */
51
- getVertexByPoint(point: XYCoordinates, tolerance?: number): string | null;
52
- /**
53
- * @function getSharedEdges Determines if another window has edges to which our window may snap/dock
54
- * @param {type} win2 {description} * @param {Window} win2 Window proxy (movement object) of other window to which our window may snap/dock
55
- * @return {type} {description} * @param {number} tolerance Buffer region around edges to determine region for snap / dock
56
- * @return {object} Object describing shared edges, with boolean top, bottom, left, and right properties
57
- */
58
- getSharedEdges(win2: BoxCoordinates, tolerance?: number): SharedEdges;
59
- /**
60
- * @function getSharedCorners Determines if another window has corners to which our window may snap/dock
61
- * @param {type} win2 {description} * @param {Window} win2 Window proxy (movement object) of other window to which our window may snap/dock
62
- * @return {type} {description} * @return {object} Object describing shared corners, including original vertices (topLeft, topRight, bottomRight, bottomLeft),
63
- * and amended vertices (rightTop, rightBottom, leftTop, leftBottom) to indicate shared tops or bottoms on
64
- * on the left or right.
65
- */
66
- getSharedCorners(win2: BoxCoordinates): SharedCorners;
67
- /**
68
- * @function {function name}
69
- * @return {type} {description}
70
- */
71
- getBounds(): BoxCoordinates;
72
- /**
73
- * @function {function name}
74
- * @param {type} req {description}
75
- * @return {type} {description}
76
- */
77
- getCornerObject(req: any): Record<string, Vertex>;
78
- /**
79
- * @function {function name}
80
- * @param {type} mouse {description}
81
- * @return {type} {description}
82
- */
83
- getGrabbedEdge(mouse: XYCoordinates): string | boolean;
84
- computeResizeHandleFromMove(request: MoveRequest): string | null;
85
- /**
86
- * @function {function name}
87
- * @param {type} request {description}
88
- * @return {type} {description}
89
- */
90
- getResizeHandle(request: MoveRequest): string;
91
- /**
92
- * @function {function name}
93
- * @param {type} bufferSize {description}
94
- * @return {type} {description}
95
- */
96
- setBuffer(bufferSize?: number): void;
97
- /**
98
- * @function {function name}
99
- * @return {type} {description}
100
- */
101
- setSnappingRegions(): void;
102
- sharesACornerWith(win: BoxCoordinates): boolean;
103
- /**
104
- * @function {function name}
105
- * @param {type} win {description}
106
- * @return {type} {description}
107
- */
108
- sharesAnEdgeWith(win: BoxCoordinates): boolean;
109
- /**
110
- * @function {function name}
111
- * @param {type} request {description}
112
- * @return {type} {description}
113
- */
114
- canSnapToWindow(request: MoveRequest): boolean;
115
- }
116
- export default DockableBox;
117
- //# sourceMappingURL=dockableBox.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dockableBox.d.ts","sourceRoot":"","sources":["../../../../../../src/platform/services/window/Docking/dockableBox.ts"],"names":[],"mappings":"AACA,OAAO,EACN,WAAW,EACX,eAAe,EACf,cAAc,EACd,MAAM,EACN,aAAa,EACb,WAAW,EACX,KAAK,EACL,WAAW,EACX,aAAa,EACb,MAAM,SAAS,CAAC;AAEjB,cAAM,WAAW;IAChB,IAAI,EAAG,MAAM,CAAC;IAEd,GAAG,EAAG,MAAM,CAAC;IAEb,KAAK,EAAG,MAAM,CAAC;IAEf,MAAM,EAAG,MAAM,CAAC;IAEhB,KAAK,EAAG,MAAM,CAAC;IAEf,MAAM,EAAG,MAAM,CAAC;IAEhB,iBAAiB,EAAG,WAAW,CAAC;IAEhC,WAAW,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,MAAM,EAAE,CAAC;IAE/C,MAAM,EAAG,WAAW,CAAC;IAErB,WAAW,EAAG,WAAW,CAAC;IAE1B,OAAO,CAAC,EAAE,cAAc,CAAC;IAEzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEnC,eAAe,EAAG,eAAe,CAAC;IAElC,UAAU,EAAG,MAAM,CAAC;gBAER,MAAM,CAAC,EAAE,cAAc;IAenC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,WAAW,EAAE;IA2DlF,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIpC;;;;;OAKG;IACH,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,cAAc,GAAE,OAAc,GAAG,OAAO;IAanF;;;;OAIG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAe/C;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM;IAY5C;;;;;OAKG;IACH,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAgCzE;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,GAAE,MAAU,GAAG,WAAW;IAiFxE;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,aAAa;IAoFrD;;;OAGG;IACH,SAAS,IAAI,cAAc;IAW3B;;;;OAIG;IACH,eAAe,CAAC,GAAG,KAAA,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAU5C;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,OAAO;IAsBtD,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAiChE;;;;OAIG;IACH,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;IAmB7C;;;;OAIG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM;IAsB7B;;;OAGG;IACH,kBAAkB;IAIlB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO;IAqB/C;;;;OAIG;IACH,gBAAgB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO;IAa9C;;;;OAIG;IACH,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;CAS9C;AACD,eAAe,WAAW,CAAC"}
@@ -1,525 +0,0 @@
1
- import BoxMath from "./boxMath";
2
- class DockableBox {
3
- constructor(bounds) {
4
- this.resizeHandle = null;
5
- if (bounds) {
6
- this.left = bounds.left;
7
- this.top = bounds.top;
8
- this.right = bounds.right;
9
- this.bottom = bounds.bottom;
10
- this.width = bounds.right - bounds.left;
11
- this.height = bounds.bottom - bounds.top;
12
- this.windowBoundingBox = BoxMath.getWindowBoundingBox(this.getBounds());
13
- }
14
- this.setSnappingRegions();
15
- this.getVertices = BoxMath.getVertices;
16
- return this;
17
- }
18
- /**
19
- * @function {function name}
20
- * @param {type} format {description}
21
- * @param {type} includeCorners {description}
22
- * @return {type} {description}
23
- */
24
- getEdges(format, includeCorners) {
25
- if (includeCorners === undefined || includeCorners === true) {
26
- includeCorners = 0;
27
- }
28
- else {
29
- includeCorners = 1;
30
- }
31
- const top = {
32
- min: {
33
- x: this.left + includeCorners,
34
- y: this.top,
35
- },
36
- max: {
37
- x: this.right - includeCorners,
38
- y: this.top,
39
- },
40
- };
41
- const left = {
42
- min: {
43
- x: this.left,
44
- y: this.top + includeCorners,
45
- },
46
- max: {
47
- x: this.left,
48
- y: this.bottom - includeCorners,
49
- },
50
- };
51
- const right = {
52
- min: {
53
- x: this.right,
54
- y: this.top + includeCorners,
55
- },
56
- max: {
57
- x: this.right,
58
- y: this.bottom - includeCorners,
59
- },
60
- };
61
- const bottom = {
62
- min: {
63
- x: this.left + includeCorners,
64
- y: this.bottom,
65
- },
66
- max: {
67
- x: this.right - includeCorners,
68
- y: this.bottom,
69
- },
70
- };
71
- if (format === "obj") {
72
- return {
73
- top,
74
- right,
75
- bottom,
76
- left,
77
- };
78
- }
79
- return [top, right, bottom, left];
80
- }
81
- getCorners() {
82
- return this.getCornerObject(this.getBounds());
83
- }
84
- /**
85
- * @function {function name}
86
- * @param {type} point {description}
87
- * @param {type} includeCorners {description}
88
- * @return {type} {description}
89
- */
90
- pointIsOnBoundingBox(point, includeCorners = true) {
91
- // If it's on the top or bottom edge.
92
- const edges = this.getEdges("arr", includeCorners);
93
- for (let i = 0; i < edges.length; i++) {
94
- const segment = edges[i];
95
- if (BoxMath.isPointOnSegment(point, segment)) {
96
- return true;
97
- }
98
- }
99
- return false;
100
- }
101
- /**
102
- * @function {function name}
103
- * @param {type} corner {description}
104
- * @return {type} {description}
105
- */
106
- getPointByVertex(corner) {
107
- corner = corner.toLowerCase();
108
- const point = {
109
- x: this.left,
110
- y: this.top,
111
- };
112
- if (corner.includes("bottom")) {
113
- point.y = this.bottom;
114
- }
115
- if (corner.includes("right")) {
116
- point.x = this.right;
117
- }
118
- return point;
119
- }
120
- /**
121
- * @function {function name}
122
- * @param {type} point {description}
123
- * @return {type} {description}
124
- */
125
- getEdgeByPoint(point) {
126
- const edges = this.getEdges("obj");
127
- for (const edge in edges) {
128
- if (BoxMath.isPointOnSegment(point, edges[edge])) {
129
- return edge;
130
- }
131
- }
132
- // Should never get here
133
- return edges[0];
134
- }
135
- /**
136
- * @function {function name}
137
- * @param {type} point {description}
138
- * @param {type} tolerance {description}
139
- * @return {type} {description}
140
- */
141
- getVertexByPoint(point, tolerance) {
142
- if (tolerance === undefined) {
143
- tolerance = 0;
144
- }
145
- let corner = null;
146
- let justAnEdge = true;
147
- if (point.y <= this.windowBoundingBox.max.y + tolerance && point.y >= this.windowBoundingBox.max.y - tolerance) {
148
- corner = "bottom";
149
- }
150
- if (point.y <= this.windowBoundingBox.min.y + tolerance && point.y >= this.windowBoundingBox.min.y - tolerance) {
151
- corner = "top";
152
- }
153
- if (!corner) {
154
- return corner;
155
- }
156
- if (point.x <= this.windowBoundingBox.min.x + tolerance && point.x >= this.windowBoundingBox.min.x - tolerance) {
157
- justAnEdge = false;
158
- corner = `${corner}Left`;
159
- }
160
- if (point.x <= this.windowBoundingBox.max.x + tolerance && point.x >= this.windowBoundingBox.max.x - tolerance) {
161
- justAnEdge = false;
162
- corner = `${corner}Right`;
163
- }
164
- if (justAnEdge) {
165
- return null;
166
- }
167
- return corner;
168
- }
169
- /**
170
- * @function getSharedEdges Determines if another window has edges to which our window may snap/dock
171
- * @param {type} win2 {description} * @param {Window} win2 Window proxy (movement object) of other window to which our window may snap/dock
172
- * @return {type} {description} * @param {number} tolerance Buffer region around edges to determine region for snap / dock
173
- * @return {object} Object describing shared edges, with boolean top, bottom, left, and right properties
174
- */
175
- getSharedEdges(win2, tolerance = 0) {
176
- // from perspective of stationary window;
177
- const sharedEdges = {
178
- top: false,
179
- left: false,
180
- right: false,
181
- bottom: false,
182
- };
183
- // +--------------------------------+
184
- // | Monitor2 |
185
- // | |
186
- // | +---------+ |
187
- // | | | |
188
- // | | Win2 | |
189
- // | | | |
190
- // +--------------------------------+
191
- // | | | |
192
- // | | MyWindow| |
193
- // | | | |
194
- // | +---------+ |
195
- // | Monitor1 |
196
- // | |
197
- // +--------------------------------+
198
- // Return all false if we aren't intersecting at all or snapping exactly across the monitor boundary,
199
- // e.g. (see above) if top of my window is snapped to bottom of the other window and the top of my other window is the top
200
- // of the monitor, return shared edges.
201
- const intersection = BoxMath.intersectBoundingBoxes(this.buffer, win2.windowBoundingBox);
202
- if (!intersection ||
203
- (this.monitor &&
204
- ((this.top === win2.bottom && this.top === this.monitor.top) ||
205
- (this.left === win2.right && this.left === this.monitor.left) ||
206
- (this.bottom === win2.top && this.bottom === this.monitor.bottom) ||
207
- (this.right === win2.left && this.right === this.monitor.right)))) {
208
- return sharedEdges;
209
- }
210
- const inRightTolerance = BoxMath.between({
211
- num: win2.right,
212
- min: this.left - tolerance,
213
- max: this.left + tolerance,
214
- inclusive: true,
215
- });
216
- const inLeftTolerance = BoxMath.between({
217
- num: win2.left,
218
- min: this.right - tolerance,
219
- max: this.right + tolerance,
220
- inclusive: true,
221
- });
222
- const inTopTolerance = BoxMath.between({
223
- num: win2.top,
224
- min: this.bottom - tolerance,
225
- max: this.bottom + tolerance,
226
- inclusive: true,
227
- });
228
- const inBottomTolerance = BoxMath.between({
229
- num: win2.bottom,
230
- min: this.top - tolerance,
231
- max: this.top + tolerance,
232
- inclusive: true,
233
- });
234
- if (inRightTolerance && win2.bottom > this.top - tolerance && win2.top < this.bottom + tolerance) {
235
- sharedEdges.left = true;
236
- }
237
- // if(600 > 0 && 300 < 300)
238
- if (inLeftTolerance && win2.bottom > this.top - tolerance && win2.top < this.bottom + tolerance) {
239
- sharedEdges.right = true;
240
- }
241
- if (inBottomTolerance && win2.left < this.right + tolerance && win2.right > this.left - tolerance) {
242
- sharedEdges.top = true;
243
- }
244
- if (inTopTolerance && win2.left < this.right + tolerance && win2.right > this.left - tolerance) {
245
- sharedEdges.bottom = true;
246
- }
247
- return sharedEdges;
248
- }
249
- /**
250
- * @function getSharedCorners Determines if another window has corners to which our window may snap/dock
251
- * @param {type} win2 {description} * @param {Window} win2 Window proxy (movement object) of other window to which our window may snap/dock
252
- * @return {type} {description} * @return {object} Object describing shared corners, including original vertices (topLeft, topRight, bottomRight, bottomLeft),
253
- * and amended vertices (rightTop, rightBottom, leftTop, leftBottom) to indicate shared tops or bottoms on
254
- * on the left or right.
255
- */
256
- getSharedCorners(win2) {
257
- var _a, _b, _c, _d;
258
- const sharedCorners = {
259
- // Matched corners
260
- topLeft: false,
261
- topRight: false,
262
- bottomLeft: false,
263
- bottomRight: false,
264
- // Adjoined corners
265
- rightTop: false,
266
- rightBottom: false,
267
- leftTop: false,
268
- leftBottom: false,
269
- };
270
- // Are we intersecting at all?
271
- const intersection = win2.windowBoundingBox &&
272
- !BoxMath.intersectBoundingBoxes(this.innerBuffer, win2.windowBoundingBox) &&
273
- BoxMath.intersectBoundingBoxes(this.buffer, win2.windowBoundingBox);
274
- // If not, then return all corners false
275
- if (!intersection)
276
- return sharedCorners;
277
- // Are we snapping exactly on a monitor boundary?
278
- // +--------------------------------+
279
- // | Monitor2 |
280
- // | |
281
- // | +---------+ |
282
- // | | | |
283
- // | | Win2 | |
284
- // | | | |
285
- // +--------------------------------+
286
- // | | | |
287
- // | | MyWindow| |
288
- // | | | |
289
- // | +---------+ |
290
- // | Monitor1 |
291
- // | |
292
- // +--------------------------------+
293
- // e.g. (see above) if top of my window is snapped to bottom of the other window and the top of my other window is the top
294
- // of the monitor
295
- const onTopMonitorBoundary = this.top === win2.bottom && this.top === ((_a = this.monitor) === null || _a === void 0 ? void 0 : _a.top);
296
- const onLeftMonitorBoudnary = this.left === win2.right && this.left === ((_b = this.monitor) === null || _b === void 0 ? void 0 : _b.left);
297
- const onBottomMonitorBoundary = this.bottom === win2.top && this.bottom === ((_c = this.monitor) === null || _c === void 0 ? void 0 : _c.bottom);
298
- const onRightMonitorBoundary = this.right === win2.left && this.right === ((_d = this.monitor) === null || _d === void 0 ? void 0 : _d.right);
299
- const onAnyMonitorBoundary = onTopMonitorBoundary || onLeftMonitorBoudnary || onBottomMonitorBoundary || onRightMonitorBoundary;
300
- // If so, return all corners false because the window will be snapped to the monitor boundary.
301
- if (onAnyMonitorBoundary)
302
- return sharedCorners;
303
- const isSameCorner = (c1, c2) => c1.x === c2.x && c1.y === c2.y;
304
- // Set any matched corners between the two windows to true
305
- const myCorners = BoxMath.getVertices(this.getBounds());
306
- const theirCorners = BoxMath.getVertices(win2);
307
- myCorners.forEach((ourCorner) => {
308
- theirCorners.forEach((theirCorner) => {
309
- sharedCorners[ourCorner.label] = isSameCorner(ourCorner, theirCorner);
310
- });
311
- });
312
- // Win1's X1,Y0 is adjoined to Win2's X0,Y0
313
- // +---------------------------+
314
- // | |
315
- // | +--------+---------+ |
316
- // | | | | |
317
- // | | Win1 | Win2 | |
318
- // | | | | |
319
- // +---------------------------+
320
- const right = this.right === win2.left || this.right === win2.right; // second half of this conditional doesn't seem correct
321
- const left = this.left === win2.right || this.left === win2.left; // second half of this conditional doesn't seem correct
322
- const sharedTop = this.top === win2.top;
323
- const sharedBottom = this.bottom === win2.bottom;
324
- return Object.assign(Object.assign({}, sharedCorners), { rightTop: right && sharedTop, rightBottom: right && sharedBottom, leftBottom: left && sharedBottom, leftTop: left && sharedTop });
325
- }
326
- /**
327
- * @function {function name}
328
- * @return {type} {description}
329
- */
330
- getBounds() {
331
- return {
332
- left: this.left,
333
- right: this.right,
334
- top: this.top,
335
- bottom: this.bottom,
336
- width: this.width,
337
- height: this.height,
338
- };
339
- }
340
- /**
341
- * @function {function name}
342
- * @param {type} req {description}
343
- * @return {type} {description}
344
- */
345
- getCornerObject(req) {
346
- const corners = {};
347
- const vertices = BoxMath.getVertices(req);
348
- for (let i = 0; i < vertices.length; i++) {
349
- const corner = vertices[i];
350
- corners[corner.label] = corner;
351
- }
352
- return corners;
353
- }
354
- /**
355
- * @function {function name}
356
- * @param {type} mouse {description}
357
- * @return {type} {description}
358
- */
359
- getGrabbedEdge(mouse) {
360
- const tolerance = 15;
361
- const mouseBox = {
362
- min: {
363
- x: mouse.x - tolerance,
364
- y: mouse.y - tolerance,
365
- },
366
- max: {
367
- x: mouse.x + tolerance,
368
- y: mouse.y + tolerance,
369
- },
370
- };
371
- const edges = ["top", "bottom", "left", "right"];
372
- for (let i = 0; i < edges.length; i++) {
373
- const edge = edges[i];
374
- if (BoxMath.intersectBoundingBoxes(mouseBox, this.snappingRegions[edge])) {
375
- return edge;
376
- }
377
- }
378
- return false;
379
- }
380
- computeResizeHandleFromMove(request) {
381
- if (request.top !== this.top) {
382
- if (request.right !== this.right) {
383
- return "topRight";
384
- }
385
- else if (request.left !== this.left) {
386
- return "topLeft";
387
- }
388
- return "top";
389
- }
390
- else if (request.right !== this.right) {
391
- if (request.bottom !== this.bottom) {
392
- return "bottomRight";
393
- }
394
- else if (request.top !== this.top) {
395
- return "topRight";
396
- }
397
- return "right";
398
- }
399
- else if (request.bottom !== this.bottom) {
400
- if (request.left !== this.left) {
401
- return "bottomLeft";
402
- }
403
- else if (request.right !== this.right) {
404
- return "bottomRight";
405
- }
406
- return "bottom";
407
- }
408
- else if (request.left !== this.left) {
409
- if (request.top !== this.top) {
410
- return "topLeft";
411
- }
412
- else if (request.bottom !== this.bottom) {
413
- return "bottomLeft";
414
- }
415
- return "left";
416
- }
417
- return null;
418
- }
419
- /**
420
- * @function {function name}
421
- * @param {type} request {description}
422
- * @return {type} {description}
423
- */
424
- getResizeHandle(request) {
425
- var _a;
426
- if (this.resizeHandle)
427
- return this.resizeHandle;
428
- let resizeHandle;
429
- if (request.mousePosition) {
430
- resizeHandle = (_a = this.getVertexByPoint(request.mousePosition, 15)) !== null && _a !== void 0 ? _a : this.getGrabbedEdge(request.mousePosition);
431
- }
432
- resizeHandle = resizeHandle !== null && resizeHandle !== void 0 ? resizeHandle : this.computeResizeHandleFromMove(request);
433
- if (resizeHandle && request.changeType !== 0) {
434
- // if we didn't find a resizeHandle, then no edges moved. Send last handle.
435
- this.resizeHandle = resizeHandle;
436
- }
437
- else if (!resizeHandle && request.changeType === 0) {
438
- resizeHandle = "top";
439
- }
440
- return resizeHandle;
441
- }
442
- /**
443
- * @function {function name}
444
- * @param {type} bufferSize {description}
445
- * @return {type} {description}
446
- */
447
- setBuffer(bufferSize) {
448
- if (bufferSize === undefined && this.bufferSize === null) {
449
- return;
450
- }
451
- if (bufferSize !== undefined) {
452
- this.bufferSize = bufferSize;
453
- }
454
- else {
455
- ({ bufferSize } = this);
456
- }
457
- this.buffer = {
458
- min: {
459
- x: this.left - bufferSize,
460
- y: this.top - bufferSize,
461
- },
462
- max: {
463
- x: this.right + bufferSize,
464
- y: this.bottom + bufferSize,
465
- },
466
- };
467
- }
468
- /**
469
- * @function {function name}
470
- * @return {type} {description}
471
- */
472
- setSnappingRegions() {
473
- this.snappingRegions = BoxMath.getSnappingRegions(this, this.bufferSize);
474
- }
475
- sharesACornerWith(win) {
476
- const sharedCorners = this.getSharedCorners(win);
477
- const corners = [
478
- "topLeft",
479
- "topRight",
480
- "rightTop",
481
- "leftTop",
482
- "bottomRight",
483
- "bottomLeft",
484
- "rightBottom",
485
- "leftBottom",
486
- ];
487
- for (let i = 0; i < corners.length; i++) {
488
- const corner = corners[i];
489
- if (sharedCorners[corner]) {
490
- return true;
491
- }
492
- }
493
- return false;
494
- }
495
- /**
496
- * @function {function name}
497
- * @param {type} win {description}
498
- * @return {type} {description}
499
- */
500
- sharesAnEdgeWith(win) {
501
- const sharedEdges = this.getSharedEdges(win);
502
- const edges = ["top", "right", "left", "bottom"];
503
- for (let i = 0; i < edges.length; i++) {
504
- const edge = edges[i];
505
- if (sharedEdges[edge]) {
506
- return true;
507
- }
508
- }
509
- return false;
510
- }
511
- /**
512
- * @function {function name}
513
- * @param {type} request {description}
514
- * @return {type} {description}
515
- */
516
- canSnapToWindow(request) {
517
- if (this.sharesAnEdgeWith(request)) {
518
- return true;
519
- }
520
- return (BoxMath.intersectBoundingBoxes(this.buffer, request.windowBoundingBox) &&
521
- !BoxMath.intersectBoundingBoxes(this.innerBuffer, request.windowBoundingBox));
522
- }
523
- }
524
- export default DockableBox;
525
- //# sourceMappingURL=dockableBox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dockableBox.js","sourceRoot":"","sources":["../../../../../../src/platform/services/window/Docking/dockableBox.ts"],"names":[],"mappings":"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"}