@finsemble/finsemble-ui 6.4.0-beta.1 → 6.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (755) hide show
  1. package/README.md +28 -28
  2. package/package.json +20 -19
  3. package/react/actions/favoriteActions.js.map +1 -1
  4. package/react/actions/linkerActions.js.map +1 -1
  5. package/react/actions/menuActions.js.map +1 -1
  6. package/react/actions/rootActions.js.map +1 -1
  7. package/react/actions/searchActions.js.map +1 -1
  8. package/react/actions/smartDesktopDesignerActions.d.ts +6 -2
  9. package/react/actions/smartDesktopDesignerActions.js +2 -0
  10. package/react/actions/smartDesktopDesignerActions.js.map +1 -1
  11. package/react/actions/toolbarActions.js.map +1 -1
  12. package/react/actions/workspaceActions.js.map +1 -1
  13. package/react/assets/css/advancedAppLauncher.css +636 -636
  14. package/react/assets/css/appCatalog.css +1069 -1069
  15. package/react/assets/css/authentication.css +78 -78
  16. package/react/assets/css/button.css +220 -220
  17. package/react/assets/css/core/formElements.css +23 -23
  18. package/react/assets/css/core/icons.css +69 -69
  19. package/react/assets/css/core/notifications.css +75 -75
  20. package/react/assets/css/core/windowFrame.css +36 -36
  21. package/react/assets/css/dashbar.css +78 -78
  22. package/react/assets/css/defaultTheme.css +356 -356
  23. package/react/assets/css/dialogs.css +158 -158
  24. package/react/assets/css/favorites.css +101 -101
  25. package/react/assets/css/finsemble.css +38 -38
  26. package/react/assets/css/focus.css +4 -4
  27. package/react/assets/css/font-finance.css +385 -385
  28. package/react/assets/css/fonts/Open_Sans/LICENSE.txt +202 -202
  29. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +118 -118
  30. package/react/assets/css/fonts/font-finance.svg +124 -124
  31. package/react/assets/css/fonts/icons-reference.html +1174 -1174
  32. package/react/assets/css/linkerWindow.css +124 -124
  33. package/react/assets/css/menus.css +195 -195
  34. package/react/assets/css/notificationsCenter.css +597 -597
  35. package/react/assets/css/processMonitor.css +213 -213
  36. package/react/assets/css/search.css +128 -128
  37. package/react/assets/css/shared/animations.css +99 -99
  38. package/react/assets/css/tags.css +136 -136
  39. package/react/assets/css/toolbar.css +413 -413
  40. package/react/assets/css/userPreferences.css +538 -538
  41. package/react/assets/css/windowTitleBar.css +653 -652
  42. package/react/assets/icons/always-on-top.svg +20 -0
  43. package/react/assets/icons/caret.svg +7 -7
  44. package/react/assets/icons/check-square.svg +5 -5
  45. package/react/assets/icons/check.svg +3 -3
  46. package/react/assets/icons/chevron-left.svg +3 -3
  47. package/react/assets/icons/chevron-right.svg +3 -3
  48. package/react/assets/icons/close.svg +11 -0
  49. package/react/assets/icons/code-block.svg +15 -0
  50. package/react/assets/icons/copy.svg +10 -10
  51. package/react/assets/icons/documentation.svg +20 -0
  52. package/react/assets/icons/exclamation-circle.svg +4 -4
  53. package/react/assets/icons/external-link.svg +12 -12
  54. package/react/assets/icons/flag.svg +10 -10
  55. package/react/assets/icons/folder.svg +3 -3
  56. package/react/assets/icons/font.svg +3 -3
  57. package/react/assets/icons/globe.svg +3 -3
  58. package/react/assets/icons/hdd.svg +9 -9
  59. package/react/assets/icons/key.svg +10 -10
  60. package/react/assets/icons/life-ring.svg +3 -3
  61. package/react/assets/icons/linker.svg +18 -0
  62. package/react/assets/icons/lock.svg +5 -5
  63. package/react/assets/icons/magic.svg +15 -15
  64. package/react/assets/icons/maximize.svg +16 -0
  65. package/react/assets/icons/minimize.svg +15 -0
  66. package/react/assets/icons/moon.svg +10 -10
  67. package/react/assets/icons/paint-roller.svg +3 -3
  68. package/react/assets/icons/pencil.svg +10 -10
  69. package/react/assets/icons/plus.svg +3 -3
  70. package/react/assets/icons/question-circle.svg +5 -5
  71. package/react/assets/icons/search.svg +3 -3
  72. package/react/assets/icons/sun.svg +9 -9
  73. package/react/assets/icons/times.svg +3 -3
  74. package/react/assets/icons/toggle-off.svg +6 -6
  75. package/react/assets/icons/toggle-on.svg +6 -6
  76. package/react/assets/icons/toolbar.svg +12 -12
  77. package/react/assets/icons/tools.svg +3 -3
  78. package/react/assets/icons/trash.svg +12 -12
  79. package/react/assets/icons/upload.svg +10 -10
  80. package/react/assets/icons/window.svg +3 -3
  81. package/react/assets/img/finsemble-display.png +0 -0
  82. package/react/componentTemplateGenerator.js +85 -85
  83. package/react/componentTemplateGenerator.js.map +1 -1
  84. package/react/components/FinsembleProvider.js.map +1 -1
  85. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  86. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  87. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  88. package/react/components/appCatalog/components/AppList.js.map +1 -1
  89. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  90. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  91. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  92. package/react/components/appCatalog/components/Hero.js.map +1 -1
  93. package/react/components/appCatalog/components/Home.js.map +1 -1
  94. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  95. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  96. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  97. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  98. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  99. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  100. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  101. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  102. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  103. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  104. package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
  105. package/react/components/appCatalog/components/Tag.js.map +1 -1
  106. package/react/components/appCatalog/components/Toast.js.map +1 -1
  107. package/react/components/appCatalog/components/helpers.js.map +1 -1
  108. package/react/components/appCatalog/index.js.map +1 -1
  109. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  110. package/react/components/appCatalog/modules/FDC3.d.ts +1 -1
  111. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  112. package/react/components/appCatalog/stores/appStore.d.ts +2 -2
  113. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  114. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  115. package/react/components/common/Accordion.js +1 -1
  116. package/react/components/common/Accordion.js.map +1 -1
  117. package/react/components/common/Button.js.map +1 -1
  118. package/react/components/common/ButtonIcon.js.map +1 -1
  119. package/react/components/common/ButtonRow.js.map +1 -1
  120. package/react/components/common/ButtonTile.js.map +1 -1
  121. package/react/components/common/Checkbox.js +1 -1
  122. package/react/components/common/Checkbox.js.map +1 -1
  123. package/react/components/common/ColorPicker.js.map +1 -1
  124. package/react/components/common/DropZone.js +3 -1
  125. package/react/components/common/DropZone.js.map +1 -1
  126. package/react/components/common/DropdownButton.js.map +1 -1
  127. package/react/components/common/FileInput.d.ts +2 -1
  128. package/react/components/common/FileInput.js +9 -4
  129. package/react/components/common/FileInput.js.map +1 -1
  130. package/react/components/common/FinsembleIcon.d.ts +1 -1
  131. package/react/components/common/FinsembleIcon.js +15 -1
  132. package/react/components/common/FinsembleIcon.js.map +1 -1
  133. package/react/components/common/FinsembleSelect.js +1 -1
  134. package/react/components/common/FinsembleSelect.js.map +1 -1
  135. package/react/components/common/FinsembleToggle.js.map +1 -1
  136. package/react/components/common/Header.js +3 -1
  137. package/react/components/common/Header.js.map +1 -1
  138. package/react/components/common/ImagePreview.js.map +1 -1
  139. package/react/components/common/InputTable.js.map +1 -1
  140. package/react/components/common/LoadingSpinner.js.map +1 -1
  141. package/react/components/common/Tab.js.map +1 -1
  142. package/react/components/common/Tooltip.js +3 -1
  143. package/react/components/common/Tooltip.js.map +1 -1
  144. package/react/components/common/css/accordion.css +99 -89
  145. package/react/components/common/css/application-edit-page.css +324 -223
  146. package/react/components/common/css/application-list.css +53 -47
  147. package/react/components/common/css/button.css +166 -166
  148. package/react/components/common/css/checkbox.css +30 -31
  149. package/react/components/common/css/color-picker.css +52 -52
  150. package/react/components/common/css/drop-zone.css +17 -17
  151. package/react/components/common/css/file-input.css +65 -49
  152. package/react/components/common/css/header.css +30 -32
  153. package/react/components/common/css/icon.css +13 -13
  154. package/react/components/common/css/image-preview.css +57 -57
  155. package/react/components/common/css/loading-spinner.css +39 -39
  156. package/react/components/common/css/preload-edit-page.css +37 -0
  157. package/react/components/common/css/selector.css +51 -51
  158. package/react/components/common/css/styles.css +127 -128
  159. package/react/components/common/css/tab.css +56 -56
  160. package/react/components/common/css/toggle.css +32 -32
  161. package/react/components/common/css/tooltip.css +78 -78
  162. package/react/components/common/file_helpers.js.map +1 -1
  163. package/react/components/common/fixtures/FinsembleIcon.css +4 -4
  164. package/react/components/common/helpers.js.map +1 -1
  165. package/react/components/common/stories/Accordion.stories.js.map +1 -1
  166. package/react/components/common/stories/Button.stories.js.map +1 -1
  167. package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
  168. package/react/components/common/stories/ButtonRow.stories.js.map +1 -1
  169. package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
  170. package/react/components/common/stories/Checkbox.stories.js.map +1 -1
  171. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  172. package/react/components/common/stories/DropZone.stories.js.map +1 -1
  173. package/react/components/common/stories/DropdownButton.stories.js.map +1 -1
  174. package/react/components/common/stories/FileInput.stories.d.ts +2 -1
  175. package/react/components/common/stories/FileInput.stories.js +6 -0
  176. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  177. package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
  178. package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
  179. package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
  180. package/react/components/common/stories/Header.stories.js.map +1 -1
  181. package/react/components/common/stories/ImagePreview.stories.js.map +1 -1
  182. package/react/components/common/stories/InputTable.stories.js.map +1 -1
  183. package/react/components/common/stories/LoadingSpinner.stories.js.map +1 -1
  184. package/react/components/common/stories/Tab.stories.js.map +1 -1
  185. package/react/components/common/stories/Tooltip.stories.js.map +1 -1
  186. package/react/components/common/tests/Accordion.spec.js.map +1 -1
  187. package/react/components/common/tests/ButtonRow.spec.js.map +1 -1
  188. package/react/components/common/tests/Checkbox.spec.js.map +1 -1
  189. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  190. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  191. package/react/components/common/tests/FileInput.spec.js +20 -5
  192. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  193. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  194. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  195. package/react/components/common/tests/Header.spec.js +6 -2
  196. package/react/components/common/tests/Header.spec.js.map +1 -1
  197. package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
  198. package/react/components/common/tests/InputTable.spec.js.map +1 -1
  199. package/react/components/common/tests/Tab.spec.js.map +1 -1
  200. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  201. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  202. package/react/components/favorites/FavoritesShell.js.map +1 -1
  203. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  204. package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
  205. package/react/components/favorites/index.js.map +1 -1
  206. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  207. package/react/components/fdc3Resolver/ResolverDialog.css +126 -126
  208. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  209. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  210. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  211. package/react/components/icon/Icon.js.map +1 -1
  212. package/react/components/icon/index.js.map +1 -1
  213. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  214. package/react/components/legacyControls/FinsembleDialogButton.js +1 -1
  215. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  216. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  217. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  218. package/react/components/legacyControls/FinsembleDnDContext.d.ts +2 -1
  219. package/react/components/legacyControls/FinsembleDnDContext.js +8 -6
  220. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  221. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  222. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  223. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  224. package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
  225. package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
  226. package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
  227. package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
  228. package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
  229. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  230. package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
  231. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  232. package/react/components/linker/LinkerMenu.js.map +1 -1
  233. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  234. package/react/components/linker/index.js.map +1 -1
  235. package/react/components/linker/remoteRedux.d.ts +1 -1
  236. package/react/components/linker/remoteRedux.js.map +1 -1
  237. package/react/components/menu/Menu.d.ts +1 -0
  238. package/react/components/menu/Menu.js.map +1 -1
  239. package/react/components/menu/MenuAutoResizer.d.ts +2 -1
  240. package/react/components/menu/MenuAutoResizer.js +3 -2
  241. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  242. package/react/components/menu/MenuContent.js.map +1 -1
  243. package/react/components/menu/MenuHotKey.js.map +1 -1
  244. package/react/components/menu/MenuItem.js.map +1 -1
  245. package/react/components/menu/MenuPortal.js +118 -92
  246. package/react/components/menu/MenuPortal.js.map +1 -1
  247. package/react/components/menu/MenuShell.d.ts +1 -0
  248. package/react/components/menu/MenuShell.js +3 -2
  249. package/react/components/menu/MenuShell.js.map +1 -1
  250. package/react/components/menu/MenuToggle.js.map +1 -1
  251. package/react/components/menu/index.js.map +1 -1
  252. package/react/components/menu/keyboardNavigation.js.map +1 -1
  253. package/react/components/menu/menuContext.d.ts +1 -0
  254. package/react/components/menu/menuContext.js.map +1 -1
  255. package/react/components/menu/menuHelpers.d.ts +1 -1
  256. package/react/components/menu/menuHelpers.js +2 -2
  257. package/react/components/menu/menuHelpers.js.map +1 -1
  258. package/react/components/notifications/components/NoNotifications.js.map +1 -1
  259. package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
  260. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  261. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  262. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  263. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js +20 -27
  264. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  265. package/react/components/notifications/components/shared/CheckButton.d.ts +1 -1
  266. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  267. package/react/components/notifications/components/shared/IconButton.js.map +1 -1
  268. package/react/components/notifications/components/shared/NotificationCardShell.d.ts +1 -1
  269. package/react/components/notifications/components/shared/NotificationCardShell.js +1 -1
  270. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  271. package/react/components/notifications/components/shared/OverflowMenu.d.ts +1 -1
  272. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  273. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.d.ts +1 -1
  274. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
  275. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyContentLogo.js.map +1 -1
  276. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.d.ts +1 -1
  277. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
  278. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.d.ts +1 -1
  279. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
  280. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderLogo.js.map +1 -1
  281. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.d.ts +1 -1
  282. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
  283. package/react/components/notifications/components/views/CardView.js.map +1 -1
  284. package/react/components/notifications/components/views/ListView.d.ts +1 -1
  285. package/react/components/notifications/components/views/ListView.js +1 -1
  286. package/react/components/notifications/components/views/ListView.js.map +1 -1
  287. package/react/components/notifications/components/views/NotificationDetailsView.d.ts +1 -1
  288. package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
  289. package/react/components/notifications/constants.js.map +1 -1
  290. package/react/components/notifications/icons/Card.js.map +1 -1
  291. package/react/components/notifications/icons/Chevron.js.map +1 -1
  292. package/react/components/notifications/icons/CloseIcon.js.map +1 -1
  293. package/react/components/notifications/icons/EnvelopeClose.js.map +1 -1
  294. package/react/components/notifications/icons/EnvelopeOpen.js.map +1 -1
  295. package/react/components/notifications/icons/SnoozeIcon.js.map +1 -1
  296. package/react/components/notifications/index.js.map +1 -1
  297. package/react/components/notifications/notificationsContext.js.map +1 -1
  298. package/react/components/notifications/types.d.ts +1 -1
  299. package/react/components/notifications/types.js.map +1 -1
  300. package/react/components/notifications/utils.d.ts +1 -1
  301. package/react/components/notifications/utils.js.map +1 -1
  302. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  303. package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
  304. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  305. package/react/components/processMonitor/components/ListHeader.d.ts +1 -1
  306. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  307. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  308. package/react/components/processMonitor/constants.js.map +1 -1
  309. package/react/components/processMonitor/helpers.js.map +1 -1
  310. package/react/components/processMonitor/helpers.spec.js.map +1 -1
  311. package/react/components/processMonitor/index.js.map +1 -1
  312. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +4 -3
  313. package/react/components/processMonitor/stores/ProcessMonitorStore.js +51 -50
  314. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  315. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  316. package/react/components/quickComponentForm/index.js.map +1 -1
  317. package/react/components/quickComponentForm/quickComponent.css +3 -3
  318. package/react/components/search/Highlight.js.map +1 -1
  319. package/react/components/search/Highlight.spec.js.map +1 -1
  320. package/react/components/search/Highlight.stories.js.map +1 -1
  321. package/react/components/search/Search.js.map +1 -1
  322. package/react/components/search/SearchBestMatch.js.map +1 -1
  323. package/react/components/search/SearchInput.js.map +1 -1
  324. package/react/components/search/SearchProviderResults.js.map +1 -1
  325. package/react/components/search/SearchResult.js +4 -3
  326. package/react/components/search/SearchResult.js.map +1 -1
  327. package/react/components/search/SearchResults.js.map +1 -1
  328. package/react/components/search/index.js.map +1 -1
  329. package/react/components/shared/Animate.js.map +1 -1
  330. package/react/components/shared/BellIcon.js.map +1 -1
  331. package/react/components/shared/BellIconCrossed.js.map +1 -1
  332. package/react/components/shared/Button.js.map +1 -1
  333. package/react/components/shared/ConditionalWrapper.js.map +1 -1
  334. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  335. package/react/components/shared/NavigationButton.js.map +1 -1
  336. package/react/components/shared/Tag.js.map +1 -1
  337. package/react/components/shared/TagsMenu.js.map +1 -1
  338. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  339. package/react/components/shared/linkerUtil.js.map +1 -1
  340. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  341. package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
  342. package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
  343. package/react/components/shared/validateURL.js.map +1 -1
  344. package/react/components/shared/validateURL.spec.js.map +1 -1
  345. package/react/components/singleInputDialog/SingleInputDialog.css +3 -3
  346. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  347. package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
  348. package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
  349. package/react/components/singleInputDialog/index.js.map +1 -1
  350. package/react/components/smartDesktopDesigner/AddApp.d.ts +2 -2
  351. package/react/components/smartDesktopDesigner/AddApp.js +28 -17
  352. package/react/components/smartDesktopDesigner/AddApp.js.map +1 -1
  353. package/react/components/smartDesktopDesigner/AppEditAccess.js.map +1 -1
  354. package/react/components/smartDesktopDesigner/AppEditPage.d.ts +2 -2
  355. package/react/components/smartDesktopDesigner/AppEditPage.js +311 -242
  356. package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
  357. package/react/components/smartDesktopDesigner/Appearance.css +35 -28
  358. package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +1 -1
  359. package/react/components/smartDesktopDesigner/Appearance.js +1 -1
  360. package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
  361. package/react/components/smartDesktopDesigner/Application.d.ts +10 -3
  362. package/react/components/smartDesktopDesigner/Application.js +37 -44
  363. package/react/components/smartDesktopDesigner/Application.js.map +1 -1
  364. package/react/components/smartDesktopDesigner/Applications.d.ts +2 -0
  365. package/react/components/smartDesktopDesigner/Applications.js +29 -20
  366. package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
  367. package/react/components/smartDesktopDesigner/AssetsPage.css +26 -26
  368. package/react/components/smartDesktopDesigner/AssetsPage.js.map +1 -1
  369. package/react/components/smartDesktopDesigner/Authentication.js +2 -9
  370. package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
  371. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js +1 -1
  372. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
  373. package/react/components/smartDesktopDesigner/Content.js.map +1 -1
  374. package/react/components/smartDesktopDesigner/ContentHeader.d.ts +5 -0
  375. package/react/components/smartDesktopDesigner/ContentHeader.js +10 -0
  376. package/react/components/smartDesktopDesigner/ContentHeader.js.map +1 -0
  377. package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
  378. package/react/components/smartDesktopDesigner/EditPreload.d.ts +14 -0
  379. package/react/components/smartDesktopDesigner/EditPreload.js +169 -0
  380. package/react/components/smartDesktopDesigner/EditPreload.js.map +1 -0
  381. package/react/components/smartDesktopDesigner/Export.js +5 -5
  382. package/react/components/smartDesktopDesigner/Export.js.map +1 -1
  383. package/react/components/smartDesktopDesigner/ExportCloud.d.ts +3 -1
  384. package/react/components/smartDesktopDesigner/ExportCloud.js +4 -4
  385. package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
  386. package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
  387. package/react/components/smartDesktopDesigner/ExportZip.d.ts +3 -1
  388. package/react/components/smartDesktopDesigner/ExportZip.js +8 -3
  389. package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
  390. package/react/components/smartDesktopDesigner/GettingStarted.d.ts +1 -0
  391. package/react/components/smartDesktopDesigner/GettingStarted.js +11 -22
  392. package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
  393. package/react/components/smartDesktopDesigner/ItemList.d.ts +17 -0
  394. package/react/components/smartDesktopDesigner/ItemList.js +58 -0
  395. package/react/components/smartDesktopDesigner/ItemList.js.map +1 -0
  396. package/react/components/smartDesktopDesigner/Navigation.js.map +1 -1
  397. package/react/components/smartDesktopDesigner/OptionalSettingsView.d.ts +11 -0
  398. package/react/components/smartDesktopDesigner/OptionalSettingsView.js +71 -0
  399. package/react/components/smartDesktopDesigner/OptionalSettingsView.js.map +1 -0
  400. package/react/components/smartDesktopDesigner/Preloads.d.ts +8 -0
  401. package/react/components/smartDesktopDesigner/Preloads.js +26 -0
  402. package/react/components/smartDesktopDesigner/Preloads.js.map +1 -0
  403. package/react/components/smartDesktopDesigner/ProjectErrors.js.map +1 -1
  404. package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
  405. package/react/components/smartDesktopDesigner/PublishProgress.js.map +1 -1
  406. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.d.ts +1 -1
  407. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +34 -3
  408. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  409. package/react/components/smartDesktopDesigner/ThemePage.css +109 -109
  410. package/react/components/smartDesktopDesigner/ThemePage.js +0 -7
  411. package/react/components/smartDesktopDesigner/ThemePage.js.map +1 -1
  412. package/react/components/smartDesktopDesigner/Themes.js +0 -2
  413. package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
  414. package/react/components/smartDesktopDesigner/Toolbar.js +16 -18
  415. package/react/components/smartDesktopDesigner/Toolbar.js.map +1 -1
  416. package/react/components/smartDesktopDesigner/View.js +1 -1
  417. package/react/components/smartDesktopDesigner/View.js.map +1 -1
  418. package/react/components/smartDesktopDesigner/common/fsbl_functions.d.ts +1 -1
  419. package/react/components/smartDesktopDesigner/common/fsbl_functions.js +2 -2
  420. package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +1 -1
  421. package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
  422. package/react/components/smartDesktopDesigner/common/views.js +27 -3
  423. package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
  424. package/react/components/smartDesktopDesigner/css/appearance.css +21 -18
  425. package/react/components/smartDesktopDesigner/css/applications.css +167 -167
  426. package/react/components/smartDesktopDesigner/css/authentication.css +119 -130
  427. package/react/components/smartDesktopDesigner/css/buttons.css +12 -12
  428. package/react/components/smartDesktopDesigner/css/export.css +176 -167
  429. package/react/components/smartDesktopDesigner/css/getting-started.css +28 -8
  430. package/react/components/smartDesktopDesigner/css/nav.css +120 -109
  431. package/react/components/smartDesktopDesigner/css/project-errors.css +15 -15
  432. package/react/components/smartDesktopDesigner/css/project-header.css +124 -121
  433. package/react/components/smartDesktopDesigner/css/styles.css +178 -179
  434. package/react/components/smartDesktopDesigner/css/views.css +23 -17
  435. package/react/components/smartDesktopDesigner/fixtures/apps.d.ts +1 -1
  436. package/react/components/smartDesktopDesigner/fixtures/apps.js +23 -1
  437. package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
  438. package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
  439. package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +1 -1
  440. package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
  441. package/react/components/smartDesktopDesigner/fixtures/preloads.d.ts +22 -0
  442. package/react/components/smartDesktopDesigner/fixtures/preloads.js +40 -0
  443. package/react/components/smartDesktopDesigner/fixtures/preloads.js.map +1 -0
  444. package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +1 -1
  445. package/react/components/smartDesktopDesigner/fixtures/publishProgress.d.ts +1 -1
  446. package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
  447. package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
  448. package/react/components/smartDesktopDesigner/fixtures/views.js +14 -6
  449. package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
  450. package/react/components/smartDesktopDesigner/sdd_helpers.js +1 -1
  451. package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
  452. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.d.ts +2 -1
  453. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js +2 -0
  454. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
  455. package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
  456. package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
  457. package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +1 -1
  458. package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
  459. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.d.ts +10 -0
  460. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.js +13 -0
  461. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.js.map +1 -0
  462. package/react/components/smartDesktopDesigner/stories/EditPreload.stories.d.ts +11 -0
  463. package/react/components/smartDesktopDesigner/stories/EditPreload.stories.js +35 -0
  464. package/react/components/smartDesktopDesigner/stories/EditPreload.stories.js.map +1 -0
  465. package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
  466. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.d.ts +1 -1
  467. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js +1 -1
  468. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
  469. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.d.ts +1 -1
  470. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js +1 -1
  471. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
  472. package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
  473. package/react/components/smartDesktopDesigner/stories/ItemList.stories.d.ts +16 -0
  474. package/react/components/smartDesktopDesigner/stories/{ApplicationList.stories.js → ItemList.stories.js} +30 -23
  475. package/react/components/smartDesktopDesigner/stories/ItemList.stories.js.map +1 -0
  476. package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
  477. package/react/components/smartDesktopDesigner/stories/OptionalSettingsView.stories.d.ts +11 -0
  478. package/react/components/smartDesktopDesigner/stories/OptionalSettingsView.stories.js +28 -0
  479. package/react/components/smartDesktopDesigner/stories/OptionalSettingsView.stories.js.map +1 -0
  480. package/react/components/smartDesktopDesigner/stories/Preloads.stories.d.ts +11 -0
  481. package/react/components/smartDesktopDesigner/stories/Preloads.stories.js +31 -0
  482. package/react/components/smartDesktopDesigner/stories/Preloads.stories.js.map +1 -0
  483. package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
  484. package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
  485. package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
  486. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js +7 -1
  487. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
  488. package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +1 -1
  489. package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
  490. package/react/components/smartDesktopDesigner/stories/Toolbar.stories.js.map +1 -1
  491. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js +1100 -311
  492. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
  493. package/react/components/smartDesktopDesigner/tests/{ApplicationList.spec.d.ts → Application.spec.d.ts} +0 -0
  494. package/react/components/smartDesktopDesigner/tests/Application.spec.js +1496 -0
  495. package/react/components/smartDesktopDesigner/tests/Application.spec.js.map +1 -0
  496. package/react/components/smartDesktopDesigner/tests/Applications.spec.d.ts +1 -1
  497. package/react/components/smartDesktopDesigner/tests/Applications.spec.js +94 -7
  498. package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
  499. package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
  500. package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.d.ts +1 -0
  501. package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.js +31 -0
  502. package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.js.map +1 -0
  503. package/react/components/smartDesktopDesigner/tests/EditPreload.spec.d.ts +1 -0
  504. package/react/components/smartDesktopDesigner/tests/EditPreload.spec.js +61 -0
  505. package/react/components/smartDesktopDesigner/tests/EditPreload.spec.js.map +1 -0
  506. package/react/components/smartDesktopDesigner/tests/Export.spec.js +95 -0
  507. package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
  508. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js +7 -0
  509. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
  510. package/react/components/smartDesktopDesigner/tests/ItemList.spec.d.ts +1 -0
  511. package/react/components/smartDesktopDesigner/tests/{ApplicationList.spec.js → ItemList.spec.js} +8 -8
  512. package/react/components/smartDesktopDesigner/tests/ItemList.spec.js.map +1 -0
  513. package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
  514. package/react/components/smartDesktopDesigner/tests/Preloads.spec.d.ts +1 -0
  515. package/react/components/smartDesktopDesigner/tests/Preloads.spec.js +47 -0
  516. package/react/components/smartDesktopDesigner/tests/Preloads.spec.js.map +1 -0
  517. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js +1 -1
  518. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
  519. package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
  520. package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
  521. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js +7 -30
  522. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
  523. package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
  524. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.d.ts +1 -1
  525. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.js +5 -6
  526. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.js.map +1 -1
  527. package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
  528. package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.js +1 -0
  529. package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.js.map +1 -1
  530. package/react/components/smartDesktopDesigner/themeDefinitions.js.map +1 -1
  531. package/react/components/system/System.js.map +1 -1
  532. package/react/components/system/System.spec.js.map +1 -1
  533. package/react/components/system/System.stories.js.map +1 -1
  534. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  535. package/react/components/system/index.js.map +1 -1
  536. package/react/components/toolbar/AutoArrange.js.map +1 -1
  537. package/react/components/toolbar/DragHandle.js.map +1 -1
  538. package/react/components/toolbar/DragHandle.spec.d.ts +1 -0
  539. package/react/components/toolbar/DragHandle.spec.js +31 -0
  540. package/react/components/toolbar/DragHandle.spec.js.map +1 -0
  541. package/react/components/toolbar/DragHandle.stories.d.ts +13 -0
  542. package/react/components/toolbar/DragHandle.stories.js +39 -0
  543. package/react/components/toolbar/DragHandle.stories.js.map +1 -0
  544. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  545. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  546. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  547. package/react/components/toolbar/NotificationControl.js.map +1 -1
  548. package/react/components/toolbar/RevealAll.js.map +1 -1
  549. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  550. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  551. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  552. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  553. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  554. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.d.ts +1 -1
  555. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  556. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
  557. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  558. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  559. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  560. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  561. package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
  562. package/react/components/toolbar/advancedAppLauncher/components/Content.d.ts +1 -1
  563. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  564. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  565. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.d.ts +1 -1
  566. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js +47 -45
  567. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  568. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  569. package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
  570. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  571. package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
  572. package/react/components/toolbar/advancedAppLauncher/components/TagsList.d.ts +1 -1
  573. package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
  574. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  575. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  576. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  577. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  578. package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.d.ts +2 -2
  579. package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
  580. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  581. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  582. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  583. package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
  584. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.d.ts +1 -0
  585. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  586. package/react/components/toolbar/appLauncher/appLauncher.css +30 -30
  587. package/react/components/toolbar/appLauncher/components/componentList.d.ts +2 -2
  588. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  589. package/react/components/toolbar/appLauncher/stores/appLauncherStore.d.ts +3 -2
  590. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js +17 -34
  591. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  592. package/react/components/toolbar/dashbar/Dashbar.js +9 -12
  593. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  594. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  595. package/react/components/toolbar/index.js.map +1 -1
  596. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.d.ts +2 -2
  597. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  598. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.d.ts +1 -1
  599. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  600. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  601. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.d.ts +1 -1
  602. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  603. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.d.ts +4 -4
  604. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js +1 -1
  605. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  606. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +90 -90
  607. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  608. package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -1
  609. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  610. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  611. package/react/components/userPreferences/UserPreferencesWrapper.js.map +1 -1
  612. package/react/components/userPreferences/components/ContentSection.js.map +1 -1
  613. package/react/components/userPreferences/components/LeftNav.js.map +1 -1
  614. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  615. package/react/components/userPreferences/components/content/DashbarEditorItem.js.map +1 -1
  616. package/react/components/userPreferences/components/content/General.js.map +1 -1
  617. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  618. package/react/components/userPreferences/components/content/Workspaces.d.ts +1 -1
  619. package/react/components/userPreferences/components/content/Workspaces.js +1 -1
  620. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  621. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  622. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  623. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  624. package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
  625. package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
  626. package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
  627. package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js.map +1 -1
  628. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
  629. package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js.map +1 -1
  630. package/react/components/userPreferences/index.js.map +1 -1
  631. package/react/components/userPreferences/stores/UserPreferencesStore.d.ts +1 -1
  632. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  633. package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
  634. package/react/components/userPreferences/stories/DashbarEditorItem.stories.js.map +1 -1
  635. package/react/components/userPreferences/stories/General.stories.js.map +1 -1
  636. package/react/components/userPreferences/stories/Notifications.stories.js.map +1 -1
  637. package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js.map +1 -1
  638. package/react/components/userPreferences/stories/NotificationsSources.stories.js.map +1 -1
  639. package/react/components/userPreferences/stories/UserPreferences.stories.js.map +1 -1
  640. package/react/components/userPreferences/stories/WorkspaceButton.stories.js.map +1 -1
  641. package/react/components/userPreferences/stories/WorkspaceComponents.stories.js.map +1 -1
  642. package/react/components/userPreferences/stories/WorkspaceItem.stories.js.map +1 -1
  643. package/react/components/userPreferences/stories/WorkspaceItemList.stories.js.map +1 -1
  644. package/react/components/userPreferences/stories/Workspaces.stories.js.map +1 -1
  645. package/react/components/userPreferences/tests/ContentSection.spec.js.map +1 -1
  646. package/react/components/userPreferences/tests/DashbarEditor.spec.js.map +1 -1
  647. package/react/components/userPreferences/tests/DashbarEditorItem.spec.js.map +1 -1
  648. package/react/components/userPreferences/tests/General.spec.js.map +1 -1
  649. package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
  650. package/react/components/userPreferences/tests/NotificationSourceTypes.spec.js.map +1 -1
  651. package/react/components/userPreferences/tests/Notifications.spec.js.map +1 -1
  652. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
  653. package/react/components/userPreferences/tests/NotificationsSourcesPreferences.spec.js.map +1 -1
  654. package/react/components/userPreferences/tests/ScheduledRestart.spec.js +1 -1
  655. package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +1 -1
  656. package/react/components/userPreferences/tests/WorkspaceButton.spec.js.map +1 -1
  657. package/react/components/userPreferences/tests/WorkspaceComponents.spec.js.map +1 -1
  658. package/react/components/userPreferences/tests/WorkspaceItem.spec.js.map +1 -1
  659. package/react/components/userPreferences/tests/WorkspaceItemList.spec.js.map +1 -1
  660. package/react/components/utils.js.map +1 -1
  661. package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +4 -2
  662. package/react/components/windowTitleBar/WindowTitleBarShell.js +60 -59
  663. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  664. package/react/components/windowTitleBar/components/center/Tab.d.ts +0 -1
  665. package/react/components/windowTitleBar/components/center/Tab.js +2 -2
  666. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  667. package/react/components/windowTitleBar/components/center/TabList.d.ts +2 -3
  668. package/react/components/windowTitleBar/components/center/TabList.js +19 -82
  669. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  670. package/react/components/windowTitleBar/components/center/TabRegion.js.map +1 -1
  671. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  672. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  673. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  674. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  675. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  676. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  677. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  678. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  679. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +7 -0
  680. package/react/components/windowTitleBar/components/right/MaximizeButton.js +8 -2
  681. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  682. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  683. package/react/components/windowTitleBar/components/windowTitle.d.ts +9 -6
  684. package/react/components/windowTitleBar/components/windowTitle.js +154 -45
  685. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  686. package/react/components/windowTitleBar/index.js.map +1 -1
  687. package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts +3 -3
  688. package/react/components/windowTitleBar/stores/windowTitleBarStore.js +213 -217
  689. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  690. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
  691. package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
  692. package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
  693. package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
  694. package/react/components/yesNoDialog/YesNoDialog.css +3 -3
  695. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  696. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  697. package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
  698. package/react/components/yesNoDialog/index.js.map +1 -1
  699. package/react/components/yesNoDialog/timer.js.map +1 -1
  700. package/react/enzymeSetup.js.map +1 -1
  701. package/react/hooks/index.js.map +1 -1
  702. package/react/hooks/useAuth.js.map +1 -1
  703. package/react/hooks/useDashbar.js.map +1 -1
  704. package/react/hooks/useDeepEffect.js.map +1 -1
  705. package/react/hooks/useFavorites.js.map +1 -1
  706. package/react/hooks/useFavoritesShell.js.map +1 -1
  707. package/react/hooks/useHotkey.js.map +1 -1
  708. package/react/hooks/useLinker.js.map +1 -1
  709. package/react/hooks/useMenu.js.map +1 -1
  710. package/react/hooks/useNotifications.d.ts +1 -1
  711. package/react/hooks/useNotifications.js.map +1 -1
  712. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  713. package/react/hooks/usePubSub.js.map +1 -1
  714. package/react/hooks/useSearch.js.map +1 -1
  715. package/react/hooks/useToolbar.js.map +1 -1
  716. package/react/hooks/useWorkspace.js.map +1 -1
  717. package/react/reducers/favoriteReducer.js.map +1 -1
  718. package/react/reducers/linkerReducer.js.map +1 -1
  719. package/react/reducers/menuReducer.js.map +1 -1
  720. package/react/reducers/rootReducer.d.ts +11 -3
  721. package/react/reducers/rootReducer.js.map +1 -1
  722. package/react/reducers/searchReducer.js.map +1 -1
  723. package/react/reducers/smartDesktopDesignerReducer.js +8 -0
  724. package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
  725. package/react/reducers/toolbarReducer.js.map +1 -1
  726. package/react/reducers/workspaceReducer.js.map +1 -1
  727. package/react/store.d.ts +22 -6
  728. package/react/store.js.map +1 -1
  729. package/react/types/advancedAppLauncherTypes.js.map +1 -1
  730. package/react/types/dashbarTypes.js.map +1 -1
  731. package/react/types/favoriteTypes.js.map +1 -1
  732. package/react/types/fdc3.d.ts +2 -2
  733. package/react/types/fdc3.js.map +1 -1
  734. package/react/types/hotkeyTypes.js.map +1 -1
  735. package/react/types/iconTypes.js.map +1 -1
  736. package/react/types/linkerTypes.js.map +1 -1
  737. package/react/types/searchTypes.d.ts +1 -8
  738. package/react/types/searchTypes.js.map +1 -1
  739. package/react/types/smartDesktopDesignerTypes.d.ts +8 -2
  740. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  741. package/react/types/windowTitleBar.d.ts +4 -2
  742. package/react/types/windowTitleBar.js.map +1 -1
  743. package/react/types/workspaceTypes.js.map +1 -1
  744. package/react/components/common/FontSizeSelector.d.ts +0 -7
  745. package/react/components/common/FontSizeSelector.js +0 -42
  746. package/react/components/common/FontSizeSelector.js.map +0 -1
  747. package/react/components/common/stories/FontSizeSelector.stories.d.ts +0 -12
  748. package/react/components/common/stories/FontSizeSelector.stories.js +0 -24
  749. package/react/components/common/stories/FontSizeSelector.stories.js.map +0 -1
  750. package/react/components/smartDesktopDesigner/ApplicationList.d.ts +0 -15
  751. package/react/components/smartDesktopDesigner/ApplicationList.js +0 -56
  752. package/react/components/smartDesktopDesigner/ApplicationList.js.map +0 -1
  753. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.d.ts +0 -15
  754. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +0 -1
  755. package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AlwaysOnTopButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/AlwaysOnTopButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,gCAAgC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE7F,OAAO,CACN,0CACE,qBAAqB,IAAI,CACzB,6BAAK,SAAS,EAAE,OAAO,EAAE,EAAE,EAAC,oBAAoB,EAAC,KAAK,EAAC,eAAe,EAAC,OAAO,EAAE,cAAc;QAC7F,2BAAG,SAAS,EAAE,kBAAkB,GAAI,CAC/B,CACN,CACC,CACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport * as React from \"react\";\r\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\r\n\r\nexport const AlwaysOnTopButton = () => {\r\n\tconst { alwaysOnTop, showAlwaysOnTopButton } = React.useContext(WindowTitleBarContext);\r\n\r\n\tconst setAlwaysOnTop = () => FSBL.Clients.WindowClient.setAlwaysOnTop(!alwaysOnTop);\r\n\r\n\tconst classes = `fsbl-icon fsbl-always-on-top ${alwaysOnTop ? \"fsbl-icon-highlighted\" : \"\"}`;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{showAlwaysOnTopButton && (\r\n\t\t\t\t<div className={classes} id=\"fsbl-always-on-top\" title=\"Always On Top\" onClick={setAlwaysOnTop}>\r\n\t\t\t\t\t<i className={\"ff-always-on-top\"} />\r\n\t\t\t\t</div>\r\n\t\t\t)}\r\n\t\t</>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"AlwaysOnTopButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/AlwaysOnTopButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAEvF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,gCAAgC,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAE7F,OAAO,CACN,0CACE,qBAAqB,IAAI,CACzB,6BAAK,SAAS,EAAE,OAAO,EAAE,EAAE,EAAC,oBAAoB,EAAC,KAAK,EAAC,eAAe,EAAC,OAAO,EAAE,cAAc;QAC7F,2BAAG,SAAS,EAAE,kBAAkB,GAAI,CAC/B,CACN,CACC,CACH,CAAC;AACH,CAAC,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\n\nexport const AlwaysOnTopButton = () => {\n\tconst { alwaysOnTop, showAlwaysOnTopButton } = React.useContext(WindowTitleBarContext);\n\n\tconst setAlwaysOnTop = () => FSBL.Clients.WindowClient.setAlwaysOnTop(!alwaysOnTop);\n\n\tconst classes = `fsbl-icon fsbl-always-on-top ${alwaysOnTop ? \"fsbl-icon-highlighted\" : \"\"}`;\n\n\treturn (\n\t\t<>\n\t\t\t{showAlwaysOnTopButton && (\n\t\t\t\t<div className={classes} id=\"fsbl-always-on-top\" title=\"Always On Top\" onClick={setAlwaysOnTop}>\n\t\t\t\t\t<i className={\"ff-always-on-top\"} />\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CloseButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/CloseButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AASpE,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAyB;IAG/D,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAMD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAC,sBAAsB,gBACpB,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,OAAO,EACb,EAAE,EAAC,mBAAmB;YAEtB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YAC1E,2BAAG,SAAS,EAAC,UAAU,GAAK,CACvB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAzDM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport * as React from \"react\";\r\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\r\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\r\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\r\n\r\ninterface IProps {}\r\ninterface IState {\r\n\thoverState: string;\r\n}\r\n/**\r\n * Close button, located on the far right of the window Manager.\r\n */\r\nexport class CloseButton extends React.Component<IProps, IState> {\r\n\tstatic contextType = WindowTitleBarContext;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.bindCorrectContext();\r\n\t\tthis.state = { hoverState: \"false\" };\r\n\t}\r\n\r\n\t/**\r\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\r\n\t *\r\n\t * @memberof CloseButton\r\n\t */\r\n\tbindCorrectContext() {\r\n\t\tthis.hoverAction = this.hoverAction.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Listener invoked when the user clicks the close button.\r\n\t *\r\n\t * @memberof CloseButton\r\n\t */\r\n\tonClick() {\r\n\t\tHeaderActions.clickClose();\r\n\t}\r\n\r\n\t/**\r\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\r\n\t *\r\n\t * @param {any} newHoverState\r\n\t * @memberof LinkerButton\r\n\t */\r\n\thoverAction(newHoverState: string) {\r\n\t\tthis.setState({ hoverState: newHoverState });\r\n\t}\r\n\r\n\t/**\r\n\t * Render method\r\n\t * @memberof CloseButton\r\n\t */\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t{this.context.showCloseButton && (\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tonClick={this.onClick}\r\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-close\"\r\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\r\n\t\t\t\t\t\ttitle=\"Close\"\r\n\t\t\t\t\t\tid=\"fsbl-window-close\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top right\" hoverAction={this.hoverAction} />\r\n\t\t\t\t\t\t<i className=\"ff-close\"></i>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"CloseButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/CloseButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AASpE,MAAM,OAAO,WAAY,SAAQ,KAAK,CAAC,SAAyB;IAG/D,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAMD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAChC,6BACC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,SAAS,EAAC,sBAAsB,gBACpB,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,OAAO,EACb,EAAE,EAAC,mBAAmB;YAEtB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YAC1E,2BAAG,SAAS,EAAC,UAAU,GAAK,CACvB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAzDM,uBAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\n\ninterface IProps {}\ninterface IState {\n\thoverState: string;\n}\n/**\n * Close button, located on the far right of the window Manager.\n */\nexport class CloseButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\tthis.state = { hoverState: \"false\" };\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof CloseButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Listener invoked when the user clicks the close button.\n\t *\n\t * @memberof CloseButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickClose();\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method\n\t * @memberof CloseButton\n\t */\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showCloseButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-close\"\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\ttitle=\"Close\"\n\t\t\t\t\t\tid=\"fsbl-window-close\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top right\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className=\"ff-close\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"GroupingButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/GroupingButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtF,IAAI,mBAA+B,CAAC;AASpC,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAIzB,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YACZ,kBAAkB,EAAE,KAAK;YACzB,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;YACxE,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAMD,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAMD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrF,CAAC;IAMD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC;IAQD,cAAc,CAAC,GAAQ,EAAE,QAAa;QACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAOD,MAAM;QACL,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,GAAG,8CAA8C,CAAC;QAEjE,SAAS,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAExF,IAAI,SAAS,KAAK,aAAa,EAAE;YAChC,WAAW,GAAG,GAAG,WAAW,wBAAwB,CAAC;SACrD;QAED,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAClC,6BACC,SAAS,EAAE,WAAW,EACtB,EAAE,EAAC,qBAAqB,EACxB,KAAK,EAAE,OAAO,gBACF,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAE,SAAS,GAAM,CACxB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAvGM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport * as React from \"react\";\r\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\r\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\r\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\r\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\r\nlet windowTitleBarStore: StoreModel;\r\n\r\ninterface IProps {}\r\ninterface IState {\r\n\tshowDockingTooltip: boolean;\r\n\tdockingIcon: string | false;\r\n\thoverState: string;\r\n}\r\n\r\nexport class GroupingButton extends React.Component<IProps, IState> {\r\n\tstatic contextType = WindowTitleBarContext;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.bindEventHandlers();\r\n\t\t/**\r\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\r\n\t\t */\r\n\t\twindowTitleBarStore = getStore();\r\n\t\tthis.state = {\r\n\t\t\tshowDockingTooltip: false,\r\n\t\t\tdockingIcon: windowTitleBarStore.getValue({ field: \"Main.dockingIcon\" }),\r\n\t\t\thoverState: \"false\",\r\n\t\t};\r\n\t}\r\n\r\n\t/**\r\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\r\n\t *\r\n\t */\r\n\tbindEventHandlers() {\r\n\t\tthis.onClick = this.onClick.bind(this);\r\n\t\tthis.onStoreChanged = this.onStoreChanged.bind(this);\r\n\t\tthis.hoverAction = this.hoverAction.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Add listeners to the store.\r\n\t *\r\n\t */\r\n\tUNSAFE_componentWillMount() {\r\n\t\twindowTitleBarStore.addListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\r\n\t}\r\n\r\n\t/**\r\n\t * Remove listeners from the store.\r\n\t *\r\n\t */\r\n\tcomponentWillUnmount() {\r\n\t\twindowTitleBarStore.removeListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\r\n\t}\r\n\r\n\t/**\r\n\t * Invoked when the store emits a change event. The icon will change. If we're grouped, we show the button that denotes group membership. If we're just snapped, we show the button that will group attached windows.\r\n\t *\r\n\t * @param {any} err\r\n\t * @param {any} response\r\n\t */\r\n\tonStoreChanged(err: any, response: any) {\r\n\t\tthis.setState({ dockingIcon: response.value });\r\n\t}\r\n\r\n\t/**\r\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\r\n\t *\r\n\t * @param {any} newHoverState\r\n\t * @memberof LinkerButton\r\n\t */\r\n\thoverAction(newHoverState: string) {\r\n\t\tthis.setState({ hoverState: newHoverState });\r\n\t}\r\n\r\n\t/**\r\n\t * Invoked when the user clicks the docking button.\r\n\t *\r\n\t */\r\n\r\n\tonClick() {\r\n\t\tHeaderActions.toggleGroup();\r\n\t}\r\n\r\n\t/**\r\n\t * Render method\r\n\t *\r\n\t * @returns\r\n\t */\r\n\trender() {\r\n\t\tlet iconClass = \"ff-\";\r\n\t\tlet wrapClasses = \"fsbl-icon fsbl-icon-bordered docking-control\";\r\n\r\n\t\ticonClass = iconClass + (this.state.dockingIcon === \"ejector\" ? \"attached\" : \"detached\");\r\n\t\tlet toolTip = this.state.dockingIcon === \"ejector\" ? \"Detach Window\" : \"Attach Windows\";\r\n\r\n\t\tif (iconClass === \"ff-attached\") {\r\n\t\t\twrapClasses = `${wrapClasses} fsbl-icon-highlighted`;\r\n\t\t}\r\n\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t{this.context.showDockingButton && (\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclassName={wrapClasses}\r\n\t\t\t\t\t\tid=\"fsbl-window-ejector\"\r\n\t\t\t\t\t\ttitle={toolTip}\r\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\r\n\t\t\t\t\t\tonClick={this.onClick}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\r\n\t\t\t\t\t\t<i className={iconClass}></i>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"GroupingButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/GroupingButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtF,IAAI,mBAA+B,CAAC;AASpC,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAIzB,mBAAmB,GAAG,QAAQ,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YACZ,kBAAkB,EAAE,KAAK;YACzB,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;YACxE,UAAU,EAAE,OAAO;SACnB,CAAC;IACH,CAAC;IAMD,iBAAiB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAMD,yBAAyB;QACxB,mBAAmB,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrF,CAAC;IAMD,oBAAoB;QACnB,mBAAmB,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACxF,CAAC;IAQD,cAAc,CAAC,GAAQ,EAAE,QAAa;QACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAOD,MAAM;QACL,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,WAAW,GAAG,8CAA8C,CAAC;QAEjE,SAAS,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAExF,IAAI,SAAS,KAAK,aAAa,EAAE;YAChC,WAAW,GAAG,GAAG,WAAW,wBAAwB,CAAC;SACrD;QAED,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAClC,6BACC,SAAS,EAAE,WAAW,EACtB,EAAE,EAAC,qBAAqB,EACxB,KAAK,EAAE,OAAO,gBACF,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAE,SAAS,GAAM,CACxB,CACN,CACC,CACH,CAAC;IACH,CAAC;;AAvGM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport StoreModel from \"@finsemble/finsemble-api/types/clients/StoreModel\";\nlet windowTitleBarStore: StoreModel;\n\ninterface IProps {}\ninterface IState {\n\tshowDockingTooltip: boolean;\n\tdockingIcon: string | false;\n\thoverState: string;\n}\n\nexport class GroupingButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindEventHandlers();\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\t\tthis.state = {\n\t\t\tshowDockingTooltip: false,\n\t\t\tdockingIcon: windowTitleBarStore.getValue({ field: \"Main.dockingIcon\" }),\n\t\t\thoverState: \"false\",\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t */\n\tbindEventHandlers() {\n\t\tthis.onClick = this.onClick.bind(this);\n\t\tthis.onStoreChanged = this.onStoreChanged.bind(this);\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Add listeners to the store.\n\t *\n\t */\n\tUNSAFE_componentWillMount() {\n\t\twindowTitleBarStore.addListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t */\n\tcomponentWillUnmount() {\n\t\twindowTitleBarStore.removeListener({ field: \"Main.dockingIcon\" }, this.onStoreChanged);\n\t}\n\n\t/**\n\t * Invoked when the store emits a change event. The icon will change. If we're grouped, we show the button that denotes group membership. If we're just snapped, we show the button that will group attached windows.\n\t *\n\t * @param {any} err\n\t * @param {any} response\n\t */\n\tonStoreChanged(err: any, response: any) {\n\t\tthis.setState({ dockingIcon: response.value });\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Invoked when the user clicks the docking button.\n\t *\n\t */\n\n\tonClick() {\n\t\tHeaderActions.toggleGroup();\n\t}\n\n\t/**\n\t * Render method\n\t *\n\t * @returns\n\t */\n\trender() {\n\t\tlet iconClass = \"ff-\";\n\t\tlet wrapClasses = \"fsbl-icon fsbl-icon-bordered docking-control\";\n\n\t\ticonClass = iconClass + (this.state.dockingIcon === \"ejector\" ? \"attached\" : \"detached\");\n\t\tlet toolTip = this.state.dockingIcon === \"ejector\" ? \"Detach Window\" : \"Attach Windows\";\n\n\t\tif (iconClass === \"ff-attached\") {\n\t\t\twrapClasses = `${wrapClasses} fsbl-icon-highlighted`;\n\t\t}\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showDockingButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={wrapClasses}\n\t\t\t\t\t\tid=\"fsbl-window-ejector\"\n\t\t\t\t\t\ttitle={toolTip}\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className={iconClass}></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
@@ -1,4 +1,11 @@
1
1
  import * as React from "react";
2
+ export declare enum WINDOWSTATE {
3
+ NORMAL = 0,
4
+ MINIMIZED_WAS_NORMAL = 1,
5
+ MAXIMIZED = 2,
6
+ MINIMIZED_WAS_MAXIMIZED = 3,
7
+ TRANSITIONING = 4
8
+ }
2
9
  interface IProps {
3
10
  }
4
11
  interface IState {
@@ -2,9 +2,15 @@ import * as React from "react";
2
2
  import { FinsembleHoverDetector } from "../../../legacyControls/FinsembleHoverDetector";
3
3
  import { WindowTitleBarContext } from "../../windowTitleBarContext";
4
4
  import { getStore, Actions as HeaderActions } from "../../stores/windowTitleBarStore";
5
- import { constants } from "@finsemble/finsemble-core/";
5
+ export var WINDOWSTATE;
6
+ (function (WINDOWSTATE) {
7
+ WINDOWSTATE[WINDOWSTATE["NORMAL"] = 0] = "NORMAL";
8
+ WINDOWSTATE[WINDOWSTATE["MINIMIZED_WAS_NORMAL"] = 1] = "MINIMIZED_WAS_NORMAL";
9
+ WINDOWSTATE[WINDOWSTATE["MAXIMIZED"] = 2] = "MAXIMIZED";
10
+ WINDOWSTATE[WINDOWSTATE["MINIMIZED_WAS_MAXIMIZED"] = 3] = "MINIMIZED_WAS_MAXIMIZED";
11
+ WINDOWSTATE[WINDOWSTATE["TRANSITIONING"] = 4] = "TRANSITIONING";
12
+ })(WINDOWSTATE || (WINDOWSTATE = {}));
6
13
  let windowTitleBarStore;
7
- const { WINDOWSTATE } = constants;
8
14
  export class MaximizeButton extends React.Component {
9
15
  constructor(props) {
10
16
  super(props);
@@ -1 +1 @@
1
- {"version":3,"file":"MaximizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MaximizeButton.tsx"],"names":[],"mappings":"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","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport * as React from \"react\";\r\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\r\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\r\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\r\nimport { constants } from \"@finsemble/finsemble-core/\";\r\n\r\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\r\nlet windowTitleBarStore: StoreModel;\r\n\r\n//import { WINDOWSTATE } from \"@finsemble/finsemble-core/src/common/constants\";\r\n\r\nconst { WINDOWSTATE } = constants;\r\n\r\ninterface IProps {}\r\ninterface IState {\r\n\tmaximized: boolean;\r\n\thoverState: string;\r\n}\r\n\r\n/**\r\n * Maximize button. This button is hidden when the window is maximized. In its place is the restore button.\r\n */\r\nexport class MaximizeButton extends React.Component<IProps, IState> {\r\n\tstatic contextType = WindowTitleBarContext;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.bindCorrectContext();\r\n\t\t/**\r\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\r\n\t\t */\r\n\t\twindowTitleBarStore = getStore();\r\n\r\n\t\tconst isMaximized = finsembleWindow.windowOptions.windowState === WINDOWSTATE.MAXIMIZED;\r\n\t\twindowTitleBarStore.setValue({ field: \"Maximize.maximized\", value: isMaximized });\r\n\t\tthis.state = {\r\n\t\t\tmaximized: isMaximized,\r\n\t\t\thoverState: \"false\",\r\n\t\t};\r\n\t}\r\n\r\n\t/**\r\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\r\n\t *\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\tbindCorrectContext() {\r\n\t\tthis.onMaximized = this.onMaximized.bind(this);\r\n\t\tthis.onRestored = this.onRestored.bind(this);\r\n\t\tthis.hoverAction = this.hoverAction.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * When the state changes, this listener is invoked. There are two states: Not maximized, and maximized. When the window is maximized, the button changes to an icon that denotes \"Restore to previous size.\"\r\n\t *\r\n\t * @param {any} err\r\n\t * @param {any} response\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\tonRestored() {\r\n\t\tthis.setState({ maximized: false });\r\n\t}\r\n\r\n\tonMaximized() {\r\n\t\tthis.setState({ maximized: true });\r\n\t}\r\n\r\n\t/**\r\n\t * Invoked when the user clicks the button.\r\n\t *\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\tonClick() {\r\n\t\tHeaderActions.clickMaximize();\r\n\t}\r\n\r\n\t/**\r\n\t * Add listeners to the store.\r\n\t *\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\tUNSAFE_componentWillMount() {\r\n\t\tfinsembleWindow?.addListener(\"maximized\", this.onMaximized);\r\n\t\tfinsembleWindow?.addListener(\"restored\", this.onRestored);\r\n\t}\r\n\r\n\t/**\r\n\t * Remove listeners from the store.\r\n\t *\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\tcomponentWillUnmount() {\r\n\t\tfinsembleWindow?.removeListener(\"maximized\", this.onMaximized);\r\n\t\tfinsembleWindow?.removeListener(\"restored\", this.onRestored);\r\n\t}\r\n\r\n\t/**\r\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\r\n\t *\r\n\t * @param {any} newHoverState\r\n\t * @memberof LinkerButton\r\n\t */\r\n\thoverAction(newHoverState: string) {\r\n\t\tthis.setState({ hoverState: newHoverState });\r\n\t}\r\n\r\n\t/**\r\n\t * Render method.\r\n\t *\r\n\t * @returns\r\n\t * @memberof MaximizeButton\r\n\t */\r\n\trender() {\r\n\t\tconst tooltip = this.state.maximized ? \"Restore\" : \"Maximize\";\r\n\r\n\t\t// Classes for the maximize button.\r\n\t\tconst iconClasses = this.state.maximized ? \"ff-restore\" : \"ff-maximize\";\r\n\t\t// Classes for the wrap\r\n\t\tconst wrapClasses = `fsbl-icon fsbl-maximize ${this.state.maximized ? \"window-restore\" : \"window-max\"}`;\r\n\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t{this.context.showMaximizeButton && (\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclassName={wrapClasses}\r\n\t\t\t\t\t\tid=\"fsbl-window-restore\"\r\n\t\t\t\t\t\ttitle={tooltip}\r\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\r\n\t\t\t\t\t\tonClick={this.onClick}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\r\n\t\t\t\t\t\t<i className={iconClasses}></i>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"MaximizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MaximizeButton.tsx"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { getStore, Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\nimport StoreModel from \"@finsemble/finsemble-api/types/clients/StoreModel\";\n// Re-enable this import once load time for finsemble-core has been eliminated (e.g. tree shaking)\n//import { constants } from \"@finsemble/finsemble-api/\";\n//const { WINDOWSTATE } = constants;\nexport enum WINDOWSTATE {\n\tNORMAL = 0,\n\tMINIMIZED_WAS_NORMAL = 1,\n\tMAXIMIZED = 2,\n\tMINIMIZED_WAS_MAXIMIZED = 3,\n\tTRANSITIONING = 4,\n}\nlet windowTitleBarStore: StoreModel;\n\ninterface IProps {}\ninterface IState {\n\tmaximized: boolean;\n\thoverState: string;\n}\n\n/**\n * Maximize button. This button is hidden when the window is maximized. In its place is the restore button.\n */\nexport class MaximizeButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\t/**\n\t\t * We assign in the constructor instead of via a require at the top of the file because the store is initialized asynchronously.\n\t\t */\n\t\twindowTitleBarStore = getStore();\n\n\t\tconst isMaximized = finsembleWindow.windowOptions.windowState === WINDOWSTATE.MAXIMIZED;\n\t\twindowTitleBarStore.setValue({ field: \"Maximize.maximized\", value: isMaximized });\n\t\tthis.state = {\n\t\t\tmaximized: isMaximized,\n\t\t\thoverState: \"false\",\n\t\t};\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.onMaximized = this.onMaximized.bind(this);\n\t\tthis.onRestored = this.onRestored.bind(this);\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * When the state changes, this listener is invoked. There are two states: Not maximized, and maximized. When the window is maximized, the button changes to an icon that denotes \"Restore to previous size.\"\n\t *\n\t * @param {any} err\n\t * @param {any} response\n\t * @memberof MaximizeButton\n\t */\n\tonRestored() {\n\t\tthis.setState({ maximized: false });\n\t}\n\n\tonMaximized() {\n\t\tthis.setState({ maximized: true });\n\t}\n\n\t/**\n\t * Invoked when the user clicks the button.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickMaximize();\n\t}\n\n\t/**\n\t * Add listeners to the store.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tUNSAFE_componentWillMount() {\n\t\tfinsembleWindow?.addListener(\"maximized\", this.onMaximized);\n\t\tfinsembleWindow?.addListener(\"restored\", this.onRestored);\n\t}\n\n\t/**\n\t * Remove listeners from the store.\n\t *\n\t * @memberof MaximizeButton\n\t */\n\tcomponentWillUnmount() {\n\t\tfinsembleWindow?.removeListener(\"maximized\", this.onMaximized);\n\t\tfinsembleWindow?.removeListener(\"restored\", this.onRestored);\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {any} newHoverState\n\t * @memberof LinkerButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method.\n\t *\n\t * @returns\n\t * @memberof MaximizeButton\n\t */\n\trender() {\n\t\tconst tooltip = this.state.maximized ? \"Restore\" : \"Maximize\";\n\n\t\t// Classes for the maximize button.\n\t\tconst iconClasses = this.state.maximized ? \"ff-restore\" : \"ff-maximize\";\n\t\t// Classes for the wrap\n\t\tconst wrapClasses = `fsbl-icon fsbl-maximize ${this.state.maximized ? \"window-restore\" : \"window-max\"}`;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showMaximizeButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={wrapClasses}\n\t\t\t\t\t\tid=\"fsbl-window-restore\"\n\t\t\t\t\t\ttitle={tooltip}\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className={iconClasses}></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MinimizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MinimizeButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAQD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CACnC,6BACC,SAAS,EAAC,yBAAyB,EACnC,EAAE,EAAC,sBAAsB,gBACb,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,UAAU,EAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAC,aAAa,GAAK,CAC1B,CACN,CACC,CACH,CAAC;IACH,CAAC;;AA3DM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport * as React from \"react\";\r\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\r\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\r\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\r\n\r\ninterface IProps {}\r\ninterface IState {\r\n\thoverState: string;\r\n}\r\n\r\nexport class MinimizeButton extends React.Component<IProps, IState> {\r\n\tstatic contextType = WindowTitleBarContext;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.bindCorrectContext();\r\n\t\tthis.state = { hoverState: \"false\" };\r\n\t}\r\n\r\n\t/**\r\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\r\n\t *\r\n\t * @memberof MinimizeButton\r\n\t */\r\n\tbindCorrectContext() {\r\n\t\tthis.hoverAction = this.hoverAction.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Invoked when the user clicks the minimize button.\r\n\t *\r\n\t * @memberof MinimizeButton\r\n\t */\r\n\tonClick() {\r\n\t\tHeaderActions.clickMinimize();\r\n\t}\r\n\r\n\t/**\r\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\r\n\t *\r\n\t * @param {string} newHoverState\r\n\t * @memberof MinimizeButton\r\n\t */\r\n\thoverAction(newHoverState: string) {\r\n\t\tthis.setState({ hoverState: newHoverState });\r\n\t}\r\n\r\n\t/**\r\n\t * Render method.\r\n\t *\r\n\t * @returns\r\n\t * @memberof MinimizeButton\r\n\t */\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t{this.context.showMinimizeButton && (\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-minimize\"\r\n\t\t\t\t\t\tid=\"fsbl-window-minimize\"\r\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\r\n\t\t\t\t\t\ttitle=\"Minimize\"\r\n\t\t\t\t\t\tonClick={this.onClick}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\r\n\t\t\t\t\t\t<i className=\"ff-minimize\"></i>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t</>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"MinimizeButton.js","sourceRoot":"","sources":["../../../../../src/components/windowTitleBar/components/right/MinimizeButton.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAO5E,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAAyB;IAGlE,YAAY,KAAa;QACxB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACtC,CAAC;IAOD,kBAAkB;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAOD,OAAO;QACN,aAAa,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAQD,WAAW,CAAC,aAAqB;QAChC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9C,CAAC;IAQD,MAAM;QACL,OAAO,CACN,0CACE,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CACnC,6BACC,SAAS,EAAC,yBAAyB,EACnC,EAAE,EAAC,sBAAsB,gBACb,IAAI,CAAC,KAAK,CAAC,UAAU,EACjC,KAAK,EAAC,UAAU,EAChB,OAAO,EAAE,IAAI,CAAC,OAAO;YAErB,oBAAC,sBAAsB,IAAC,IAAI,EAAC,KAAK,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,GAAI;YACpE,2BAAG,SAAS,EAAC,aAAa,GAAK,CAC1B,CACN,CACC,CACH,CAAC;IACH,CAAC;;AA3DM,0BAAW,GAAG,qBAAqB,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport * as React from \"react\";\nimport { FinsembleHoverDetector } from \"../../../legacyControls/FinsembleHoverDetector\";\nimport { WindowTitleBarContext } from \"../../windowTitleBarContext\";\nimport { Actions as HeaderActions } from \"../../stores/windowTitleBarStore\";\n\ninterface IProps {}\ninterface IState {\n\thoverState: string;\n}\n\nexport class MinimizeButton extends React.Component<IProps, IState> {\n\tstatic contextType = WindowTitleBarContext;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.bindCorrectContext();\n\t\tthis.state = { hoverState: \"false\" };\n\t}\n\n\t/**\n\t * This is necessary to make sure that the `this` inside of the callback is correct.\n\t *\n\t * @memberof MinimizeButton\n\t */\n\tbindCorrectContext() {\n\t\tthis.hoverAction = this.hoverAction.bind(this);\n\t}\n\n\t/**\n\t * Invoked when the user clicks the minimize button.\n\t *\n\t * @memberof MinimizeButton\n\t */\n\tonClick() {\n\t\tHeaderActions.clickMinimize();\n\t}\n\n\t/**\n\t * When your mouse enters/leaves the hoverDetector, this function is invoked.\n\t *\n\t * @param {string} newHoverState\n\t * @memberof MinimizeButton\n\t */\n\thoverAction(newHoverState: string) {\n\t\tthis.setState({ hoverState: newHoverState });\n\t}\n\n\t/**\n\t * Render method.\n\t *\n\t * @returns\n\t * @memberof MinimizeButton\n\t */\n\trender() {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{this.context.showMinimizeButton && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName=\"fsbl-icon fsbl-minimize\"\n\t\t\t\t\t\tid=\"fsbl-window-minimize\"\n\t\t\t\t\t\tdata-hover={this.state.hoverState}\n\t\t\t\t\t\ttitle=\"Minimize\"\n\t\t\t\t\t\tonClick={this.onClick}\n\t\t\t\t\t>\n\t\t\t\t\t\t<FinsembleHoverDetector edge=\"top\" hoverAction={this.hoverAction} />\n\t\t\t\t\t\t<i className=\"ff-minimize\"></i>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n}\n"]}
@@ -1,23 +1,26 @@
1
- import { WindowIdentifier } from "@finsemble/finsemble-core";
1
+ import { WindowIdentifier } from "@finsemble/finsemble-api";
2
+ import { ListenerFunction } from "@finsemble/finsemble-api/types/clients/StoreModel";
2
3
  import { Component } from "react";
3
4
  declare type TitleProps = {
4
- windowIdentifier: any;
5
+ windowIdentifier: WindowIdentifier;
5
6
  onUpdate?: Function;
6
7
  titleWidth?: number;
7
- updateTitle?: EventTarget;
8
+ onClick?: () => void;
8
9
  };
9
10
  declare type TitleState = {
10
11
  title: string | undefined;
11
12
  icon: any;
13
+ windowName?: string;
12
14
  };
13
15
  export declare class Title extends Component<TitleProps, TitleState> {
16
+ #private;
17
+ tabTitleChangedStoreListener: ListenerFunction;
18
+ _mounted: boolean;
14
19
  constructor(props: TitleProps);
15
- setTitle(identifier: WindowIdentifier): Promise<void>;
16
- getTitle(): Promise<void>;
20
+ updateTitle(): Promise<void>;
17
21
  componentDidMount(): void;
18
22
  componentDidUpdate(): void;
19
23
  componentWillUnmount(): void;
20
- UNSAFE_componentWillReceiveProps(nextProps: any): void;
21
24
  render(): JSX.Element;
22
25
  }
23
26
  export {};
@@ -1,47 +1,110 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _Title_instances, _Title_setWindowTitle, _Title_setTabTitle, _Title_addListeners, _Title_removeListeners;
1
7
  import React, { Component } from "react";
2
8
  import { Icon } from "../../icon/Icon";
3
9
  import { iconFromConfig } from "../../icon/Icon";
10
+ import { Store } from "../stores/windowTitleBarStore";
11
+ const WINDOW_TAB_TITLE_STORE = "window-tab-title";
12
+ const FIELD_NAME_PERSISTED_TITLE = "persistedTitle";
13
+ const getWindowTabNameStore = async () => {
14
+ let { data: store } = await FSBL.Clients.DistributedStoreClient.createGlobalStore({ store: WINDOW_TAB_TITLE_STORE });
15
+ return store;
16
+ };
17
+ const getCorrespondingFinsembleWindow = async (windowIdentifier) => (await FSBL.FinsembleWindow.getInstance(windowIdentifier)).wrap;
18
+ function EditTab(props) {
19
+ const [editingTitle, setEditingTitle] = React.useState(false);
20
+ const [clickTimeout, setClickTimeout] = React.useState(undefined);
21
+ const inputEl = React.useRef(null);
22
+ const updateTabTitle = async (e) => {
23
+ const title = e.target.value;
24
+ let store = await getWindowTabNameStore();
25
+ if (!store) {
26
+ FSBL.Clients.Logger.warn("Error persisting tab title via EditTab: the store was not found");
27
+ return;
28
+ }
29
+ store.setValue({ field: props.windowIdentifier.windowName, value: title });
30
+ let win = await getCorrespondingFinsembleWindow(props.windowIdentifier);
31
+ FSBL.Clients.Logger.debug(`Setting component state "${FIELD_NAME_PERSISTED_TITLE}" with value "${title}"`);
32
+ await win.setComponentState({ field: FIELD_NAME_PERSISTED_TITLE, value: title });
33
+ setEditingTitle(false);
34
+ };
35
+ const beginEditing = async () => {
36
+ var _a, _b;
37
+ await setEditingTitle(true);
38
+ await ((_a = inputEl === null || inputEl === void 0 ? void 0 : inputEl.current) === null || _a === void 0 ? void 0 : _a.focus());
39
+ if (inputEl === null || inputEl === void 0 ? void 0 : inputEl.current) {
40
+ inputEl.current.value = (_b = props.title) !== null && _b !== void 0 ? _b : "";
41
+ }
42
+ };
43
+ const clickHandler = () => {
44
+ const allowTabEditing = Store.getValue("allowTabEditing");
45
+ if (clickTimeout) {
46
+ if (allowTabEditing) {
47
+ beginEditing();
48
+ }
49
+ }
50
+ else if (!editingTitle) {
51
+ let timeout = setTimeout(() => {
52
+ clearTimeout(clickTimeout);
53
+ setClickTimeout(undefined);
54
+ }, 500);
55
+ setClickTimeout(timeout);
56
+ if (props.setActiveTab)
57
+ props.setActiveTab();
58
+ }
59
+ };
60
+ const blurHandler = (e) => {
61
+ updateTabTitle(e);
62
+ };
63
+ const keyDownHandler = (e) => {
64
+ e.key === "Enter" && updateTabTitle(e);
65
+ };
66
+ return (React.createElement("div", { className: "fsbl-tab-editor", onClick: clickHandler }, editingTitle ? (React.createElement("div", { className: "fsbl-tab fsbl-active-tab", style: { width: props.tabWidth || "auto" } },
67
+ React.createElement("div", { draggable: true, onDragStart: (e) => {
68
+ e.stopPropagation();
69
+ e.preventDefault();
70
+ } },
71
+ React.createElement("input", { ref: inputEl, onBlur: blurHandler, onKeyDown: keyDownHandler, type: "text", className: "tab__input", maxLength: 32 })))) : (props.children)));
72
+ }
4
73
  export class Title extends Component {
5
74
  constructor(props) {
6
- var _a;
75
+ var _a, _b;
7
76
  super(props);
77
+ _Title_instances.add(this);
78
+ this.tabTitleChangedStoreListener = (err, response) => {
79
+ if (!!err) {
80
+ FSBL.Clients.Logger.warn(`Listener error for store "${WINDOW_TAB_TITLE_STORE}" for field "${this.props.windowIdentifier.windowName}"`, err);
81
+ return;
82
+ }
83
+ FSBL.Clients.Logger.debug(`Store "${WINDOW_TAB_TITLE_STORE}" notified of new title "${response.value}" for window "${response.field}"`);
84
+ this.updateTitle();
85
+ };
86
+ this._mounted = false;
8
87
  this.state = {
9
- title: document.title,
88
+ title: ((_a = props.windowIdentifier) === null || _a === void 0 ? void 0 : _a.windowName) || document.title,
10
89
  icon: null,
90
+ windowName: (_b = props.windowIdentifier) === null || _b === void 0 ? void 0 : _b.windowName,
11
91
  };
12
- this.getTitle = this.getTitle.bind(this);
13
- (_a = props.updateTitle) === null || _a === void 0 ? void 0 : _a.addEventListener("title-changed", () => {
14
- this.getTitle();
15
- });
16
- }
17
- async setTitle(identifier) {
18
- var _a;
19
- const { wrap: win } = await FSBL.FinsembleWindow.getInstance(identifier);
20
- const windowManagerConfig = (_a = win.windowOptions.customData) === null || _a === void 0 ? void 0 : _a.foreign.components["Window Manager"];
21
- win.getOptions((err, data) => {
22
- var _a, _b, _c;
23
- let title = (windowManagerConfig === null || windowManagerConfig === void 0 ? void 0 : windowManagerConfig.title) || (data === null || data === void 0 ? void 0 : data.title) || win.name || "";
24
- const icon = iconFromConfig((_c = (_b = (_a = data === null || data === void 0 ? void 0 : data.customData) === null || _a === void 0 ? void 0 : _a.foreign) === null || _b === void 0 ? void 0 : _b.components) === null || _c === void 0 ? void 0 : _c.Toolbar, title);
25
- win.getComponentState({ field: "persistedTitle" }, (error, persistedTitle) => {
26
- if (persistedTitle) {
27
- title = persistedTitle;
28
- }
29
- this.setState({
30
- title,
31
- icon,
32
- });
33
- });
34
- });
92
+ this.updateTitle = this.updateTitle.bind(this);
35
93
  }
36
- async getTitle() {
37
- this.setTitle(this.props.windowIdentifier);
94
+ async updateTitle() {
95
+ const store = await getWindowTabNameStore();
96
+ if (!store) {
97
+ FSBL.Clients.Logger.warn("Error setting the tab title: the store was not found");
98
+ return;
99
+ }
100
+ const { data: windowTitle } = await store.getGlobalValue(finsembleWindow.thisWindowName);
101
+ const { data: tabTitle } = await store.getGlobalValue(this.props.windowIdentifier.windowName);
102
+ __classPrivateFieldGet(this, _Title_instances, "m", _Title_setTabTitle).call(this, tabTitle);
103
+ __classPrivateFieldGet(this, _Title_instances, "m", _Title_setWindowTitle).call(this, windowTitle);
38
104
  }
39
105
  componentDidMount() {
40
- var _a;
41
- this.getTitle();
42
- FSBL.FinsembleWindow.getInstance((_a = this.props) === null || _a === void 0 ? void 0 : _a.windowIdentifier, (e, win) => {
43
- win.addEventListener("title-changed", this.getTitle);
44
- });
106
+ this._mounted = true;
107
+ __classPrivateFieldGet(this, _Title_instances, "m", _Title_addListeners).call(this);
45
108
  }
46
109
  componentDidUpdate() {
47
110
  if (typeof this.props.onUpdate === "function") {
@@ -49,22 +112,68 @@ export class Title extends Component {
49
112
  }
50
113
  }
51
114
  componentWillUnmount() {
115
+ this._mounted = false;
116
+ __classPrivateFieldGet(this, _Title_instances, "m", _Title_removeListeners).call(this);
117
+ }
118
+ render() {
52
119
  var _a;
53
- FSBL.FinsembleWindow.getInstance((_a = this.props) === null || _a === void 0 ? void 0 : _a.windowIdentifier, (e, win) => {
54
- win.removeEventListener("title-changed", this.getTitle, false);
55
- });
120
+ const { titleWidth } = this.props;
121
+ const style = titleWidth ? { width: titleWidth } : {};
122
+ return (React.createElement(EditTab, { tabWidth: titleWidth, setActiveTab: (_a = this === null || this === void 0 ? void 0 : this.props) === null || _a === void 0 ? void 0 : _a.onClick, title: this.state.title, windowIdentifier: this.props.windowIdentifier },
123
+ React.createElement("div", { className: "fsbl-tab-title", style: style },
124
+ this.state.icon && React.createElement(Icon, Object.assign({}, this.state.icon)),
125
+ React.createElement("div", { className: "title-text" }, this.state.title))));
126
+ }
127
+ }
128
+ _Title_instances = new WeakSet(), _Title_setWindowTitle = function _Title_setWindowTitle(title) {
129
+ document.title = title;
130
+ }, _Title_setTabTitle = async function _Title_setTabTitle(title) {
131
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
132
+ const tabWindow = await getCorrespondingFinsembleWindow(this.props.windowIdentifier);
133
+ const { data: tabWindowOptions } = await tabWindow.getOptions();
134
+ if (!title) {
135
+ FSBL.Clients.Logger.debug(`No stored tab tile for "${this.props.windowIdentifier.windowName}"; falling back to code-based derivation`);
136
+ const { options: windowClientOptions } = FSBL.Clients.WindowClient;
137
+ const windowTitleBarConfig = (_b = (_a = windowClientOptions === null || windowClientOptions === void 0 ? void 0 : windowClientOptions.customData) === null || _a === void 0 ? void 0 : _a.foreign) === null || _b === void 0 ? void 0 : _b.components["Window Manager"];
138
+ const displayName = ((_f = (_e = (_d = (_c = tabWindowOptions === null || tabWindowOptions === void 0 ? void 0 : tabWindowOptions.customData) === null || _c === void 0 ? void 0 : _c.appDConfig) === null || _d === void 0 ? void 0 : _d.manifest) === null || _e === void 0 ? void 0 : _e.component) === null || _f === void 0 ? void 0 : _f.displayName) ||
139
+ ((_h = (_g = tabWindowOptions === null || tabWindowOptions === void 0 ? void 0 : tabWindowOptions.customData) === null || _g === void 0 ? void 0 : _g.component) === null || _h === void 0 ? void 0 : _h.displayName);
140
+ title = displayName || FSBL.Clients.WindowClient.title || (windowTitleBarConfig === null || windowTitleBarConfig === void 0 ? void 0 : windowTitleBarConfig.title) || tabWindow.name || "";
56
141
  }
57
- UNSAFE_componentWillReceiveProps(nextProps) {
58
- if (nextProps.windowIdentifier.windowName !== this.props.windowIdentifier.windowName) {
59
- this.setTitle(nextProps.windowIdentifier);
142
+ const icon = iconFromConfig((_l = (_k = (_j = tabWindowOptions === null || tabWindowOptions === void 0 ? void 0 : tabWindowOptions.customData) === null || _j === void 0 ? void 0 : _j.foreign) === null || _k === void 0 ? void 0 : _k.components) === null || _l === void 0 ? void 0 : _l.Toolbar, title);
143
+ tabWindow.getComponentState({ field: FIELD_NAME_PERSISTED_TITLE }, (error, persistedTitle) => {
144
+ if (!this._mounted) {
145
+ return;
146
+ }
147
+ if (persistedTitle) {
148
+ title = persistedTitle;
60
149
  }
150
+ FSBL.Clients.Logger.debug(`Setting tab title ${title} for window ${this.props.windowIdentifier.windowName}`);
151
+ this.setState({
152
+ title: title,
153
+ icon: icon,
154
+ });
155
+ });
156
+ }, _Title_addListeners = async function _Title_addListeners() {
157
+ const store = await getWindowTabNameStore();
158
+ if (!store) {
159
+ FSBL.Clients.Logger.warn("Error adding a tab title listener: the store was not found");
160
+ return;
61
161
  }
62
- render() {
63
- let { titleWidth } = this.props;
64
- let style = titleWidth ? { width: titleWidth } : {};
65
- return (React.createElement("div", { className: "fsbl-tab-title", style: style },
66
- this.state.icon && React.createElement(Icon, Object.assign({}, this.state.icon)),
67
- React.createElement("div", { className: "title-text" }, this.state.title)));
162
+ store.addListener({ field: this.props.windowIdentifier.windowName }, this.tabTitleChangedStoreListener, () => {
163
+ FSBL.Clients.Logger.debug(`Added listener to store "${WINDOW_TAB_TITLE_STORE}" for field "${this.props.windowIdentifier.windowName}"`);
164
+ });
165
+ }, _Title_removeListeners = async function _Title_removeListeners() {
166
+ const store = await getWindowTabNameStore();
167
+ if (!store) {
168
+ FSBL.Clients.Logger.warn("Error removing a tab title listener: the store was not found");
169
+ return;
68
170
  }
69
- }
171
+ store.removeListener({ field: this.props.windowIdentifier.windowName }, this.tabTitleChangedStoreListener, (err, response) => {
172
+ if (!!err) {
173
+ FSBL.Clients.Logger.warn(`Could not remove listener from store "${WINDOW_TAB_TITLE_STORE}" for field "${this.props.windowIdentifier.windowName}"`, err);
174
+ return;
175
+ }
176
+ FSBL.Clients.Logger.debug(`Removed listener to store "${WINDOW_TAB_TITLE_STORE}" for field "${this.props.windowIdentifier.windowName}"`);
177
+ });
178
+ };
70
179
  //# sourceMappingURL=windowTitle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"windowTitle.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/components/windowTitle.tsx"],"names":[],"mappings":"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","sourcesContent":["import { WindowIdentifier } from \"@finsemble/finsemble-core\";\r\nimport React, { Component } from \"react\";\r\nimport { Icon } from \"../../icon/Icon\";\r\nimport { iconFromConfig } from \"../../icon/Icon\";\r\n\r\ntype TitleProps = {\r\n\twindowIdentifier: any;\r\n\tonUpdate?: Function;\r\n\ttitleWidth?: number;\r\n\tupdateTitle?: EventTarget;\r\n};\r\n\r\ntype TitleState = {\r\n\ttitle: string | undefined;\r\n\ticon: any;\r\n};\r\n\r\nexport class Title extends Component<TitleProps, TitleState> {\r\n\tconstructor(props: TitleProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\ttitle: document.title,\r\n\t\t\ticon: null,\r\n\t\t};\r\n\t\tthis.getTitle = this.getTitle.bind(this);\r\n\t\tprops.updateTitle?.addEventListener(\"title-changed\", () => {\r\n\t\t\tthis.getTitle();\r\n\t\t});\r\n\t}\r\n\r\n\tasync setTitle(identifier: WindowIdentifier) {\r\n\t\tconst { wrap: win } = await FSBL.FinsembleWindow.getInstance(identifier);\r\n\t\tconst windowManagerConfig = win.windowOptions.customData?.foreign.components[\"Window Manager\"];\r\n\t\twin.getOptions((err: any, data: any) => {\r\n\t\t\tlet title = windowManagerConfig?.title || data?.title || win.name || \"\";\r\n\t\t\tconst icon = iconFromConfig(data?.customData?.foreign?.components?.Toolbar, title);\r\n\t\t\twin.getComponentState({ field: \"persistedTitle\" }, (error: any, persistedTitle: any) => {\r\n\t\t\t\tif (persistedTitle) {\r\n\t\t\t\t\ttitle = persistedTitle;\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\ttitle,\r\n\t\t\t\t\ticon,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tasync getTitle() {\r\n\t\tthis.setTitle(this.props.windowIdentifier);\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tthis.getTitle();\r\n\t\tFSBL.FinsembleWindow.getInstance(this.props?.windowIdentifier, (e: any, win: any) => {\r\n\t\t\twin.addEventListener(\"title-changed\", this.getTitle);\r\n\t\t});\r\n\t}\r\n\r\n\t// Triggers a re-rendering of the drag handle in the title bar.\r\n\tcomponentDidUpdate() {\r\n\t\tif (typeof this.props.onUpdate === \"function\") {\r\n\t\t\tthis.props.onUpdate();\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentWillUnmount() {\r\n\t\tFSBL.FinsembleWindow.getInstance(this.props?.windowIdentifier, (e: any, win: any) => {\r\n\t\t\t// We pass logError = false because react components might be unmounting during a window\r\n\t\t\t// close operation, which causes `this.getTitle` to become invalid mid-operation. This is\r\n\t\t\t// due to the current tabbing architecture can probably be eliminated with refactoring.\r\n\t\t\twin.removeEventListener(\"title-changed\", this.getTitle, false);\r\n\t\t});\r\n\t}\r\n\r\n\tUNSAFE_componentWillReceiveProps(nextProps: any) {\r\n\t\t// We only need to re-render the logo if the name of the component changes. Otherwise excessive calls to getOptions\r\n\t\tif (nextProps.windowIdentifier.windowName !== this.props.windowIdentifier.windowName) {\r\n\t\t\tthis.setTitle(nextProps.windowIdentifier);\r\n\t\t}\r\n\t}\r\n\r\n\trender() {\r\n\t\tlet { titleWidth } = this.props;\r\n\t\tlet style = titleWidth ? { width: titleWidth } : {};\r\n\t\treturn (\r\n\t\t\t<div className=\"fsbl-tab-title\" style={style}>\r\n\t\t\t\t{this.state.icon && <Icon {...this.state.icon} />}\r\n\t\t\t\t<div className=\"title-text\">{this.state.title}</div>\r\n\t\t\t</div>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"windowTitle.js","sourceRoot":"","sources":["../../../../src/components/windowTitleBar/components/windowTitle.tsx"],"names":[],"mappings":"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","sourcesContent":["import { FinsembleWindow, WindowIdentifier } from \"@finsemble/finsemble-api\";\nimport { ListenerFunction } from \"@finsemble/finsemble-api/types/clients/StoreModel\";\nimport { StandardError } from \"@finsemble/finsemble-api/types/types\";\nimport React, { Component } from \"react\";\nimport { EditTabProps } from \"../../../types/windowTitleBar\";\nimport { Icon } from \"../../icon/Icon\";\nimport { iconFromConfig } from \"../../icon/Icon\";\nimport { Store } from \"../stores/windowTitleBarStore\";\n\n/**\n * TAB TITLES: HOW DO THEY WORK?\n *\n * Each component, when stacked, will have several tab titles. For each component, there is a window. For each window, there are 2 tab titles per component.\n *\n * Whichever component is \"active\" will render all tabs - exactly one \"active\" tab and n-1 \"inactive\" tabs (where n is the number of components in the stack). When\n * the active component is changed (via a click, for example), then the visible window becomes the window associated with the active component.\n *\n * Tab titles may change at any time, and for a number of reasons. For example, the component may execute \"document.title='...some title'\". Or perhaps the tab title has\n * been edited by the user. In order to account for all title changes, the following flow is used:\n * *something* updates document.title\n * The WindowClient for the component will notice the title change and send a router message (via FinsembleWindow.setTitle) with a topic representitive of the windowName\n * BaseWindow listens to router changes on the same topic and updates a DistributedStore dedicated to tab names\n * The tab components all subscribe to the DistributedStore dedicated to tab names and will update the title accordingly\n *\n * This is a \"one-way\" operation; that is to say that some code will ultimately alter the DistributedStore and the tab title components will read the changes. While this generally\n * happens with a write to document.title, it can also happen when a user edits the tab title manually. In this case, the component state is altered with a field \"persistedTitle\"\n * whose value is the edited title. At render time, the tab title component will use any value in \"persistedTitle\" as the title, irregardless of any other value.\n *\n * NOTE: A tab may be edited only when it is the active component; ergo the call to \"setComponentState\" is safe.\n */\n\n/**\n * WINDOW TITLES: HOW DO THEY WORK?\n *\n * Each application window has a title which is displayed in the operating system taskbar and task switcher. This title comes from the\n * value of \"document.title\" in the window title bar component. It is important to understand that when tabs are stacked, the actual window\n * which holds the window title is the title of the window of the active component. It is therefore important to keep the window title and the\n * tab titles up to date and synchronized.\n */\n\ntype TitleProps = {\n\twindowIdentifier: WindowIdentifier;\n\tonUpdate?: Function;\n\ttitleWidth?: number;\n\tonClick?: () => void;\n};\n\ntype TitleState = {\n\ttitle: string | undefined;\n\ticon: any;\n\twindowName?: string;\n};\n\n// The store name for the distributed store which tracks tab titles\nconst WINDOW_TAB_TITLE_STORE = \"window-tab-title\";\n// The field name to watch for tab title edits\nconst FIELD_NAME_PERSISTED_TITLE = \"persistedTitle\";\n\n/**\n * Gets the store which tracks the tab title for a windowName. This is a distributed store shared by all components.\n *\n * @returns a Promise which resolves the StoreModel associated with window and tab names\n */\nconst getWindowTabNameStore = async () => {\n\tlet { data: store } = await FSBL.Clients.DistributedStoreClient.createGlobalStore({ store: WINDOW_TAB_TITLE_STORE });\n\treturn store;\n};\n\n/**\n * Gets the FinsembleWindow instance associated with the specified <i>windowIdentifier</i>.\n *\n * Any instance of this component (a tab title) will actually be in the window of the \"active\"\n * tab; this function will return the FinsembleWindow instance for which this tab title instance\n * represents.\n *\n * @param windowIdentifier the windowIdentifier for the FinsembleWindow to obtain a reference for\n * @returns a Promise which resolves to the FinsembleWindow associated with the <i>windowIdentifier</i>\n */\nconst getCorrespondingFinsembleWindow = async (windowIdentifier: WindowIdentifier): Promise<FinsembleWindow> =>\n\t(await FSBL.FinsembleWindow.getInstance(windowIdentifier)).wrap;\n\n/**\n * The wrapper component for tab renaming\n * @param {*} props\n */\nfunction EditTab(props: EditTabProps) {\n\tconst [editingTitle, setEditingTitle] = React.useState(false);\n\tconst [clickTimeout, setClickTimeout] = React.useState<NodeJS.Timeout | undefined>(undefined);\n\tconst inputEl = React.useRef<HTMLInputElement>(null);\n\n\tconst updateTabTitle = async (e: React.KeyboardEvent<HTMLInputElement> | React.FocusEvent<HTMLInputElement>) => {\n\t\t// When the tab title has changed via a user edit, simply update the DistributedStore\n\n\t\t// Get the title\n\t\tconst title = (e.target as HTMLInputElement).value;\n\n\t\t// Get the tab name store\n\t\tlet store = await getWindowTabNameStore();\n\t\t// If the store is unavailable, then the tab name cannot be persisted\n\t\tif (!store) {\n\t\t\t// This is not critical, but tab titles may be stale\n\t\t\tFSBL.Clients.Logger.warn(\"Error persisting tab title via EditTab: the store was not found\");\n\t\t\treturn;\n\t\t}\n\n\t\t// Persist the tab title\n\t\tstore.setValue({ field: props.windowIdentifier.windowName, value: title });\n\n\t\t// Get the window which coresponds to the tab being edited\n\t\tlet win = await getCorrespondingFinsembleWindow(props.windowIdentifier);\n\n\t\t// Set the component state \"persistedTitle\" (which is the edited title)\n\t\tFSBL.Clients.Logger.debug(`Setting component state \"${FIELD_NAME_PERSISTED_TITLE}\" with value \"${title}\"`);\n\t\tawait win.setComponentState({ field: FIELD_NAME_PERSISTED_TITLE, value: title });\n\n\t\t// Stop editing in all cases\n\t\tsetEditingTitle(false);\n\t};\n\n\tconst beginEditing = async () => {\n\t\tawait setEditingTitle(true);\n\t\tawait inputEl?.current?.focus();\n\t\tif (inputEl?.current) {\n\t\t\tinputEl.current.value = props.title ?? \"\";\n\t\t}\n\t};\n\n\tconst clickHandler = () => {\n\t\tconst allowTabEditing = Store.getValue(\"allowTabEditing\");\n\n\t\tif (clickTimeout) {\n\t\t\t// double click\n\t\t\tif (allowTabEditing) {\n\t\t\t\tbeginEditing();\n\t\t\t}\n\t\t} else if (!editingTitle) {\n\t\t\t// single click\n\t\t\tlet timeout = setTimeout(() => {\n\t\t\t\tclearTimeout(clickTimeout);\n\t\t\t\tsetClickTimeout(undefined);\n\t\t\t}, 500);\n\t\t\tsetClickTimeout(timeout);\n\t\t\tif (props.setActiveTab) props.setActiveTab();\n\t\t}\n\t};\n\n\tconst blurHandler = (e: React.FocusEvent<HTMLInputElement>) => {\n\t\tupdateTabTitle(e);\n\t};\n\n\tconst keyDownHandler = (e: React.KeyboardEvent<HTMLInputElement>) => {\n\t\te.key === \"Enter\" && updateTabTitle(e);\n\t};\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"fsbl-tab-editor\"\n\t\t\t// We can't use Click and Dblclick events together cause for one dblclick fires two click events which close title editor.\n\t\t\t// Workaround with setTimeout should resolve this behavior.\n\t\t\tonClick={clickHandler}\n\t\t>\n\t\t\t{editingTitle ? (\n\t\t\t\t<div className=\"fsbl-tab fsbl-active-tab\" style={{ width: props.tabWidth || \"auto\" }}>\n\t\t\t\t\t{/* workaround to disable tab dragging in the edit mode */}\n\t\t\t\t\t<div\n\t\t\t\t\t\tdraggable={true}\n\t\t\t\t\t\tonDragStart={(e) => {\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tref={inputEl}\n\t\t\t\t\t\t\tonBlur={blurHandler}\n\t\t\t\t\t\t\tonKeyDown={keyDownHandler}\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tclassName=\"tab__input\"\n\t\t\t\t\t\t\tmaxLength={32}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t) : (\n\t\t\t\tprops.children\n\t\t\t)}\n\t\t</div>\n\t);\n}\n\n/*\n * Description how stacked window tabs work.\n *\n * The simplest case - when you have only 2 tabs. In that case you will actually have 2 windows and 4 tabs.\n * Lets call them as: window 1 - w1, window 2 - w2, tab 1 from window 1 - w1_t1, tab 2 from window 1 - w1_t2, for tabs from window 2 - w2_t1 and w2_t2.\n * When you switch tabs you activate w1 or w2 with active tab w1_t1 or w2_t2 correspondingly.\n * Tabs w1_t2 and w2_t1 are inactive. They needed only for rendering. I call them as remote tabs, cause their titles must be synchronized with active tabs titles.\n * Thus when you rename active tab (w1_t1), the corresponding remote tab (w2_t1) should be updated automatically.\n */\n\nexport class Title extends Component<TitleProps, TitleState> {\n\t// The listener for tab title change events via the DistributedStoreClient, kept as a reference so\n\t// that the listener can be deregistered when the component is unmounted\n\ttabTitleChangedStoreListener: ListenerFunction = (err: StandardError, response: { field: string; value: string }) => {\n\t\tif (!!err) {\n\t\t\t// This is not critical; in the worst case this tab title will be stale\n\t\t\tFSBL.Clients.Logger.warn(\n\t\t\t\t`Listener error for store \"${WINDOW_TAB_TITLE_STORE}\" for field \"${this.props.windowIdentifier.windowName}\"`,\n\t\t\t\terr\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\t// Log a message\n\t\tFSBL.Clients.Logger.debug(\n\t\t\t`Store \"${WINDOW_TAB_TITLE_STORE}\" notified of new title \"${response.value}\" for window \"${response.field}\"`\n\t\t);\n\n\t\t// Invoke updateTitle\n\t\tthis.updateTitle();\n\t};\n\n\t// Flag to determine if this instance is currently mounted; this is necessary because:\n\t// 1.) Title components are mounted and unmounted as an artifact of how the tab or tab list is rendered\n\t// 2.) Keeping tab titles synchronized is an asynchronous process\n\t// 3.) During the asynchronous process of tab title synchronization, a call to setState is made and\n\t// that raises a React warning since the component state cannot be changed while the component\n\t// is unmounted\n\t_mounted = false;\n\n\tconstructor(props: TitleProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\ttitle: props.windowIdentifier?.windowName || document.title,\n\t\t\ticon: null,\n\t\t\t// The \"windowName\" is the name of the window which corresponds to the this instance of the\n\t\t\t// Title component, though the actual current window may belong to some other\n\t\t\t// component(ie this tab represents an inactive window)\n\t\t\twindowName: props.windowIdentifier?.windowName,\n\t\t};\n\n\t\t// Bind the \"updateTitle\" function (in order to use React component functions)\n\t\tthis.updateTitle = this.updateTitle.bind(this);\n\t}\n\n\t/**\n\t * Sets the title of the window.\n\t *\n\t * @param title the window title\n\t */\n\t#setWindowTitle(title: string) {\n\t\tdocument.title = title;\n\t}\n\n\t/**\n\t * Sets the title of the tab.\n\t *\n\t * @param title the title of the tab\n\t */\n\tasync #setTabTitle(title: string) {\n\t\t// The window represented by this tab title instance\n\t\tconst tabWindow = await getCorrespondingFinsembleWindow(this.props.windowIdentifier);\n\t\t// \"tabWindowOptions\" refers to the options from the window which hosts the component represented by this tab\n\t\tconst { data: tabWindowOptions } = await tabWindow.getOptions();\n\n\t\t// If there is no title then use some logic to derive a title\n\t\tif (!title) {\n\t\t\t// This code runs when there is no tab name in the store. This happens when a workspace is loaded and\n\t\t\t// the workspace has stacked windows. In this case, fallback to:\n\t\t\t// 1.) the displayName from the manifest (there are TWO places to look in the manifest!)\n\t\t\t// 2.) the title from the WindowClient (this is only correct for the hosting tab!)\n\t\t\t// 3.) the title from the window title bar (this is only correct for the hosting tab!)\n\t\t\t// 4.) the name of the window which is hosting the window associated with the tab\n\t\t\t// 5.) the empty string\n\t\t\t//\n\t\t\t// Note that in most cases this name is temporarty since most components will update their title with\n\t\t\t// a call to \"document.title='...some title!'\"\n\t\t\tFSBL.Clients.Logger.debug(\n\t\t\t\t`No stored tab tile for \"${this.props.windowIdentifier.windowName}\"; falling back to code-based derivation`\n\t\t\t);\n\n\t\t\t// \"windowClientOptions\" refers to the options from the window which hosts\n\t\t\t// all the tabs (this will always be the currently active component / window)\n\t\t\tconst { options: windowClientOptions } = FSBL.Clients.WindowClient;\n\t\t\tconst windowTitleBarConfig = windowClientOptions?.customData?.foreign?.components[\"Window Manager\"];\n\n\t\t\t// Display name is the first candidate for the title\n\t\t\tconst displayName =\n\t\t\t\t// From the appd manifest\n\t\t\t\ttabWindowOptions?.customData?.appDConfig?.manifest?.component?.displayName ||\n\t\t\t\t// This seems like a default\n\t\t\t\ttabWindowOptions?.customData?.component?.displayName;\n\n\t\t\t// The title assignment\n\t\t\ttitle = displayName || FSBL.Clients.WindowClient.title || windowTitleBarConfig?.title || tabWindow.name || \"\";\n\t\t}\n\n\t\t// Get the icon from the config for the TAB window (not the CURRENT window)\n\t\tconst icon = iconFromConfig(tabWindowOptions?.customData?.foreign?.components?.Toolbar, title);\n\n\t\t// Get the component state for THIS component (the tab title)\n\t\t// The field \"persistedTitle\" is set when a tab has been edited via EditTab\n\t\ttabWindow.getComponentState({ field: FIELD_NAME_PERSISTED_TITLE }, (error: any, persistedTitle: any) => {\n\t\t\t// When the component is being mounted/unmounted quickly, this code may be run during a time when\n\t\t\t// the component is not mounted. This check prevents React warnings in the dev console.\n\t\t\tif (!this._mounted) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If there is a \"persistedTitle\" then the title has been edited by a user\n\t\t\tif (persistedTitle) {\n\t\t\t\t// Set the title to the edited title\n\t\t\t\ttitle = persistedTitle;\n\t\t\t}\n\t\t\tFSBL.Clients.Logger.debug(`Setting tab title ${title} for window ${this.props.windowIdentifier.windowName}`);\n\n\t\t\t// Finally, set the state\n\t\t\tthis.setState({\n\t\t\t\ttitle: title,\n\t\t\t\ticon: icon,\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Updates the title for both the tab and the window.\n\t *\n\t * @returns a Promise which resolves nothing\n\t */\n\tasync updateTitle() {\n\t\t// Get the store (which holds the values for the tab titles)\n\t\tconst store = await getWindowTabNameStore();\n\t\t// If the store is unavailable, then the tab name cannot be updated\n\t\tif (!store) {\n\t\t\t// This is not critical, but tab titles may be stale\n\t\t\tFSBL.Clients.Logger.warn(\"Error setting the tab title: the store was not found\");\n\t\t\treturn;\n\t\t}\n\n\t\t// The FinsembleWindow which represents the current window\n\t\tconst { data: windowTitle } = await store.getGlobalValue(finsembleWindow.thisWindowName);\n\t\t// The FinsembleWindow instance which this Title component represents\n\t\tconst { data: tabTitle } = await store.getGlobalValue(this.props.windowIdentifier.windowName);\n\n\t\t// There is a subtle difference bewtween windowTitle and tabTitle. Since this code executes\n\t\t// when *any* tab has a name change, this code can execute when the active window represents\n\t\t// a tab other than the currently rendering tab (ie an inactive tab).\n\n\t\tthis.#setTabTitle(tabTitle);\n\t\tthis.#setWindowTitle(windowTitle);\n\t}\n\n\t/**\n\t * Adds the listener(s) required to set window and tab titles.\n\t */\n\tasync #addListeners() {\n\t\t// Subscribe to the DistributedStoreClient (these messages originate from BaseWindow, when the\n\t\t// DistributedStore has been updated).\n\t\t//\n\t\t// Each window will have n listeners, where n is the number of tabs held in the window.\n\n\t\t// Get the store and add a listener\n\t\tconst store = await getWindowTabNameStore();\n\n\t\t// If the store is unavailable, then the tab name cannot be updated\n\t\tif (!store) {\n\t\t\t// This is not critical, but tab titles may be stale\n\t\t\tFSBL.Clients.Logger.warn(\"Error adding a tab title listener: the store was not found\");\n\t\t\treturn;\n\t\t}\n\n\t\t// Add a listener\n\t\tstore.addListener({ field: this.props.windowIdentifier.windowName }, this.tabTitleChangedStoreListener, () => {\n\t\t\tFSBL.Clients.Logger.debug(\n\t\t\t\t`Added listener to store \"${WINDOW_TAB_TITLE_STORE}\" for field \"${this.props.windowIdentifier.windowName}\"`\n\t\t\t);\n\t\t});\n\t}\n\n\t/**\n\t * Removes listener(s) required to set window and tab titles.\n\t */\n\tasync #removeListeners() {\n\t\t// Unsubscribe from the window/tab store\n\t\tconst store = await getWindowTabNameStore();\n\t\t// If the store is unavailable, then the tab name cannot be updated\n\t\tif (!store) {\n\t\t\t// This is not critical, but tab titles may be stale\n\t\t\tFSBL.Clients.Logger.warn(\"Error removing a tab title listener: the store was not found\");\n\t\t\treturn;\n\t\t}\n\t\tstore.removeListener(\n\t\t\t{ field: this.props.windowIdentifier.windowName },\n\t\t\tthis.tabTitleChangedStoreListener,\n\t\t\t(err: StandardError, response: boolean | undefined) => {\n\t\t\t\tif (!!err) {\n\t\t\t\t\t// This is not critical; the listener could not be removed from the store - this may be a memory leak\n\t\t\t\t\tFSBL.Clients.Logger.warn(\n\t\t\t\t\t\t`Could not remove listener from store \"${WINDOW_TAB_TITLE_STORE}\" for field \"${this.props.windowIdentifier.windowName}\"`,\n\t\t\t\t\t\terr\n\t\t\t\t\t);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tFSBL.Clients.Logger.debug(\n\t\t\t\t\t`Removed listener to store \"${WINDOW_TAB_TITLE_STORE}\" for field \"${this.props.windowIdentifier.windowName}\"`\n\t\t\t\t);\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * React component lifecycle event, triggered once the component has been added to the DOM.\n\t */\n\tcomponentDidMount() {\n\t\t// Set the mounted flag to true (this component is currently mounted)\n\t\tthis._mounted = true;\n\n\t\t// Add listeners\n\t\tthis.#addListeners();\n\t}\n\n\t// Triggers a re-rendering of the drag handle in the title bar.\n\tcomponentDidUpdate() {\n\t\tif (typeof this.props.onUpdate === \"function\") {\n\t\t\tthis.props.onUpdate();\n\t\t}\n\t}\n\n\t/**\n\t * React component lifecycle event, triggered before the component is removed from the DOM.\n\t */\n\tcomponentWillUnmount() {\n\t\t// Set the mounted flag to false (this component is not currently mounted)\n\t\tthis._mounted = false;\n\n\t\t// Remove listeners\n\t\tthis.#removeListeners();\n\t}\n\n\trender() {\n\t\tconst { titleWidth } = this.props;\n\t\tconst style = titleWidth ? { width: titleWidth } : {};\n\t\treturn (\n\t\t\t<EditTab\n\t\t\t\ttabWidth={titleWidth}\n\t\t\t\tsetActiveTab={this?.props?.onClick}\n\t\t\t\ttitle={this.state.title}\n\t\t\t\t// The windowIdentifier indicates which app/component this tab instance should represent\n\t\t\t\twindowIdentifier={this.props.windowIdentifier}\n\t\t\t>\n\t\t\t\t<div className=\"fsbl-tab-title\" style={style}>\n\t\t\t\t\t{this.state.icon && <Icon {...this.state.icon} />}\n\t\t\t\t\t<div className=\"title-text\">{this.state.title}</div>\n\t\t\t\t</div>\n\t\t\t</EditTab>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["export { WindowTitleBarShell } from \"./WindowTitleBarShell\";\r\nexport { LinkerButton } from \"./components/left/LinkerButton\";\r\nexport { ShareButton } from \"./components/left/ShareButton\";\r\nexport { TabRegion } from \"./components/center/TabRegion\";\r\nexport { AlwaysOnTopButton } from \"./components/right/AlwaysOnTopButton\";\r\nexport { MinimizeButton } from \"./components/right/MinimizeButton\";\r\nexport { MaximizeButton } from \"./components/right/MaximizeButton\";\r\nexport { CloseButton } from \"./components/right/CloseButton\";\r\nexport { GroupingButton } from \"./components/right/GroupingButton\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/windowTitleBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["export { WindowTitleBarShell } from \"./WindowTitleBarShell\";\nexport { LinkerButton } from \"./components/left/LinkerButton\";\nexport { ShareButton } from \"./components/left/ShareButton\";\nexport { TabRegion } from \"./components/center/TabRegion\";\nexport { AlwaysOnTopButton } from \"./components/right/AlwaysOnTopButton\";\nexport { MinimizeButton } from \"./components/right/MinimizeButton\";\nexport { MaximizeButton } from \"./components/right/MaximizeButton\";\nexport { CloseButton } from \"./components/right/CloseButton\";\nexport { GroupingButton } from \"./components/right/GroupingButton\";\n"]}
@@ -1,6 +1,6 @@
1
- import { StandardCallback } from "@finsemble/finsemble-core/types/types";
2
- import { FinsembleWindow, WindowIdentifier } from "@finsemble/finsemble-core";
3
- import StoreModel from "@finsemble/finsemble-core/types/clients/StoreModel";
1
+ import { StandardCallback } from "@finsemble/finsemble-api/types/types";
2
+ import { FinsembleWindow, WindowIdentifier } from "@finsemble/finsemble-api";
3
+ import StoreModel from "@finsemble/finsemble-api/types/clients/StoreModel";
4
4
  declare type ParentParams = {
5
5
  windowIdentifiers: WindowIdentifier[];
6
6
  visibleWindowIdentifier: WindowIdentifier;