@finsemble/finsemble-ui 7.0.0 → 7.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (787) hide show
  1. package/package.json +13 -11
  2. package/react/actions/favoriteActions.d.ts +1 -0
  3. package/react/actions/favoriteActions.js +1 -0
  4. package/react/actions/favoriteActions.js.map +1 -1
  5. package/react/actions/menuActions.d.ts +1 -0
  6. package/react/actions/menuActions.js +1 -0
  7. package/react/actions/menuActions.js.map +1 -1
  8. package/react/actions/rootActions.d.ts +1 -0
  9. package/react/actions/rootActions.js +1 -0
  10. package/react/actions/rootActions.js.map +1 -1
  11. package/react/actions/searchActions.d.ts +1 -0
  12. package/react/actions/searchActions.js +1 -0
  13. package/react/actions/searchActions.js.map +1 -1
  14. package/react/actions/toolbarActions.d.ts +34 -0
  15. package/react/actions/toolbarActions.js +17 -0
  16. package/react/actions/toolbarActions.js.map +1 -1
  17. package/react/actions/workspaceActions.d.ts +1 -0
  18. package/react/actions/workspaceActions.js +1 -0
  19. package/react/actions/workspaceActions.js.map +1 -1
  20. package/react/assets/css/advancedAppLauncher.css +22 -19
  21. package/react/assets/css/appCatalog.css +67 -72
  22. package/react/assets/css/authentication.css +4 -3
  23. package/react/assets/css/button.css +3 -10
  24. package/react/assets/css/core/formElements.css +1 -1
  25. package/react/assets/css/core/icons.css +3 -2
  26. package/react/assets/css/core/notifications.css +2 -2
  27. package/react/assets/css/core/windowFrame.css +9 -9
  28. package/react/assets/css/dashbar.css +1 -1
  29. package/react/assets/css/defaultTheme.css +9 -53
  30. package/react/assets/css/dialogs.css +13 -11
  31. package/react/assets/css/favorites.css +3 -1
  32. package/react/assets/css/finsemble.css +3 -2
  33. package/react/assets/css/font-finance.css +233 -120
  34. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +10 -10
  35. package/react/assets/css/linkerWindow.css +2 -2
  36. package/react/assets/css/menus.css +10 -10
  37. package/react/assets/css/notificationsCenter.css +16 -31
  38. package/react/assets/css/processMonitor.css +7 -4
  39. package/react/assets/css/search.css +1 -1
  40. package/react/assets/css/shared/animations.css +10 -4
  41. package/react/assets/css/shared/common.css +2 -2
  42. package/react/assets/css/tags.css +10 -10
  43. package/react/assets/css/toolbar.css +22 -19
  44. package/react/assets/css/userPreferences.css +12 -14
  45. package/react/assets/css/windowTitleBar.css +75 -36
  46. package/react/componentTemplateGenerator.js +3 -2
  47. package/react/componentTemplateGenerator.js.map +1 -1
  48. package/react/components/FinsembleProvider.d.ts +7 -0
  49. package/react/components/FinsembleProvider.js +2 -0
  50. package/react/components/FinsembleProvider.js.map +1 -1
  51. package/react/components/appCatalog/AppCatalog.d.ts +4 -0
  52. package/react/components/appCatalog/AppCatalog.js +4 -0
  53. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  54. package/react/components/appCatalog/AppCatalogComponent.d.ts +58 -0
  55. package/react/components/appCatalog/AppCatalogComponent.js +70 -1
  56. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  57. package/react/components/appCatalog/components/AppCard.d.ts +35 -0
  58. package/react/components/appCatalog/components/AppCard.js +42 -0
  59. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  60. package/react/components/appCatalog/components/AppResults.d.ts +10 -0
  61. package/react/components/appCatalog/components/AppResults.js +24 -0
  62. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  63. package/react/components/appCatalog/components/Carousel.d.ts +26 -0
  64. package/react/components/appCatalog/components/Carousel.js +34 -0
  65. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  66. package/react/components/appCatalog/components/EmptyResults.d.ts +4 -0
  67. package/react/components/appCatalog/components/EmptyResults.js +8 -0
  68. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  69. package/react/components/appCatalog/components/Hero.d.ts +15 -0
  70. package/react/components/appCatalog/components/Hero.js +15 -0
  71. package/react/components/appCatalog/components/Hero.js.map +1 -1
  72. package/react/components/appCatalog/components/Home.d.ts +6 -4
  73. package/react/components/appCatalog/components/Home.js +10 -0
  74. package/react/components/appCatalog/components/Home.js.map +1 -1
  75. package/react/components/appCatalog/components/SearchBar.d.ts +31 -0
  76. package/react/components/appCatalog/components/SearchBar.js +33 -0
  77. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  78. package/react/components/appCatalog/components/Showcase/AppDescription.d.ts +5 -0
  79. package/react/components/appCatalog/components/Showcase/AppDescription.js +9 -0
  80. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  81. package/react/components/appCatalog/components/Showcase/AppDevNotes.d.ts +7 -0
  82. package/react/components/appCatalog/components/Showcase/AppDevNotes.js +15 -0
  83. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  84. package/react/components/appCatalog/components/Showcase/AppShowcase.d.ts +17 -0
  85. package/react/components/appCatalog/components/Showcase/AppShowcase.js +25 -0
  86. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  87. package/react/components/appCatalog/components/Showcase/Header.d.ts +7 -0
  88. package/react/components/appCatalog/components/Showcase/Header.js +12 -0
  89. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  90. package/react/components/appCatalog/components/Showcase/ImageCarousel.d.ts +7 -0
  91. package/react/components/appCatalog/components/Showcase/ImageCarousel.js +11 -0
  92. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  93. package/react/components/appCatalog/components/Showcase/Modal.d.ts +10 -0
  94. package/react/components/appCatalog/components/Showcase/Modal.js +10 -0
  95. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  96. package/react/components/appCatalog/components/Showcase/ReleaseNotes.d.ts +5 -0
  97. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js +9 -0
  98. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  99. package/react/components/appCatalog/components/Showcase/SupportNotes.d.ts +6 -0
  100. package/react/components/appCatalog/components/Showcase/SupportNotes.js +11 -0
  101. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  102. package/react/components/appCatalog/components/Showcase/VersionNotes.d.ts +5 -0
  103. package/react/components/appCatalog/components/Showcase/VersionNotes.js +9 -0
  104. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  105. package/react/components/appCatalog/components/Tag.d.ts +6 -0
  106. package/react/components/appCatalog/components/Tag.js +10 -0
  107. package/react/components/appCatalog/components/Tag.js.map +1 -1
  108. package/react/components/appCatalog/components/Toast.d.ts +5 -0
  109. package/react/components/appCatalog/components/Toast.js +9 -0
  110. package/react/components/appCatalog/components/Toast.js.map +1 -1
  111. package/react/components/appCatalog/components/helpers.js +1 -0
  112. package/react/components/appCatalog/components/helpers.js.map +1 -1
  113. package/react/components/appCatalog/modules/AppDirectory.d.ts +5 -0
  114. package/react/components/appCatalog/modules/AppDirectory.js +5 -0
  115. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  116. package/react/components/appCatalog/modules/FDC3.d.ts +37 -0
  117. package/react/components/appCatalog/modules/FDC3.js +40 -0
  118. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  119. package/react/components/appCatalog/stores/appStore.js +1 -0
  120. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  121. package/react/components/appCatalog/stores/storeActions.d.ts +91 -0
  122. package/react/components/appCatalog/stores/storeActions.js +116 -1
  123. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  124. package/react/components/common/Checkbox.d.ts +1 -0
  125. package/react/components/common/Checkbox.js +2 -2
  126. package/react/components/common/Checkbox.js.map +1 -1
  127. package/react/components/common/ColorPicker.d.ts +5 -0
  128. package/react/components/common/ColorPicker.js +40 -0
  129. package/react/components/common/ColorPicker.js.map +1 -1
  130. package/react/components/common/DropZone.d.ts +11 -0
  131. package/react/components/common/DropZone.js +21 -1
  132. package/react/components/common/DropZone.js.map +1 -1
  133. package/react/components/common/DropdownButton.d.ts +4 -0
  134. package/react/components/common/DropdownButton.js +4 -0
  135. package/react/components/common/DropdownButton.js.map +1 -1
  136. package/react/components/common/ErrorBoundary.d.ts +18 -0
  137. package/react/components/common/ErrorBoundary.js +21 -0
  138. package/react/components/common/ErrorBoundary.js.map +1 -1
  139. package/react/components/common/FileInput.d.ts +8 -1
  140. package/react/components/common/FileInput.js +19 -4
  141. package/react/components/common/FileInput.js.map +1 -1
  142. package/react/components/common/FinsembleIcon.d.ts +10 -0
  143. package/react/components/common/FinsembleIcon.js +51 -2
  144. package/react/components/common/FinsembleIcon.js.map +1 -1
  145. package/react/components/common/FinsembleSelect.js +5 -1
  146. package/react/components/common/FinsembleSelect.js.map +1 -1
  147. package/react/components/common/FinsembleToggleButtonBar.js +1 -1
  148. package/react/components/common/FinsembleToggleButtonBar.js.map +1 -1
  149. package/react/components/common/InputTable.d.ts +7 -0
  150. package/react/components/common/InputTable.js +7 -0
  151. package/react/components/common/InputTable.js.map +1 -1
  152. package/react/components/common/Tab.js +3 -0
  153. package/react/components/common/Tab.js.map +1 -1
  154. package/react/components/common/TimeSelect.js +24 -0
  155. package/react/components/common/TimeSelect.js.map +1 -1
  156. package/react/components/common/Tooltip.js +2 -0
  157. package/react/components/common/Tooltip.js.map +1 -1
  158. package/react/components/common/css/accordion.css +9 -6
  159. package/react/components/common/css/application-edit-page.css +39 -44
  160. package/react/components/common/css/button.css +10 -5
  161. package/react/components/common/css/color-picker.css +3 -3
  162. package/react/components/common/css/drop-zone.css +2 -6
  163. package/react/components/common/css/file-input.css +5 -5
  164. package/react/components/common/css/header.css +3 -2
  165. package/react/components/common/css/icon.css +1 -1
  166. package/react/components/common/css/loading-spinner.css +7 -12
  167. package/react/components/common/css/selector.css +4 -4
  168. package/react/components/common/css/styles.css +22 -16
  169. package/react/components/common/css/tab.css +8 -8
  170. package/react/components/common/css/time-select.css +1 -0
  171. package/react/components/common/css/toggle.css +4 -4
  172. package/react/components/common/css/tooltip.css +2 -3
  173. package/react/components/common/file_helpers.js +2 -0
  174. package/react/components/common/file_helpers.js.map +1 -1
  175. package/react/components/common/helpers.js +1 -0
  176. package/react/components/common/helpers.js.map +1 -1
  177. package/react/components/common/stories/ColorPicker.stories.js +3 -0
  178. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  179. package/react/components/common/stories/FileInput.stories.d.ts +3 -1
  180. package/react/components/common/stories/FileInput.stories.js +12 -0
  181. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  182. package/react/components/common/tests/Accordion.spec.js +6 -0
  183. package/react/components/common/tests/Accordion.spec.js.map +1 -1
  184. package/react/components/common/tests/Checkbox.spec.js +1 -0
  185. package/react/components/common/tests/Checkbox.spec.js.map +1 -1
  186. package/react/components/common/tests/ColorPicker.spec.js +6 -0
  187. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  188. package/react/components/common/tests/DropZone.spec.js +1 -0
  189. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  190. package/react/components/common/tests/FileInput.spec.js +22 -0
  191. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  192. package/react/components/common/tests/FinsembleSelect.spec.js +1 -0
  193. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  194. package/react/components/common/tests/FinsembleToggle.spec.js +1 -0
  195. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  196. package/react/components/common/tests/FinsembleToggleButtonBar.spec.js +1 -0
  197. package/react/components/common/tests/FinsembleToggleButtonBar.spec.js.map +1 -1
  198. package/react/components/common/tests/TimeSelect.spec.js +4 -0
  199. package/react/components/common/tests/TimeSelect.spec.js.map +1 -1
  200. package/react/components/common/tests/Tooltip.spec.js +16 -0
  201. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  202. package/react/components/favorites/FavoriteMaker.d.ts +8 -0
  203. package/react/components/favorites/FavoriteMaker.js +9 -0
  204. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  205. package/react/components/favorites/FavoritesShell.d.ts +4 -0
  206. package/react/components/favorites/FavoritesShell.js +13 -1
  207. package/react/components/favorites/FavoritesShell.js.map +1 -1
  208. package/react/components/favorites/FavoritesShell.spec.js +3 -0
  209. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  210. package/react/components/fdc3Resolver/ResolverContainer.js +8 -0
  211. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  212. package/react/components/fdc3Resolver/ResolverDialog.css +16 -3
  213. package/react/components/fdc3Resolver/ResolverDialog.js +7 -2
  214. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  215. package/react/components/fdc3Resolver/ResolverDialog.spec.js +3 -2
  216. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  217. package/react/components/fdc3Resolver/ResolverDialog.stories.js +2 -0
  218. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  219. package/react/components/icon/Icon.d.ts +13 -0
  220. package/react/components/icon/Icon.js +34 -0
  221. package/react/components/icon/Icon.js.map +1 -1
  222. package/react/components/legacyControls/FinsembleDialog.d.ts +4 -0
  223. package/react/components/legacyControls/FinsembleDialog.js +15 -0
  224. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  225. package/react/components/legacyControls/FinsembleDialogButton.d.ts +3 -0
  226. package/react/components/legacyControls/FinsembleDialogButton.js +6 -1
  227. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  228. package/react/components/legacyControls/FinsembleDialogQuestion.d.ts +7 -0
  229. package/react/components/legacyControls/FinsembleDialogQuestion.js +7 -0
  230. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  231. package/react/components/legacyControls/FinsembleDialogTextInput.d.ts +3 -0
  232. package/react/components/legacyControls/FinsembleDialogTextInput.js +14 -0
  233. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  234. package/react/components/legacyControls/FinsembleDnDContext.d.ts +19 -0
  235. package/react/components/legacyControls/FinsembleDnDContext.js +126 -1
  236. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  237. package/react/components/legacyControls/FinsembleDraggable.d.ts +3 -0
  238. package/react/components/legacyControls/FinsembleDraggable.js +3 -0
  239. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  240. package/react/components/legacyControls/FinsembleHoverDetector.d.ts +15 -0
  241. package/react/components/legacyControls/FinsembleHoverDetector.js +26 -1
  242. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  243. package/react/components/legacyControls/FinsembleMenuSection.d.ts +4 -0
  244. package/react/components/legacyControls/FinsembleMenuSection.js +38 -0
  245. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  246. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js +1 -0
  247. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  248. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js +1 -0
  249. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  250. package/react/components/linker/LinkerMenu.d.ts +3 -0
  251. package/react/components/linker/LinkerMenu.js +21 -0
  252. package/react/components/linker/LinkerMenu.js.map +1 -1
  253. package/react/components/linker/LinkerMenuDeprecated.d.ts +3 -0
  254. package/react/components/linker/LinkerMenuDeprecated.js +9 -0
  255. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  256. package/react/components/menu/Menu.d.ts +15 -0
  257. package/react/components/menu/Menu.js +15 -0
  258. package/react/components/menu/Menu.js.map +1 -1
  259. package/react/components/menu/MenuAutoResizer.d.ts +7 -0
  260. package/react/components/menu/MenuAutoResizer.js +27 -0
  261. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  262. package/react/components/menu/MenuContent.d.ts +4 -0
  263. package/react/components/menu/MenuContent.js +4 -0
  264. package/react/components/menu/MenuContent.js.map +1 -1
  265. package/react/components/menu/MenuHotKey.d.ts +14 -0
  266. package/react/components/menu/MenuHotKey.js +15 -0
  267. package/react/components/menu/MenuHotKey.js.map +1 -1
  268. package/react/components/menu/MenuItem.d.ts +8 -0
  269. package/react/components/menu/MenuItem.js +13 -2
  270. package/react/components/menu/MenuItem.js.map +1 -1
  271. package/react/components/menu/MenuPortal.js +112 -2
  272. package/react/components/menu/MenuPortal.js.map +1 -1
  273. package/react/components/menu/MenuShell.d.ts +16 -0
  274. package/react/components/menu/MenuShell.js +26 -0
  275. package/react/components/menu/MenuShell.js.map +1 -1
  276. package/react/components/menu/MenuToggle.d.ts +3 -0
  277. package/react/components/menu/MenuToggle.js +3 -0
  278. package/react/components/menu/MenuToggle.js.map +1 -1
  279. package/react/components/menu/keyboardNavigation.d.ts +12 -0
  280. package/react/components/menu/keyboardNavigation.js +55 -0
  281. package/react/components/menu/keyboardNavigation.js.map +1 -1
  282. package/react/components/menu/menuContext.d.ts +6 -0
  283. package/react/components/menu/menuContext.js +6 -0
  284. package/react/components/menu/menuContext.js.map +1 -1
  285. package/react/components/menu/menuHelpers.d.ts +22 -0
  286. package/react/components/menu/menuHelpers.js +58 -1
  287. package/react/components/menu/menuHelpers.js.map +1 -1
  288. package/react/components/notifications/components/drawer/DrawerControls.js +8 -0
  289. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  290. package/react/components/notifications/components/drawer/DrawerHeader.js +5 -0
  291. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  292. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js +18 -0
  293. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  294. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js +3 -0
  295. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  296. package/react/components/notifications/components/shared/CheckButton.js +1 -1
  297. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  298. package/react/components/notifications/components/shared/NotificationCardShell.d.ts +9 -0
  299. package/react/components/notifications/components/shared/NotificationCardShell.js +13 -6
  300. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  301. package/react/components/notifications/components/shared/OverflowMenu.d.ts +4 -0
  302. package/react/components/notifications/components/shared/OverflowMenu.js +16 -2
  303. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  304. package/react/components/notifications/components/views/CardView.js +3 -0
  305. package/react/components/notifications/components/views/CardView.js.map +1 -1
  306. package/react/components/notifications/components/views/ListView.js +8 -0
  307. package/react/components/notifications/components/views/ListView.js.map +1 -1
  308. package/react/components/notifications/notificationsContext.d.ts +4 -0
  309. package/react/components/notifications/notificationsContext.js +4 -0
  310. package/react/components/notifications/notificationsContext.js.map +1 -1
  311. package/react/components/notifications/types.d.ts +3 -0
  312. package/react/components/notifications/utils.d.ts +4 -0
  313. package/react/components/notifications/utils.js +4 -0
  314. package/react/components/notifications/utils.js.map +1 -1
  315. package/react/components/processMonitor/ProcessMonitor.d.ts +3 -0
  316. package/react/components/processMonitor/ProcessMonitor.js +17 -2
  317. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  318. package/react/components/processMonitor/components/ChildWindow.d.ts +3 -0
  319. package/react/components/processMonitor/components/ChildWindow.js +5 -0
  320. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  321. package/react/components/processMonitor/components/ListHeader.d.ts +5 -0
  322. package/react/components/processMonitor/components/ListHeader.js +7 -0
  323. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  324. package/react/components/processMonitor/components/ProcessStatistics.js +12 -1
  325. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  326. package/react/components/processMonitor/constants.js +6 -0
  327. package/react/components/processMonitor/constants.js.map +1 -1
  328. package/react/components/processMonitor/helpers.d.ts +13 -0
  329. package/react/components/processMonitor/helpers.js +23 -3
  330. package/react/components/processMonitor/helpers.js.map +1 -1
  331. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +39 -0
  332. package/react/components/processMonitor/stores/ProcessMonitorStore.js +50 -0
  333. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  334. package/react/components/quickComponentForm/QuickComponentForm.d.ts +3 -0
  335. package/react/components/quickComponentForm/QuickComponentForm.js +20 -0
  336. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  337. package/react/components/quickComponentForm/quickComponent.css +1 -1
  338. package/react/components/sdd/AddApp.d.ts +4 -2
  339. package/react/components/sdd/AddApp.js +57 -49
  340. package/react/components/sdd/AddApp.js.map +1 -1
  341. package/react/components/sdd/AppEditAccess.js +8 -0
  342. package/react/components/sdd/AppEditAccess.js.map +1 -1
  343. package/react/components/sdd/AppEditPage.d.ts +2 -1
  344. package/react/components/sdd/AppEditPage.js +148 -361
  345. package/react/components/sdd/AppEditPage.js.map +1 -1
  346. package/react/components/sdd/Appearance.css +1 -1
  347. package/react/components/sdd/Appearance.js +3 -0
  348. package/react/components/sdd/Appearance.js.map +1 -1
  349. package/react/components/sdd/Application.js +39 -7
  350. package/react/components/sdd/Application.js.map +1 -1
  351. package/react/components/sdd/Applications.js +89 -13
  352. package/react/components/sdd/Applications.js.map +1 -1
  353. package/react/components/sdd/AssetsPage.css +3 -3
  354. package/react/components/sdd/EditPreload.js +10 -0
  355. package/react/components/sdd/EditPreload.js.map +1 -1
  356. package/react/components/sdd/ExportCloud.js +4 -0
  357. package/react/components/sdd/ExportCloud.js.map +1 -1
  358. package/react/components/sdd/Publish.js +2 -0
  359. package/react/components/sdd/Publish.js.map +1 -1
  360. package/react/components/sdd/PublishProgress.js +11 -1
  361. package/react/components/sdd/PublishProgress.js.map +1 -1
  362. package/react/components/sdd/SmartDesktopDesigner.js +17 -0
  363. package/react/components/sdd/SmartDesktopDesigner.js.map +1 -1
  364. package/react/components/sdd/ThemePage.css +6 -23
  365. package/react/components/sdd/ThemePage.js +1 -1
  366. package/react/components/sdd/ThemePage.js.map +1 -1
  367. package/react/components/sdd/Themes.js +2 -0
  368. package/react/components/sdd/Themes.js.map +1 -1
  369. package/react/components/sdd/Toolbar.js +7 -0
  370. package/react/components/sdd/Toolbar.js.map +1 -1
  371. package/react/components/sdd/appEditPage/Behavior.d.ts +34 -0
  372. package/react/components/sdd/appEditPage/Behavior.js +134 -0
  373. package/react/components/sdd/appEditPage/Behavior.js.map +1 -0
  374. package/react/components/sdd/appEditPage/Component.d.ts +22 -0
  375. package/react/components/sdd/appEditPage/Component.js +76 -0
  376. package/react/components/sdd/appEditPage/Component.js.map +1 -0
  377. package/react/components/sdd/appEditPage/DebugToolkit.d.ts +9 -0
  378. package/react/components/sdd/appEditPage/DebugToolkit.js +20 -0
  379. package/react/components/sdd/appEditPage/DebugToolkit.js.map +1 -0
  380. package/react/components/sdd/appEditPage/Interop.d.ts +10 -0
  381. package/react/components/sdd/appEditPage/Interop.js +40 -0
  382. package/react/components/sdd/appEditPage/Interop.js.map +1 -0
  383. package/react/components/sdd/appEditPage/Position.d.ts +18 -0
  384. package/react/components/sdd/appEditPage/Position.js +72 -0
  385. package/react/components/sdd/appEditPage/Position.js.map +1 -0
  386. package/react/components/sdd/appEditPage/Preloads.d.ts +9 -0
  387. package/react/components/sdd/appEditPage/Preloads.js +16 -0
  388. package/react/components/sdd/appEditPage/Preloads.js.map +1 -0
  389. package/react/components/sdd/appEditPage/SelectConnect.d.ts +15 -0
  390. package/react/components/sdd/appEditPage/SelectConnect.js +28 -0
  391. package/react/components/sdd/appEditPage/SelectConnect.js.map +1 -0
  392. package/react/components/sdd/appEditPage/Workspace.d.ts +12 -0
  393. package/react/components/sdd/appEditPage/Workspace.js +30 -0
  394. package/react/components/sdd/appEditPage/Workspace.js.map +1 -0
  395. package/react/components/sdd/common/getCSSVars.js +7 -2
  396. package/react/components/sdd/common/getCSSVars.js.map +1 -1
  397. package/react/components/sdd/common/setPreloadDefaults.js +4 -0
  398. package/react/components/sdd/common/setPreloadDefaults.js.map +1 -1
  399. package/react/components/sdd/css/addApp.css +18 -5
  400. package/react/components/sdd/css/appearance.css +6 -0
  401. package/react/components/sdd/css/applications.css +27 -14
  402. package/react/components/sdd/css/authentication.css +7 -6
  403. package/react/components/sdd/css/buttons.css +1 -1
  404. package/react/components/sdd/css/export.css +5 -3
  405. package/react/components/sdd/css/getting-started.css +2 -2
  406. package/react/components/sdd/css/nav.css +8 -11
  407. package/react/components/sdd/css/project-header.css +5 -7
  408. package/react/components/sdd/css/styles.css +29 -23
  409. package/react/components/sdd/css/views.css +4 -3
  410. package/react/components/sdd/fixtures/apps.js +12 -0
  411. package/react/components/sdd/fixtures/apps.js.map +1 -1
  412. package/react/components/sdd/fixtures/configTemplate.js +1 -0
  413. package/react/components/sdd/fixtures/configTemplate.js.map +1 -1
  414. package/react/components/sdd/fixtures/publishProgress.js +40 -0
  415. package/react/components/sdd/fixtures/publishProgress.js.map +1 -1
  416. package/react/components/sdd/sdd_helpers.d.ts +6 -0
  417. package/react/components/sdd/sdd_helpers.js +6 -0
  418. package/react/components/sdd/sdd_helpers.js.map +1 -1
  419. package/react/components/sdd/smartDesktopClient.d.ts +303 -0
  420. package/react/components/sdd/smartDesktopClient.js +334 -1
  421. package/react/components/sdd/smartDesktopClient.js.map +1 -1
  422. package/react/components/sdd/smartDesktopClient.spec.js +5 -2
  423. package/react/components/sdd/smartDesktopClient.spec.js.map +1 -1
  424. package/react/components/sdd/stories/AddApp.stories.d.ts +2 -1
  425. package/react/components/sdd/stories/AddApp.stories.js +8 -0
  426. package/react/components/sdd/stories/AddApp.stories.js.map +1 -1
  427. package/react/components/sdd/stories/AppEditPage.stories.d.ts +3 -1
  428. package/react/components/sdd/stories/AppEditPage.stories.js +3 -0
  429. package/react/components/sdd/stories/AppEditPage.stories.js.map +1 -1
  430. package/react/components/sdd/stories/Appearance.stories.js +1 -0
  431. package/react/components/sdd/stories/Appearance.stories.js.map +1 -1
  432. package/react/components/sdd/tests/AddApp.spec.js +40 -3
  433. package/react/components/sdd/tests/AddApp.spec.js.map +1 -1
  434. package/react/components/sdd/tests/AppEditPage.spec.js +16 -0
  435. package/react/components/sdd/tests/AppEditPage.spec.js.map +1 -1
  436. package/react/components/sdd/tests/Application.spec.js +33 -438
  437. package/react/components/sdd/tests/Application.spec.js.map +1 -1
  438. package/react/components/sdd/tests/Applications.spec.d.ts +1 -1
  439. package/react/components/sdd/tests/Applications.spec.js +29 -5
  440. package/react/components/sdd/tests/Applications.spec.js.map +1 -1
  441. package/react/components/sdd/tests/Authentication.spec.js +7 -0
  442. package/react/components/sdd/tests/Authentication.spec.js.map +1 -1
  443. package/react/components/sdd/tests/ContentHeader.spec.js +2 -0
  444. package/react/components/sdd/tests/ContentHeader.spec.js.map +1 -1
  445. package/react/components/sdd/tests/EditPreload.spec.js +13 -0
  446. package/react/components/sdd/tests/EditPreload.spec.js.map +1 -1
  447. package/react/components/sdd/tests/Export.spec.js +2 -1
  448. package/react/components/sdd/tests/Export.spec.js.map +1 -1
  449. package/react/components/sdd/tests/ItemList.spec.js +4 -0
  450. package/react/components/sdd/tests/ItemList.spec.js.map +1 -1
  451. package/react/components/sdd/tests/OptionalSettingsView.spec.js +29 -0
  452. package/react/components/sdd/tests/OptionalSettingsView.spec.js.map +1 -1
  453. package/react/components/sdd/tests/ProjectErrors.spec.js +2 -0
  454. package/react/components/sdd/tests/ProjectErrors.spec.js.map +1 -1
  455. package/react/components/sdd/tests/Themes.spec.js +1 -1
  456. package/react/components/sdd/tests/Themes.spec.js.map +1 -1
  457. package/react/components/sdd/tests/Toolbar.spec.js +53 -0
  458. package/react/components/sdd/tests/Toolbar.spec.js.map +1 -1
  459. package/react/components/sdd/tests/a11y_helper.js +8 -0
  460. package/react/components/sdd/tests/a11y_helper.js.map +1 -1
  461. package/react/components/search/Highlight.d.ts +6 -0
  462. package/react/components/search/Highlight.js +19 -0
  463. package/react/components/search/Highlight.js.map +1 -1
  464. package/react/components/search/SearchBestMatch.d.ts +4 -0
  465. package/react/components/search/SearchBestMatch.js +11 -0
  466. package/react/components/search/SearchBestMatch.js.map +1 -1
  467. package/react/components/search/SearchInput.d.ts +5 -0
  468. package/react/components/search/SearchInput.js +6 -0
  469. package/react/components/search/SearchInput.js.map +1 -1
  470. package/react/components/search/SearchProviderResults.js +2 -0
  471. package/react/components/search/SearchProviderResults.js.map +1 -1
  472. package/react/components/search/SearchResult.js +6 -0
  473. package/react/components/search/SearchResult.js.map +1 -1
  474. package/react/components/search/SearchResult.spec.js +7 -0
  475. package/react/components/search/SearchResult.spec.js.map +1 -1
  476. package/react/components/search/SearchResult.stories.js +4 -0
  477. package/react/components/search/SearchResult.stories.js.map +1 -1
  478. package/react/components/search/SearchResults.js +5 -1
  479. package/react/components/search/SearchResults.js.map +1 -1
  480. package/react/components/search/SearchResults.spec.js +7 -0
  481. package/react/components/search/SearchResults.spec.js.map +1 -1
  482. package/react/components/shared/Animate.d.ts +5 -0
  483. package/react/components/shared/Animate.js +12 -1
  484. package/react/components/shared/Animate.js.map +1 -1
  485. package/react/components/shared/DefaultDropdownButton.js +9 -0
  486. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  487. package/react/components/shared/Tag.d.ts +0 -4
  488. package/react/components/shared/Tag.js +4 -0
  489. package/react/components/shared/Tag.js.map +1 -1
  490. package/react/components/shared/TagsMenu.d.ts +6 -0
  491. package/react/components/shared/TagsMenu.js +7 -0
  492. package/react/components/shared/TagsMenu.js.map +1 -1
  493. package/react/components/shared/addProtocolToValidURL.d.ts +6 -0
  494. package/react/components/shared/addProtocolToValidURL.js +6 -0
  495. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  496. package/react/components/shared/openQuitConfirmationDialog.d.ts +1 -1
  497. package/react/components/shared/openQuitConfirmationDialog.js +4 -4
  498. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  499. package/react/components/shared/tests/addProtocolToValidURL.spec.js +1 -0
  500. package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
  501. package/react/components/shared/validateURL.d.ts +18 -0
  502. package/react/components/shared/validateURL.js +24 -5
  503. package/react/components/shared/validateURL.js.map +1 -1
  504. package/react/components/singleInputDialog/SingleInputDialog.css +1 -1
  505. package/react/components/singleInputDialog/SingleInputDialog.d.ts +3 -0
  506. package/react/components/singleInputDialog/SingleInputDialog.js +44 -0
  507. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  508. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +6 -0
  509. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  510. package/react/components/system/System.d.ts +22 -0
  511. package/react/components/system/System.js +23 -1
  512. package/react/components/system/System.js.map +1 -1
  513. package/react/components/system/System.stories.js +1 -0
  514. package/react/components/system/System.stories.js.map +1 -1
  515. package/react/components/system/SystemTrayComponentShell.d.ts +6 -0
  516. package/react/components/system/SystemTrayComponentShell.js +9 -0
  517. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  518. package/react/components/toolbar/AutoArrange.d.ts +5 -0
  519. package/react/components/toolbar/AutoArrange.js +8 -1
  520. package/react/components/toolbar/AutoArrange.js.map +1 -1
  521. package/react/components/toolbar/AutoArrange.spec.js +1 -0
  522. package/react/components/toolbar/AutoArrange.spec.js.map +1 -1
  523. package/react/components/toolbar/AutoArrange.stories.js +1 -0
  524. package/react/components/toolbar/AutoArrange.stories.js.map +1 -1
  525. package/react/components/toolbar/DragHandle.d.ts +4 -0
  526. package/react/components/toolbar/DragHandle.js +11 -0
  527. package/react/components/toolbar/DragHandle.js.map +1 -1
  528. package/react/components/toolbar/DragHandle.spec.js +1 -0
  529. package/react/components/toolbar/DragHandle.spec.js.map +1 -1
  530. package/react/components/toolbar/DragHandle.stories.js +1 -0
  531. package/react/components/toolbar/DragHandle.stories.js.map +1 -1
  532. package/react/components/toolbar/MinimizeAll.d.ts +4 -0
  533. package/react/components/toolbar/MinimizeAll.js +7 -1
  534. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  535. package/react/components/toolbar/MinimizeAll.spec.js +1 -0
  536. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  537. package/react/components/toolbar/MinimizeAll.stories.js +1 -0
  538. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  539. package/react/components/toolbar/NotificationControl.d.ts +5 -0
  540. package/react/components/toolbar/NotificationControl.js +8 -1
  541. package/react/components/toolbar/NotificationControl.js.map +1 -1
  542. package/react/components/toolbar/RevealAll.d.ts +4 -0
  543. package/react/components/toolbar/RevealAll.js +7 -1
  544. package/react/components/toolbar/RevealAll.js.map +1 -1
  545. package/react/components/toolbar/RevealAll.spec.js +1 -0
  546. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  547. package/react/components/toolbar/RevealAll.stories.js +1 -0
  548. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  549. package/react/components/toolbar/SddButton.d.ts +4 -0
  550. package/react/components/toolbar/SddButton.js +4 -0
  551. package/react/components/toolbar/SddButton.js.map +1 -1
  552. package/react/components/toolbar/ToolbarIcon.d.ts +4 -0
  553. package/react/components/toolbar/ToolbarIcon.js +4 -0
  554. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  555. package/react/components/toolbar/ToolbarSection.d.ts +7 -0
  556. package/react/components/toolbar/ToolbarSection.js +19 -1
  557. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  558. package/react/components/toolbar/ToolbarShell.d.ts +5 -0
  559. package/react/components/toolbar/ToolbarShell.js +7 -0
  560. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  561. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.d.ts +16 -0
  562. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js +20 -0
  563. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  564. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.d.ts +52 -0
  565. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js +58 -0
  566. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  567. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.d.ts +5 -0
  568. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js +5 -0
  569. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  570. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.d.ts +27 -0
  571. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js +49 -0
  572. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  573. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.d.ts +13 -0
  574. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js +14 -0
  575. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  576. package/react/components/toolbar/advancedAppLauncher/components/Content.d.ts +5 -0
  577. package/react/components/toolbar/advancedAppLauncher/components/Content.js +19 -0
  578. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  579. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.d.ts +4 -0
  580. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js +4 -0
  581. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  582. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.d.ts +16 -0
  583. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js +39 -0
  584. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  585. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.d.ts +4 -0
  586. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js +9 -0
  587. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  588. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js +3 -0
  589. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  590. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.d.ts +6 -0
  591. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js +7 -0
  592. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  593. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.d.ts +5 -0
  594. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js +5 -0
  595. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  596. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.d.ts +5 -0
  597. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js +5 -0
  598. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  599. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.d.ts +37 -0
  600. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js +40 -0
  601. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  602. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.d.ts +3 -0
  603. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js +82 -0
  604. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  605. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.d.ts +10 -0
  606. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js +11 -0
  607. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  608. package/react/components/toolbar/appLauncher/AppLauncherMenu.d.ts +18 -0
  609. package/react/components/toolbar/appLauncher/AppLauncherMenu.js +20 -0
  610. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  611. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.d.ts +9 -0
  612. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js +12 -0
  613. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  614. package/react/components/toolbar/appLauncher/appLauncher.css +1 -1
  615. package/react/components/toolbar/appLauncher/components/componentList.d.ts +3 -0
  616. package/react/components/toolbar/appLauncher/components/componentList.js +17 -3
  617. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  618. package/react/components/toolbar/appLauncher/stores/appLauncherStore.d.ts +6 -0
  619. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js +26 -0
  620. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  621. package/react/components/toolbar/dashbar/Dashbar.js +70 -3
  622. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  623. package/react/components/toolbar/dashbar/DashbarItem.js +5 -0
  624. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  625. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.d.ts +7 -0
  626. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js +7 -0
  627. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  628. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.d.ts +16 -0
  629. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js +20 -0
  630. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  631. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.d.ts +26 -0
  632. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js +29 -0
  633. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  634. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.d.ts +5 -0
  635. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js +6 -0
  636. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  637. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.d.ts +76 -0
  638. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js +140 -1
  639. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  640. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +8 -18
  641. package/react/components/userPreferences/NotificationsPreferencesContext.d.ts +4 -0
  642. package/react/components/userPreferences/NotificationsPreferencesContext.js +4 -0
  643. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  644. package/react/components/userPreferences/UserPreferenceTypes.d.ts +3 -0
  645. package/react/components/userPreferences/UserPreferences.d.ts +8 -0
  646. package/react/components/userPreferences/UserPreferences.js +8 -0
  647. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  648. package/react/components/userPreferences/UserPreferencesBase.js +4 -0
  649. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  650. package/react/components/userPreferences/components/ContentSection.d.ts +5 -0
  651. package/react/components/userPreferences/components/LeftNav.d.ts +4 -0
  652. package/react/components/userPreferences/components/content/DashbarEditor.js +3 -0
  653. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  654. package/react/components/userPreferences/components/content/Notifications.js +3 -0
  655. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  656. package/react/components/userPreferences/components/content/Workspaces.d.ts +12 -0
  657. package/react/components/userPreferences/components/content/Workspaces.js +33 -1
  658. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  659. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js +3 -0
  660. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  661. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js +3 -0
  662. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  663. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js +3 -0
  664. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  665. package/react/components/userPreferences/components/general/ScheduledClose.js +11 -0
  666. package/react/components/userPreferences/components/general/ScheduledClose.js.map +1 -1
  667. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js +3 -0
  668. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
  669. package/react/components/userPreferences/stores/UserPreferencesStore.d.ts +17 -0
  670. package/react/components/userPreferences/stores/UserPreferencesStore.js +27 -0
  671. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  672. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js +1 -0
  673. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
  674. package/react/components/userPreferences/tests/Workspace.spec.js +20 -0
  675. package/react/components/userPreferences/tests/Workspace.spec.js.map +1 -1
  676. package/react/components/windowTitleBar/WindowTitleBarShell.d.ts +124 -0
  677. package/react/components/windowTitleBar/WindowTitleBarShell.js +284 -35
  678. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  679. package/react/components/windowTitleBar/components/center/Tab.d.ts +3 -0
  680. package/react/components/windowTitleBar/components/center/Tab.js +3 -0
  681. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  682. package/react/components/windowTitleBar/components/center/TabList.d.ts +90 -0
  683. package/react/components/windowTitleBar/components/center/TabList.js +170 -4
  684. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  685. package/react/components/windowTitleBar/components/left/LinkerButton.d.ts +9 -1
  686. package/react/components/windowTitleBar/components/left/LinkerButton.js +25 -9
  687. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  688. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.d.ts +47 -0
  689. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js +76 -1
  690. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  691. package/react/components/windowTitleBar/components/left/LinkerGroups.d.ts +4 -0
  692. package/react/components/windowTitleBar/components/left/LinkerGroups.js +5 -0
  693. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  694. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.d.ts +18 -0
  695. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js +49 -0
  696. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  697. package/react/components/windowTitleBar/components/left/ShareButton.d.ts +17 -0
  698. package/react/components/windowTitleBar/components/left/ShareButton.js +39 -0
  699. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  700. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js +4 -0
  701. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  702. package/react/components/windowTitleBar/components/right/CloseButton.d.ts +27 -0
  703. package/react/components/windowTitleBar/components/right/CloseButton.js +27 -0
  704. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  705. package/react/components/windowTitleBar/components/right/GroupingButton.d.ts +37 -0
  706. package/react/components/windowTitleBar/components/right/GroupingButton.js +40 -0
  707. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  708. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +46 -0
  709. package/react/components/windowTitleBar/components/right/MaximizeButton.js +54 -0
  710. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  711. package/react/components/windowTitleBar/components/right/MinimizeButton.d.ts +26 -0
  712. package/react/components/windowTitleBar/components/right/MinimizeButton.js +26 -0
  713. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  714. package/react/components/windowTitleBar/components/windowTitle.d.ts +40 -0
  715. package/react/components/windowTitleBar/components/windowTitle.js +172 -10
  716. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  717. package/react/components/windowTitleBar/stores/windowTitleBarStore.d.ts +5 -0
  718. package/react/components/windowTitleBar/stores/windowTitleBarStore.js +72 -1
  719. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  720. package/react/components/yesNoDialog/YesNoDialog.css +1 -1
  721. package/react/components/yesNoDialog/YesNoDialog.d.ts +3 -0
  722. package/react/components/yesNoDialog/YesNoDialog.js +63 -0
  723. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  724. package/react/components/yesNoDialog/YesNoDialog.spec.js +4 -0
  725. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  726. package/react/components/yesNoDialog/timer.js +2 -0
  727. package/react/components/yesNoDialog/timer.js.map +1 -1
  728. package/react/enzymeSetup.js +5 -0
  729. package/react/enzymeSetup.js.map +1 -1
  730. package/react/hooks/useDashbar.js +10 -0
  731. package/react/hooks/useDashbar.js.map +1 -1
  732. package/react/hooks/useDeepEffect.d.ts +4 -0
  733. package/react/hooks/useDeepEffect.js +21 -0
  734. package/react/hooks/useDeepEffect.js.map +1 -1
  735. package/react/hooks/useFavorites.d.ts +15 -0
  736. package/react/hooks/useFavorites.js +3 -0
  737. package/react/hooks/useFavorites.js.map +1 -1
  738. package/react/hooks/useFavoritesShell.d.ts +4 -0
  739. package/react/hooks/useFavoritesShell.js +23 -0
  740. package/react/hooks/useFavoritesShell.js.map +1 -1
  741. package/react/hooks/useHotkey.d.ts +6 -0
  742. package/react/hooks/useHotkey.js +9 -0
  743. package/react/hooks/useHotkey.js.map +1 -1
  744. package/react/hooks/useLinker.js +14 -0
  745. package/react/hooks/useLinker.js.map +1 -1
  746. package/react/hooks/useMenu.d.ts +29 -0
  747. package/react/hooks/useMenu.js +12 -1
  748. package/react/hooks/useMenu.js.map +1 -1
  749. package/react/hooks/useNotifications.d.ts +44 -0
  750. package/react/hooks/useNotifications.js +90 -0
  751. package/react/hooks/useNotifications.js.map +1 -1
  752. package/react/hooks/useOutsideClickDetector.d.ts +3 -0
  753. package/react/hooks/useOutsideClickDetector.js +3 -0
  754. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  755. package/react/hooks/usePubSub.d.ts +17 -0
  756. package/react/hooks/usePubSub.js +18 -0
  757. package/react/hooks/usePubSub.js.map +1 -1
  758. package/react/hooks/useSearch.d.ts +5 -0
  759. package/react/hooks/useSearch.js +30 -0
  760. package/react/hooks/useSearch.js.map +1 -1
  761. package/react/hooks/useToolbar.js +52 -0
  762. package/react/hooks/useToolbar.js.map +1 -1
  763. package/react/reducers/favoriteReducer.d.ts +3 -0
  764. package/react/reducers/linkerReducer.d.ts +3 -0
  765. package/react/reducers/linkerReducer.js +4 -0
  766. package/react/reducers/linkerReducer.js.map +1 -1
  767. package/react/reducers/menuReducer.d.ts +28 -0
  768. package/react/reducers/menuReducer.js +34 -0
  769. package/react/reducers/menuReducer.js.map +1 -1
  770. package/react/reducers/rootReducer.js +3 -0
  771. package/react/reducers/rootReducer.js.map +1 -1
  772. package/react/reducers/searchReducer.d.ts +7 -0
  773. package/react/reducers/searchReducer.js +6 -0
  774. package/react/reducers/searchReducer.js.map +1 -1
  775. package/react/reducers/workspaceReducer.js +1 -0
  776. package/react/reducers/workspaceReducer.js.map +1 -1
  777. package/react/store.d.ts +4 -0
  778. package/react/store.js +11 -0
  779. package/react/store.js.map +1 -1
  780. package/react/tsconfig.tsbuildinfo +1 -1
  781. package/react/types/fdc3.d.ts +2 -0
  782. package/react/types/linkerTypes.d.ts +13 -0
  783. package/react/types/linkerTypes.js +1 -0
  784. package/react/types/linkerTypes.js.map +1 -1
  785. package/react/types/smartDesktopDesignerTypes.d.ts +5 -0
  786. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  787. package/react/types/workspaceTypes.d.ts +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"WorkspaceItem.js","sourceRoot":"","sources":["../../../../../src/components/userPreferences/components/workspaces/WorkspaceItem.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { MouseEventHandler } from \"react\";\nimport { FinsembleDraggable } from \"../../../legacyControls/FinsembleDraggable\";\n\ntype WorkspaceEditorProps = {\n\tcancelHandler?: Function;\n\tsaveHandler?: Function;\n\tvalue?: string;\n};\n\ntype WorkspaceEditorState = {\n\tvalue: string;\n\tfinished: boolean;\n};\n\nexport class WorkspaceEditor extends React.Component<WorkspaceEditorProps, WorkspaceEditorState> {\n\tconstructor(props: WorkspaceEditorProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tvalue: props.value || \"\",\n\t\t\tfinished: false,\n\t\t};\n\t\tthis.onKeyDown = this.onKeyDown.bind(this);\n\t\tthis.onChange = this.onChange.bind(this);\n\t\tthis.onBlur = this.onBlur.bind(this);\n\t\tthis.onFocus = this.onFocus.bind(this);\n\t}\n\n\tonKeyDown(e: any) {\n\t\tif (e.key === \"Escape\") {\n\t\t\tthis.setState({ finished: true }, () => {\n\t\t\t\tthis.props.cancelHandler?.();\n\t\t\t});\n\t\t} else if (e.key === \"Enter\") {\n\t\t\tconst finish = (val: string) => {\n\t\t\t\tthis.props.saveHandler?.(val);\n\t\t\t};\n\t\t\t// binding so we don't lose the event inside of react's crazy callback structure\n\t\t\tthis.setState({ finished: true }, finish.bind(this, e.target.value));\n\t\t}\n\t}\n\n\tonChange(e: any) {\n\t\tthis.setState({\n\t\t\tvalue: e.target.value,\n\t\t});\n\t}\n\n\tonFocus(e: any) {\n\t\te.target.select();\n\t}\n\n\tonBlur() {\n\t\t// console.log(\"ON BLUR\", performance.now());\n\t\tconst finish = (val: string) => {\n\t\t\tthis.props.saveHandler?.(val);\n\t\t};\n\t\t// binding so we don't lose the event inside of react's crazy callback structure. Finished is set so that the component doesn't call the saveHandler again on unMount\n\t\tthis.setState({ finished: true }, finish.bind(this, this.state.value));\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<input\n\t\t\t\tonFocus={this.onFocus}\n\t\t\t\tonBlur={this.onBlur}\n\t\t\t\tautoFocus={true}\n\t\t\t\tvalue={this.state.value}\n\t\t\t\tclassName=\"workspace-editor\"\n\t\t\t\tonChange={this.onChange}\n\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport type WorkspaceItemProps = {\n\tworkspace: { name?: string; components?: Array<String> };\n\tworkspaceToLoadOnStart?: any;\n\tfocusedWorkspace?: string;\n\ti?: number;\n\tediting?: boolean;\n\tadding?: boolean;\n\tkey?: number;\n\trenameWorkspace?: Function;\n\taddWorkspace?: Function;\n\tcancelEdit?: Function;\n\tsetFocusedWorkspace?: Function;\n\trenameTooltip?: string;\n\trenameButtonClasses?: string;\n\thandleButtonClicks?: MouseEventHandler<HTMLDivElement>;\n\tallowRename?: boolean;\n\tstartEditingWorkspace?: (e: React.SyntheticEvent, name: string) => void;\n\tdeleteTooltip?: string;\n\tdeleteButtonClasses?: string;\n\tallowDelete?: boolean;\n\tdeleteWorkspace?: (name: string) => void;\n};\nconst WorkspaceItem = (props: WorkspaceItemProps) => {\n\tlet baseClass = \"workspace-item\";\n\tlet classNames = baseClass;\n\tif (FSBL.Clients.WorkspaceClient.activeWorkspace?.name === props.workspace.name) {\n\t\tclassNames = `${classNames} active-workspace`;\n\t}\n\n\tif (props.workspaceToLoadOnStart === props.workspace.name) {\n\t\tclassNames = `${classNames} auto-start-workspace-item`;\n\t}\n\n\tif (props.focusedWorkspace === props.workspace.name) {\n\t\tclassNames = `${classNames} focused-workspace-item`;\n\t\tif (props.i === 0) {\n\t\t\tclassNames = `${classNames} no-top-border`;\n\t\t}\n\t\tif (props.editing || props.adding) {\n\t\t\tclassNames = `${classNames} workspace-item-editing`;\n\t\t\treturn (\n\t\t\t\t<div key={props.i} className={classNames}>\n\t\t\t\t\t<WorkspaceEditor\n\t\t\t\t\t\tvalue={props.workspace.name || \"\"}\n\t\t\t\t\t\tsaveHandler={props.editing ? props.renameWorkspace : props.addWorkspace}\n\t\t\t\t\t\tcancelHandler={props.cancelEdit}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\t}\n\n\treturn (\n\t\t<FinsembleDraggable\n\t\t\tonClick={() => {\n\t\t\t\tprops.setFocusedWorkspace?.(props.workspace.name);\n\t\t\t}}\n\t\t\twrapperClass={classNames}\n\t\t\tdraggableId={props.workspace.name || \"\"}\n\t\t\tindex={props.i || 0}\n\t\t\tonKeydown={(e) => {\n\t\t\t\tif (e.code === \"F2\") {\n\t\t\t\t\tprops.allowRename && props.startEditingWorkspace?.(e, props.workspace.name || \"\");\n\t\t\t\t} else if (e.code === \"Delete\") {\n\t\t\t\t\tprops.allowDelete && props.deleteWorkspace?.(props.workspace.name || \"\");\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<div className=\"ff-adp-hamburger\"></div>\n\t\t\t<div className=\"workspace-name\" title={props.workspace.name}>\n\t\t\t\t{props.workspace.name}\n\t\t\t</div>\n\t\t\t<div className=\"individual-workspace-actions\">\n\t\t\t\t{props.workspace.name !== FSBL.Clients.WorkspaceClient.activeWorkspace?.name && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\ttitle={props.renameTooltip}\n\t\t\t\t\t\t\tclassName={props.renameButtonClasses}\n\t\t\t\t\t\t\tonMouseDown={props.handleButtonClicks}\n\t\t\t\t\t\t\tonClick={(e: any) => {\n\t\t\t\t\t\t\t\tprops.allowRename && props.startEditingWorkspace?.(e, props.workspace.name || \"\");\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i className=\"ff-adp-edit\"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\ttitle={props.deleteTooltip}\n\t\t\t\t\t\t\tclassName={props.deleteButtonClasses}\n\t\t\t\t\t\t\tonMouseDown={props.handleButtonClicks}\n\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\tprops.allowDelete && props.deleteWorkspace?.(props.workspace.name || \"\");\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i className=\"ff-adp-trash-outline\"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</FinsembleDraggable>\n\t);\n};\n\nexport default WorkspaceItem;\n"]}
1
+ {"version":3,"file":"WorkspaceItem.js","sourceRoot":"","sources":["../../../../../src/components/userPreferences/components/workspaces/WorkspaceItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAahF,MAAM,OAAO,eAAgB,SAAQ,KAAK,CAAC,SAAqD;IAC/F,YAAY,KAA2B;QACtC,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACZ,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;YACxB,QAAQ,EAAE,KAAK;SACf,CAAC;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,SAAS,CAAC,CAAM;QACf,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;;gBACtC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,aAAa,kDAAI,CAAC;YAC9B,CAAC,CAAC,CAAC;SACH;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;YAC7B,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE;;gBAC9B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,GAAG,CAAC,CAAC;YAC/B,CAAC,CAAC;YACF,gFAAgF;YAChF,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;SACrE;IACF,CAAC;IAED,QAAQ,CAAC,CAAM;QACd,IAAI,CAAC,QAAQ,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK;SACrB,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,CAAM;QACb,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACnB,CAAC;IAED,MAAM;QACL,6CAA6C;QAC7C,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE;;YAC9B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC;QACF,qKAAqK;QACrK,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,MAAM;QACL,OAAO,CACN,+BACC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,SAAS,EAAE,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EACvB,SAAS,EAAC,kBAAkB,EAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,SAAS,EAAE,IAAI,CAAC,SAAS,GACxB,CACF,CAAC;IACH,CAAC;CACD;AAwBD,MAAM,aAAa,GAAG,CAAC,KAAyB,EAAE,EAAE;;IACnD,IAAI,SAAS,GAAG,gBAAgB,CAAC;IACjC,IAAI,UAAU,GAAG,SAAS,CAAC;IAC3B,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,eAAe,0CAAE,IAAI,MAAK,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;QAChF,UAAU,GAAG,GAAG,UAAU,mBAAmB,CAAC;KAC9C;IAED,IAAI,KAAK,CAAC,sBAAsB,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;QAC1D,UAAU,GAAG,GAAG,UAAU,4BAA4B,CAAC;KACvD;IAED,IAAI,KAAK,CAAC,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE;QACpD,UAAU,GAAG,GAAG,UAAU,yBAAyB,CAAC;QACpD,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE;YAClB,UAAU,GAAG,GAAG,UAAU,gBAAgB,CAAC;SAC3C;QACD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE;YAClC,UAAU,GAAG,GAAG,UAAU,yBAAyB,CAAC;YACpD,OAAO,CACN,6BAAK,GAAG,EAAE,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU;gBACvC,oBAAC,eAAe,IACf,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,EACjC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,EACvE,aAAa,EAAE,KAAK,CAAC,UAAU,GAC9B,CACG,CACN,CAAC;SACF;KACD;IAED,OAAO,CACN,oBAAC,kBAAkB,IAClB,OAAO,EAAE,GAAG,EAAE;;YACb,MAAA,KAAK,CAAC,mBAAmB,+CAAzB,KAAK,EAAuB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC,EACD,YAAY,EAAE,UAAU,EACxB,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,EACvC,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,EACnB,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;;YAChB,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;gBACpB,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,qBAAqB,+CAA3B,KAAK,EAAyB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA,CAAC;aAClF;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC/B,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,eAAe,+CAArB,KAAK,EAAmB,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA,CAAC;aACzE;QACF,CAAC;QAED,6BAAK,SAAS,EAAC,kBAAkB,GAAO;QACxC,6BAAK,SAAS,EAAC,gBAAgB,EAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,IACzD,KAAK,CAAC,SAAS,CAAC,IAAI,CAChB;QACN,6BAAK,SAAS,EAAC,8BAA8B,IAC3C,KAAK,CAAC,SAAS,CAAC,IAAI,MAAK,MAAA,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,eAAe,0CAAE,IAAI,CAAA,IAAI,CAC/E;YACC,6BACC,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,SAAS,EAAE,KAAK,CAAC,mBAAmB,EACpC,WAAW,EAAE,KAAK,CAAC,kBAAkB,EACrC,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;;oBACnB,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,qBAAqB,+CAA3B,KAAK,EAAyB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA,CAAC;gBACnF,CAAC;gBAED,2BAAG,SAAS,EAAC,aAAa,GAAK,CAC1B;YACN,6BACC,KAAK,EAAE,KAAK,CAAC,aAAa,EAC1B,SAAS,EAAE,KAAK,CAAC,mBAAmB,EACpC,WAAW,EAAE,KAAK,CAAC,kBAAkB,EACrC,OAAO,EAAE,GAAG,EAAE;;oBACb,KAAK,CAAC,WAAW,KAAI,MAAA,KAAK,CAAC,eAAe,+CAArB,KAAK,EAAmB,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA,CAAC;gBAC1E,CAAC;gBAED,2BAAG,SAAS,EAAC,sBAAsB,GAAK,CACnC,CACJ,CACH,CACI,CACc,CACrB,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC","sourcesContent":["import React, { MouseEventHandler } from \"react\";\nimport { FinsembleDraggable } from \"../../../legacyControls/FinsembleDraggable\";\n\ntype WorkspaceEditorProps = {\n\tcancelHandler?: Function;\n\tsaveHandler?: Function;\n\tvalue?: string;\n};\n\ntype WorkspaceEditorState = {\n\tvalue: string;\n\tfinished: boolean;\n};\n\nexport class WorkspaceEditor extends React.Component<WorkspaceEditorProps, WorkspaceEditorState> {\n\tconstructor(props: WorkspaceEditorProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tvalue: props.value || \"\",\n\t\t\tfinished: false,\n\t\t};\n\t\tthis.onKeyDown = this.onKeyDown.bind(this);\n\t\tthis.onChange = this.onChange.bind(this);\n\t\tthis.onBlur = this.onBlur.bind(this);\n\t\tthis.onFocus = this.onFocus.bind(this);\n\t}\n\n\tonKeyDown(e: any) {\n\t\tif (e.key === \"Escape\") {\n\t\t\tthis.setState({ finished: true }, () => {\n\t\t\t\tthis.props.cancelHandler?.();\n\t\t\t});\n\t\t} else if (e.key === \"Enter\") {\n\t\t\tconst finish = (val: string) => {\n\t\t\t\tthis.props.saveHandler?.(val);\n\t\t\t};\n\t\t\t// binding so we don't lose the event inside of react's crazy callback structure\n\t\t\tthis.setState({ finished: true }, finish.bind(this, e.target.value));\n\t\t}\n\t}\n\n\tonChange(e: any) {\n\t\tthis.setState({\n\t\t\tvalue: e.target.value,\n\t\t});\n\t}\n\n\tonFocus(e: any) {\n\t\te.target.select();\n\t}\n\n\tonBlur() {\n\t\t// console.log(\"ON BLUR\", performance.now());\n\t\tconst finish = (val: string) => {\n\t\t\tthis.props.saveHandler?.(val);\n\t\t};\n\t\t// binding so we don't lose the event inside of react's crazy callback structure. Finished is set so that the component doesn't call the saveHandler again on unMount\n\t\tthis.setState({ finished: true }, finish.bind(this, this.state.value));\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<input\n\t\t\t\tonFocus={this.onFocus}\n\t\t\t\tonBlur={this.onBlur}\n\t\t\t\tautoFocus={true}\n\t\t\t\tvalue={this.state.value}\n\t\t\t\tclassName=\"workspace-editor\"\n\t\t\t\tonChange={this.onChange}\n\t\t\t\tonKeyDown={this.onKeyDown}\n\t\t\t/>\n\t\t);\n\t}\n}\n\nexport type WorkspaceItemProps = {\n\tworkspace: { name?: string; components?: Array<String> };\n\tworkspaceToLoadOnStart?: any;\n\tfocusedWorkspace?: string;\n\ti?: number;\n\tediting?: boolean;\n\tadding?: boolean;\n\tkey?: number;\n\trenameWorkspace?: Function;\n\taddWorkspace?: Function;\n\tcancelEdit?: Function;\n\tsetFocusedWorkspace?: Function;\n\trenameTooltip?: string;\n\trenameButtonClasses?: string;\n\thandleButtonClicks?: MouseEventHandler<HTMLDivElement>;\n\tallowRename?: boolean;\n\tstartEditingWorkspace?: (e: React.SyntheticEvent, name: string) => void;\n\tdeleteTooltip?: string;\n\tdeleteButtonClasses?: string;\n\tallowDelete?: boolean;\n\tdeleteWorkspace?: (name: string) => void;\n};\nconst WorkspaceItem = (props: WorkspaceItemProps) => {\n\tlet baseClass = \"workspace-item\";\n\tlet classNames = baseClass;\n\tif (FSBL.Clients.WorkspaceClient.activeWorkspace?.name === props.workspace.name) {\n\t\tclassNames = `${classNames} active-workspace`;\n\t}\n\n\tif (props.workspaceToLoadOnStart === props.workspace.name) {\n\t\tclassNames = `${classNames} auto-start-workspace-item`;\n\t}\n\n\tif (props.focusedWorkspace === props.workspace.name) {\n\t\tclassNames = `${classNames} focused-workspace-item`;\n\t\tif (props.i === 0) {\n\t\t\tclassNames = `${classNames} no-top-border`;\n\t\t}\n\t\tif (props.editing || props.adding) {\n\t\t\tclassNames = `${classNames} workspace-item-editing`;\n\t\t\treturn (\n\t\t\t\t<div key={props.i} className={classNames}>\n\t\t\t\t\t<WorkspaceEditor\n\t\t\t\t\t\tvalue={props.workspace.name || \"\"}\n\t\t\t\t\t\tsaveHandler={props.editing ? props.renameWorkspace : props.addWorkspace}\n\t\t\t\t\t\tcancelHandler={props.cancelEdit}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\t}\n\n\treturn (\n\t\t<FinsembleDraggable\n\t\t\tonClick={() => {\n\t\t\t\tprops.setFocusedWorkspace?.(props.workspace.name);\n\t\t\t}}\n\t\t\twrapperClass={classNames}\n\t\t\tdraggableId={props.workspace.name || \"\"}\n\t\t\tindex={props.i || 0}\n\t\t\tonKeydown={(e) => {\n\t\t\t\tif (e.code === \"F2\") {\n\t\t\t\t\tprops.allowRename && props.startEditingWorkspace?.(e, props.workspace.name || \"\");\n\t\t\t\t} else if (e.code === \"Delete\") {\n\t\t\t\t\tprops.allowDelete && props.deleteWorkspace?.(props.workspace.name || \"\");\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<div className=\"ff-adp-hamburger\"></div>\n\t\t\t<div className=\"workspace-name\" title={props.workspace.name}>\n\t\t\t\t{props.workspace.name}\n\t\t\t</div>\n\t\t\t<div className=\"individual-workspace-actions\">\n\t\t\t\t{props.workspace.name !== FSBL.Clients.WorkspaceClient.activeWorkspace?.name && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\ttitle={props.renameTooltip}\n\t\t\t\t\t\t\tclassName={props.renameButtonClasses}\n\t\t\t\t\t\t\tonMouseDown={props.handleButtonClicks}\n\t\t\t\t\t\t\tonClick={(e: any) => {\n\t\t\t\t\t\t\t\tprops.allowRename && props.startEditingWorkspace?.(e, props.workspace.name || \"\");\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i className=\"ff-adp-edit\"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\ttitle={props.deleteTooltip}\n\t\t\t\t\t\t\tclassName={props.deleteButtonClasses}\n\t\t\t\t\t\t\tonMouseDown={props.handleButtonClicks}\n\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\tprops.allowDelete && props.deleteWorkspace?.(props.workspace.name || \"\");\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<i className=\"ff-adp-trash-outline\"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</FinsembleDraggable>\n\t);\n};\n\nexport default WorkspaceItem;\n"]}
@@ -6,11 +6,28 @@ declare let WorkspaceManagementMenuStore: StoreModel;
6
6
  declare const Actions: {
7
7
  initialize: () => void;
8
8
  getWorkspaces(cb?: Function): void;
9
+ /**
10
+ * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.
11
+ * @deprecated use `setScheduledRestart(false)` instead.
12
+ */
9
13
  disableScheduledRestart: () => void;
14
+ /**
15
+ * Finsemble listens for this piece of config. When it changes, it will schedule a daily restart at that time.
16
+ * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.
17
+ * @deprecated use setScheduledClose
18
+ */
10
19
  setScheduledRestart: (val: ScheduledDayTimeObjectType | false) => void;
20
+ /**
21
+ * Finsemble listens the config set by this function. When it changes, it will schedule a daily restart/shutdown at
22
+ * that time. By making the value falsy, the application will remove any existing restart/shutdown timers.
23
+ *
24
+ */
11
25
  setScheduledClose: (key: "finsemble.scheduledRestart" | "finsemble.scheduledShutdown", value: ScheduledDayTimeObjectType | false) => void;
12
26
  setDiscardUnsavedChangesPreference: (value: boolean) => void;
13
27
  getPreferences: (callback: StandardCallback) => void;
14
28
  };
29
+ /**
30
+ * Initializes the store for the User Preferences Menu.
31
+ */
15
32
  declare function initialize(WorkspaceMngMenuStore: StoreModel, cb: (store: StoreModel) => void): void;
16
33
  export { WorkspaceManagementMenuStore, initialize, UserPreferencesStore, Actions };
@@ -7,6 +7,7 @@ const Actions = {
7
7
  if (constants)
8
8
  updateConstants = constants;
9
9
  });
10
+ // Gets the workspace list and sets the value in the store.
10
11
  FSBL.Clients.WorkspaceClient.getWorkspaces((err, workspaces) => {
11
12
  if (workspaces)
12
13
  UserPreferencesStore.setValue({
@@ -14,6 +15,7 @@ const Actions = {
14
15
  value: workspaces,
15
16
  });
16
17
  });
18
+ // Get the activeWorkspace and set the value.
17
19
  FSBL.Clients.WorkspaceClient.getActiveWorkspace((err, activeWorkspace) => {
18
20
  if (activeWorkspace) {
19
21
  UserPreferencesStore.setValue({
@@ -22,6 +24,10 @@ const Actions = {
22
24
  });
23
25
  }
24
26
  });
27
+ /**
28
+ * We listen here for any workspace updates, and pass them to the store.
29
+ * **NOTE**: You may notice that the signature of this callback is different from the previous ones. In this case we receive a `response`, instead of `workspaces` or `activeWorkspace`. This is because this callback is for a `RouterClient` message. The functions above are callbacks to `WorkspaceClient` API calls.
30
+ */
25
31
  FSBL.Clients.RouterClient.subscribe("Finsemble.WorkspaceService.update", (err, response) => {
26
32
  if (response.data && response.data.activeWorkspace) {
27
33
  UserPreferencesStore.setValue({
@@ -51,6 +57,7 @@ const Actions = {
51
57
  });
52
58
  },
53
59
  getWorkspaces(cb = Function.prototype) {
60
+ // Gets the workspace list and sets the value in the store.
54
61
  FSBL.Clients.WorkspaceClient.getWorkspaces((err, workspaces) => {
55
62
  UserPreferencesStore.setValue({
56
63
  field: "WorkspaceList",
@@ -59,6 +66,10 @@ const Actions = {
59
66
  cb();
60
67
  });
61
68
  },
69
+ /**
70
+ * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.
71
+ * @deprecated use `setScheduledRestart(false)` instead.
72
+ */
62
73
  disableScheduledRestart: () => {
63
74
  FSBL.Clients.ConfigClient.setPreference({
64
75
  field: "finsemble.scheduledRestart",
@@ -69,12 +80,22 @@ const Actions = {
69
80
  value: false,
70
81
  });
71
82
  },
83
+ /**
84
+ * Finsemble listens for this piece of config. When it changes, it will schedule a daily restart at that time.
85
+ * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.
86
+ * @deprecated use setScheduledClose
87
+ */
72
88
  setScheduledRestart: (val) => {
73
89
  FSBL.Clients.ConfigClient.setPreference({
74
90
  field: "finsemble.scheduledRestart",
75
91
  value: val,
76
92
  });
77
93
  },
94
+ /**
95
+ * Finsemble listens the config set by this function. When it changes, it will schedule a daily restart/shutdown at
96
+ * that time. By making the value falsy, the application will remove any existing restart/shutdown timers.
97
+ *
98
+ */
78
99
  setScheduledClose: (key, value) => {
79
100
  FSBL.Clients.ConfigClient.setPreference({
80
101
  field: key,
@@ -92,6 +113,9 @@ const Actions = {
92
113
  },
93
114
  };
94
115
  async function createLocalStore(done) {
116
+ // While the order of these two functions is unimportant, they cannot be done in series as we don't want
117
+ // to call the callback until both stores have been initiated. This keeps the initialization function
118
+ // executing until both stores either have values, or fail to initialize.
95
119
  FSBL.Clients.DistributedStoreClient.createStore({ store: "Finsemble-UserPreferences-Local-Store" }, (preferencesErr, preferencesStore) => {
96
120
  if (preferencesErr) {
97
121
  FSBL.Clients.Logger.system.error("Error fetching user preferences data: ", preferencesErr);
@@ -102,6 +126,9 @@ async function createLocalStore(done) {
102
126
  done();
103
127
  });
104
128
  }
129
+ /**
130
+ * Initializes the store for the User Preferences Menu.
131
+ */
105
132
  function initialize(WorkspaceMngMenuStore, cb) {
106
133
  WorkspaceManagementMenuStore = WorkspaceMngMenuStore;
107
134
  createLocalStore(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"UserPreferencesStore.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/stores/UserPreferencesStore.tsx"],"names":[],"mappings":"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","sourcesContent":["import StoreModel from \"@finsemble/finsemble-api/types/clients/StoreModel\";\nimport { WORKSPACE } from \"@finsemble/finsemble-api/types/common/constants\";\nimport { Workspace as WorkspaceType } from \"@finsemble/finsemble-api/types/services/workspace/types\";\nimport { StandardError, StandardCallback } from \"@finsemble/finsemble-api/types/types\";\nimport { ScheduledDayTimeObjectType } from \"../UserPreferenceTypes\";\n\ntype ConstantsType = typeof WORKSPACE[\"API_CHANNELS\"];\n\ntype UpdateResponseType = {\n\tdata: {\n\t\tactiveWorkspace: WorkspaceType;\n\t\treason: keyof ConstantsType;\n\t};\n};\n\nlet UserPreferencesStore: StoreModel;\nlet WorkspaceManagementMenuStore: StoreModel;\n\nlet updateConstants: ConstantsType;\n\nconst Actions = {\n\tinitialize: function () {\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaceActions((err, constants) => {\n\t\t\tif (constants) updateConstants = constants as ConstantsType;\n\t\t});\n\n\t\t// Gets the workspace list and sets the value in the store.\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaces((err: StandardError, workspaces?: WorkspaceType[]) => {\n\t\t\tif (workspaces)\n\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\tfield: \"WorkspaceList\",\n\t\t\t\t\tvalue: workspaces,\n\t\t\t\t});\n\t\t});\n\n\t\t// Get the activeWorkspace and set the value.\n\t\tFSBL.Clients.WorkspaceClient.getActiveWorkspace((err: StandardError, activeWorkspace?: { data: WorkspaceType }) => {\n\t\t\tif (activeWorkspace) {\n\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\tfield: \"activeWorkspace\",\n\t\t\t\t\tvalue: activeWorkspace,\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * We listen here for any workspace updates, and pass them to the store.\n\t\t * **NOTE**: You may notice that the signature of this callback is different from the previous ones. In this case we receive a `response`, instead of `workspaces` or `activeWorkspace`. This is because this callback is for a `RouterClient` message. The functions above are callbacks to `WorkspaceClient` API calls.\n\t\t */\n\t\tFSBL.Clients.RouterClient.subscribe(\n\t\t\t\"Finsemble.WorkspaceService.update\",\n\t\t\t(err: StandardError, response: UpdateResponseType) => {\n\t\t\t\tif (response.data && response.data.activeWorkspace) {\n\t\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\t\tfield: \"activeWorkspace\",\n\t\t\t\t\t\tvalue: response.data.activeWorkspace,\n\t\t\t\t\t});\n\n\t\t\t\t\tif (updateConstants) {\n\t\t\t\t\t\tswitch (response.data.reason) {\n\t\t\t\t\t\t\tcase updateConstants.GET_ACTIVE_WORKSPACE:\n\t\t\t\t\t\t\tcase updateConstants.NEW_WORKSPACE:\n\t\t\t\t\t\t\tcase updateConstants.IMPORT:\n\t\t\t\t\t\t\tcase updateConstants.SAVE:\n\t\t\t\t\t\t\tcase updateConstants.SAVE_AS:\n\t\t\t\t\t\t\tcase updateConstants.REMOVE:\n\t\t\t\t\t\t\tcase updateConstants.SWITCH_TO:\n\t\t\t\t\t\t\tcase updateConstants.SET_WORKSPACE_ORDER:\n\t\t\t\t\t\t\tcase updateConstants.ADD_WINDOW:\n\t\t\t\t\t\t\tcase updateConstants.REMOVE_WINDOW:\n\t\t\t\t\t\t\tcase updateConstants.RENAME:\n\t\t\t\t\t\t\t\tActions.getWorkspaces();\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t},\n\tgetWorkspaces(cb = Function.prototype) {\n\t\t// Gets the workspace list and sets the value in the store.\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaces((err: StandardError, workspaces: WorkspaceType[]) => {\n\t\t\tUserPreferencesStore.setValue({\n\t\t\t\tfield: \"WorkspaceList\",\n\t\t\t\tvalue: workspaces,\n\t\t\t});\n\t\t\tcb();\n\t\t});\n\t},\n\t/**\n\t * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.\n\t * @deprecated use `setScheduledRestart(false)` instead.\n\t */\n\tdisableScheduledRestart: () => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledRestart\",\n\t\t\tvalue: false,\n\t\t});\n\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledCloseDiscardUnsavedChanges\",\n\t\t\tvalue: false,\n\t\t});\n\t},\n\t/**\n\t * Finsemble listens for this piece of config. When it changes, it will schedule a daily restart at that time.\n\t * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.\n\t * @deprecated use setScheduledClose\n\t */\n\tsetScheduledRestart: (val: ScheduledDayTimeObjectType | false) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledRestart\",\n\t\t\tvalue: val,\n\t\t});\n\t},\n\n\t/**\n\t * Finsemble listens the config set by this function. When it changes, it will schedule a daily restart/shutdown at\n\t * that time. By making the value falsy, the application will remove any existing restart/shutdown timers.\n\t *\n\t */\n\tsetScheduledClose: (\n\t\tkey: \"finsemble.scheduledRestart\" | \"finsemble.scheduledShutdown\",\n\t\tvalue: ScheduledDayTimeObjectType | false\n\t) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: key,\n\t\t\tvalue: value,\n\t\t});\n\t},\n\n\tsetDiscardUnsavedChangesPreference: (value: boolean) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledCloseDiscardUnsavedChanges\",\n\t\t\tvalue: value,\n\t\t});\n\t},\n\n\tgetPreferences: (callback: StandardCallback) => {\n\t\tFSBL.Clients.ConfigClient.getPreferences(callback);\n\t},\n};\n\nasync function createLocalStore(done: () => void) {\n\t// While the order of these two functions is unimportant, they cannot be done in series as we don't want\n\t// to call the callback until both stores have been initiated. This keeps the initialization function\n\t// executing until both stores either have values, or fail to initialize.\n\tFSBL.Clients.DistributedStoreClient.createStore(\n\t\t{ store: \"Finsemble-UserPreferences-Local-Store\" },\n\t\t(preferencesErr: StandardError, preferencesStore: StoreModel | undefined) => {\n\t\t\tif (preferencesErr) {\n\t\t\t\tFSBL.Clients.Logger.system.error(\"Error fetching user preferences data: \", preferencesErr);\n\t\t\t}\n\t\t\tif (preferencesStore) {\n\t\t\t\tUserPreferencesStore = preferencesStore;\n\t\t\t}\n\t\t\tdone();\n\t\t}\n\t);\n}\n\n/**\n * Initializes the store for the User Preferences Menu.\n */\nfunction initialize(WorkspaceMngMenuStore: StoreModel, cb: (store: StoreModel) => void) {\n\tWorkspaceManagementMenuStore = WorkspaceMngMenuStore;\n\tcreateLocalStore(() => {\n\t\tActions.initialize();\n\t\tcb(UserPreferencesStore);\n\t});\n}\n\nexport { WorkspaceManagementMenuStore, initialize, UserPreferencesStore, Actions };\n"]}
1
+ {"version":3,"file":"UserPreferencesStore.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/stores/UserPreferencesStore.tsx"],"names":[],"mappings":"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","sourcesContent":["import StoreModel from \"@finsemble/finsemble-api/types/clients/StoreModel\";\nimport { WORKSPACE } from \"@finsemble/finsemble-api/types/common/constants\";\nimport { Workspace as WorkspaceType } from \"@finsemble/finsemble-api/types/services/workspace/types\";\nimport { StandardError, StandardCallback } from \"@finsemble/finsemble-api/types/types\";\nimport { ScheduledDayTimeObjectType } from \"../UserPreferenceTypes\";\n\ntype ConstantsType = typeof WORKSPACE[\"API_CHANNELS\"];\n\ntype UpdateResponseType = {\n\tdata: {\n\t\tactiveWorkspace: WorkspaceType;\n\t\treason: keyof ConstantsType;\n\t};\n};\n\nlet UserPreferencesStore: StoreModel;\nlet WorkspaceManagementMenuStore: StoreModel;\n\nlet updateConstants: ConstantsType;\n\nconst Actions = {\n\tinitialize: function () {\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaceActions((err, constants) => {\n\t\t\tif (constants) updateConstants = constants as ConstantsType;\n\t\t});\n\n\t\t// Gets the workspace list and sets the value in the store.\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaces((err: StandardError, workspaces?: WorkspaceType[]) => {\n\t\t\tif (workspaces)\n\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\tfield: \"WorkspaceList\",\n\t\t\t\t\tvalue: workspaces,\n\t\t\t\t});\n\t\t});\n\n\t\t// Get the activeWorkspace and set the value.\n\t\tFSBL.Clients.WorkspaceClient.getActiveWorkspace((err: StandardError, activeWorkspace?: { data: WorkspaceType }) => {\n\t\t\tif (activeWorkspace) {\n\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\tfield: \"activeWorkspace\",\n\t\t\t\t\tvalue: activeWorkspace,\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * We listen here for any workspace updates, and pass them to the store.\n\t\t * **NOTE**: You may notice that the signature of this callback is different from the previous ones. In this case we receive a `response`, instead of `workspaces` or `activeWorkspace`. This is because this callback is for a `RouterClient` message. The functions above are callbacks to `WorkspaceClient` API calls.\n\t\t */\n\t\tFSBL.Clients.RouterClient.subscribe(\n\t\t\t\"Finsemble.WorkspaceService.update\",\n\t\t\t(err: StandardError, response: UpdateResponseType) => {\n\t\t\t\tif (response.data && response.data.activeWorkspace) {\n\t\t\t\t\tUserPreferencesStore.setValue({\n\t\t\t\t\t\tfield: \"activeWorkspace\",\n\t\t\t\t\t\tvalue: response.data.activeWorkspace,\n\t\t\t\t\t});\n\n\t\t\t\t\tif (updateConstants) {\n\t\t\t\t\t\tswitch (response.data.reason) {\n\t\t\t\t\t\t\tcase updateConstants.GET_ACTIVE_WORKSPACE:\n\t\t\t\t\t\t\tcase updateConstants.NEW_WORKSPACE:\n\t\t\t\t\t\t\tcase updateConstants.IMPORT:\n\t\t\t\t\t\t\tcase updateConstants.SAVE:\n\t\t\t\t\t\t\tcase updateConstants.SAVE_AS:\n\t\t\t\t\t\t\tcase updateConstants.REMOVE:\n\t\t\t\t\t\t\tcase updateConstants.SWITCH_TO:\n\t\t\t\t\t\t\tcase updateConstants.SET_WORKSPACE_ORDER:\n\t\t\t\t\t\t\tcase updateConstants.ADD_WINDOW:\n\t\t\t\t\t\t\tcase updateConstants.REMOVE_WINDOW:\n\t\t\t\t\t\t\tcase updateConstants.RENAME:\n\t\t\t\t\t\t\t\tActions.getWorkspaces();\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t},\n\tgetWorkspaces(cb = Function.prototype) {\n\t\t// Gets the workspace list and sets the value in the store.\n\t\tFSBL.Clients.WorkspaceClient.getWorkspaces((err: StandardError, workspaces: WorkspaceType[]) => {\n\t\t\tUserPreferencesStore.setValue({\n\t\t\t\tfield: \"WorkspaceList\",\n\t\t\t\tvalue: workspaces,\n\t\t\t});\n\t\t\tcb();\n\t\t});\n\t},\n\t/**\n\t * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.\n\t * @deprecated use `setScheduledRestart(false)` instead.\n\t */\n\tdisableScheduledRestart: () => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledRestart\",\n\t\t\tvalue: false,\n\t\t});\n\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledCloseDiscardUnsavedChanges\",\n\t\t\tvalue: false,\n\t\t});\n\t},\n\t/**\n\t * Finsemble listens for this piece of config. When it changes, it will schedule a daily restart at that time.\n\t * By making the value of `finsemble.scheduledRestart` falsy, the application will remove any existing restart timers.\n\t * @deprecated use setScheduledClose\n\t */\n\tsetScheduledRestart: (val: ScheduledDayTimeObjectType | false) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledRestart\",\n\t\t\tvalue: val,\n\t\t});\n\t},\n\n\t/**\n\t * Finsemble listens the config set by this function. When it changes, it will schedule a daily restart/shutdown at\n\t * that time. By making the value falsy, the application will remove any existing restart/shutdown timers.\n\t *\n\t */\n\tsetScheduledClose: (\n\t\tkey: \"finsemble.scheduledRestart\" | \"finsemble.scheduledShutdown\",\n\t\tvalue: ScheduledDayTimeObjectType | false\n\t) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: key,\n\t\t\tvalue: value,\n\t\t});\n\t},\n\n\tsetDiscardUnsavedChangesPreference: (value: boolean) => {\n\t\tFSBL.Clients.ConfigClient.setPreference({\n\t\t\tfield: \"finsemble.scheduledCloseDiscardUnsavedChanges\",\n\t\t\tvalue: value,\n\t\t});\n\t},\n\n\tgetPreferences: (callback: StandardCallback) => {\n\t\tFSBL.Clients.ConfigClient.getPreferences(callback);\n\t},\n};\n\nasync function createLocalStore(done: () => void) {\n\t// While the order of these two functions is unimportant, they cannot be done in series as we don't want\n\t// to call the callback until both stores have been initiated. This keeps the initialization function\n\t// executing until both stores either have values, or fail to initialize.\n\tFSBL.Clients.DistributedStoreClient.createStore(\n\t\t{ store: \"Finsemble-UserPreferences-Local-Store\" },\n\t\t(preferencesErr: StandardError, preferencesStore: StoreModel | undefined) => {\n\t\t\tif (preferencesErr) {\n\t\t\t\tFSBL.Clients.Logger.system.error(\"Error fetching user preferences data: \", preferencesErr);\n\t\t\t}\n\t\t\tif (preferencesStore) {\n\t\t\t\tUserPreferencesStore = preferencesStore;\n\t\t\t}\n\t\t\tdone();\n\t\t}\n\t);\n}\n\n/**\n * Initializes the store for the User Preferences Menu.\n */\nfunction initialize(WorkspaceMngMenuStore: StoreModel, cb: (store: StoreModel) => void) {\n\tWorkspaceManagementMenuStore = WorkspaceMngMenuStore;\n\tcreateLocalStore(() => {\n\t\tActions.initialize();\n\t\tcb(UserPreferencesStore);\n\t});\n}\n\nexport { WorkspaceManagementMenuStore, initialize, UserPreferencesStore, Actions };\n"]}
@@ -7,6 +7,7 @@ import { initFSBL } from "../../common/helpers";
7
7
  describe("<NotificationPreferencesHome/>", () => {
8
8
  initFSBL(window);
9
9
  beforeEach(() => {
10
+ // Ensures Checkboxes are resetted to default check status
10
11
  const wrapper = mount(React.createElement(NotificationsPreferencesHome, null));
11
12
  if (!wrapper.find("Checkbox").at(0).props().checked) {
12
13
  wrapper.find("Checkbox").at(0).simulate("click");
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationsPreferencesHome.spec.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/tests/NotificationsPreferencesHome.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport NotificationsPreferencesHome from \"./../components/content/notificationViews/NotificationsPreferencesHome\";\nimport { initFSBL } from \"../../common/helpers\";\n\ndescribe(\"<NotificationPreferencesHome/>\", () => {\n\tinitFSBL(window);\n\tbeforeEach(() => {\n\t\t// Ensures Checkboxes are resetted to default check status\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\tif (!wrapper.find(\"Checkbox\").at(0).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(0).simulate(\"click\");\n\t\t}\n\t\tif (wrapper.find(\"Checkbox\").at(1).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(1).simulate(\"click\");\n\t\t}\n\t\tif (wrapper.find(\"Checkbox\").at(2).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(1).simulate(\"click\");\n\t\t}\n\t});\n\tit(\"should render 1 ButtonRow for Notification Sources\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"ButtonRow\")).to.have.lengthOf(1);\n\t});\n\n\tit(\"should render 3 Checkboxes\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"Checkbox\")).to.have.lengthOf(3);\n\t});\n\n\tit(\"should render 3 DefualtDropdownButtons\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"DefaultDropdownButton\")).to.have.lengthOf(3);\n\t});\n\n\tit(\"should disable the second Checkbox if the first one is unchecked\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\twrapper.find(\"Checkbox\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\"Checkbox\").at(1).props().disabled).to.be.true;\n\t});\n});\n"]}
1
+ {"version":3,"file":"NotificationsPreferencesHome.spec.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/tests/NotificationsPreferencesHome.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport NotificationsPreferencesHome from \"./../components/content/notificationViews/NotificationsPreferencesHome\";\nimport { initFSBL } from \"../../common/helpers\";\n\ndescribe(\"<NotificationPreferencesHome/>\", () => {\n\tinitFSBL(window);\n\tbeforeEach(() => {\n\t\t// Ensures Checkboxes are resetted to default check status\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\tif (!wrapper.find(\"Checkbox\").at(0).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(0).simulate(\"click\");\n\t\t}\n\t\tif (wrapper.find(\"Checkbox\").at(1).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(1).simulate(\"click\");\n\t\t}\n\t\tif (wrapper.find(\"Checkbox\").at(2).props().checked) {\n\t\t\twrapper.find(\"Checkbox\").at(1).simulate(\"click\");\n\t\t}\n\t});\n\tit(\"should render 1 ButtonRow for Notification Sources\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"ButtonRow\")).to.have.lengthOf(1);\n\t});\n\n\tit(\"should render 3 Checkboxes\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"Checkbox\")).to.have.lengthOf(3);\n\t});\n\n\tit(\"should render 3 DefualtDropdownButtons\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\texpect(wrapper.find(\"DefaultDropdownButton\")).to.have.lengthOf(3);\n\t});\n\n\tit(\"should disable the second Checkbox if the first one is unchecked\", () => {\n\t\tconst wrapper = mount(<NotificationsPreferencesHome />);\n\t\twrapper.find(\"Checkbox\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\"Checkbox\").at(1).props().disabled).to.be.true;\n\t});\n});\n"]}
@@ -60,57 +60,77 @@ describe("<Workspace/>", () => {
60
60
  it("should display the workspace items", async () => {
61
61
  const wrapper = mount(React.createElement(Workspaces, { addListener: () => { }, removeListener: () => { }, getValue: () => { } }));
62
62
  expect(wrapper.find("WorkspaceItem")).to.be.length(0);
63
+ // add some workspaces
63
64
  wrapper.setState({ workspaceList: workspaces });
64
65
  expect(wrapper.find("WorkspaceItem")).to.be.length(6);
65
66
  });
66
67
  it("should not rename active workspace", () => {
68
+ // Stub the active workspace name
67
69
  FSBL.Clients.WorkspaceClient.activeWorkspace = {
68
70
  name: "auto_afterFeature",
69
71
  };
70
72
  const wrapper = mount(React.createElement(Workspaces, { addListener: () => { }, removeListener: () => { }, getValue: () => { } }));
73
+ // add some workspaces
71
74
  wrapper.setState({ workspaceList: workspaces });
72
75
  expect(wrapper.find("WorkspaceItem")).to.be.length(6);
76
+ // check that we have one active workspace
73
77
  const activeWorkspaceNode = wrapper.find(".active-workspace").hostNodes();
74
78
  expect(activeWorkspaceNode).to.be.length(1);
79
+ // check that we have the correct active workspace name
75
80
  expect(activeWorkspaceNode.find(".workspace-name").text()).to.be.string("auto_afterFeature");
81
+ // no edit or trash icons
76
82
  expect(activeWorkspaceNode.find(".ff-adp-edit")).to.be.length(0);
77
83
  expect(activeWorkspaceNode.find(".ff-adp-trash-outline")).to.be.length(0);
78
84
  });
79
85
  it("should cancel workspace rename when ESC key is pressed", () => {
80
86
  const wrapper = mount(React.createElement(Workspaces, { addListener: () => { }, removeListener: () => { }, getValue: () => { } }));
87
+ // add some workspaces
81
88
  wrapper.setState({ workspaceList: workspaces, focusedWorkspace: "PRF03" });
82
89
  expect(wrapper.find("WorkspaceItem")).to.be.length(6);
90
+ // get PRF03 Workspace
83
91
  const perf03Node = wrapper.find("WorkspaceItem").at(3);
84
92
  expect(perf03Node.find(".workspace-name").text()).to.be.string("PRF03");
93
+ // expect to find one edit icon
85
94
  const editIconNode = perf03Node.find(".ff-adp-edit");
86
95
  expect(editIconNode).to.be.length(1);
96
+ // click the edit button
87
97
  perf03Node.find(".individual-workspace-action").at(0).simulate("click");
88
98
  expect(wrapper.find(".workspace-item-editing")).to.be.length(1);
99
+ // assert the input is showing
89
100
  const inputNode = wrapper.find("input.workspace-editor");
90
101
  expect(inputNode).to.be.length(1);
102
+ // add some text to the input and assert
91
103
  inputNode.simulate("change", { target: { value: "Renaming Workspace" } });
92
104
  expect(inputNode.getDOMNode().value).to.be.string("Renaming Workspace");
105
+ // press ESC key and assert original value remains unaltered
93
106
  inputNode.simulate("keydown", { key: "Escape" });
94
107
  expect(wrapper.find(".workspace-item-editing")).to.be.length(0);
95
108
  expect(perf03Node.find(".workspace-name").text()).to.be.string("PRF03");
96
109
  });
97
110
  it("should rename workspace when ENTER key is pressed in the rename prompt", async () => {
98
111
  const wrapper = mount(React.createElement(Workspaces, { addListener: () => { }, removeListener: () => { }, getValue: () => { } }));
112
+ // add some workspaces
99
113
  wrapper.setState({
100
114
  workspaceList: workspaces,
101
115
  focusedWorkspace: "PRF03",
102
116
  });
103
117
  expect(wrapper.find("WorkspaceItem")).to.be.length(6);
118
+ // get PRF03 Workspace
104
119
  const perf03Node = wrapper.find("WorkspaceItem").at(3);
105
120
  expect(perf03Node.find(".workspace-name").text()).to.be.string("PRF03");
121
+ // expect to find one edit icon
106
122
  const editIconNode = perf03Node.find(".ff-adp-edit");
107
123
  expect(editIconNode).to.be.length(1);
124
+ // click the edit button
108
125
  perf03Node.find(".individual-workspace-action").at(0).simulate("click");
109
126
  expect(wrapper.find(".workspace-item-editing")).to.be.length(1);
127
+ // assert the input is showing
110
128
  const inputNode = wrapper.find("input.workspace-editor");
111
129
  expect(inputNode).to.be.length(1);
130
+ // add some text to the input and assert
112
131
  inputNode.simulate("change", { target: { value: "Renamed Workspace" } });
113
132
  expect(inputNode.getDOMNode().value).to.be.string("Renamed Workspace");
133
+ // press Enter key and assert original value remains unaltered
114
134
  inputNode.simulate("keydown", { key: "Enter" });
115
135
  expect(wrapper.find(".workspace-item-editing")).to.be.length(0);
116
136
  expect(wrapper.find("WorkspaceItem").at(3).find(".workspace-name").text()).to.be.string("Renamed Workspace");
@@ -1 +1 @@
1
- {"version":3,"file":"Workspace.spec.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/tests/Workspace.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount, shallow } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport Workspaces from \"../components/content/Workspaces\";\nimport { initFSBL } from \"../../common/helpers\";\nimport sinon from \"sinon\";\nimport { waitTick } from \"../../sdd/sdd_helpers\";\n\nconst workspaces = [\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"Default Workspace\",\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t\twindows: [\"Tour-0580db91-7f2d-4583-a003-d079e74b8fb6\"],\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"auto_emptyWorkspace\",\n\t\twindows: [],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"auto_afterFeature\",\n\t\twindows: [],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"PRF03\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"RenameTest\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"RenameTest (1)\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n];\n\ndescribe(\"<Workspace/>\", () => {\n\tinitFSBL(window);\n\n\tit(\"should render the workspaces components\", async () => {\n\t\tconst wrapper = shallow(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\texpect(wrapper.find(\"WorkspaceItemList\")).to.be.length(1);\n\t\texpect(wrapper.find(\"WorkspaceButton\")).to.be.length(2);\n\t\texpect(wrapper.find(\"Checkbox\")).to.be.length(3);\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(0);\n\t});\n\n\tit(\"should display the workspace items\", async () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(0);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\t});\n\n\tit(\"should not rename active workspace\", () => {\n\t\t// Stub the active workspace name\n\t\t(FSBL.Clients.WorkspaceClient as any).activeWorkspace = {\n\t\t\tname: \"auto_afterFeature\",\n\t\t};\n\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// check that we have one active workspace\n\t\tconst activeWorkspaceNode = wrapper.find(\".active-workspace\").hostNodes();\n\t\texpect(activeWorkspaceNode).to.be.length(1);\n\t\t// check that we have the correct active workspace name\n\t\texpect(activeWorkspaceNode.find(\".workspace-name\").text()).to.be.string(\"auto_afterFeature\");\n\t\t// no edit or trash icons\n\t\texpect(activeWorkspaceNode.find(\".ff-adp-edit\")).to.be.length(0);\n\t\texpect(activeWorkspaceNode.find(\".ff-adp-trash-outline\")).to.be.length(0);\n\t});\n\n\tit(\"should cancel workspace rename when ESC key is pressed\", () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces, focusedWorkspace: \"PRF03\" });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// get PRF03 Workspace\n\t\tconst perf03Node = wrapper.find(\"WorkspaceItem\").at(3);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t\t// expect to find one edit icon\n\t\tconst editIconNode = perf03Node.find(\".ff-adp-edit\");\n\t\texpect(editIconNode).to.be.length(1);\n\n\t\t// click the edit button\n\t\tperf03Node.find(\".individual-workspace-action\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(1);\n\n\t\t// assert the input is showing\n\t\tconst inputNode = wrapper.find(\"input.workspace-editor\");\n\t\texpect(inputNode).to.be.length(1);\n\n\t\t// add some text to the input and assert\n\t\tinputNode.simulate(\"change\", { target: { value: \"Renaming Workspace\" } });\n\t\texpect((inputNode.getDOMNode() as HTMLInputElement).value).to.be.string(\"Renaming Workspace\");\n\n\t\t// press ESC key and assert original value remains unaltered\n\t\tinputNode.simulate(\"keydown\", { key: \"Escape\" });\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(0);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t});\n\n\tit(\"should rename workspace when ENTER key is pressed in the rename prompt\", async () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({\n\t\t\tworkspaceList: workspaces,\n\t\t\tfocusedWorkspace: \"PRF03\",\n\t\t});\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// get PRF03 Workspace\n\t\tconst perf03Node = wrapper.find(\"WorkspaceItem\").at(3);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t\t// expect to find one edit icon\n\t\tconst editIconNode = perf03Node.find(\".ff-adp-edit\");\n\t\texpect(editIconNode).to.be.length(1);\n\n\t\t// click the edit button\n\t\tperf03Node.find(\".individual-workspace-action\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(1);\n\n\t\t// assert the input is showing\n\t\tconst inputNode = wrapper.find(\"input.workspace-editor\");\n\t\texpect(inputNode).to.be.length(1);\n\n\t\t// add some text to the input and assert\n\t\tinputNode.simulate(\"change\", { target: { value: \"Renamed Workspace\" } });\n\t\texpect((inputNode.getDOMNode() as HTMLInputElement).value).to.be.string(\"Renamed Workspace\");\n\n\t\t// press Enter key and assert original value remains unaltered\n\t\tinputNode.simulate(\"keydown\", { key: \"Enter\" });\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(0);\n\t\texpect(wrapper.find(\"WorkspaceItem\").at(3).find(\".workspace-name\").text()).to.be.string(\"Renamed Workspace\");\n\t});\n});\n"]}
1
+ {"version":3,"file":"Workspace.spec.js","sourceRoot":"","sources":["../../../../src/components/userPreferences/tests/Workspace.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { mount, shallow } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport Workspaces from \"../components/content/Workspaces\";\nimport { initFSBL } from \"../../common/helpers\";\nimport sinon from \"sinon\";\nimport { waitTick } from \"../../sdd/sdd_helpers\";\n\nconst workspaces = [\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"Default Workspace\",\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t\twindows: [\"Tour-0580db91-7f2d-4583-a003-d079e74b8fb6\"],\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"auto_emptyWorkspace\",\n\t\twindows: [],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"auto_afterFeature\",\n\t\twindows: [],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"PRF03\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"RenameTest\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n\t{\n\t\tversion: \"1.0.0\",\n\t\tname: \"RenameTest (1)\",\n\t\twindows: [\"2\"],\n\t\ttype: \"workspace\",\n\t\tgroups: {},\n\t},\n];\n\ndescribe(\"<Workspace/>\", () => {\n\tinitFSBL(window);\n\n\tit(\"should render the workspaces components\", async () => {\n\t\tconst wrapper = shallow(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\texpect(wrapper.find(\"WorkspaceItemList\")).to.be.length(1);\n\t\texpect(wrapper.find(\"WorkspaceButton\")).to.be.length(2);\n\t\texpect(wrapper.find(\"Checkbox\")).to.be.length(3);\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(0);\n\t});\n\n\tit(\"should display the workspace items\", async () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(0);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\t});\n\n\tit(\"should not rename active workspace\", () => {\n\t\t// Stub the active workspace name\n\t\t(FSBL.Clients.WorkspaceClient as any).activeWorkspace = {\n\t\t\tname: \"auto_afterFeature\",\n\t\t};\n\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// check that we have one active workspace\n\t\tconst activeWorkspaceNode = wrapper.find(\".active-workspace\").hostNodes();\n\t\texpect(activeWorkspaceNode).to.be.length(1);\n\t\t// check that we have the correct active workspace name\n\t\texpect(activeWorkspaceNode.find(\".workspace-name\").text()).to.be.string(\"auto_afterFeature\");\n\t\t// no edit or trash icons\n\t\texpect(activeWorkspaceNode.find(\".ff-adp-edit\")).to.be.length(0);\n\t\texpect(activeWorkspaceNode.find(\".ff-adp-trash-outline\")).to.be.length(0);\n\t});\n\n\tit(\"should cancel workspace rename when ESC key is pressed\", () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({ workspaceList: workspaces, focusedWorkspace: \"PRF03\" });\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// get PRF03 Workspace\n\t\tconst perf03Node = wrapper.find(\"WorkspaceItem\").at(3);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t\t// expect to find one edit icon\n\t\tconst editIconNode = perf03Node.find(\".ff-adp-edit\");\n\t\texpect(editIconNode).to.be.length(1);\n\n\t\t// click the edit button\n\t\tperf03Node.find(\".individual-workspace-action\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(1);\n\n\t\t// assert the input is showing\n\t\tconst inputNode = wrapper.find(\"input.workspace-editor\");\n\t\texpect(inputNode).to.be.length(1);\n\n\t\t// add some text to the input and assert\n\t\tinputNode.simulate(\"change\", { target: { value: \"Renaming Workspace\" } });\n\t\texpect((inputNode.getDOMNode() as HTMLInputElement).value).to.be.string(\"Renaming Workspace\");\n\n\t\t// press ESC key and assert original value remains unaltered\n\t\tinputNode.simulate(\"keydown\", { key: \"Escape\" });\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(0);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t});\n\n\tit(\"should rename workspace when ENTER key is pressed in the rename prompt\", async () => {\n\t\tconst wrapper = mount(<Workspaces addListener={() => {}} removeListener={() => {}} getValue={() => {}} />);\n\t\t// add some workspaces\n\t\twrapper.setState({\n\t\t\tworkspaceList: workspaces,\n\t\t\tfocusedWorkspace: \"PRF03\",\n\t\t});\n\t\texpect(wrapper.find(\"WorkspaceItem\")).to.be.length(6);\n\n\t\t// get PRF03 Workspace\n\t\tconst perf03Node = wrapper.find(\"WorkspaceItem\").at(3);\n\t\texpect(perf03Node.find(\".workspace-name\").text()).to.be.string(\"PRF03\");\n\t\t// expect to find one edit icon\n\t\tconst editIconNode = perf03Node.find(\".ff-adp-edit\");\n\t\texpect(editIconNode).to.be.length(1);\n\n\t\t// click the edit button\n\t\tperf03Node.find(\".individual-workspace-action\").at(0).simulate(\"click\");\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(1);\n\n\t\t// assert the input is showing\n\t\tconst inputNode = wrapper.find(\"input.workspace-editor\");\n\t\texpect(inputNode).to.be.length(1);\n\n\t\t// add some text to the input and assert\n\t\tinputNode.simulate(\"change\", { target: { value: \"Renamed Workspace\" } });\n\t\texpect((inputNode.getDOMNode() as HTMLInputElement).value).to.be.string(\"Renamed Workspace\");\n\n\t\t// press Enter key and assert original value remains unaltered\n\t\tinputNode.simulate(\"keydown\", { key: \"Enter\" });\n\t\texpect(wrapper.find(\".workspace-item-editing\")).to.be.length(0);\n\t\texpect(wrapper.find(\"WorkspaceItem\").at(3).find(\".workspace-name\").text()).to.be.string(\"Renamed Workspace\");\n\t});\n});\n"]}
@@ -1,3 +1,7 @@
1
+ /*!
2
+ * Copyright 2017 by ChartIQ, Inc.
3
+ * All rights reserved.
4
+ */
1
5
  import * as React from "react";
2
6
  import "../../assets/css/windowTitleBar.css";
3
7
  import { StandardError } from "@finsemble/finsemble-api/types/types";
@@ -41,6 +45,11 @@ export declare class WindowTitleBarShell extends React.Component<WindowTitleBarS
41
45
  store?: StoreModel;
42
46
  constructor(props: WindowTitleBarShellProps);
43
47
  alwaysOnTopListener({ data: { alwaysOnTop } }: any): void;
48
+ /**
49
+ * This is necessary to make sure that the `this` inside of the callback is correct.
50
+ *
51
+ * @memberof WindowTitleBar
52
+ */
44
53
  bindCorrectContext(): void;
45
54
  onInitialized(): void;
46
55
  onStoreChange(): void;
@@ -48,19 +57,66 @@ export declare class WindowTitleBarShell extends React.Component<WindowTitleBarS
48
57
  componentDidUpdate(): void;
49
58
  componentWillUnmount(): void;
50
59
  setDOMBasedMovement(err: StandardError, response: any): void;
60
+ /**
61
+ * When we are not tiling/tabbing, we want to allow the user to drag the window around via any available space in the tab-region. This function allows that.
62
+ */
51
63
  allowDragOnCenterRegion(): void;
64
+ /**
65
+ * When we are tiling/tabbing, we do not want to allow any window to be dragged around and moved.
66
+ */
52
67
  disallowDragOnCenterRegion(): void;
68
+ /**
69
+ * When tiling start, we want to find the dragHandler and hide it
70
+ */
53
71
  onTilingStart(): void;
72
+ /**
73
+ * When tiling stops, we want to find the dragHandler and re-show it
74
+ */
54
75
  onTilingStop(): void;
76
+ /**
77
+ * Called whenever a tab is dropped on a non tab area.
78
+ * It won't be called when dropped on a tab that handles handle the event.
79
+ */
55
80
  onDropHandler(): void;
81
+ /**
82
+ * Called when user double clicks on drag handle
83
+ */
56
84
  onDoubleClick(): void;
57
85
  _setOnMouseUpAndDownHandlers(element: HTMLDivElement): void;
58
86
  makeDragHandle(fsblHeader: Element, dragHandleCssClass: string): HTMLElement;
59
87
  dragHandleBoundsForShowTabs(startingBounds: DOMRect): DOMRect;
88
+ /**
89
+ * The dragger is an absolutely positioned element that is superimposed on the actual area that we'd like to drag.
90
+ * This is necessary due to a bug in Chromium. Effectively, we need the dragger to change its left position and width
91
+ * to match the intended drag area. These dimensions can change whenever the header is re-rendered (for instance when
92
+ * changing mode from tabbing to non-tabbing). Dimensions can also change when the window itself is resized (due to natural
93
+ * css).
94
+ *
95
+ * Can remove all of the cq-drag and cq-no-drag because Chromium bug is fixed
96
+ * Remove fsbl-drag-region, it is no longer needed
97
+ * Hide the dragHandle during drop operations, so that it doesn't interfere
98
+ */
60
99
  resizeDragHandle(): void;
100
+ /**
101
+ * Whether the component's config allows for the linker.
102
+ * @param {} err
103
+ * @param {*} response
104
+ */
61
105
  showLinkerButton(err: StandardError, response: any): void;
106
+ /**
107
+ * Whether the window is the top-right-most window in a group of windows. If so, it renders a minimize icon for the whole group.
108
+ * @param {} err
109
+ * @param {*} response
110
+ */
62
111
  isTopRight(err: StandardError, response: any): void;
112
+ /**
113
+ * @param {*} err
114
+ * @param {*} response
115
+ */
63
116
  onTitleChange(err: StandardError, response: any): void;
117
+ /**
118
+ * The next few methods are store change handlers that sync local state with the store's state.
119
+ */
64
120
  onShowDockingToolTip(err: StandardError, response: any): void;
65
121
  onToggleDockingIcon(err: StandardError, response: any): void;
66
122
  onDockingEnabledChanged(err: StandardError, response: any): void;
@@ -70,15 +126,83 @@ export declare class WindowTitleBarShell extends React.Component<WindowTitleBarS
70
126
  onTabsChanged(err: StandardError, response: any): void;
71
127
  onShowTabsChanged(err: StandardError, response: any): void;
72
128
  hackScrollbar(): void;
129
+ /**
130
+ * Gets all the CSS styles in the document that match the element.
131
+ *
132
+ * @param element
133
+ */
134
+ getStylesForElement(element: HTMLElement): any[];
135
+ /**
136
+ * Get the Actual computed style values for an element native alternative is getComputedStyle() can return used
137
+ * values for some specific values eg a height specified in a % value will return a px value. Setting style with
138
+ * used values can lead to issues when resizing and potentially break application design.
139
+ *
140
+ * Note: this only takes into account the style from styles sheets and not inline styles on the element itself
141
+ */
142
+ getActualComputedStylesFromStylesheets(element: HTMLElement, property: string): string;
143
+ beginAdjustment(): void;
144
+ /**
145
+ * Once document is ready and header is injected into DOM, begin adjusting the height of elements and bump fixed/absolute elements
146
+ */
73
147
  maybeAdjustWindow(): Promise<void>;
148
+ /**
149
+ * Monitors the DOM for mutations, if the added node has a fixed position with a top style of 0px, it will be bumped by the title bar height.
150
+ * @param headerHeight the height of the header
151
+ */
74
152
  monitorFixedPositionedElements(headerHeight: string): void;
153
+ /**
154
+ * Calls functions to bump fixed and/or absolute elements if configured to do so.
155
+ * @param {object} config bumpElements object
156
+ */
75
157
  bumpElements(config: BumpElements): void;
158
+ /**
159
+ * Set the max height of each element to be the height of the parent container
160
+ * subtracted by the height of the previous element. This forces the element to either obey its
161
+ * predefined height or stay within the bounds of the max height.
162
+ * @param {object} elem HTML element
163
+ * @param {number} prev height of previous sibling
164
+ * @param maxHeight
165
+ */
76
166
  private adjust;
167
+ /**
168
+ * Adjusts the top level content view height to be its height subtracted by the headerHeight and its
169
+ * maxHeight to be 100vh subtracted by the total height of the previous elements.
170
+ * The height of the previous elements are added to this calculation if they are not fixed or absolute.
171
+ * @param {number} headerHeight the height of the header
172
+ */
77
173
  private adjustTopLevelHeight;
174
+ /**
175
+ * Adjusts the content view height to be maximum the parent container height subtracted by the total height elements above it.
176
+ * The height of the previous elements are added to this calculation if they are not fixed or absolute.
177
+ * @param {object} headerNode window titlebar
178
+ */
78
179
  private adjustContentHeight;
180
+ /**
181
+ * Calculates value to bump element by. If 'all' return top style and header height, if '0Positioned' return header height
182
+ * @param type Whether all elements are being bumped by the header height and their top style or just header height
183
+ * @param topStyle Element top value
184
+ * @param bumpBy Value to bump element by
185
+ * @returns Top style for element
186
+ */
79
187
  private calculateBumpValue;
188
+ /**
189
+ * Recursively traverse through the HTML document and return an array of the top level elements
190
+ * and elements with static parents
191
+ * @param {object} element The HTML element
192
+ * @param {array} acc accumulator
193
+ * @returns {array} array top level elements and elements with static parents
194
+ *
195
+ */
80
196
  private traverseHtml;
197
+ /**
198
+ * Bumps elements with fixed positioning down by the configured amount.
199
+ * @private
200
+ */
81
201
  private bumpFixedElements;
202
+ /**
203
+ * Bumps absolute positioned elements with static parents down by the configured amount.
204
+ * @private
205
+ */
82
206
  private bumpAbsoluteElements;
83
207
  render(): JSX.Element;
84
208
  }