@finsemble/finsemble-ui 6.3.1 → 6.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (744) hide show
  1. package/README.md +28 -28
  2. package/package.json +21 -33
  3. package/react/actions/favoriteActions.js.map +1 -1
  4. package/react/actions/linkerActions.js.map +1 -1
  5. package/react/actions/menuActions.js.map +1 -1
  6. package/react/actions/rootActions.js.map +1 -1
  7. package/react/actions/searchActions.js.map +1 -1
  8. package/react/actions/smartDesktopDesignerActions.d.ts +1 -3
  9. package/react/actions/smartDesktopDesignerActions.js +0 -1
  10. package/react/actions/smartDesktopDesignerActions.js.map +1 -1
  11. package/react/actions/toolbarActions.js.map +1 -1
  12. package/react/actions/workspaceActions.js.map +1 -1
  13. package/react/assets/css/advancedAppLauncher.css +636 -636
  14. package/react/assets/css/appCatalog.css +1069 -1069
  15. package/react/assets/css/authentication.css +78 -78
  16. package/react/assets/css/button.css +220 -220
  17. package/react/assets/css/core/formElements.css +23 -23
  18. package/react/assets/css/core/icons.css +69 -69
  19. package/react/assets/css/core/notifications.css +75 -75
  20. package/react/assets/css/core/windowFrame.css +36 -36
  21. package/react/assets/css/dashbar.css +78 -78
  22. package/react/assets/css/defaultTheme.css +356 -356
  23. package/react/assets/css/dialogs.css +158 -158
  24. package/react/assets/css/favorites.css +101 -101
  25. package/react/assets/css/finsemble.css +38 -38
  26. package/react/assets/css/focus.css +4 -4
  27. package/react/assets/css/font-finance.css +385 -385
  28. package/react/assets/css/fonts/Open_Sans/LICENSE.txt +202 -202
  29. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +118 -118
  30. package/react/assets/css/fonts/font-finance.svg +124 -124
  31. package/react/assets/css/fonts/icons-reference.html +1174 -1174
  32. package/react/assets/css/linkerWindow.css +124 -124
  33. package/react/assets/css/menus.css +195 -195
  34. package/react/assets/css/notificationsCenter.css +597 -597
  35. package/react/assets/css/processMonitor.css +213 -213
  36. package/react/assets/css/search.css +128 -128
  37. package/react/assets/css/shared/animations.css +99 -99
  38. package/react/assets/css/tags.css +136 -136
  39. package/react/assets/css/toolbar.css +413 -413
  40. package/react/assets/css/userPreferences.css +538 -568
  41. package/react/assets/css/windowTitleBar.css +653 -652
  42. package/react/assets/icons/always-on-top.svg +20 -0
  43. package/react/assets/icons/caret.svg +7 -0
  44. package/react/assets/icons/check-square.svg +5 -5
  45. package/react/assets/icons/check.svg +3 -3
  46. package/react/assets/icons/chevron-left.svg +3 -3
  47. package/react/assets/icons/chevron-right.svg +3 -3
  48. package/react/assets/icons/close.svg +11 -0
  49. package/react/assets/icons/copy.svg +10 -10
  50. package/react/assets/icons/documentation.svg +20 -0
  51. package/react/assets/icons/exclamation-circle.svg +4 -4
  52. package/react/assets/icons/external-link.svg +12 -12
  53. package/react/assets/icons/flag.svg +10 -10
  54. package/react/assets/icons/folder.svg +3 -3
  55. package/react/assets/icons/font.svg +3 -3
  56. package/react/assets/icons/globe.svg +3 -3
  57. package/react/assets/icons/hdd.svg +9 -9
  58. package/react/assets/icons/key.svg +10 -10
  59. package/react/assets/icons/life-ring.svg +3 -3
  60. package/react/assets/icons/linker.svg +18 -0
  61. package/react/assets/icons/lock.svg +5 -5
  62. package/react/assets/icons/magic.svg +15 -15
  63. package/react/assets/icons/maximize.svg +16 -0
  64. package/react/assets/icons/minimize.svg +15 -0
  65. package/react/assets/icons/moon.svg +10 -10
  66. package/react/assets/icons/paint-roller.svg +3 -3
  67. package/react/assets/icons/pencil.svg +10 -10
  68. package/react/assets/icons/plus.svg +3 -3
  69. package/react/assets/icons/question-circle.svg +5 -5
  70. package/react/assets/icons/search.svg +3 -3
  71. package/react/assets/icons/sun.svg +9 -9
  72. package/react/assets/icons/times.svg +3 -3
  73. package/react/assets/icons/toggle-off.svg +6 -6
  74. package/react/assets/icons/toggle-on.svg +6 -6
  75. package/react/assets/icons/toolbar.svg +12 -0
  76. package/react/assets/icons/tools.svg +3 -3
  77. package/react/assets/icons/trash.svg +12 -12
  78. package/react/assets/icons/upload.svg +10 -10
  79. package/react/assets/icons/window.svg +3 -3
  80. package/react/assets/img/finsemble-display.png +0 -0
  81. package/react/componentTemplateGenerator.js +85 -85
  82. package/react/componentTemplateGenerator.js.map +1 -1
  83. package/react/components/FinsembleProvider.js.map +1 -1
  84. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  85. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  86. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  87. package/react/components/appCatalog/components/AppList.js.map +1 -1
  88. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  89. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  90. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  91. package/react/components/appCatalog/components/Hero.js.map +1 -1
  92. package/react/components/appCatalog/components/Home.js.map +1 -1
  93. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  94. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  95. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  96. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  97. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  98. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  99. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  100. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  101. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  102. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  103. package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
  104. package/react/components/appCatalog/components/Tag.js.map +1 -1
  105. package/react/components/appCatalog/components/Toast.js.map +1 -1
  106. package/react/components/appCatalog/components/helpers.js.map +1 -1
  107. package/react/components/appCatalog/index.js.map +1 -1
  108. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  109. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  110. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  111. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  112. package/react/components/common/Accordion.d.ts +11 -0
  113. package/react/components/common/Accordion.js +20 -0
  114. package/react/components/common/Accordion.js.map +1 -0
  115. package/react/components/common/Button.js.map +1 -1
  116. package/react/components/common/ButtonIcon.js.map +1 -1
  117. package/react/components/common/ButtonRow.js.map +1 -1
  118. package/react/components/common/ButtonTile.js.map +1 -1
  119. package/react/components/common/Checkbox.d.ts +1 -0
  120. package/react/components/common/Checkbox.js +3 -1
  121. package/react/components/common/Checkbox.js.map +1 -1
  122. package/react/components/common/ColorPicker.js.map +1 -1
  123. package/react/components/common/DropZone.js.map +1 -1
  124. package/react/components/common/DropdownButton.js.map +1 -1
  125. package/react/components/common/FileInput.d.ts +2 -1
  126. package/react/components/common/FileInput.js +9 -4
  127. package/react/components/common/FileInput.js.map +1 -1
  128. package/react/components/common/FinsembleIcon.d.ts +1 -1
  129. package/react/components/common/FinsembleIcon.js +16 -0
  130. package/react/components/common/FinsembleIcon.js.map +1 -1
  131. package/react/components/common/FinsembleSelect.js.map +1 -1
  132. package/react/components/common/FinsembleToggle.js.map +1 -1
  133. package/react/components/common/Header.js +1 -1
  134. package/react/components/common/Header.js.map +1 -1
  135. package/react/components/common/ImagePreview.js.map +1 -1
  136. package/react/components/common/InputTable.d.ts +11 -0
  137. package/react/components/common/InputTable.js +50 -0
  138. package/react/components/common/InputTable.js.map +1 -0
  139. package/react/components/common/LoadingSpinner.js.map +1 -1
  140. package/react/components/common/Tab.js.map +1 -1
  141. package/react/components/common/Tooltip.js.map +1 -1
  142. package/react/components/common/css/accordion.css +99 -0
  143. package/react/components/common/css/application-edit-page.css +324 -117
  144. package/react/components/common/css/application-list.css +49 -47
  145. package/react/components/common/css/button.css +166 -164
  146. package/react/components/common/css/checkbox.css +30 -0
  147. package/react/components/common/css/color-picker.css +52 -52
  148. package/react/components/common/css/drop-zone.css +17 -17
  149. package/react/components/common/css/file-input.css +65 -49
  150. package/react/components/common/css/header.css +30 -43
  151. package/react/components/common/css/icon.css +13 -13
  152. package/react/components/common/css/image-preview.css +57 -57
  153. package/react/components/common/css/loading-spinner.css +39 -39
  154. package/react/components/common/css/selector.css +51 -51
  155. package/react/components/common/css/styles.css +127 -128
  156. package/react/components/common/css/tab.css +56 -56
  157. package/react/components/common/css/toggle.css +32 -32
  158. package/react/components/common/css/tooltip.css +78 -78
  159. package/react/components/common/file_helpers.js.map +1 -1
  160. package/react/components/common/fixtures/FinsembleIcon.css +4 -4
  161. package/react/components/common/helpers.js.map +1 -1
  162. package/react/components/common/stories/Accordion.stories.d.ts +14 -0
  163. package/react/components/common/stories/Accordion.stories.js +42 -0
  164. package/react/components/common/stories/Accordion.stories.js.map +1 -0
  165. package/react/components/common/stories/Button.stories.js.map +1 -1
  166. package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
  167. package/react/components/common/stories/ButtonRow.stories.js.map +1 -1
  168. package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
  169. package/react/components/common/stories/Checkbox.stories.js.map +1 -1
  170. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  171. package/react/components/common/stories/DropZone.stories.js.map +1 -1
  172. package/react/components/common/stories/DropdownButton.stories.d.ts +11 -0
  173. package/react/components/common/stories/DropdownButton.stories.js +12 -0
  174. package/react/components/common/stories/DropdownButton.stories.js.map +1 -1
  175. package/react/components/common/stories/FileInput.stories.d.ts +2 -1
  176. package/react/components/common/stories/FileInput.stories.js +6 -0
  177. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  178. package/react/components/common/stories/FinsembleIcon.stories.js +1 -0
  179. package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
  180. package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
  181. package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
  182. package/react/components/common/stories/Header.stories.js.map +1 -1
  183. package/react/components/common/stories/ImagePreview.stories.js.map +1 -1
  184. package/react/components/common/stories/InputTable.stories.d.ts +12 -0
  185. package/react/components/common/stories/InputTable.stories.js +35 -0
  186. package/react/components/common/stories/InputTable.stories.js.map +1 -0
  187. package/react/components/common/stories/LoadingSpinner.stories.js.map +1 -1
  188. package/react/components/common/stories/Tab.stories.js.map +1 -1
  189. package/react/components/common/stories/Tooltip.stories.js.map +1 -1
  190. package/react/components/{smartDesktopDesigner/tests/ApplicationEdit.spec.d.ts → common/tests/Accordion.spec.d.ts} +0 -0
  191. package/react/components/common/tests/Accordion.spec.js +53 -0
  192. package/react/components/common/tests/Accordion.spec.js.map +1 -0
  193. package/react/components/common/tests/ButtonRow.spec.js.map +1 -1
  194. package/react/components/common/tests/Checkbox.spec.js +5 -3
  195. package/react/components/common/tests/Checkbox.spec.js.map +1 -1
  196. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  197. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  198. package/react/components/common/tests/FileInput.spec.js +20 -5
  199. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  200. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  201. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  202. package/react/components/common/tests/Header.spec.js +6 -2
  203. package/react/components/common/tests/Header.spec.js.map +1 -1
  204. package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
  205. package/react/components/{smartDesktopDesigner/tests/ApplicationSetup.spec.d.ts → common/tests/InputTable.spec.d.ts} +0 -0
  206. package/react/components/common/tests/InputTable.spec.js +166 -0
  207. package/react/components/common/tests/InputTable.spec.js.map +1 -0
  208. package/react/components/common/tests/Tab.spec.js.map +1 -1
  209. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  210. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  211. package/react/components/favorites/FavoritesShell.js.map +1 -1
  212. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  213. package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
  214. package/react/components/favorites/index.js.map +1 -1
  215. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  216. package/react/components/fdc3Resolver/ResolverDialog.css +126 -126
  217. package/react/components/fdc3Resolver/ResolverDialog.js +1 -1
  218. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  219. package/react/components/fdc3Resolver/ResolverDialog.spec.js +1 -1
  220. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  221. package/react/components/fdc3Resolver/ResolverDialog.stories.js +13 -0
  222. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  223. package/react/components/icon/Icon.js.map +1 -1
  224. package/react/components/icon/index.js.map +1 -1
  225. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  226. package/react/components/legacyControls/FinsembleDialogButton.js +1 -1
  227. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  228. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  229. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  230. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  231. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  232. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  233. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  234. package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
  235. package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
  236. package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
  237. package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
  238. package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
  239. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  240. package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
  241. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  242. package/react/components/linker/LinkerMenu.js.map +1 -1
  243. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  244. package/react/components/linker/index.js.map +1 -1
  245. package/react/components/linker/remoteRedux.js.map +1 -1
  246. package/react/components/menu/Menu.d.ts +1 -0
  247. package/react/components/menu/Menu.js.map +1 -1
  248. package/react/components/menu/MenuAutoResizer.d.ts +2 -1
  249. package/react/components/menu/MenuAutoResizer.js +4 -3
  250. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  251. package/react/components/menu/MenuContent.js.map +1 -1
  252. package/react/components/menu/MenuHotKey.js.map +1 -1
  253. package/react/components/menu/MenuItem.js.map +1 -1
  254. package/react/components/menu/MenuPortal.js +99 -92
  255. package/react/components/menu/MenuPortal.js.map +1 -1
  256. package/react/components/menu/MenuShell.d.ts +1 -0
  257. package/react/components/menu/MenuShell.js +3 -2
  258. package/react/components/menu/MenuShell.js.map +1 -1
  259. package/react/components/menu/MenuToggle.js.map +1 -1
  260. package/react/components/menu/index.js.map +1 -1
  261. package/react/components/menu/keyboardNavigation.js.map +1 -1
  262. package/react/components/menu/menuContext.d.ts +1 -0
  263. package/react/components/menu/menuContext.js.map +1 -1
  264. package/react/components/menu/menuHelpers.d.ts +1 -1
  265. package/react/components/menu/menuHelpers.js +2 -2
  266. package/react/components/menu/menuHelpers.js.map +1 -1
  267. package/react/components/notifications/components/NoNotifications.js.map +1 -1
  268. package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
  269. package/react/components/notifications/components/drawer/DrawerControls.js +30 -6
  270. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  271. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  272. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js +2 -0
  273. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  274. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js +20 -27
  275. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  276. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  277. package/react/components/notifications/components/shared/IconButton.js +5 -1
  278. package/react/components/notifications/components/shared/IconButton.js.map +1 -1
  279. package/react/components/notifications/components/shared/NotificationCardShell.js +1 -1
  280. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  281. package/react/components/notifications/components/shared/OverflowMenu.js +5 -1
  282. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  283. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
  284. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyContentLogo.js.map +1 -1
  285. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
  286. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
  287. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderLogo.js.map +1 -1
  288. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
  289. package/react/components/notifications/components/views/CardView.js.map +1 -1
  290. package/react/components/notifications/components/views/ListView.js +1 -1
  291. package/react/components/notifications/components/views/ListView.js.map +1 -1
  292. package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
  293. package/react/components/notifications/constants.js.map +1 -1
  294. package/react/components/notifications/icons/Card.js.map +1 -1
  295. package/react/components/notifications/icons/Chevron.js.map +1 -1
  296. package/react/components/notifications/icons/CloseIcon.js.map +1 -1
  297. package/react/components/notifications/icons/EnvelopeClose.js.map +1 -1
  298. package/react/components/notifications/icons/EnvelopeOpen.js.map +1 -1
  299. package/react/components/notifications/icons/SnoozeIcon.js.map +1 -1
  300. package/react/components/notifications/index.js.map +1 -1
  301. package/react/components/notifications/notificationsContext.js.map +1 -1
  302. package/react/components/notifications/types.js.map +1 -1
  303. package/react/components/notifications/utils.js.map +1 -1
  304. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  305. package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
  306. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  307. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  308. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  309. package/react/components/processMonitor/constants.js.map +1 -1
  310. package/react/components/processMonitor/helpers.js.map +1 -1
  311. package/react/components/processMonitor/helpers.spec.js.map +1 -1
  312. package/react/components/processMonitor/index.js.map +1 -1
  313. package/react/components/processMonitor/stores/ProcessMonitorStore.js +49 -49
  314. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  315. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  316. package/react/components/quickComponentForm/index.js.map +1 -1
  317. package/react/components/quickComponentForm/quickComponent.css +3 -3
  318. package/react/components/search/Highlight.js.map +1 -1
  319. package/react/components/search/Highlight.spec.js.map +1 -1
  320. package/react/components/search/Highlight.stories.js.map +1 -1
  321. package/react/components/search/Search.js.map +1 -1
  322. package/react/components/search/SearchBestMatch.js.map +1 -1
  323. package/react/components/search/SearchInput.js.map +1 -1
  324. package/react/components/search/SearchProviderResults.js.map +1 -1
  325. package/react/components/search/SearchResult.js.map +1 -1
  326. package/react/components/search/SearchResults.js.map +1 -1
  327. package/react/components/search/index.js.map +1 -1
  328. package/react/components/shared/Animate.js.map +1 -1
  329. package/react/components/shared/BellIcon.js.map +1 -1
  330. package/react/components/shared/BellIconCrossed.js.map +1 -1
  331. package/react/components/shared/Button.js.map +1 -1
  332. package/react/components/shared/ConditionalWrapper.js.map +1 -1
  333. package/react/components/shared/DefaultDropdownButton.js +1 -1
  334. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  335. package/react/components/shared/NavigationButton.js.map +1 -1
  336. package/react/components/shared/Tag.js.map +1 -1
  337. package/react/components/shared/TagsMenu.js.map +1 -1
  338. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  339. package/react/components/shared/linkerUtil.js.map +1 -1
  340. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  341. package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
  342. package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
  343. package/react/components/shared/validateURL.js.map +1 -1
  344. package/react/components/shared/validateURL.spec.js.map +1 -1
  345. package/react/components/singleInputDialog/SingleInputDialog.css +3 -3
  346. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  347. package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
  348. package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
  349. package/react/components/singleInputDialog/index.js.map +1 -1
  350. package/react/components/smartDesktopDesigner/AddApp.d.ts +14 -0
  351. package/react/components/smartDesktopDesigner/AddApp.js +60 -0
  352. package/react/components/smartDesktopDesigner/AddApp.js.map +1 -0
  353. package/react/components/smartDesktopDesigner/AppEditAccess.js +16 -32
  354. package/react/components/smartDesktopDesigner/AppEditAccess.js.map +1 -1
  355. package/react/components/smartDesktopDesigner/AppEditPage.d.ts +5 -19
  356. package/react/components/smartDesktopDesigner/AppEditPage.js +548 -59
  357. package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
  358. package/react/components/smartDesktopDesigner/Appearance.css +27 -94
  359. package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +1 -1
  360. package/react/components/smartDesktopDesigner/Appearance.js +1 -1
  361. package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
  362. package/react/components/smartDesktopDesigner/Application.d.ts +1 -0
  363. package/react/components/smartDesktopDesigner/Application.js +151 -93
  364. package/react/components/smartDesktopDesigner/Application.js.map +1 -1
  365. package/react/components/smartDesktopDesigner/ApplicationList.d.ts +2 -1
  366. package/react/components/smartDesktopDesigner/ApplicationList.js +7 -3
  367. package/react/components/smartDesktopDesigner/ApplicationList.js.map +1 -1
  368. package/react/components/smartDesktopDesigner/Applications.d.ts +0 -3
  369. package/react/components/smartDesktopDesigner/Applications.js +52 -102
  370. package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
  371. package/react/components/smartDesktopDesigner/AssetsPage.css +26 -26
  372. package/react/components/smartDesktopDesigner/AssetsPage.js.map +1 -1
  373. package/react/components/smartDesktopDesigner/Authentication.js +2 -9
  374. package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
  375. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js +8 -1
  376. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
  377. package/react/components/smartDesktopDesigner/Content.js.map +1 -1
  378. package/react/components/smartDesktopDesigner/ContentHeader.d.ts +5 -0
  379. package/react/components/smartDesktopDesigner/ContentHeader.js +10 -0
  380. package/react/components/smartDesktopDesigner/ContentHeader.js.map +1 -0
  381. package/react/components/smartDesktopDesigner/CurrentView.js +2 -1
  382. package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
  383. package/react/components/smartDesktopDesigner/Export.d.ts +1 -0
  384. package/react/components/smartDesktopDesigner/Export.js +40 -9
  385. package/react/components/smartDesktopDesigner/Export.js.map +1 -1
  386. package/react/components/smartDesktopDesigner/ExportCloud.d.ts +3 -1
  387. package/react/components/smartDesktopDesigner/ExportCloud.js +4 -6
  388. package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
  389. package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
  390. package/react/components/smartDesktopDesigner/ExportZip.d.ts +3 -1
  391. package/react/components/smartDesktopDesigner/ExportZip.js +8 -3
  392. package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
  393. package/react/components/smartDesktopDesigner/GettingStarted.d.ts +1 -0
  394. package/react/components/smartDesktopDesigner/GettingStarted.js +11 -25
  395. package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
  396. package/react/components/smartDesktopDesigner/Navigation.d.ts +2 -2
  397. package/react/components/smartDesktopDesigner/Navigation.js +17 -15
  398. package/react/components/smartDesktopDesigner/Navigation.js.map +1 -1
  399. package/react/components/smartDesktopDesigner/ProjectErrors.js.map +1 -1
  400. package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
  401. package/react/components/smartDesktopDesigner/PublishProgress.js.map +1 -1
  402. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.d.ts +3 -3
  403. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js +11 -17
  404. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  405. package/react/components/smartDesktopDesigner/ThemePage.css +109 -110
  406. package/react/components/smartDesktopDesigner/ThemePage.js +0 -7
  407. package/react/components/smartDesktopDesigner/ThemePage.js.map +1 -1
  408. package/react/components/smartDesktopDesigner/Themes.js +0 -2
  409. package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
  410. package/react/components/smartDesktopDesigner/Toolbar.d.ts +15 -0
  411. package/react/components/smartDesktopDesigner/Toolbar.js +123 -0
  412. package/react/components/smartDesktopDesigner/Toolbar.js.map +1 -0
  413. package/react/components/smartDesktopDesigner/View.js +1 -1
  414. package/react/components/smartDesktopDesigner/View.js.map +1 -1
  415. package/react/components/smartDesktopDesigner/common/fsbl_functions.d.ts +1 -1
  416. package/react/components/smartDesktopDesigner/common/fsbl_functions.js +2 -2
  417. package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +1 -1
  418. package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
  419. package/react/components/smartDesktopDesigner/common/views.d.ts +2 -36
  420. package/react/components/smartDesktopDesigner/common/views.js +150 -111
  421. package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
  422. package/react/components/smartDesktopDesigner/css/appearance.css +18 -10
  423. package/react/components/smartDesktopDesigner/css/applications.css +167 -127
  424. package/react/components/smartDesktopDesigner/css/authentication.css +119 -125
  425. package/react/components/smartDesktopDesigner/css/buttons.css +12 -12
  426. package/react/components/smartDesktopDesigner/css/export.css +176 -163
  427. package/react/components/smartDesktopDesigner/css/getting-started.css +28 -6
  428. package/react/components/smartDesktopDesigner/css/nav.css +120 -93
  429. package/react/components/smartDesktopDesigner/css/project-errors.css +15 -15
  430. package/react/components/smartDesktopDesigner/css/project-header.css +124 -121
  431. package/react/components/smartDesktopDesigner/css/styles.css +178 -179
  432. package/react/components/smartDesktopDesigner/css/views.css +23 -16
  433. package/react/components/smartDesktopDesigner/fixtures/apps.d.ts +2 -0
  434. package/react/components/smartDesktopDesigner/fixtures/apps.js +41 -6
  435. package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
  436. package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
  437. package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +1 -1
  438. package/react/components/smartDesktopDesigner/fixtures/exportProps.js +3 -0
  439. package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
  440. package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +1 -1
  441. package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
  442. package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
  443. package/react/components/smartDesktopDesigner/fixtures/views.d.ts +2 -2
  444. package/react/components/smartDesktopDesigner/fixtures/views.js +58 -26
  445. package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
  446. package/react/components/smartDesktopDesigner/sdd_helpers.d.ts +1 -1
  447. package/react/components/smartDesktopDesigner/sdd_helpers.js +4 -3
  448. package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
  449. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.d.ts +3 -1
  450. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js +12 -33
  451. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
  452. package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
  453. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.d.ts +2 -1
  454. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js +8 -1
  455. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +1 -1
  456. package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
  457. package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +1 -1
  458. package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
  459. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.d.ts +10 -0
  460. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.js +13 -0
  461. package/react/components/smartDesktopDesigner/stories/ContentHeader.stories.js.map +1 -0
  462. package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
  463. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.d.ts +1 -1
  464. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js +1 -1
  465. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
  466. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.d.ts +1 -1
  467. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js +1 -1
  468. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
  469. package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
  470. package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
  471. package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
  472. package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
  473. package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
  474. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js +7 -1
  475. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
  476. package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +1 -1
  477. package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
  478. package/react/components/smartDesktopDesigner/stories/Toolbar.stories.d.ts +14 -0
  479. package/react/components/smartDesktopDesigner/stories/Toolbar.stories.js +38 -0
  480. package/react/components/smartDesktopDesigner/stories/Toolbar.stories.js.map +1 -0
  481. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js +73 -122
  482. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
  483. package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +1 -1
  484. package/react/components/smartDesktopDesigner/tests/Applications.spec.d.ts +1 -1
  485. package/react/components/smartDesktopDesigner/tests/Applications.spec.js +61 -560
  486. package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
  487. package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
  488. package/react/components/smartDesktopDesigner/tests/{ProjectHeader.spec.d.ts → ContentHeader.spec.d.ts} +0 -0
  489. package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.js +31 -0
  490. package/react/components/smartDesktopDesigner/tests/ContentHeader.spec.js.map +1 -0
  491. package/react/components/smartDesktopDesigner/tests/Export.spec.js +129 -0
  492. package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
  493. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js +7 -0
  494. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
  495. package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
  496. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js +3 -14
  497. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
  498. package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
  499. package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
  500. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js +2 -31
  501. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
  502. package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
  503. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.d.ts +1 -0
  504. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.js +203 -0
  505. package/react/components/smartDesktopDesigner/tests/Toolbar.spec.js.map +1 -0
  506. package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
  507. package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.d.ts +1 -0
  508. package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.js +18 -0
  509. package/react/components/smartDesktopDesigner/tests/sdd_helpers.spec.js.map +1 -0
  510. package/react/components/smartDesktopDesigner/themeDefinitions.js.map +1 -1
  511. package/react/components/system/System.js.map +1 -1
  512. package/react/components/system/System.spec.js.map +1 -1
  513. package/react/components/system/System.stories.js.map +1 -1
  514. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  515. package/react/components/system/index.js.map +1 -1
  516. package/react/components/toolbar/AutoArrange.js.map +1 -1
  517. package/react/components/toolbar/DragHandle.js.map +1 -1
  518. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  519. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  520. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  521. package/react/components/toolbar/NotificationControl.js.map +1 -1
  522. package/react/components/toolbar/RevealAll.js.map +1 -1
  523. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  524. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  525. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  526. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  527. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  528. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  529. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
  530. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  531. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  532. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  533. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  534. package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
  535. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  536. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  537. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js +47 -45
  538. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  539. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  540. package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
  541. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  542. package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
  543. package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
  544. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  545. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  546. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  547. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  548. package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
  549. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  550. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  551. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  552. package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
  553. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.d.ts +1 -0
  554. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  555. package/react/components/toolbar/appLauncher/appLauncher.css +30 -30
  556. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  557. package/react/components/toolbar/appLauncher/stores/appLauncherStore.d.ts +1 -0
  558. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js +17 -34
  559. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  560. package/react/components/toolbar/dashbar/Dashbar.js +3 -1
  561. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  562. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  563. package/react/components/toolbar/index.js.map +1 -1
  564. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.d.ts +1 -1
  565. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  566. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.d.ts +1 -1
  567. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  568. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  569. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.d.ts +1 -1
  570. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  571. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.d.ts +1 -1
  572. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  573. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +90 -90
  574. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  575. package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -1
  576. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  577. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  578. package/react/components/userPreferences/UserPreferencesWrapper.js.map +1 -1
  579. package/react/components/userPreferences/components/ContentSection.js.map +1 -1
  580. package/react/components/userPreferences/components/LeftNav.js.map +1 -1
  581. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  582. package/react/components/userPreferences/components/content/DashbarEditorItem.js.map +1 -1
  583. package/react/components/userPreferences/components/content/General.js.map +1 -1
  584. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  585. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  586. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  587. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  588. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  589. package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
  590. package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
  591. package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
  592. package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js.map +1 -1
  593. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
  594. package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js.map +1 -1
  595. package/react/components/userPreferences/index.js.map +1 -1
  596. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  597. package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
  598. package/react/components/userPreferences/stories/DashbarEditorItem.stories.js.map +1 -1
  599. package/react/components/userPreferences/stories/General.stories.js.map +1 -1
  600. package/react/components/userPreferences/stories/Notifications.stories.js.map +1 -1
  601. package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js.map +1 -1
  602. package/react/components/userPreferences/stories/NotificationsSources.stories.js.map +1 -1
  603. package/react/components/userPreferences/stories/UserPreferences.stories.js.map +1 -1
  604. package/react/components/userPreferences/stories/WorkspaceButton.stories.js.map +1 -1
  605. package/react/components/userPreferences/stories/WorkspaceComponents.stories.js.map +1 -1
  606. package/react/components/userPreferences/stories/WorkspaceItem.stories.js.map +1 -1
  607. package/react/components/userPreferences/stories/WorkspaceItemList.stories.js.map +1 -1
  608. package/react/components/userPreferences/stories/Workspaces.stories.js.map +1 -1
  609. package/react/components/userPreferences/tests/ContentSection.spec.js.map +1 -1
  610. package/react/components/userPreferences/tests/DashbarEditor.spec.js.map +1 -1
  611. package/react/components/userPreferences/tests/DashbarEditorItem.spec.js.map +1 -1
  612. package/react/components/userPreferences/tests/General.spec.js.map +1 -1
  613. package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
  614. package/react/components/userPreferences/tests/NotificationSourceTypes.spec.js.map +1 -1
  615. package/react/components/userPreferences/tests/Notifications.spec.js.map +1 -1
  616. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
  617. package/react/components/userPreferences/tests/NotificationsSourcesPreferences.spec.js.map +1 -1
  618. package/react/components/userPreferences/tests/ScheduledRestart.spec.js +1 -1
  619. package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +1 -1
  620. package/react/components/userPreferences/tests/WorkspaceButton.spec.js.map +1 -1
  621. package/react/components/userPreferences/tests/WorkspaceComponents.spec.js.map +1 -1
  622. package/react/components/userPreferences/tests/WorkspaceItem.spec.js.map +1 -1
  623. package/react/components/userPreferences/tests/WorkspaceItemList.spec.js.map +1 -1
  624. package/react/components/utils.js.map +1 -1
  625. package/react/components/windowTitleBar/WindowTitleBarShell.js +8 -1
  626. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  627. package/react/components/windowTitleBar/components/center/Tab.d.ts +0 -1
  628. package/react/components/windowTitleBar/components/center/Tab.js +2 -2
  629. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  630. package/react/components/windowTitleBar/components/center/TabList.d.ts +0 -1
  631. package/react/components/windowTitleBar/components/center/TabList.js +16 -79
  632. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  633. package/react/components/windowTitleBar/components/center/TabRegion.js.map +1 -1
  634. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  635. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  636. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  637. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  638. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  639. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  640. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  641. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  642. package/react/components/windowTitleBar/components/right/MaximizeButton.d.ts +7 -0
  643. package/react/components/windowTitleBar/components/right/MaximizeButton.js +11 -1
  644. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  645. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  646. package/react/components/windowTitleBar/components/windowTitle.d.ts +6 -5
  647. package/react/components/windowTitleBar/components/windowTitle.js +143 -35
  648. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  649. package/react/components/windowTitleBar/index.js.map +1 -1
  650. package/react/components/windowTitleBar/stores/windowTitleBarStore.js +5 -1
  651. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  652. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
  653. package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
  654. package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
  655. package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
  656. package/react/components/yesNoDialog/YesNoDialog.css +3 -3
  657. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  658. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  659. package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
  660. package/react/components/yesNoDialog/index.js.map +1 -1
  661. package/react/components/yesNoDialog/timer.js.map +1 -1
  662. package/react/enzymeSetup.js +1 -1
  663. package/react/enzymeSetup.js.map +1 -1
  664. package/react/hooks/index.js.map +1 -1
  665. package/react/hooks/useAuth.js.map +1 -1
  666. package/react/hooks/useDashbar.d.ts +8 -0
  667. package/react/hooks/useDashbar.js +104 -0
  668. package/react/hooks/useDashbar.js.map +1 -0
  669. package/react/hooks/useDeepEffect.js.map +1 -1
  670. package/react/hooks/useFavorites.js.map +1 -1
  671. package/react/hooks/useFavoritesShell.js.map +1 -1
  672. package/react/hooks/useHotkey.js.map +1 -1
  673. package/react/hooks/useLinker.js.map +1 -1
  674. package/react/hooks/useMenu.js.map +1 -1
  675. package/react/hooks/useNotifications.js.map +1 -1
  676. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  677. package/react/hooks/usePubSub.js.map +1 -1
  678. package/react/hooks/useSearch.js.map +1 -1
  679. package/react/hooks/useToolbar.d.ts +0 -6
  680. package/react/hooks/useToolbar.js +0 -101
  681. package/react/hooks/useToolbar.js.map +1 -1
  682. package/react/hooks/useWorkspace.js.map +1 -1
  683. package/react/reducers/favoriteReducer.js.map +1 -1
  684. package/react/reducers/linkerReducer.js.map +1 -1
  685. package/react/reducers/menuReducer.js.map +1 -1
  686. package/react/reducers/rootReducer.d.ts +0 -4
  687. package/react/reducers/rootReducer.js.map +1 -1
  688. package/react/reducers/searchReducer.js.map +1 -1
  689. package/react/reducers/smartDesktopDesignerReducer.js +0 -3
  690. package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
  691. package/react/reducers/toolbarReducer.js.map +1 -1
  692. package/react/reducers/workspaceReducer.js.map +1 -1
  693. package/react/store.d.ts +0 -8
  694. package/react/store.js.map +1 -1
  695. package/react/types/advancedAppLauncherTypes.js.map +1 -1
  696. package/react/types/dashbarTypes.js.map +1 -1
  697. package/react/types/favoriteTypes.js.map +1 -1
  698. package/react/types/fdc3.d.ts +7 -35
  699. package/react/types/fdc3.js.map +1 -1
  700. package/react/types/hotkeyTypes.js.map +1 -1
  701. package/react/types/iconTypes.js.map +1 -1
  702. package/react/types/linkerTypes.js.map +1 -1
  703. package/react/types/searchTypes.js.map +1 -1
  704. package/react/types/smartDesktopDesignerTypes.d.ts +45 -5
  705. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  706. package/react/types/windowTitleBar.d.ts +4 -2
  707. package/react/types/windowTitleBar.js.map +1 -1
  708. package/react/types/workspaceTypes.js.map +1 -1
  709. package/react/components/common/FontSizeSelector.d.ts +0 -7
  710. package/react/components/common/FontSizeSelector.js +0 -42
  711. package/react/components/common/FontSizeSelector.js.map +0 -1
  712. package/react/components/common/stories/FontSizeSelector.stories.d.ts +0 -12
  713. package/react/components/common/stories/FontSizeSelector.stories.js +0 -24
  714. package/react/components/common/stories/FontSizeSelector.stories.js.map +0 -1
  715. package/react/components/smartDesktopDesigner/ApplicationEdit.d.ts +0 -25
  716. package/react/components/smartDesktopDesigner/ApplicationEdit.js +0 -103
  717. package/react/components/smartDesktopDesigner/ApplicationEdit.js.map +0 -1
  718. package/react/components/smartDesktopDesigner/ApplicationSetup.d.ts +0 -23
  719. package/react/components/smartDesktopDesigner/ApplicationSetup.js +0 -73
  720. package/react/components/smartDesktopDesigner/ApplicationSetup.js.map +0 -1
  721. package/react/components/smartDesktopDesigner/ProjectHeader.d.ts +0 -14
  722. package/react/components/smartDesktopDesigner/ProjectHeader.js +0 -70
  723. package/react/components/smartDesktopDesigner/ProjectHeader.js.map +0 -1
  724. package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.d.ts +0 -4
  725. package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js +0 -45
  726. package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js.map +0 -1
  727. package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.d.ts +0 -3
  728. package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js +0 -29
  729. package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js.map +0 -1
  730. package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.d.ts +0 -12
  731. package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js +0 -21
  732. package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js.map +0 -1
  733. package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.d.ts +0 -12
  734. package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js +0 -28
  735. package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js.map +0 -1
  736. package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.d.ts +0 -10
  737. package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js +0 -19
  738. package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js.map +0 -1
  739. package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js +0 -66
  740. package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js.map +0 -1
  741. package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js +0 -41
  742. package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js.map +0 -1
  743. package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js +0 -27
  744. package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"System.js","sourceRoot":"","sources":["../../../src/components/system/System.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAKlF,MAAM,CAAC,MAAM,WAAW,GAA4B,GAAG,EAAE,CAAC,CACzD,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CACrC;YACC,aAAa,EAAE,iBAAiB;SAChC,EACD;YACC,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,QAAQ;SACb,CACD,CAAC;IACH,CAAC,kBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,SAAS,GAA4B,GAAG,EAAE,CAAC,CACvD,oBAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,aAAa,iBAAuB,CAChF,CAAC;AAKF,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,EAAE,CAAC,CAC3D,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC,qBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,EAAE,CAAC,CAC3D,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CACrC;YACC,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,GAAG;YACV,GAAG,EAAE,wEAAwE;SAC7E,EACD,EAAE,EACF,GAAG,EAAE,GAAE,CAAC,CACR,CAAC;IACH,CAAC,oBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,OAAO,GAA4B,GAAG,EAAE,CAAC,oBAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,cAAoB,CAAC;AAMrH,MAAM,CAAC,MAAM,KAAK,GAA4B,GAAG,EAAE,CAAC,CACnD,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACJ,CAAC,YAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,IAAI,GAA4B,GAAG,EAAE,CAAC,oBAAC,QAAQ,IAAC,OAAO,EAAE,0BAA0B,WAAiB,CAAC","sourcesContent":["import * as React from \"react\";\r\n\r\nimport { MenuItem } from \"../menu/MenuItem\";\r\nimport { openQuitConfirmationDialog } from \"../shared/openQuitConfirmationDialog\";\r\n\r\n/**\r\n * A menu item that opens the user preferences menu when clicked.\r\n */\r\nexport const Preferences: React.FunctionComponent = () => (\r\n\t<MenuItem\r\n\t\tonClick={() => {\r\n\t\t\tFSBL.Clients.LauncherClient.showWindow(\r\n\t\t\t\t{\r\n\t\t\t\t\tcomponentType: \"UserPreferences\",\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tmonitor: \"mine\",\r\n\t\t\t\t\tleft: \"center\",\r\n\t\t\t\t\ttop: \"center\",\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}}\r\n\t>\r\n\t\tPreferences\r\n\t</MenuItem>\r\n);\r\n\r\n/**\r\n * A menu item that opens the system log window when clicked.\r\n */\r\nexport const SystemLog: React.FunctionComponent = () => (\r\n\t<MenuItem onClick={FSBL.SystemManagerClient.showSystemLog}>System Log</MenuItem>\r\n);\r\n\r\n/**\r\n * A menu item that opens the Central Logger when clicked.\r\n */\r\nexport const CentralLogger: React.FunctionComponent = () => (\r\n\t<MenuItem\r\n\t\tonClick={() => {\r\n\t\t\tFSBL.Clients.RouterClient.transmit(\"CentralConsole-Show\", true);\r\n\t\t}}\r\n\t>\r\n\t\tCentral Logger\r\n\t</MenuItem>\r\n);\r\n\r\n/**\r\n * A menu item that opens Finsemble documentation in a browser when clicked.\r\n */\r\nexport const Documentation: React.FunctionComponent = () => (\r\n\t<MenuItem\r\n\t\tonClick={() => {\r\n\t\t\tFSBL.Clients.DialogManager.spawnDialog(\r\n\t\t\t\t{\r\n\t\t\t\t\tname: \"Documentation\",\r\n\t\t\t\t\twidth: 750,\r\n\t\t\t\t\turl: \"https://documentation.finsemble.com/tutorial-finsemble-user-guide.html\",\r\n\t\t\t\t},\r\n\t\t\t\t{},\r\n\t\t\t\t() => {}\r\n\t\t\t);\r\n\t\t}}\r\n\t>\r\n\t\tDocumentation\r\n\t</MenuItem>\r\n);\r\n\r\n/**\r\n * A menu item that restarts the Finsemble application when clicked.\r\n */\r\nexport const Restart: React.FunctionComponent = () => <MenuItem onClick={FSBL.restartApplication}>Restart</MenuItem>;\r\n\r\n/**\r\n * A menu item that resets the Finsemble application.\r\n * The reset clears out all the user data of the application when clicked.\r\n */\r\nexport const Reset: React.FunctionComponent = () => (\r\n\t<MenuItem\r\n\t\tonClick={() => {\r\n\t\t\tFSBL.Clients.StorageClient.clearCache(() => {\r\n\t\t\t\tFSBL.restartApplication({ forceRestart: true });\r\n\t\t\t});\r\n\t\t}}\r\n\t>\r\n\t\tReset\r\n\t</MenuItem>\r\n);\r\n\r\n/**\r\n * A menu item that quits the Finsemble application when clicked.\r\n */\r\nexport const Quit: React.FunctionComponent = () => <MenuItem onClick={openQuitConfirmationDialog}>Quit</MenuItem>;\r\n"]}
1
+ {"version":3,"file":"System.js","sourceRoot":"","sources":["../../../src/components/system/System.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAKlF,MAAM,CAAC,MAAM,WAAW,GAA4B,GAAG,EAAE,CAAC,CACzD,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CACrC;YACC,aAAa,EAAE,iBAAiB;SAChC,EACD;YACC,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,QAAQ;SACb,CACD,CAAC;IACH,CAAC,kBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,SAAS,GAA4B,GAAG,EAAE,CAAC,CACvD,oBAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,aAAa,iBAAuB,CAChF,CAAC;AAKF,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,EAAE,CAAC,CAC3D,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC,qBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,aAAa,GAA4B,GAAG,EAAE,CAAC,CAC3D,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CACrC;YACC,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,GAAG;YACV,GAAG,EAAE,wEAAwE;SAC7E,EACD,EAAE,EACF,GAAG,EAAE,GAAE,CAAC,CACR,CAAC;IACH,CAAC,oBAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,OAAO,GAA4B,GAAG,EAAE,CAAC,oBAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,cAAoB,CAAC;AAMrH,MAAM,CAAC,MAAM,KAAK,GAA4B,GAAG,EAAE,CAAC,CACnD,oBAAC,QAAQ,IACR,OAAO,EAAE,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,kBAAkB,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACJ,CAAC,YAGS,CACX,CAAC;AAKF,MAAM,CAAC,MAAM,IAAI,GAA4B,GAAG,EAAE,CAAC,oBAAC,QAAQ,IAAC,OAAO,EAAE,0BAA0B,WAAiB,CAAC","sourcesContent":["import * as React from \"react\";\n\nimport { MenuItem } from \"../menu/MenuItem\";\nimport { openQuitConfirmationDialog } from \"../shared/openQuitConfirmationDialog\";\n\n/**\n * A menu item that opens the user preferences menu when clicked.\n */\nexport const Preferences: React.FunctionComponent = () => (\n\t<MenuItem\n\t\tonClick={() => {\n\t\t\tFSBL.Clients.LauncherClient.showWindow(\n\t\t\t\t{\n\t\t\t\t\tcomponentType: \"UserPreferences\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmonitor: \"mine\",\n\t\t\t\t\tleft: \"center\",\n\t\t\t\t\ttop: \"center\",\n\t\t\t\t}\n\t\t\t);\n\t\t}}\n\t>\n\t\tPreferences\n\t</MenuItem>\n);\n\n/**\n * A menu item that opens the system log window when clicked.\n */\nexport const SystemLog: React.FunctionComponent = () => (\n\t<MenuItem onClick={FSBL.SystemManagerClient.showSystemLog}>System Log</MenuItem>\n);\n\n/**\n * A menu item that opens the Central Logger when clicked.\n */\nexport const CentralLogger: React.FunctionComponent = () => (\n\t<MenuItem\n\t\tonClick={() => {\n\t\t\tFSBL.Clients.RouterClient.transmit(\"CentralConsole-Show\", true);\n\t\t}}\n\t>\n\t\tCentral Logger\n\t</MenuItem>\n);\n\n/**\n * A menu item that opens Finsemble documentation in a browser when clicked.\n */\nexport const Documentation: React.FunctionComponent = () => (\n\t<MenuItem\n\t\tonClick={() => {\n\t\t\tFSBL.Clients.DialogManager.spawnDialog(\n\t\t\t\t{\n\t\t\t\t\tname: \"Documentation\",\n\t\t\t\t\twidth: 750,\n\t\t\t\t\turl: \"https://documentation.finsemble.com/tutorial-finsemble-user-guide.html\",\n\t\t\t\t},\n\t\t\t\t{},\n\t\t\t\t() => {}\n\t\t\t);\n\t\t}}\n\t>\n\t\tDocumentation\n\t</MenuItem>\n);\n\n/**\n * A menu item that restarts the Finsemble application when clicked.\n */\nexport const Restart: React.FunctionComponent = () => <MenuItem onClick={FSBL.restartApplication}>Restart</MenuItem>;\n\n/**\n * A menu item that resets the Finsemble application.\n * The reset clears out all the user data of the application when clicked.\n */\nexport const Reset: React.FunctionComponent = () => (\n\t<MenuItem\n\t\tonClick={() => {\n\t\t\tFSBL.Clients.StorageClient.clearCache(() => {\n\t\t\t\tFSBL.restartApplication({ forceRestart: true });\n\t\t\t});\n\t\t}}\n\t>\n\t\tReset\n\t</MenuItem>\n);\n\n/**\n * A menu item that quits the Finsemble application when clicked.\n */\nexport const Quit: React.FunctionComponent = () => <MenuItem onClick={openQuitConfirmationDialog}>Quit</MenuItem>;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"System.spec.js","sourceRoot":"","sources":["../../../src/components/system/System.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAK,KAAK,CAAC,IAAI,EAAI,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxE,MAAM,CAAC,SAAS,EAAE,8EAA8E,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAC/G,aAAa;YACb,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,SAAS;YACT,OAAO;YACP,MAAM;SACN,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport { Basic } from \"./System.stories\";\r\n\r\ndescribe(\"System Tray menu\", () => {\r\n\tit(\"should display menu items text as expected\", () => {\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\tconst menuItems = wrapper.find(\".menu-item\").map((elem) => elem.text());\r\n\t\texpect(menuItems, \"Mocked up System file menu contains the expected items in the expected order\").to.deep.equal([\r\n\t\t\t\"Preferences\",\r\n\t\t\t\"System Log\",\r\n\t\t\t\"Central Logger\",\r\n\t\t\t\"Documentation\",\r\n\t\t\t\"Restart\",\r\n\t\t\t\"Reset\",\r\n\t\t\t\"Quit\",\r\n\t\t]);\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"System.spec.js","sourceRoot":"","sources":["../../../src/components/system/System.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,oBAAC,KAAK,oBAAK,KAAK,CAAC,IAAI,EAAI,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxE,MAAM,CAAC,SAAS,EAAE,8EAA8E,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAC/G,aAAa;YACb,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,SAAS;YACT,OAAO;YACP,MAAM;SACN,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { mount } from \"enzyme\";\nimport { describe, it } from \"mocha\";\nimport { expect } from \"chai\";\nimport { Basic } from \"./System.stories\";\n\ndescribe(\"System Tray menu\", () => {\n\tit(\"should display menu items text as expected\", () => {\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\tconst menuItems = wrapper.find(\".menu-item\").map((elem) => elem.text());\n\t\texpect(menuItems, \"Mocked up System file menu contains the expected items in the expected order\").to.deep.equal([\n\t\t\t\"Preferences\",\n\t\t\t\"System Log\",\n\t\t\t\"Central Logger\",\n\t\t\t\"Documentation\",\n\t\t\t\"Restart\",\n\t\t\t\"Reset\",\n\t\t\t\"Quit\",\n\t\t]);\n\t});\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"System.stories.js","sourceRoot":"","sources":["../../../src/components/system/System.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC;IAChE,IAAI,CAAC,mBAAmB,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC;IAC9D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAC9D,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAClE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;IACzD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;IAElD,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,wBAAwB;YACxB,oBAAC,WAAW,OAAG;YACf,oBAAC,SAAS,OAAG;YACb,oBAAC,aAAa,OAAG;YACjB,oBAAC,aAAa,OAAG;YACjB,oBAAC,OAAO,OAAG;YACX,oBAAC,KAAK,OAAG;YACT,oBAAC,IAAI,OAAG,CACkB,CACR,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,iBAAiB,EAAE,MAAM,CAAC,aAAa,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC,YAAY,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC,gBAAgB,CAAC;IAC7C,mBAAmB,EAAE,MAAM,CAAC,oBAAoB,CAAC;IACjD,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC;CAC1B,CAAC","sourcesContent":["import React from \"react\";\r\nimport { Preferences, SystemLog, CentralLogger, Documentation, Restart, Reset, Quit } from \"./System\";\r\nimport { SystemTrayComponentShell } from \"./SystemTrayComponentShell\";\r\nimport { Story } from \"@storybook/react/types-6-0\";\r\nimport { initFSBL } from \"../common/helpers\";\r\nimport { FinsembleProvider } from \"../FinsembleProvider\";\r\nimport { action } from \"@storybook/addon-actions\";\r\nimport \"../../assets/css/favorites.css\";\r\n\r\nexport default {\r\n\ttitle: \"Toolbar/Preferences\",\r\n\tcomponent: Preferences,\r\n};\r\n\r\nconst Template: Story<any> = (args: any) => {\r\n\tinitFSBL(window);\r\n\r\n\t// Overwrite FSBL functions for the sake of testing\r\n\tFSBL.Clients.LauncherClient.showWindow = args.preferencesAction;\r\n\tFSBL.SystemManagerClient.showSystemLog = args.systemLogAction;\r\n\tFSBL.Clients.RouterClient.transmit = args.centralLoggerAction;\r\n\tFSBL.Clients.DialogManager.spawnDialog = args.documentationAction;\r\n\tFSBL.restartApplication = args.restartAction;\r\n\tFSBL.Clients.StorageClient.clearCache = args.resetAction;\r\n\tFSBL.Clients.DialogManager.open = args.quitAction;\r\n\r\n\treturn (\r\n\t\t<FinsembleProvider>\r\n\t\t\t<SystemTrayComponentShell>\r\n\t\t\t\t<Preferences />\r\n\t\t\t\t<SystemLog />\r\n\t\t\t\t<CentralLogger />\r\n\t\t\t\t<Documentation />\r\n\t\t\t\t<Restart />\r\n\t\t\t\t<Reset />\r\n\t\t\t\t<Quit />\r\n\t\t\t</SystemTrayComponentShell>\r\n\t\t</FinsembleProvider>\r\n\t);\r\n};\r\n\r\nexport const Basic = Template.bind({});\r\nBasic.args = {\r\n\tpreferencesAction: action(\"Open window\"),\r\n\tsystemLogAction: action(\"System log\"),\r\n\tcentralLoggerAction: action(\"Central logger\"),\r\n\tdocumentationAction: action(\"Open documentation\"),\r\n\trestartAction: action(\"Restart\"),\r\n\tresetAction: action(\"Reset\"),\r\n\tquitAction: action(\"Quit\"),\r\n};\r\n"]}
1
+ {"version":3,"file":"System.stories.js","sourceRoot":"","sources":["../../../src/components/system/System.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC;IAChE,IAAI,CAAC,mBAAmB,CAAC,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC;IAC9D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAC9D,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;IAClE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;IACzD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;IAElD,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,wBAAwB;YACxB,oBAAC,WAAW,OAAG;YACf,oBAAC,SAAS,OAAG;YACb,oBAAC,aAAa,OAAG;YACjB,oBAAC,aAAa,OAAG;YACjB,oBAAC,OAAO,OAAG;YACX,oBAAC,KAAK,OAAG;YACT,oBAAC,IAAI,OAAG,CACkB,CACR,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,iBAAiB,EAAE,MAAM,CAAC,aAAa,CAAC;IACxC,eAAe,EAAE,MAAM,CAAC,YAAY,CAAC;IACrC,mBAAmB,EAAE,MAAM,CAAC,gBAAgB,CAAC;IAC7C,mBAAmB,EAAE,MAAM,CAAC,oBAAoB,CAAC;IACjD,aAAa,EAAE,MAAM,CAAC,SAAS,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC;CAC1B,CAAC","sourcesContent":["import React from \"react\";\nimport { Preferences, SystemLog, CentralLogger, Documentation, Restart, Reset, Quit } from \"./System\";\nimport { SystemTrayComponentShell } from \"./SystemTrayComponentShell\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport { initFSBL } from \"../common/helpers\";\nimport { FinsembleProvider } from \"../FinsembleProvider\";\nimport { action } from \"@storybook/addon-actions\";\nimport \"../../assets/css/favorites.css\";\n\nexport default {\n\ttitle: \"Toolbar/Preferences\",\n\tcomponent: Preferences,\n};\n\nconst Template: Story<any> = (args: any) => {\n\tinitFSBL(window);\n\n\t// Overwrite FSBL functions for the sake of testing\n\tFSBL.Clients.LauncherClient.showWindow = args.preferencesAction;\n\tFSBL.SystemManagerClient.showSystemLog = args.systemLogAction;\n\tFSBL.Clients.RouterClient.transmit = args.centralLoggerAction;\n\tFSBL.Clients.DialogManager.spawnDialog = args.documentationAction;\n\tFSBL.restartApplication = args.restartAction;\n\tFSBL.Clients.StorageClient.clearCache = args.resetAction;\n\tFSBL.Clients.DialogManager.open = args.quitAction;\n\n\treturn (\n\t\t<FinsembleProvider>\n\t\t\t<SystemTrayComponentShell>\n\t\t\t\t<Preferences />\n\t\t\t\t<SystemLog />\n\t\t\t\t<CentralLogger />\n\t\t\t\t<Documentation />\n\t\t\t\t<Restart />\n\t\t\t\t<Reset />\n\t\t\t\t<Quit />\n\t\t\t</SystemTrayComponentShell>\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const Basic = Template.bind({});\nBasic.args = {\n\tpreferencesAction: action(\"Open window\"),\n\tsystemLogAction: action(\"System log\"),\n\tcentralLoggerAction: action(\"Central logger\"),\n\tdocumentationAction: action(\"Open documentation\"),\n\trestartAction: action(\"Restart\"),\n\tresetAction: action(\"Reset\"),\n\tquitAction: action(\"Quit\"),\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SystemTrayComponentShell.js","sourceRoot":"","sources":["../../../src/components/system/SystemTrayComponentShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AAS5B,MAAM,CAAC,MAAM,wBAAwB,GAA2D,CAAC,KAAK,EAAE,EAAE;IAEzG,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACtC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAGZ,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,IAAI,GAAG,GAAG,EAAE;YAEjB,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK;gBAAE,OAAO;YACxB,eAAe,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,eAAe,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAClD,OAAO,GAAG,EAAE;YACX,eAAe,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,0CAAG,KAAK,CAAC,QAAQ,CAAI,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\n\r\nconst { useEffect } = React;\r\ntype SystemTrayComponentShellProps = {};\r\n\r\n/**\r\n * This React component will automatically resize to the height of its DOM content and will hide itself when it loses focus.\r\n *\r\n * Note: Set FSBL.debug=true in order to override the window hide on blur effect, so that you can debug the window's contents.\r\n * @param {object} props\r\n */\r\nexport const SystemTrayComponentShell: React.FunctionComponent<SystemTrayComponentShellProps> = (props) => {\r\n\t// Resize window to fit the DOM height whenever the React children (window contents) change\r\n\tuseEffect(() => {\r\n\t\tFSBL.Clients.WindowClient.fitToDOM();\r\n\t}, [props]);\r\n\r\n\t// Hide window on blur.\r\n\tuseEffect(() => {\r\n\t\tconst hide = () => {\r\n\t\t\t// If FSBL.debug is set to true then bypass hide on blur effect\r\n\t\t\tif (FSBL?.debug) return;\r\n\t\t\tfinsembleWindow.hide();\r\n\t\t};\r\n\r\n\t\tfinsembleWindow.addEventListener(\"blurred\", hide);\r\n\t\treturn () => {\r\n\t\t\tfinsembleWindow.removeEventListener(\"blurred\", hide);\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn <>{props.children}</>;\r\n};\r\n"]}
1
+ {"version":3,"file":"SystemTrayComponentShell.js","sourceRoot":"","sources":["../../../src/components/system/SystemTrayComponentShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AAS5B,MAAM,CAAC,MAAM,wBAAwB,GAA2D,CAAC,KAAK,EAAE,EAAE;IAEzG,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;IACtC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAGZ,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,IAAI,GAAG,GAAG,EAAE;YAEjB,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK;gBAAE,OAAO;YACxB,eAAe,CAAC,IAAI,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,eAAe,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAClD,OAAO,GAAG,EAAE;YACX,eAAe,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,0CAAG,KAAK,CAAC,QAAQ,CAAI,CAAC;AAC9B,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\n\nconst { useEffect } = React;\ntype SystemTrayComponentShellProps = {};\n\n/**\n * This React component will automatically resize to the height of its DOM content and will hide itself when it loses focus.\n *\n * Note: Set FSBL.debug=true in order to override the window hide on blur effect, so that you can debug the window's contents.\n * @param {object} props\n */\nexport const SystemTrayComponentShell: React.FunctionComponent<SystemTrayComponentShellProps> = (props) => {\n\t// Resize window to fit the DOM height whenever the React children (window contents) change\n\tuseEffect(() => {\n\t\tFSBL.Clients.WindowClient.fitToDOM();\n\t}, [props]);\n\n\t// Hide window on blur.\n\tuseEffect(() => {\n\t\tconst hide = () => {\n\t\t\t// If FSBL.debug is set to true then bypass hide on blur effect\n\t\t\tif (FSBL?.debug) return;\n\t\t\tfinsembleWindow.hide();\n\t\t};\n\n\t\tfinsembleWindow.addEventListener(\"blurred\", hide);\n\t\treturn () => {\n\t\t\tfinsembleWindow.removeEventListener(\"blurred\", hide);\n\t\t};\n\t}, []);\n\n\treturn <>{props.children}</>;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/system/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC","sourcesContent":["export { SystemTrayComponentShell } from \"./SystemTrayComponentShell\";\r\n\r\nexport { CentralLogger, Documentation, Reset, Restart, Preferences, Quit, SystemLog } from \"./System\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/system/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC","sourcesContent":["export { SystemTrayComponentShell } from \"./SystemTrayComponentShell\";\n\nexport { CentralLogger, Documentation, Reset, Restart, Preferences, Quit, SystemLog } from \"./System\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AutoArrange.js","sourceRoot":"","sources":["../../../src/components/toolbar/AutoArrange.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC7B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,0BAA0B,EAAC,SAAS,EAAC,iCAAiC,EAAC,IAAI,EAAC,SAAS;YAC1F,2BAAG,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,+BAA+B;gBACzD,8BACC,CAAC,EAAC,yOAAyO,EAC3O,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,4NAA4N,EAC9N,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,8MAA8M,EAChN,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,2NAA2N,EAC7N,EAAE,EAAC,gBAAgB,GACZ,CACL,CACD,CACD,CACC,CACN,CAAC;AAOF,MAAM,CAAC,MAAM,WAAW,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACvG,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;IACnD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,oCAAoC,CAAC,CAAC;IAE3F,MAAM,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,CAAC;IAE3C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,kCAAkC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACpF,iBAAiB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACtD,iBAAiB,CAChB,sCAAsC,SAAS,IAAI,EAAE,IAAI,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAClG,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,iBAAiB,EAAE,CAAC;aACpB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,eAAe,OAAG,CAC3B,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\r\nimport React, { useEffect, useState } from \"react\"; // eslint-disable-line\r\nimport { useToolbar } from \"../../hooks/useToolbar\";\r\n\r\n// The default icon for AutoArrange.\r\nconst AutoArrangeIcon = () => (\r\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\r\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\r\n\t\t\t<g id=\"atoms/icons/auto-arrange\" transform=\"translate(-9.000000, -9.000000)\" fill=\"#FFFFFF\">\r\n\t\t\t\t<g id=\"Arranged\" transform=\"translate(9.000000, 9.000000)\">\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M1,0 L6,0 C6.55228475,-1.01453063e-16 7,0.44771525 7,1 L7,6 C7,6.55228475 6.55228475,7 6,7 L1,7 C0.44771525,7 6.76353751e-17,6.55228475 0,6 L0,1 C-6.76353751e-17,0.44771525 0.44771525,1.01453063e-16 1,0 Z M1,1 L1,6 L6,6 L6,1 L1,1 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M10,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,6 C16,6.55228475 15.5522847,7 15,7 L10,7 C9.44771525,7 9,6.55228475 9,6 L9,1 C9,0.44771525 9.44771525,1.01453063e-16 10,0 Z M10,1 L10,6 L15,6 L15,1 L10,1 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M10,9 L15,9 C15.5522847,9 16,9.44771525 16,10 L16,15 C16,15.5522847 15.5522847,16 15,16 L10,16 C9.44771525,16 9,15.5522847 9,15 L9,10 C9,9.44771525 9.44771525,9 10,9 Z M10,10 L10,15 L15,15 L15,10 L10,10 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M1,9 L6,9 C6.55228475,9 7,9.44771525 7,10 L7,15 C7,15.5522847 6.55228475,16 6,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,10 C-6.76353751e-17,9.44771525 0.44771525,9 1,9 Z M1,10 L1,15 L6,15 L6,10 L1,10 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t</g>\r\n\t\t\t</g>\r\n\t\t</g>\r\n\t</svg>\r\n);\r\n\r\n/**\r\n * Makes use of Finsemble's \"autoArrange\" functionality to organize windows into a grid-like pattern.\r\n * This button acts as a toggle, arranging and unarranging with subsequent clicks.\r\n * @param {string} [className] - An optional CSS className to append.\r\n */\r\nexport const AutoArrange: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\r\n\tconst [isAutoArranged, setIsAutoArranged] = useState(false);\r\n\tconst [title, setTitle] = useState(\"Auto Arrange\");\r\n\tconst [wrapperClasses, setWrapperClasses] = useState(\"finsemble-toolbar-button icon-only\");\r\n\r\n\tconst { toggleAutoArrange } = useToolbar();\r\n\r\n\tFSBL.Clients.RouterClient.subscribe(\"DockingService.AutoarrangeStatus\", (err, res) => {\r\n\t\tsetIsAutoArranged(!Object.keys(res.data.isAutoArranged).every((key) => !res.data.isAutoArranged[key]));\r\n\t});\r\n\r\n\tuseEffect(() => {\r\n\t\tsetTitle(isAutoArranged ? \"Restore\" : \"Auto Arrange\");\r\n\t\tsetWrapperClasses(\r\n\t\t\t`finsemble-toolbar-button icon-only ${className || \"\"} ${isAutoArranged ? \"selected\" : \"\"}`.trim()\r\n\t\t);\r\n\t}, [isAutoArranged]);\r\n\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={wrapperClasses}\r\n\t\t\ttitle={title}\r\n\t\t\tonClick={toggleAutoArrange}\r\n\t\t\ttabIndex={0}\r\n\t\t\trole=\"button\"\r\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\r\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\r\n\t\t\t\t\ttoggleAutoArrange();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{children || <AutoArrangeIcon />}\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"AutoArrange.js","sourceRoot":"","sources":["../../../src/components/toolbar/AutoArrange.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC7B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,0BAA0B,EAAC,SAAS,EAAC,iCAAiC,EAAC,IAAI,EAAC,SAAS;YAC1F,2BAAG,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,+BAA+B;gBACzD,8BACC,CAAC,EAAC,yOAAyO,EAC3O,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,4NAA4N,EAC9N,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,8MAA8M,EAChN,EAAE,EAAC,gBAAgB,GACZ;gBACR,8BACC,CAAC,EAAC,2NAA2N,EAC7N,EAAE,EAAC,gBAAgB,GACZ,CACL,CACD,CACD,CACC,CACN,CAAC;AAOF,MAAM,CAAC,MAAM,WAAW,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACvG,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;IACnD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,oCAAoC,CAAC,CAAC;IAE3F,MAAM,EAAE,iBAAiB,EAAE,GAAG,UAAU,EAAE,CAAC;IAE3C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,kCAAkC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACpF,iBAAiB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QACtD,iBAAiB,CAChB,sCAAsC,SAAS,IAAI,EAAE,IAAI,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAClG,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,iBAAiB,EAAE,CAAC;aACpB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,eAAe,OAAG,CAC3B,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\nimport React, { useEffect, useState } from \"react\"; // eslint-disable-line\nimport { useToolbar } from \"../../hooks/useToolbar\";\n\n// The default icon for AutoArrange.\nconst AutoArrangeIcon = () => (\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n\t\t\t<g id=\"atoms/icons/auto-arrange\" transform=\"translate(-9.000000, -9.000000)\" fill=\"#FFFFFF\">\n\t\t\t\t<g id=\"Arranged\" transform=\"translate(9.000000, 9.000000)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M1,0 L6,0 C6.55228475,-1.01453063e-16 7,0.44771525 7,1 L7,6 C7,6.55228475 6.55228475,7 6,7 L1,7 C0.44771525,7 6.76353751e-17,6.55228475 0,6 L0,1 C-6.76353751e-17,0.44771525 0.44771525,1.01453063e-16 1,0 Z M1,1 L1,6 L6,6 L6,1 L1,1 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,6 C16,6.55228475 15.5522847,7 15,7 L10,7 C9.44771525,7 9,6.55228475 9,6 L9,1 C9,0.44771525 9.44771525,1.01453063e-16 10,0 Z M10,1 L10,6 L15,6 L15,1 L10,1 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10,9 L15,9 C15.5522847,9 16,9.44771525 16,10 L16,15 C16,15.5522847 15.5522847,16 15,16 L10,16 C9.44771525,16 9,15.5522847 9,15 L9,10 C9,9.44771525 9.44771525,9 10,9 Z M10,10 L10,15 L15,15 L15,10 L10,10 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M1,9 L6,9 C6.55228475,9 7,9.44771525 7,10 L7,15 C7,15.5522847 6.55228475,16 6,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,10 C-6.76353751e-17,9.44771525 0.44771525,9 1,9 Z M1,10 L1,15 L6,15 L6,10 L1,10 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t></path>\n\t\t\t\t</g>\n\t\t\t</g>\n\t\t</g>\n\t</svg>\n);\n\n/**\n * Makes use of Finsemble's \"autoArrange\" functionality to organize windows into a grid-like pattern.\n * This button acts as a toggle, arranging and unarranging with subsequent clicks.\n * @param {string} [className] - An optional CSS className to append.\n */\nexport const AutoArrange: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\n\tconst [isAutoArranged, setIsAutoArranged] = useState(false);\n\tconst [title, setTitle] = useState(\"Auto Arrange\");\n\tconst [wrapperClasses, setWrapperClasses] = useState(\"finsemble-toolbar-button icon-only\");\n\n\tconst { toggleAutoArrange } = useToolbar();\n\n\tFSBL.Clients.RouterClient.subscribe(\"DockingService.AutoarrangeStatus\", (err, res) => {\n\t\tsetIsAutoArranged(!Object.keys(res.data.isAutoArranged).every((key) => !res.data.isAutoArranged[key]));\n\t});\n\n\tuseEffect(() => {\n\t\tsetTitle(isAutoArranged ? \"Restore\" : \"Auto Arrange\");\n\t\tsetWrapperClasses(\n\t\t\t`finsemble-toolbar-button icon-only ${className || \"\"} ${isAutoArranged ? \"selected\" : \"\"}`.trim()\n\t\t);\n\t}, [isAutoArranged]);\n\n\treturn (\n\t\t<div\n\t\t\tclassName={wrapperClasses}\n\t\t\ttitle={title}\n\t\t\tonClick={toggleAutoArrange}\n\t\t\ttabIndex={0}\n\t\t\trole=\"button\"\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\n\t\t\t\t\ttoggleAutoArrange();\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t{children || <AutoArrangeIcon />}\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DragHandle.js","sourceRoot":"","sources":["../../../src/components/toolbar/DragHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CAC5B,6BAAK,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACjG,2BACC,EAAE,EAAC,QAAQ,EACX,MAAM,EAAC,MAAM,EACb,WAAW,EAAC,GAAG,EACf,IAAI,EAAC,MAAM,EACX,QAAQ,EAAC,SAAS,EAClB,OAAO,EAAC,MAAM,EACd,mBAAmB,EAAC,eAAe;QAEnC,8BACC,CAAC,EAAC,gYAAgY,EAClY,EAAE,EAAC,OAAO,EACV,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,SAAS,GACX,CACL,CACC,CACN,CAAC;AAWF,MAAM,CAAC,MAAM,UAAU,GAA6C,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC/F,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAElE,MAAM,YAAY,GAAG,uCAAuC,CAAC;IAC7D,MAAM,cAAc,GAAG,mBAAmB;QACzC,CAAC,CAAC,GAAG,YAAY,IAAI,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;QAC7C,CAAC,CAAC,GAAG,YAAY,oBAAoB,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAK/D,MAAM,eAAe,GAAG,CAAC,KAAuB,EAAE,EAAE;QACnD,IAAI,CAAC,mBAAmB;YAAE,OAAO;QACjC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC,CAAC;IAKF,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,CAAC,mBAAmB;YAAE,OAAO;QACjC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;IAC9C,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,UAAU,aAAa;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,gDAAgD,CAAC,CAAC;YAC5G,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;YACzC,IAAI,aAAa,KAAK,IAAI;gBAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAChE,CAAC;QAED,aAAa,EAAE,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACN,8BAAM,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,IACrF,QAAQ,IAAI,oBAAC,cAAc,OAAG,CACzB,CACP,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React, { useEffect, useState } from \"react\";\r\n\r\nconst DragHandleIcon = () => (\r\n\t<svg width=\"5px\" height=\"15px\" viewBox=\"0 0 5 11\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\r\n\t\t<g\r\n\t\t\tid=\"Page-1\"\r\n\t\t\tstroke=\"none\"\r\n\t\t\tstrokeWidth=\"1\"\r\n\t\t\tfill=\"none\"\r\n\t\t\tfillRule=\"evenodd\"\r\n\t\t\topacity=\"0.40\"\r\n\t\t\tpreserveAspectRatio=\"xMinYMin meet\"\r\n\t\t>\r\n\t\t\t<path\r\n\t\t\t\td=\"M3,0 L2,0 L2,1 L3,1 L3,0 Z M1,2 L0,2 L0,3 L1,3 L1,2 Z M2,2 L3,2 L3,3 L2,3 L2,2 Z M5,2 L4,2 L4,3 L5,3 L5,2 Z M0,4 L1,4 L1,5 L0,5 L0,4 Z M3,4 L2,4 L2,5 L3,5 L3,4 Z M4,4 L5,4 L5,5 L4,5 L4,4 Z M3,6 L2,6 L2,7 L3,7 L3,6 Z M0,6 L1,6 L1,7 L0,7 L0,6 Z M5,6 L4,6 L4,7 L5,7 L5,6 Z M4,8 L5,8 L5,9 L4,9 L4,8 Z M3,8 L2,8 L2,9 L3,9 L3,8 Z M0,8 L1,8 L1,9 L0,9 L0,8 Z M3,10 L2,10 L2,11 L3,11 L3,10 Z\"\r\n\t\t\t\tid=\"Shape\"\r\n\t\t\t\tfill=\"#FFFFFF\"\r\n\t\t\t\tfillRule=\"nonzero\"\r\n\t\t\t></path>\r\n\t\t</g>\r\n\t</svg>\r\n);\r\n\r\ntype DragHandleProps = {\r\n\tclassName?: string;\r\n\tchildren?: React.ReactNode;\r\n};\r\n\r\n/**\r\n * The DOM element that the mouse can grab to move the toolbar around the screen.\r\n * @param {string} [className] - An optional CSS className to append.\r\n */\r\nexport const DragHandle: React.FunctionComponent<DragHandleProps> = ({ className, children }) => {\r\n\tconst [useDOMBasedMovement, setDOMBasedMovement] = useState(true);\r\n\r\n\tconst baseCssClass = \"cq-drag finsemble-toolbar-drag-handle\";\r\n\tconst wrapperClasses = useDOMBasedMovement\r\n\t\t? `${baseCssClass} ${className || \"\"}`.trim()\r\n\t\t: `${baseCssClass}-native-movement ${className || \"\"}`.trim();\r\n\t/**\r\n\t * Reports to Finsemble window management that the user has started to drag.\r\n\t * @param event\r\n\t */\r\n\tconst handleMouseDown = (event: React.MouseEvent) => {\r\n\t\tif (!useDOMBasedMovement) return;\r\n\t\tFSBL.Clients.WindowClient.startMovingWindow(event.nativeEvent);\r\n\t};\r\n\r\n\t/**\r\n\t * Reports to Finsemble window management that the user has ended their drag.\r\n\t */\r\n\tconst handleMouseUp = () => {\r\n\t\tif (!useDOMBasedMovement) return;\r\n\t\tFSBL.Clients.WindowClient.stopMovingWindow();\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tasync function fetchManifest() {\r\n\t\t\tconst response = await FSBL.Clients.ConfigClient.getValue(\"finsemble-electron-adapter.useDOMBasedMovement\");\r\n\t\t\tconst { data: manifestValue } = response;\r\n\t\t\tif (manifestValue !== null) setDOMBasedMovement(manifestValue);\r\n\t\t}\r\n\r\n\t\tfetchManifest();\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t<span className={wrapperClasses} onMouseDown={handleMouseDown} onMouseUp={handleMouseUp}>\r\n\t\t\t{children || <DragHandleIcon />}\r\n\t\t</span>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"DragHandle.js","sourceRoot":"","sources":["../../../src/components/toolbar/DragHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,CAC5B,6BAAK,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACjG,2BACC,EAAE,EAAC,QAAQ,EACX,MAAM,EAAC,MAAM,EACb,WAAW,EAAC,GAAG,EACf,IAAI,EAAC,MAAM,EACX,QAAQ,EAAC,SAAS,EAClB,OAAO,EAAC,MAAM,EACd,mBAAmB,EAAC,eAAe;QAEnC,8BACC,CAAC,EAAC,gYAAgY,EAClY,EAAE,EAAC,OAAO,EACV,IAAI,EAAC,SAAS,EACd,QAAQ,EAAC,SAAS,GACX,CACL,CACC,CACN,CAAC;AAWF,MAAM,CAAC,MAAM,UAAU,GAA6C,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC/F,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAElE,MAAM,YAAY,GAAG,uCAAuC,CAAC;IAC7D,MAAM,cAAc,GAAG,mBAAmB;QACzC,CAAC,CAAC,GAAG,YAAY,IAAI,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;QAC7C,CAAC,CAAC,GAAG,YAAY,oBAAoB,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAK/D,MAAM,eAAe,GAAG,CAAC,KAAuB,EAAE,EAAE;QACnD,IAAI,CAAC,mBAAmB;YAAE,OAAO;QACjC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC,CAAC;IAKF,MAAM,aAAa,GAAG,GAAG,EAAE;QAC1B,IAAI,CAAC,mBAAmB;YAAE,OAAO;QACjC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;IAC9C,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,KAAK,UAAU,aAAa;YAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,gDAAgD,CAAC,CAAC;YAC5G,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,QAAQ,CAAC;YACzC,IAAI,aAAa,KAAK,IAAI;gBAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAChE,CAAC;QAED,aAAa,EAAE,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACN,8BAAM,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,IACrF,QAAQ,IAAI,oBAAC,cAAc,OAAG,CACzB,CACP,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nconst DragHandleIcon = () => (\n\t<svg width=\"5px\" height=\"15px\" viewBox=\"0 0 5 11\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<g\n\t\t\tid=\"Page-1\"\n\t\t\tstroke=\"none\"\n\t\t\tstrokeWidth=\"1\"\n\t\t\tfill=\"none\"\n\t\t\tfillRule=\"evenodd\"\n\t\t\topacity=\"0.40\"\n\t\t\tpreserveAspectRatio=\"xMinYMin meet\"\n\t\t>\n\t\t\t<path\n\t\t\t\td=\"M3,0 L2,0 L2,1 L3,1 L3,0 Z M1,2 L0,2 L0,3 L1,3 L1,2 Z M2,2 L3,2 L3,3 L2,3 L2,2 Z M5,2 L4,2 L4,3 L5,3 L5,2 Z M0,4 L1,4 L1,5 L0,5 L0,4 Z M3,4 L2,4 L2,5 L3,5 L3,4 Z M4,4 L5,4 L5,5 L4,5 L4,4 Z M3,6 L2,6 L2,7 L3,7 L3,6 Z M0,6 L1,6 L1,7 L0,7 L0,6 Z M5,6 L4,6 L4,7 L5,7 L5,6 Z M4,8 L5,8 L5,9 L4,9 L4,8 Z M3,8 L2,8 L2,9 L3,9 L3,8 Z M0,8 L1,8 L1,9 L0,9 L0,8 Z M3,10 L2,10 L2,11 L3,11 L3,10 Z\"\n\t\t\t\tid=\"Shape\"\n\t\t\t\tfill=\"#FFFFFF\"\n\t\t\t\tfillRule=\"nonzero\"\n\t\t\t></path>\n\t\t</g>\n\t</svg>\n);\n\ntype DragHandleProps = {\n\tclassName?: string;\n\tchildren?: React.ReactNode;\n};\n\n/**\n * The DOM element that the mouse can grab to move the toolbar around the screen.\n * @param {string} [className] - An optional CSS className to append.\n */\nexport const DragHandle: React.FunctionComponent<DragHandleProps> = ({ className, children }) => {\n\tconst [useDOMBasedMovement, setDOMBasedMovement] = useState(true);\n\n\tconst baseCssClass = \"cq-drag finsemble-toolbar-drag-handle\";\n\tconst wrapperClasses = useDOMBasedMovement\n\t\t? `${baseCssClass} ${className || \"\"}`.trim()\n\t\t: `${baseCssClass}-native-movement ${className || \"\"}`.trim();\n\t/**\n\t * Reports to Finsemble window management that the user has started to drag.\n\t * @param event\n\t */\n\tconst handleMouseDown = (event: React.MouseEvent) => {\n\t\tif (!useDOMBasedMovement) return;\n\t\tFSBL.Clients.WindowClient.startMovingWindow(event.nativeEvent);\n\t};\n\n\t/**\n\t * Reports to Finsemble window management that the user has ended their drag.\n\t */\n\tconst handleMouseUp = () => {\n\t\tif (!useDOMBasedMovement) return;\n\t\tFSBL.Clients.WindowClient.stopMovingWindow();\n\t};\n\n\tuseEffect(() => {\n\t\tasync function fetchManifest() {\n\t\t\tconst response = await FSBL.Clients.ConfigClient.getValue(\"finsemble-electron-adapter.useDOMBasedMovement\");\n\t\t\tconst { data: manifestValue } = response;\n\t\t\tif (manifestValue !== null) setDOMBasedMovement(manifestValue);\n\t\t}\n\n\t\tfetchManifest();\n\t}, []);\n\n\treturn (\n\t\t<span className={wrapperClasses} onMouseDown={handleMouseDown} onMouseUp={handleMouseUp}>\n\t\t\t{children || <DragHandleIcon />}\n\t\t</span>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MinimizeAll.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC7B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAC,iCAAiC;YACvE,2BAAG,EAAE,EAAC,kBAAkB,EAAC,SAAS,EAAC,+BAA+B;gBACjE,8BACC,CAAC,EAAC,yMAAyM,EAC3M,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,4KAA4K,EAC9K,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,sNAAsN,EACxN,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP,CACL,CACD,CACD,CACC,CACN,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACvG,MAAM,EAAE,kBAAkB,EAAE,GAAG,UAAU,EAAE,CAAC;IAC5C,MAAM,cAAc,GAAG,sCAAsC,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAEtF,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,kBAAkB,EAAE,CAAC;aACrB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,eAAe,OAAG,CAC3B,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\r\nimport * as React from \"react\"; // eslint-disable-line\r\nimport { useToolbar } from \"../../hooks/useToolbar\";\r\n\r\n// The default icon for MinimizeAll.\r\nconst MinimizeAllIcon = () => (\r\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\r\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\r\n\t\t\t<g id=\"atoms/icons/collapse\" transform=\"translate(-9.000000, -9.000000)\">\r\n\t\t\t\t<g id=\"collapse-windows\" transform=\"translate(9.000000, 9.000000)\">\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M11,12 L11,11 L15,11 L15,1 L5,1 L5,5 L4,5 L4,8 L4,1 C4,0.44771525 4.44771525,1.01453063e-16 5,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,11 C16,11.5522847 15.5522847,12 15,12 L11,12 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#8E939F\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M7,14 L7,13 L11,13 L11,5 L3,5 L3,9 L2,9 L2,11 L2,5 C2,4.44771525 2.44771525,4 3,4 L11,4 C11.5522847,4 12,4.44771525 12,5 L12,13 C12,13.5522847 11.5522847,14 11,14 L7,14 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#C6C9CF\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M1,8 L7,8 C7.55228475,8 8,8.44771525 8,9 L8,15 C8,15.5522847 7.55228475,16 7,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,9 C-6.76353751e-17,8.44771525 0.44771525,8 1,8 Z M1,9 L1,15 L7,15 L7,9 L1,9 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#FFFFFF\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t</g>\r\n\t\t\t</g>\r\n\t\t</g>\r\n\t</svg>\r\n);\r\n\r\n/**\r\n * A button that minimizes all windows on the the user's screen.\r\n * @param {string} [className] - An optional CSS className to append.\r\n */\r\nexport const MinimizeAll: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\r\n\tconst { minimizeAllWindows } = useToolbar();\r\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"}`.trim();\r\n\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={wrapperClasses}\r\n\t\t\ttitle=\"Minimize All\"\r\n\t\t\tonClick={minimizeAllWindows}\r\n\t\t\ttabIndex={0}\r\n\t\t\trole=\"button\"\r\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\r\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\r\n\t\t\t\t\tminimizeAllWindows();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{children || <MinimizeAllIcon />}\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"MinimizeAll.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC7B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAC,iCAAiC;YACvE,2BAAG,EAAE,EAAC,kBAAkB,EAAC,SAAS,EAAC,+BAA+B;gBACjE,8BACC,CAAC,EAAC,yMAAyM,EAC3M,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,4KAA4K,EAC9K,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,sNAAsN,EACxN,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP,CACL,CACD,CACD,CACC,CACN,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACvG,MAAM,EAAE,kBAAkB,EAAE,GAAG,UAAU,EAAE,CAAC;IAC5C,MAAM,cAAc,GAAG,sCAAsC,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAEtF,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE,kBAAkB,EAC3B,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,kBAAkB,EAAE,CAAC;aACrB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,eAAe,OAAG,CAC3B,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\nimport * as React from \"react\"; // eslint-disable-line\nimport { useToolbar } from \"../../hooks/useToolbar\";\n\n// The default icon for MinimizeAll.\nconst MinimizeAllIcon = () => (\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n\t\t\t<g id=\"atoms/icons/collapse\" transform=\"translate(-9.000000, -9.000000)\">\n\t\t\t\t<g id=\"collapse-windows\" transform=\"translate(9.000000, 9.000000)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M11,12 L11,11 L15,11 L15,1 L5,1 L5,5 L4,5 L4,8 L4,1 C4,0.44771525 4.44771525,1.01453063e-16 5,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,11 C16,11.5522847 15.5522847,12 15,12 L11,12 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#8E939F\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M7,14 L7,13 L11,13 L11,5 L3,5 L3,9 L2,9 L2,11 L2,5 C2,4.44771525 2.44771525,4 3,4 L11,4 C11.5522847,4 12,4.44771525 12,5 L12,13 C12,13.5522847 11.5522847,14 11,14 L7,14 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#C6C9CF\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M1,8 L7,8 C7.55228475,8 8,8.44771525 8,9 L8,15 C8,15.5522847 7.55228475,16 7,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,9 C-6.76353751e-17,8.44771525 0.44771525,8 1,8 Z M1,9 L1,15 L7,15 L7,9 L1,9 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#FFFFFF\"\n\t\t\t\t\t></path>\n\t\t\t\t</g>\n\t\t\t</g>\n\t\t</g>\n\t</svg>\n);\n\n/**\n * A button that minimizes all windows on the the user's screen.\n * @param {string} [className] - An optional CSS className to append.\n */\nexport const MinimizeAll: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\n\tconst { minimizeAllWindows } = useToolbar();\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"}`.trim();\n\n\treturn (\n\t\t<div\n\t\t\tclassName={wrapperClasses}\n\t\t\ttitle=\"Minimize All\"\n\t\t\tonClick={minimizeAllWindows}\n\t\t\ttabIndex={0}\n\t\t\trole=\"button\"\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\n\t\t\t\t\tminimizeAllWindows();\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t{children || <MinimizeAllIcon />}\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MinimizeAll.spec.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport sinon from \"sinon\";\r\nimport { Basic } from \"./MinimizeAll.stories\";\r\n\r\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\r\nimport addons, { mockChannel } from \"@storybook/addons\";\r\naddons.setChannel(mockChannel());\r\n\r\ndescribe(\"<MinimizeAll/>\", () => {\r\n\tafterEach(() => {\r\n\t\tsinon.restore();\r\n\t});\r\n\tit(\"should display icon\", () => {\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\texpect(wrapper.find(\"svg\").exists()).to.be.true;\r\n\t});\r\n\tit(\"should call minimize action when clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"click\");\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should call minimize action when user presses Enter\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"Enter\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should call minimize action when user presses Space\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"Space\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should not call minimize action when user presses a character other than Enter or Space\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"a\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.false;\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"MinimizeAll.spec.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.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 sinon from \"sinon\";\nimport { Basic } from \"./MinimizeAll.stories\";\n\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<MinimizeAll/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\tit(\"should display icon\", () => {\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\texpect(wrapper.find(\"svg\").exists()).to.be.true;\n\t});\n\tit(\"should call minimize action when clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call minimize action when user presses Enter\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"Enter\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call minimize action when user presses Space\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"Space\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should not call minimize action when user presses a character other than Enter or Space\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"a\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.false;\n\t});\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"MinimizeAll.stories.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;IAEvD,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,WAAW,OAAG,CACI,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC;CAC1B,CAAC","sourcesContent":["import React from \"react\";\r\nimport { MinimizeAll } from \"./MinimizeAll\";\r\nimport { Story } from \"@storybook/react/types-6-0\";\r\nimport { initFSBL } from \"../common/helpers\";\r\nimport { FinsembleProvider } from \"../FinsembleProvider\";\r\nimport { action } from \"@storybook/addon-actions\";\r\nimport \"../../assets/css/favorites.css\";\r\n\r\nexport default {\r\n\ttitle: \"Toolbar/MinimizeAll\",\r\n\tcomponent: MinimizeAll,\r\n};\r\n\r\nconst Template: Story<any> = (args: any) => {\r\n\tinitFSBL(window);\r\n\r\n\t// Overwrite mockup for testing purposes\r\n\tFSBL.Clients.WorkspaceClient.minimizeAll = args.action;\r\n\r\n\treturn (\r\n\t\t<FinsembleProvider>\r\n\t\t\t<MinimizeAll />\r\n\t\t</FinsembleProvider>\r\n\t);\r\n};\r\n\r\nexport const Basic = Template.bind({});\r\nBasic.args = {\r\n\taction: action(\"minimize\"),\r\n};\r\n"]}
1
+ {"version":3,"file":"MinimizeAll.stories.js","sourceRoot":"","sources":["../../../src/components/toolbar/MinimizeAll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,qBAAqB;IAC5B,SAAS,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC;IAEvD,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,WAAW,OAAG,CACI,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC;CAC1B,CAAC","sourcesContent":["import React from \"react\";\nimport { MinimizeAll } from \"./MinimizeAll\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport { initFSBL } from \"../common/helpers\";\nimport { FinsembleProvider } from \"../FinsembleProvider\";\nimport { action } from \"@storybook/addon-actions\";\nimport \"../../assets/css/favorites.css\";\n\nexport default {\n\ttitle: \"Toolbar/MinimizeAll\",\n\tcomponent: MinimizeAll,\n};\n\nconst Template: Story<any> = (args: any) => {\n\tinitFSBL(window);\n\n\t// Overwrite mockup for testing purposes\n\tFSBL.Clients.WorkspaceClient.minimizeAll = args.action;\n\n\treturn (\n\t\t<FinsembleProvider>\n\t\t\t<MinimizeAll />\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const Basic = Template.bind({});\nBasic.args = {\n\taction: action(\"minimize\"),\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationControl.js","sourceRoot":"","sources":["../../../src/components/toolbar/NotificationControl.tsx"],"names":[],"mappings":"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","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\r\nimport * as React from \"react\"; // eslint-disable-line\r\nimport useNotifications, { initializeCenterToggle } from \"../../hooks/useNotifications\";\r\nimport { useEffect, useState } from \"react\";\r\nimport BellIcon from \"../shared/BellIcon\";\r\n\r\n/**\r\n * This control is responsible for the toggling of the notifcations drawer.\r\n *\r\n * @param {string} [className] - An optional CSS className to append.\r\n */\r\nexport const NotificationControl: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\r\n\tconst { toggleCenter } = initializeCenterToggle();\r\n\tconst { notifications, activeNotifications } = useNotifications({\r\n\t\tconfig: {\r\n\t\t\t// Get notification sent in previous session\r\n\t\t\tnotificationsHistory: true,\r\n\t\t},\r\n\t});\r\n\tconst [count, setCount] = useState(activeNotifications(notifications).length);\r\n\tconst [showDotIcon, setShowDotIcon] = useState(true);\r\n\tconst [showDotForMuted, setShowDotForMuted] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tasync function getNotificationsPreferences() {\r\n\t\t\treturn await FSBL.Clients.NotificationClient.getPreferences();\r\n\t\t}\r\n\r\n\t\tgetNotificationsPreferences().then((preferences: any) => {\r\n\t\t\tsetShowDotIcon(!preferences.disableDotOnToolbarIcon);\r\n\t\t\tsetShowDotForMuted(preferences.showDotOnToolbarIconForMutedNotifications);\r\n\t\t});\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tasync function computeDotIcon(error: any, response: any) {\r\n\t\t\tif (error) {\r\n\t\t\t\tconsole.error(\"FinsembleUserPreferencesChannel: \", error);\r\n\t\t\t} else {\r\n\t\t\t\tconst { data } = response;\r\n\t\t\t\tif (data?.notificationPreferences?.hasOwnProperty(\"disableDotOnToolbarIcon\")) {\r\n\t\t\t\t\tsetShowDotIcon(!data.notificationPreferences.disableDotOnToolbarIcon);\r\n\t\t\t\t}\r\n\t\t\t\tif (data?.notificationPreferences?.hasOwnProperty(\"showDotOnToolbarIconForMutedNotifications\")) {\r\n\t\t\t\t\tsetShowDotForMuted(data.notificationPreferences.showDotOnToolbarIconForMutedNotifications);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tFSBL.Clients.RouterClient.addListener(\"FinsembleUserPreferencesChannel\", computeDotIcon);\r\n\r\n\t\treturn () => {\r\n\t\t\tFSBL.Clients.RouterClient.removeListener(\"FinsembleUserPreferencesChannel\", computeDotIcon);\r\n\t\t};\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tlet applyMuteFilterOverride = !showDotForMuted;\r\n\t\tsetCount(activeNotifications(notifications, applyMuteFilterOverride).length);\r\n\t}, [notifications]);\r\n\r\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"}`.trim();\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={wrapperClasses}\r\n\t\t\ttitle=\"Notification Control\"\r\n\t\t\tonClick={toggleCenter}\r\n\t\t\ttabIndex={0}\r\n\t\t\trole=\"button\"\r\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\r\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\r\n\t\t\t\t\ttoggleCenter();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{showDotIcon && count > 0 && <div className=\"notification-alert-dot\" />}\r\n\t\t\t{children || <BellIcon />}\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"NotificationControl.js","sourceRoot":"","sources":["../../../src/components/toolbar/NotificationControl.tsx"],"names":[],"mappings":"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","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\nimport * as React from \"react\"; // eslint-disable-line\nimport useNotifications, { initializeCenterToggle } from \"../../hooks/useNotifications\";\nimport { useEffect, useState } from \"react\";\nimport BellIcon from \"../shared/BellIcon\";\n\n/**\n * This control is responsible for the toggling of the notifcations drawer.\n *\n * @param {string} [className] - An optional CSS className to append.\n */\nexport const NotificationControl: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\n\tconst { toggleCenter } = initializeCenterToggle();\n\tconst { notifications, activeNotifications } = useNotifications({\n\t\tconfig: {\n\t\t\t// Get notification sent in previous session\n\t\t\tnotificationsHistory: true,\n\t\t},\n\t});\n\tconst [count, setCount] = useState(activeNotifications(notifications).length);\n\tconst [showDotIcon, setShowDotIcon] = useState(true);\n\tconst [showDotForMuted, setShowDotForMuted] = useState(false);\n\n\tuseEffect(() => {\n\t\tasync function getNotificationsPreferences() {\n\t\t\treturn await FSBL.Clients.NotificationClient.getPreferences();\n\t\t}\n\n\t\tgetNotificationsPreferences().then((preferences: any) => {\n\t\t\tsetShowDotIcon(!preferences.disableDotOnToolbarIcon);\n\t\t\tsetShowDotForMuted(preferences.showDotOnToolbarIconForMutedNotifications);\n\t\t});\n\t}, []);\n\n\tuseEffect(() => {\n\t\tasync function computeDotIcon(error: any, response: any) {\n\t\t\tif (error) {\n\t\t\t\tconsole.error(\"FinsembleUserPreferencesChannel: \", error);\n\t\t\t} else {\n\t\t\t\tconst { data } = response;\n\t\t\t\tif (data?.notificationPreferences?.hasOwnProperty(\"disableDotOnToolbarIcon\")) {\n\t\t\t\t\tsetShowDotIcon(!data.notificationPreferences.disableDotOnToolbarIcon);\n\t\t\t\t}\n\t\t\t\tif (data?.notificationPreferences?.hasOwnProperty(\"showDotOnToolbarIconForMutedNotifications\")) {\n\t\t\t\t\tsetShowDotForMuted(data.notificationPreferences.showDotOnToolbarIconForMutedNotifications);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tFSBL.Clients.RouterClient.addListener(\"FinsembleUserPreferencesChannel\", computeDotIcon);\n\n\t\treturn () => {\n\t\t\tFSBL.Clients.RouterClient.removeListener(\"FinsembleUserPreferencesChannel\", computeDotIcon);\n\t\t};\n\t}, []);\n\n\tuseEffect(() => {\n\t\tlet applyMuteFilterOverride = !showDotForMuted;\n\t\tsetCount(activeNotifications(notifications, applyMuteFilterOverride).length);\n\t}, [notifications]);\n\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"}`.trim();\n\treturn (\n\t\t<div\n\t\t\tclassName={wrapperClasses}\n\t\t\ttitle=\"Notification Control\"\n\t\t\tonClick={toggleCenter}\n\t\t\ttabIndex={0}\n\t\t\trole=\"button\"\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\n\t\t\t\t\ttoggleCenter();\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t{showDotIcon && count > 0 && <div className=\"notification-alert-dot\" />}\n\t\t\t{children || <BellIcon />}\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RevealAll.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAC3B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAC,iCAAiC;YACvE,2BAAG,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,+BAA+B;gBACzD,8BACC,CAAC,EAAC,2NAA2N,EAC7N,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,+MAA+M,EACjN,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,8LAA8L,EAChM,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,0MAA0M,EAC5M,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,mMAAmM,EACrM,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP,CACL,CACD,CACD,CACC,CACN,CAAC;AAMF,MAAM,CAAC,MAAM,SAAS,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrG,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,sCAAsC,SAAS,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAEvF,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAC,YAAY,EAClB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,gBAAgB,EAAE,CAAC;aACnB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,aAAa,OAAG,CACzB,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\r\nimport * as React from \"react\"; // eslint-disable-line\r\nimport { useToolbar } from \"../../hooks/useToolbar\";\r\n\r\n// The default icon for RevealAll.\r\nconst RevealAllIcon = () => (\r\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\r\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\r\n\t\t\t<g id=\"atoms/icons/to-front\" transform=\"translate(-9.000000, -9.000000)\">\r\n\t\t\t\t<g id=\"To-Front\" transform=\"translate(9.000000, 9.000000)\">\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M7,5.5 L7,5 L6,5 L6,1 L1,1 L1,6 L5,6 L5,7 L6,7 L1,7 C0.44771525,7 6.76353751e-17,6.55228475 0,6 L0,1 C-6.76353751e-17,0.44771525 0.44771525,1.01453063e-16 1,0 L6,0 C6.55228475,-1.01453063e-16 7,0.44771525 7,1 L7,5.5 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#8E939F\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M10.5,7 L11,7 L11,6 L15,6 L15,1 L10,1 L10,4 L9,4 L9,5 L9,1 C9,0.44771525 9.44771525,1.01453063e-16 10,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,6 C16,6.55228475 15.5522847,7 15,7 L10.5,7 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#8E939F\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M10,9 L15,9 C15.5522847,9 16,9.44771525 16,10 L16,15 C16,15.5522847 15.5522847,16 15,16 L10,16 C9.44771525,16 9,15.5522847 9,15 L9,11 L9,12 L10,12 L10,15 L15,15 L15,10 L11,10 L11,9 L10,9 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#8E939F\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M6,9 L5,9 L5,10 L1,10 L1,15 L6,15 L6,11 L7,11 L7,10 L7,15 C7,15.5522847 6.55228475,16 6,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,10 C-6.76353751e-17,9.44771525 0.44771525,9 1,9 L6,9 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#8E939F\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t\t<path\r\n\t\t\t\t\t\td=\"M5,4 L11,4 C11.5522847,4 12,4.44771525 12,5 L12,11 C12,11.5522847 11.5522847,12 11,12 L5,12 C4.44771525,12 4,11.5522847 4,11 L4,5 C4,4.44771525 4.44771525,4 5,4 Z M5,5 L5,11 L11,11 L11,5 L5,5 Z\"\r\n\t\t\t\t\t\tid=\"Combined-Shape\"\r\n\t\t\t\t\t\tfill=\"#FFFFFF\"\r\n\t\t\t\t\t></path>\r\n\t\t\t\t</g>\r\n\t\t\t</g>\r\n\t\t</g>\r\n\t</svg>\r\n);\r\n\r\n/**\r\n * A button that reveals (brings to front but does not unminimize) all Finsemble windows.\r\n * @param {string} [className] - An optional CSS className to append.\r\n */\r\nexport const RevealAll: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\r\n\tconst { revealAllWindows } = useToolbar();\r\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"} `.trim();\r\n\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={wrapperClasses}\r\n\t\t\ttitle=\"Reveal All\"\r\n\t\t\tonClick={revealAllWindows}\r\n\t\t\ttabIndex={0}\r\n\t\t\trole=\"button\"\r\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\r\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\r\n\t\t\t\t\trevealAllWindows();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{children || <RevealAllIcon />}\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"RevealAll.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,CAC3B,6BAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAC,KAAK,EAAC,KAAK,EAAC,4BAA4B;IACnG,2BAAG,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,MAAM,EAAC,WAAW,EAAC,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS;QAC3E,2BAAG,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAC,iCAAiC;YACvE,2BAAG,EAAE,EAAC,UAAU,EAAC,SAAS,EAAC,+BAA+B;gBACzD,8BACC,CAAC,EAAC,2NAA2N,EAC7N,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,+MAA+M,EACjN,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,8LAA8L,EAChM,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,0MAA0M,EAC5M,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP;gBACR,8BACC,CAAC,EAAC,mMAAmM,EACrM,EAAE,EAAC,gBAAgB,EACnB,IAAI,EAAC,SAAS,GACP,CACL,CACD,CACD,CACC,CACN,CAAC;AAMF,MAAM,CAAC,MAAM,SAAS,GAAoD,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrG,MAAM,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAAE,CAAC;IAC1C,MAAM,cAAc,GAAG,sCAAsC,SAAS,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAEvF,OAAO,CACN,6BACC,SAAS,EAAE,cAAc,EACzB,KAAK,EAAC,YAAY,EAClB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,CAAC,EACX,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,CAAC,CAAsC,EAAE,EAAE;YACrD,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;gBACvC,gBAAgB,EAAE,CAAC;aACnB;QACF,CAAC,IAEA,QAAQ,IAAI,oBAAC,aAAa,OAAG,CACzB,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["// disable eslint below because the svg in the icon definition will error if React is not imported\nimport * as React from \"react\"; // eslint-disable-line\nimport { useToolbar } from \"../../hooks/useToolbar\";\n\n// The default icon for RevealAll.\nconst RevealAllIcon = () => (\n\t<svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n\t\t<g id=\"Symbols\" stroke=\"none\" strokeWidth=\"1\" fill=\"none\" fillRule=\"evenodd\">\n\t\t\t<g id=\"atoms/icons/to-front\" transform=\"translate(-9.000000, -9.000000)\">\n\t\t\t\t<g id=\"To-Front\" transform=\"translate(9.000000, 9.000000)\">\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M7,5.5 L7,5 L6,5 L6,1 L1,1 L1,6 L5,6 L5,7 L6,7 L1,7 C0.44771525,7 6.76353751e-17,6.55228475 0,6 L0,1 C-6.76353751e-17,0.44771525 0.44771525,1.01453063e-16 1,0 L6,0 C6.55228475,-1.01453063e-16 7,0.44771525 7,1 L7,5.5 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#8E939F\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10.5,7 L11,7 L11,6 L15,6 L15,1 L10,1 L10,4 L9,4 L9,5 L9,1 C9,0.44771525 9.44771525,1.01453063e-16 10,0 L15,0 C15.5522847,-1.01453063e-16 16,0.44771525 16,1 L16,6 C16,6.55228475 15.5522847,7 15,7 L10.5,7 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#8E939F\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10,9 L15,9 C15.5522847,9 16,9.44771525 16,10 L16,15 C16,15.5522847 15.5522847,16 15,16 L10,16 C9.44771525,16 9,15.5522847 9,15 L9,11 L9,12 L10,12 L10,15 L15,15 L15,10 L11,10 L11,9 L10,9 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#8E939F\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M6,9 L5,9 L5,10 L1,10 L1,15 L6,15 L6,11 L7,11 L7,10 L7,15 C7,15.5522847 6.55228475,16 6,16 L1,16 C0.44771525,16 6.76353751e-17,15.5522847 0,15 L0,10 C-6.76353751e-17,9.44771525 0.44771525,9 1,9 L6,9 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#8E939F\"\n\t\t\t\t\t></path>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M5,4 L11,4 C11.5522847,4 12,4.44771525 12,5 L12,11 C12,11.5522847 11.5522847,12 11,12 L5,12 C4.44771525,12 4,11.5522847 4,11 L4,5 C4,4.44771525 4.44771525,4 5,4 Z M5,5 L5,11 L11,11 L11,5 L5,5 Z\"\n\t\t\t\t\t\tid=\"Combined-Shape\"\n\t\t\t\t\t\tfill=\"#FFFFFF\"\n\t\t\t\t\t></path>\n\t\t\t\t</g>\n\t\t\t</g>\n\t\t</g>\n\t</svg>\n);\n\n/**\n * A button that reveals (brings to front but does not unminimize) all Finsemble windows.\n * @param {string} [className] - An optional CSS className to append.\n */\nexport const RevealAll: React.FunctionComponent<{ className?: string }> = ({ className, children }) => {\n\tconst { revealAllWindows } = useToolbar();\n\tconst wrapperClasses = `finsemble-toolbar-button icon-only ${className || \"\"} `.trim();\n\n\treturn (\n\t\t<div\n\t\t\tclassName={wrapperClasses}\n\t\t\ttitle=\"Reveal All\"\n\t\t\tonClick={revealAllWindows}\n\t\t\ttabIndex={0}\n\t\t\trole=\"button\"\n\t\t\tonKeyDown={(e: React.KeyboardEvent<HTMLDivElement>) => {\n\t\t\t\tif ([\"Enter\", \"Space\"].includes(e.key)) {\n\t\t\t\t\trevealAllWindows();\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t{children || <RevealAllIcon />}\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RevealAll.spec.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\r\nimport { mount } from \"enzyme\";\r\nimport { describe, it } from \"mocha\";\r\nimport { expect } from \"chai\";\r\nimport sinon from \"sinon\";\r\nimport { Basic } from \"./RevealAll.stories\";\r\n\r\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\r\nimport addons, { mockChannel } from \"@storybook/addons\";\r\naddons.setChannel(mockChannel());\r\n\r\ndescribe(\"<RevealAll/>\", () => {\r\n\tafterEach(() => {\r\n\t\tsinon.restore();\r\n\t});\r\n\tit(\"should display icon\", () => {\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\texpect(wrapper.find(\"svg\").exists()).to.be.true;\r\n\t});\r\n\tit(\"should call reveal action when clicked\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"click\");\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should call reveal action when user presses Enter\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"Enter\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should call reveal action when user presses Space\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"Space\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.true;\r\n\t});\r\n\tit(\"should not call reveal action when user presses a character other than Enter or Space\", () => {\r\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\r\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\r\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\r\n\t\t\tkey: \"a\",\r\n\t\t});\r\n\t\texpect(buttonSpy.calledOnce).to.be.false;\r\n\t});\r\n});\r\n"]}
1
+ {"version":3,"file":"RevealAll.spec.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.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 sinon from \"sinon\";\nimport { Basic } from \"./RevealAll.stories\";\n\n// Necessary to allow sinon to work with mocked actions (which are shown in the Actions panel in Storybook)\nimport addons, { mockChannel } from \"@storybook/addons\";\naddons.setChannel(mockChannel());\n\ndescribe(\"<RevealAll/>\", () => {\n\tafterEach(() => {\n\t\tsinon.restore();\n\t});\n\tit(\"should display icon\", () => {\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\texpect(wrapper.find(\"svg\").exists()).to.be.true;\n\t});\n\tit(\"should call reveal action when clicked\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"click\");\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call reveal action when user presses Enter\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"Enter\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should call reveal action when user presses Space\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"Space\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.true;\n\t});\n\tit(\"should not call reveal action when user presses a character other than Enter or Space\", () => {\n\t\tconst buttonSpy = sinon.spy(Basic.args as any, \"action\");\n\t\tconst wrapper = mount(<Basic {...Basic.args} />);\n\t\twrapper.find(\".finsemble-toolbar-button\").first().simulate(\"keydown\", {\n\t\t\tkey: \"a\",\n\t\t});\n\t\texpect(buttonSpy.calledOnce).to.be.false;\n\t});\n});\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RevealAll.stories.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC;IAE/D,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,SAAS,OAAG,CACM,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;CAChC,CAAC","sourcesContent":["import React from \"react\";\r\nimport { RevealAll } from \"./RevealAll\";\r\nimport { Story } from \"@storybook/react/types-6-0\";\r\nimport { initFSBL } from \"../common/helpers\";\r\nimport { FinsembleProvider } from \"../FinsembleProvider\";\r\nimport { action } from \"@storybook/addon-actions\";\r\nimport \"../../assets/css/favorites.css\";\r\n\r\nexport default {\r\n\ttitle: \"Toolbar/RevealAll\",\r\n\tcomponent: RevealAll,\r\n};\r\n\r\nconst Template: Story<any> = (args: any) => {\r\n\tinitFSBL(window);\r\n\r\n\t// Overwrite mockup for testing purposes\r\n\tFSBL.Clients.WorkspaceClient.bringWindowsToFront = args.action;\r\n\r\n\treturn (\r\n\t\t<FinsembleProvider>\r\n\t\t\t<RevealAll />\r\n\t\t</FinsembleProvider>\r\n\t);\r\n};\r\n\r\nexport const Basic = Template.bind({});\r\nBasic.args = {\r\n\taction: action(\"bring to front\"),\r\n};\r\n"]}
1
+ {"version":3,"file":"RevealAll.stories.js","sourceRoot":"","sources":["../../../src/components/toolbar/RevealAll.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,gCAAgC,CAAC;AAExC,eAAe;IACd,KAAK,EAAE,mBAAmB;IAC1B,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,QAAQ,GAAe,CAAC,IAAS,EAAE,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,CAAC;IAGjB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC;IAE/D,OAAO,CACN,oBAAC,iBAAiB;QACjB,oBAAC,SAAS,OAAG,CACM,CACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC,IAAI,GAAG;IACZ,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC;CAChC,CAAC","sourcesContent":["import React from \"react\";\nimport { RevealAll } from \"./RevealAll\";\nimport { Story } from \"@storybook/react/types-6-0\";\nimport { initFSBL } from \"../common/helpers\";\nimport { FinsembleProvider } from \"../FinsembleProvider\";\nimport { action } from \"@storybook/addon-actions\";\nimport \"../../assets/css/favorites.css\";\n\nexport default {\n\ttitle: \"Toolbar/RevealAll\",\n\tcomponent: RevealAll,\n};\n\nconst Template: Story<any> = (args: any) => {\n\tinitFSBL(window);\n\n\t// Overwrite mockup for testing purposes\n\tFSBL.Clients.WorkspaceClient.bringWindowsToFront = args.action;\n\n\treturn (\n\t\t<FinsembleProvider>\n\t\t\t<RevealAll />\n\t\t</FinsembleProvider>\n\t);\n};\n\nexport const Basic = Template.bind({});\nBasic.args = {\n\taction: action(\"bring to front\"),\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarIcon.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAM5C,MAAM,CAAC,MAAM,WAAW,GAAiC,CAAC,EAA2B,EAAO,EAAE;QAApC,EAAE,GAAG,EAAE,QAAQ,OAAY,EAAP,KAAK,cAAzB,mBAA2B,CAAF;IAClF,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,OAAO,GAAG,GAAG,EAAE;YACpB,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;QACxF,OAAO,GAAG,EAAE;YACX,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;QAC5F,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,OAAO,CACN,2CAAK,GAAG,EAAE,SAAS,IAAM,KAAK,GAC5B,QAAQ,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { useState, useEffect } from \"react\";\r\n\r\n/**\r\n * Returns an image that will reload itself based on messages on the \"Finsemble-ui-change.toolbarIconUpdate\" topic. This\r\n * is useful for dynamic theming. Otherwise this behaves just like an <img> tag.\r\n */\r\nexport const ToolbarIcon: React.FunctionComponent<any> = ({ src, children, ...other }): any => {\r\n\tconst [uniqueSrc, setSrc] = useState(src);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst handler = () => {\r\n\t\t\tsetSrc(`${src}?${Date.now()}`);\r\n\t\t};\r\n\t\tFSBL.Clients.RouterClient.addListener(\"Finsemble-ui-change.toolbarIconUpdate\", handler);\r\n\t\treturn () => {\r\n\t\t\tFSBL.Clients.RouterClient.removeListener(\"Finsemble-ui-change.toolbarIconUpdate\", handler);\r\n\t\t};\r\n\t}, [src]);\r\n\r\n\treturn (\r\n\t\t<img src={uniqueSrc} {...other}>\r\n\t\t\t{children}\r\n\t\t</img>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"ToolbarIcon.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarIcon.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAM5C,MAAM,CAAC,MAAM,WAAW,GAAiC,CAAC,EAA2B,EAAO,EAAE;QAApC,EAAE,GAAG,EAAE,QAAQ,OAAY,EAAP,KAAK,cAAzB,mBAA2B,CAAF;IAClF,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,OAAO,GAAG,GAAG,EAAE;YACpB,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;QACxF,OAAO,GAAG,EAAE;YACX,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;QAC5F,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,OAAO,CACN,2CAAK,GAAG,EAAE,SAAS,IAAM,KAAK,GAC5B,QAAQ,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { useState, useEffect } from \"react\";\n\n/**\n * Returns an image that will reload itself based on messages on the \"Finsemble-ui-change.toolbarIconUpdate\" topic. This\n * is useful for dynamic theming. Otherwise this behaves just like an <img> tag.\n */\nexport const ToolbarIcon: React.FunctionComponent<any> = ({ src, children, ...other }): any => {\n\tconst [uniqueSrc, setSrc] = useState(src);\n\n\tuseEffect(() => {\n\t\tconst handler = () => {\n\t\t\tsetSrc(`${src}?${Date.now()}`);\n\t\t};\n\t\tFSBL.Clients.RouterClient.addListener(\"Finsemble-ui-change.toolbarIconUpdate\", handler);\n\t\treturn () => {\n\t\t\tFSBL.Clients.RouterClient.removeListener(\"Finsemble-ui-change.toolbarIconUpdate\", handler);\n\t\t};\n\t}, [src]);\n\n\treturn (\n\t\t<img src={uniqueSrc} {...other}>\n\t\t\t{children}\n\t\t</img>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarSection.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AAExC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AAejD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAS,EAAE,EAAE;IAC5F,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,SAAS,EAAkB,CAAC;IAK/C,MAAM,QAAQ,GAAG,CAAC,OAA8B,EAAE,EAAE;QACnD,IAAI,OAAO,CAAC,MAAM,EAAE;YAEnB,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAa,CAAC;YAIjD,IAAI,WAAW,IAAI,cAAc,EAAE;gBAClC,eAAe,CAAC,WAAW,GAAG,cAAc,CAAC,CAAC;aAC9C;SACD;IACF,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,UAAU,CAAC,OAAO,EAAE;YACvB,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACzD;QACD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,CACN,6BAAK,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,6BAA6B,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,IAGrF,YAAY,IAAI,QAAQ,CAEpB,CACN,CAAC;AACH,CAAC,CAAC;AAEF,cAAc,CAAC,SAAS,GAAG;IAC1B,cAAc,EAAE,SAAS,CAAC,MAAM;IAChC,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM;CACvB,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport * as PropTypes from \"prop-types\";\r\n\r\nconst { useState, useEffect, createRef } = React;\r\n\r\ntype props = {\r\n\thideBelowWidth?: number;\r\n\tclassName?: string;\r\n\tstyle?: React.CSSProperties;\r\n\tchildren?: React.ReactNode;\r\n};\r\n/**\r\n * A container element for defining sections in a toolbar.\r\n * This component exists because css flex-box does provide \"hideBelowWidth\" functionality.\r\n * @param {number} [hideBelowWidth] - Below this width the component will hide itself\r\n * @param {string} [className] - The className for a customized look of the toolbar section\r\n * @param {string} [style] - The CSS style for a customized look of the toolbar section\r\n */\r\nexport const ToolbarSection = ({ children, hideBelowWidth, className, style = {} }: props) => {\r\n\tconst [shouldRender, setShouldRender] = useState(true);\r\n\t// We will use this to access the section element.\r\n\tconst wrapperRef = createRef<HTMLDivElement>();\r\n\t/**\r\n\t * This is called by ResizerObserver whenever the size of\r\n\t * the section changes due to toolbar shrinkage.\r\n\t */\r\n\tconst onResize = (entries: ResizeObserverEntry[]) => {\r\n\t\tif (entries.length) {\r\n\t\t\t// Get the calculated width\r\n\t\t\tconst { offsetWidth } = entries[0].target as any;\r\n\t\t\t// If the developer specified a minimum width (hideBelowWidth)\r\n\t\t\t// and the section width is greater than the minimum\r\n\t\t\t// we should render all children by setting shouldRender to true.\r\n\t\t\tif (offsetWidth && hideBelowWidth) {\r\n\t\t\t\tsetShouldRender(offsetWidth > hideBelowWidth);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\tuseEffect(() => {\r\n\t\tif (wrapperRef.current) {\r\n\t\t\tnew ResizeObserver(onResize).observe(wrapperRef.current);\r\n\t\t}\r\n\t\treturn () => {};\r\n\t}, []);\r\n\treturn (\r\n\t\t<div ref={wrapperRef} className={`finsemble-toolbar-section ${className}`} style={style}>\r\n\t\t\t{\r\n\t\t\t\t// Render children if shouldRender is true\r\n\t\t\t\tshouldRender && children\r\n\t\t\t}\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nToolbarSection.propTypes = {\r\n\thideBelowWidth: PropTypes.number,\r\n\tclassName: PropTypes.string,\r\n\tstyle: PropTypes.object,\r\n};\r\n"]}
1
+ {"version":3,"file":"ToolbarSection.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AAExC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;AAejD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,GAAG,EAAE,EAAS,EAAE,EAAE;IAC5F,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEvD,MAAM,UAAU,GAAG,SAAS,EAAkB,CAAC;IAK/C,MAAM,QAAQ,GAAG,CAAC,OAA8B,EAAE,EAAE;QACnD,IAAI,OAAO,CAAC,MAAM,EAAE;YAEnB,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAa,CAAC;YAIjD,IAAI,WAAW,IAAI,cAAc,EAAE;gBAClC,eAAe,CAAC,WAAW,GAAG,cAAc,CAAC,CAAC;aAC9C;SACD;IACF,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,UAAU,CAAC,OAAO,EAAE;YACvB,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACzD;QACD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IACjB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,CACN,6BAAK,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,6BAA6B,SAAS,EAAE,EAAE,KAAK,EAAE,KAAK,IAGrF,YAAY,IAAI,QAAQ,CAEpB,CACN,CAAC;AACH,CAAC,CAAC;AAEF,cAAc,CAAC,SAAS,GAAG;IAC1B,cAAc,EAAE,SAAS,CAAC,MAAM;IAChC,SAAS,EAAE,SAAS,CAAC,MAAM;IAC3B,KAAK,EAAE,SAAS,CAAC,MAAM;CACvB,CAAC","sourcesContent":["import * as React from \"react\";\nimport * as PropTypes from \"prop-types\";\n\nconst { useState, useEffect, createRef } = React;\n\ntype props = {\n\thideBelowWidth?: number;\n\tclassName?: string;\n\tstyle?: React.CSSProperties;\n\tchildren?: React.ReactNode;\n};\n/**\n * A container element for defining sections in a toolbar.\n * This component exists because css flex-box does provide \"hideBelowWidth\" functionality.\n * @param {number} [hideBelowWidth] - Below this width the component will hide itself\n * @param {string} [className] - The className for a customized look of the toolbar section\n * @param {string} [style] - The CSS style for a customized look of the toolbar section\n */\nexport const ToolbarSection = ({ children, hideBelowWidth, className, style = {} }: props) => {\n\tconst [shouldRender, setShouldRender] = useState(true);\n\t// We will use this to access the section element.\n\tconst wrapperRef = createRef<HTMLDivElement>();\n\t/**\n\t * This is called by ResizerObserver whenever the size of\n\t * the section changes due to toolbar shrinkage.\n\t */\n\tconst onResize = (entries: ResizeObserverEntry[]) => {\n\t\tif (entries.length) {\n\t\t\t// Get the calculated width\n\t\t\tconst { offsetWidth } = entries[0].target as any;\n\t\t\t// If the developer specified a minimum width (hideBelowWidth)\n\t\t\t// and the section width is greater than the minimum\n\t\t\t// we should render all children by setting shouldRender to true.\n\t\t\tif (offsetWidth && hideBelowWidth) {\n\t\t\t\tsetShouldRender(offsetWidth > hideBelowWidth);\n\t\t\t}\n\t\t}\n\t};\n\tuseEffect(() => {\n\t\tif (wrapperRef.current) {\n\t\t\tnew ResizeObserver(onResize).observe(wrapperRef.current);\n\t\t}\n\t\treturn () => {};\n\t}, []);\n\treturn (\n\t\t<div ref={wrapperRef} className={`finsemble-toolbar-section ${className}`} style={style}>\n\t\t\t{\n\t\t\t\t// Render children if shouldRender is true\n\t\t\t\tshouldRender && children\n\t\t\t}\n\t\t</div>\n\t);\n};\n\nToolbarSection.propTypes = {\n\thideBelowWidth: PropTypes.number,\n\tclassName: PropTypes.string,\n\tstyle: PropTypes.object,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarShell.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,8BAA8B,CAAC;AAEtC,OAAO,aAAa,MAAM,0BAA0B,CAAC;AAGrD,IAAI,aAAa,EAAE,CAAC;AAYpB,MAAM,CAAC,MAAM,YAAY,GAA+C,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IAChH,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,CAAC;IAClD,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACnC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAEnC,OAAO,6BAAK,SAAS,EAAC,mBAAmB,IAAE,QAAQ,CAAO,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { HotkeyCombination } from \"../../types/hotkeyTypes\";\r\nimport { useToolbar } from \"../../hooks/useToolbar\";\r\nimport { useHotkey } from \"../../hooks/useHotkey\";\r\nimport \"../../assets/css/toolbar.css\";\r\n\r\nimport FloatingFocus from \"@q42/floating-focus-a11y\";\r\n// The package FloatingFocus injects a focus indicator that moves around the page, but only for\r\n// keyboard users. (Mouse users don't see the indicator.) All that needs to be done is to envoke it.\r\nnew FloatingFocus();\r\n// If you want to make changes to the indicator, the styles are being maintained in assets/css/focus.css\r\n\r\ntype ToolbarShellProps = {\r\n\thotkeyShow?: HotkeyCombination;\r\n\thotkeyHide?: HotkeyCombination;\r\n};\r\n/**\r\n * The ToolbarShell registers hotkeys, communicates with Finsemble core, sets up the toolbar size, and provides other functions of the Finsemble toolbar.\r\n * @param hotkeyShow [array<string>] - A hotkey combination to show the toolbar\r\n * @param hotkeyHide [array<string>] - A hotkey combination to hide the toolbar\r\n */\r\nexport const ToolbarShell: React.FunctionComponent<ToolbarShellProps> = ({ hotkeyShow, hotkeyHide, children }) => {\r\n\tconst { hideToolbar, showToolbar } = useToolbar();\r\n\tuseHotkey(hotkeyShow, showToolbar);\r\n\tuseHotkey(hotkeyHide, hideToolbar);\r\n\r\n\treturn <div className=\"finsemble-toolbar\">{children}</div>;\r\n};\r\n"]}
1
+ {"version":3,"file":"ToolbarShell.js","sourceRoot":"","sources":["../../../src/components/toolbar/ToolbarShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,8BAA8B,CAAC;AAEtC,OAAO,aAAa,MAAM,0BAA0B,CAAC;AAGrD,IAAI,aAAa,EAAE,CAAC;AAYpB,MAAM,CAAC,MAAM,YAAY,GAA+C,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IAChH,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,UAAU,EAAE,CAAC;IAClD,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACnC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAEnC,OAAO,6BAAK,SAAS,EAAC,mBAAmB,IAAE,QAAQ,CAAO,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["import * as React from \"react\";\nimport { HotkeyCombination } from \"../../types/hotkeyTypes\";\nimport { useToolbar } from \"../../hooks/useToolbar\";\nimport { useHotkey } from \"../../hooks/useHotkey\";\nimport \"../../assets/css/toolbar.css\";\n\nimport FloatingFocus from \"@q42/floating-focus-a11y\";\n// The package FloatingFocus injects a focus indicator that moves around the page, but only for\n// keyboard users. (Mouse users don't see the indicator.) All that needs to be done is to envoke it.\nnew FloatingFocus();\n// If you want to make changes to the indicator, the styles are being maintained in assets/css/focus.css\n\ntype ToolbarShellProps = {\n\thotkeyShow?: HotkeyCombination;\n\thotkeyHide?: HotkeyCombination;\n};\n/**\n * The ToolbarShell registers hotkeys, communicates with Finsemble core, sets up the toolbar size, and provides other functions of the Finsemble toolbar.\n * @param hotkeyShow [array<string>] - A hotkey combination to show the toolbar\n * @param hotkeyHide [array<string>] - A hotkey combination to hide the toolbar\n */\nexport const ToolbarShell: React.FunctionComponent<ToolbarShellProps> = ({ hotkeyShow, hotkeyHide, children }) => {\n\tconst { hideToolbar, showToolbar } = useToolbar();\n\tuseHotkey(hotkeyShow, showToolbar);\n\tuseHotkey(hotkeyHide, hideToolbar);\n\n\treturn <div className=\"finsemble-toolbar\">{children}</div>;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AdvancedAppLauncher.js","sourceRoot":"","sources":["../../../../src/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.tsx"],"names":[],"mappings":"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","sourcesContent":["import \"../../../assets/css/advancedAppLauncher.css\";\r\n// Import js modules\r\nimport React from \"react\";\r\nimport { createStore, getStore } from \"./stores/LauncherStore\";\r\nimport storeActions from \"./stores/StoreActions\";\r\n\r\n// Import React components\r\nimport Content from \"./components/Content\";\r\nimport AddNewAppForm from \"./components/AddNewAppForm\";\r\nimport { StandardError } from \"@finsemble/finsemble-core/types/types\";\r\nimport FoldersList from \"./components/FoldersList\";\r\nimport LeftNavBottomLinks from \"./components/LeftNavBottomLinks\";\r\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\r\n\r\nlet advancedAppLauncherStore: StoreModel | undefined;\r\n\r\ninterface IProps {\r\n\tcustomURLValidation: ((url: string) => [boolean, string]) | null;\r\n\tcustomAddComponent: ((formData: any, callback: (error: any | null) => void) => void) | null;\r\n\tbeforeAddComponent: ((formData: any) => object) | null;\r\n\tenableQuickComponents: boolean;\r\n}\r\n\r\ninterface IState {\r\n\tisFormVisible: boolean;\r\n}\r\n/**\r\n * The \"app\" button that launches the Advanced App Launcher.\r\n * The Advanced App Launcher comes with search capabilities and allows users to organize their application components into folders.\r\n *\r\n * @param {boolean} [enableQuickComponents=false] DEPRECATED: Set to true to allow users to create their own components\r\n */\r\nexport class AdvancedAppLauncher extends React.Component<IProps, IState> {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tisFormVisible: storeActions.getFormStatus(),\r\n\t\t};\r\n\t\tthis.toggleAddNewAppForm = this.toggleAddNewAppForm.bind(this);\r\n\t\tthis.openAppMarket = this.openAppMarket.bind(this);\r\n\t}\r\n\r\n\tUNSAFE_componentWillMount() {\r\n\t\tcreateStore((error: StandardError, store?: StoreModel) => {\r\n\t\t\tadvancedAppLauncherStore = store;\r\n\t\t\tstoreActions.initialize(() => {\r\n\t\t\t\tadvancedAppLauncherStore?.addListener({ field: \"isFormVisible\" }, this.toggleAddNewAppForm);\r\n\t\t\t\tthis.forceUpdate();\r\n\t\t\t});\r\n\t\t\t// Delete the search text from the store as searches should not persist over restart.\r\n\t\t\t// The deletion is done on startup as a shutdown listener wouldn't trigger on crashes\r\n\t\t\tstore?.setValue({\r\n\t\t\t\tfield: \"filterText\",\r\n\t\t\t\tvalue: \"\",\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tcomponentWillUnmount() {\r\n\t\tgetStore()?.removeListener({ field: \"isFormVisible\" }, this.toggleAddNewAppForm);\r\n\t}\r\n\r\n\t/**\r\n\t * Sets isFormVisible to true or false in state\r\n\t * isFormVisible is used to conditionally show/hide the\r\n\t * add new component form.\r\n\t * @param {objec} error\r\n\t * @param {object} data\r\n\t */\r\n\ttoggleAddNewAppForm(error: StandardError, data: { value: any }) {\r\n\t\tthis.setState({\r\n\t\t\tisFormVisible: data.value,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Sets isFormVisible to false in store to remove the form\r\n\t */\r\n\tonAddNewAppFormAction() {\r\n\t\tgetStore()?.setValue(\r\n\t\t\t{\r\n\t\t\t\tfield: \"isFormVisible\",\r\n\t\t\t\tvalue: false,\r\n\t\t\t},\r\n\t\t\t(error: StandardError) => {\r\n\t\t\t\terror && console.log(\"Failed to set isFormVisible to false\");\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\topenAppMarket() {\r\n\t\tFSBL.Clients.LauncherClient.showWindow(\r\n\t\t\t{\r\n\t\t\t\tcomponentType: \"Advanced App Catalog\",\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tmonitor: \"mine\",\r\n\t\t\t\tstaggerPixels: 0,\r\n\t\t\t\tspawnIfNotFound: true,\r\n\t\t\t\tleft: \"center\",\r\n\t\t\t\ttop: \"center\",\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\trender() {\r\n\t\tif (!advancedAppLauncherStore) return null;\r\n\t\treturn (\r\n\t\t\t<div className=\"advanced-app-launcher\">\r\n\t\t\t\t<div className=\"complex-menu-wrapper\">\r\n\t\t\t\t\t<div className=\"complex-menu-left-nav\">\r\n\t\t\t\t\t\t<FoldersList />\r\n\t\t\t\t\t\t<LeftNavBottomLinks\r\n\t\t\t\t\t\t\topenAppMarket={this.openAppMarket}\r\n\t\t\t\t\t\t\tenableQuickComponents={this.props.enableQuickComponents}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<Content />\r\n\t\t\t\t\t{this.state.isFormVisible && (\r\n\t\t\t\t\t\t<AddNewAppForm\r\n\t\t\t\t\t\t\tonDone={this.onAddNewAppFormAction}\r\n\t\t\t\t\t\t\tcustomURLValidation={this.props.customURLValidation}\r\n\t\t\t\t\t\t\tcustomAddComponent={this.props.customAddComponent}\r\n\t\t\t\t\t\t\tbeforeAddComponent={this.props.beforeAddComponent}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t)}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"AdvancedAppLauncher.js","sourceRoot":"","sources":["../../../../src/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.tsx"],"names":[],"mappings":"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","sourcesContent":["import \"../../../assets/css/advancedAppLauncher.css\";\n// Import js modules\nimport React from \"react\";\nimport { createStore, getStore } from \"./stores/LauncherStore\";\nimport storeActions from \"./stores/StoreActions\";\n\n// Import React components\nimport Content from \"./components/Content\";\nimport AddNewAppForm from \"./components/AddNewAppForm\";\nimport { StandardError } from \"@finsemble/finsemble-core/types/types\";\nimport FoldersList from \"./components/FoldersList\";\nimport LeftNavBottomLinks from \"./components/LeftNavBottomLinks\";\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\n\nlet advancedAppLauncherStore: StoreModel | undefined;\n\ninterface IProps {\n\tcustomURLValidation: ((url: string) => [boolean, string]) | null;\n\tcustomAddComponent: ((formData: any, callback: (error: any | null) => void) => void) | null;\n\tbeforeAddComponent: ((formData: any) => object) | null;\n\tenableQuickComponents: boolean;\n}\n\ninterface IState {\n\tisFormVisible: boolean;\n}\n/**\n * The \"app\" button that launches the Advanced App Launcher.\n * The Advanced App Launcher comes with search capabilities and allows users to organize their application components into folders.\n *\n * @param {boolean} [enableQuickComponents=false] DEPRECATED: Set to true to allow users to create their own components\n */\nexport class AdvancedAppLauncher extends React.Component<IProps, IState> {\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tisFormVisible: storeActions.getFormStatus(),\n\t\t};\n\t\tthis.toggleAddNewAppForm = this.toggleAddNewAppForm.bind(this);\n\t\tthis.openAppMarket = this.openAppMarket.bind(this);\n\t}\n\n\tUNSAFE_componentWillMount() {\n\t\tcreateStore((error: StandardError, store?: StoreModel) => {\n\t\t\tadvancedAppLauncherStore = store;\n\t\t\tstoreActions.initialize(() => {\n\t\t\t\tadvancedAppLauncherStore?.addListener({ field: \"isFormVisible\" }, this.toggleAddNewAppForm);\n\t\t\t\tthis.forceUpdate();\n\t\t\t});\n\t\t\t// Delete the search text from the store as searches should not persist over restart.\n\t\t\t// The deletion is done on startup as a shutdown listener wouldn't trigger on crashes\n\t\t\tstore?.setValue({\n\t\t\t\tfield: \"filterText\",\n\t\t\t\tvalue: \"\",\n\t\t\t});\n\t\t});\n\t}\n\n\tcomponentWillUnmount() {\n\t\tgetStore()?.removeListener({ field: \"isFormVisible\" }, this.toggleAddNewAppForm);\n\t}\n\n\t/**\n\t * Sets isFormVisible to true or false in state\n\t * isFormVisible is used to conditionally show/hide the\n\t * add new component form.\n\t * @param {objec} error\n\t * @param {object} data\n\t */\n\ttoggleAddNewAppForm(error: StandardError, data: { value: any }) {\n\t\tthis.setState({\n\t\t\tisFormVisible: data.value,\n\t\t});\n\t}\n\n\t/**\n\t * Sets isFormVisible to false in store to remove the form\n\t */\n\tonAddNewAppFormAction() {\n\t\tgetStore()?.setValue(\n\t\t\t{\n\t\t\t\tfield: \"isFormVisible\",\n\t\t\t\tvalue: false,\n\t\t\t},\n\t\t\t(error: StandardError) => {\n\t\t\t\terror && console.log(\"Failed to set isFormVisible to false\");\n\t\t\t}\n\t\t);\n\t}\n\n\topenAppMarket() {\n\t\tFSBL.Clients.LauncherClient.showWindow(\n\t\t\t{\n\t\t\t\tcomponentType: \"Advanced App Catalog\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tmonitor: \"mine\",\n\t\t\t\tstaggerPixels: 0,\n\t\t\t\tspawnIfNotFound: true,\n\t\t\t\tleft: \"center\",\n\t\t\t\ttop: \"center\",\n\t\t\t}\n\t\t);\n\t}\n\n\trender() {\n\t\tif (!advancedAppLauncherStore) return null;\n\t\treturn (\n\t\t\t<div className=\"advanced-app-launcher\">\n\t\t\t\t<div className=\"complex-menu-wrapper\">\n\t\t\t\t\t<div className=\"complex-menu-left-nav\">\n\t\t\t\t\t\t<FoldersList />\n\t\t\t\t\t\t<LeftNavBottomLinks\n\t\t\t\t\t\t\topenAppMarket={this.openAppMarket}\n\t\t\t\t\t\t\tenableQuickComponents={this.props.enableQuickComponents}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<Content />\n\t\t\t\t\t{this.state.isFormVisible && (\n\t\t\t\t\t\t<AddNewAppForm\n\t\t\t\t\t\t\tonDone={this.onAddNewAppFormAction}\n\t\t\t\t\t\t\tcustomURLValidation={this.props.customURLValidation}\n\t\t\t\t\t\t\tcustomAddComponent={this.props.customAddComponent}\n\t\t\t\t\t\t\tbeforeAddComponent={this.props.beforeAddComponent}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AdvancedAppLauncherMenu.js","sourceRoot":"","sources":["../../../../src/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAS5D,MAAM,uBAAuB,GAA0D,CAAC,EASvF,EAAE,EAAE;QATmF,EACvF,KAAK,GAAG,GAAG,EACX,SAAS,GAAG,qBAAqB,EACjC,EAAE,GAAG,yBAAyB,EAC9B,KAAK,GAAG,MAAM,EACd,mBAAmB,GAAG,IAAI,EAC1B,kBAAkB,GAAG,IAAI,EACzB,kBAAkB,GAAG,IAAI,OAEzB,EADG,UAAU,cAR0E,wGASvF,CADa;IAEb,MAAM,qBAAqB,GAAG;QAC7B,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;QAClB,qBAAqB,EAAE,KAAK;KAC5B,CAAC;IAEF,IAAI,aAAa,iDACb,UAAU,GACV,qBAAqB,KACxB,KAAK;QACL,SAAS;QACT,EAAE;QACF,KAAK,GACL,CAAC;IAEF,OAAO,CACN,oBAAC,IAAI,oBAAK,aAAa;QACtB,oBAAC,mBAAmB,oBAAK,qBAAqB,EAAI,CAC5C,CACP,CAAC;AACH,CAAC,CAAC;AACF,OAAO,EAAE,uBAAuB,EAAE,CAAC","sourcesContent":["import * as React from \"react\";\r\nimport { Menu } from \"../../menu/Menu\";\r\nimport { MenuProps } from \"../../menu/Menu\";\r\nimport { AdvancedAppLauncher } from \"./AdvancedAppLauncher\";\r\n\r\ntype AdvancedAppLauncherMenuProps = MenuProps & {\r\n\tenableQuickComponents?: boolean; // DEPRECATED: Quick Components will be removed in a future release\r\n\tcustomURLValidation?: (url: string) => [boolean, string];\r\n\tcustomAddComponent?: (formData: any, callback: (error: any | null) => void) => void;\r\n\tbeforeAddComponent?: (formData: any) => object;\r\n};\r\n\r\nconst AdvancedAppLauncherMenu: React.FunctionComponent<AdvancedAppLauncherMenuProps> = ({\r\n\twidth = 640,\r\n\tclassName = \"advancedAppLauncher\",\r\n\tid = \"AdvancedAppLauncherMenu\",\r\n\ttitle = \"Apps\",\r\n\tcustomURLValidation = null,\r\n\tcustomAddComponent = null,\r\n\tbeforeAddComponent = null,\r\n\t...otherProps\r\n}) => {\r\n\tconst advancedLauncherProps = {\r\n\t\tcustomURLValidation,\r\n\t\tcustomAddComponent,\r\n\t\tbeforeAddComponent,\r\n\t\tenableQuickComponents: false,\r\n\t};\r\n\r\n\tlet completeProps = {\r\n\t\t...otherProps,\r\n\t\t...advancedLauncherProps,\r\n\t\twidth,\r\n\t\tclassName,\r\n\t\tid,\r\n\t\ttitle,\r\n\t};\r\n\r\n\treturn (\r\n\t\t<Menu {...completeProps}>\r\n\t\t\t<AdvancedAppLauncher {...advancedLauncherProps} />\r\n\t\t</Menu>\r\n\t);\r\n};\r\nexport { AdvancedAppLauncherMenu };\r\n"]}
1
+ {"version":3,"file":"AdvancedAppLauncherMenu.js","sourceRoot":"","sources":["../../../../src/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAS5D,MAAM,uBAAuB,GAA0D,CAAC,EASvF,EAAE,EAAE;QATmF,EACvF,KAAK,GAAG,GAAG,EACX,SAAS,GAAG,qBAAqB,EACjC,EAAE,GAAG,yBAAyB,EAC9B,KAAK,GAAG,MAAM,EACd,mBAAmB,GAAG,IAAI,EAC1B,kBAAkB,GAAG,IAAI,EACzB,kBAAkB,GAAG,IAAI,OAEzB,EADG,UAAU,cAR0E,wGASvF,CADa;IAEb,MAAM,qBAAqB,GAAG;QAC7B,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;QAClB,qBAAqB,EAAE,KAAK;KAC5B,CAAC;IAEF,IAAI,aAAa,iDACb,UAAU,GACV,qBAAqB,KACxB,KAAK;QACL,SAAS;QACT,EAAE;QACF,KAAK,GACL,CAAC;IAEF,OAAO,CACN,oBAAC,IAAI,oBAAK,aAAa;QACtB,oBAAC,mBAAmB,oBAAK,qBAAqB,EAAI,CAC5C,CACP,CAAC;AACH,CAAC,CAAC;AACF,OAAO,EAAE,uBAAuB,EAAE,CAAC","sourcesContent":["import * as React from \"react\";\nimport { Menu } from \"../../menu/Menu\";\nimport { MenuProps } from \"../../menu/Menu\";\nimport { AdvancedAppLauncher } from \"./AdvancedAppLauncher\";\n\ntype AdvancedAppLauncherMenuProps = MenuProps & {\n\tenableQuickComponents?: boolean; // DEPRECATED: Quick Components will be removed in a future release\n\tcustomURLValidation?: (url: string) => [boolean, string];\n\tcustomAddComponent?: (formData: any, callback: (error: any | null) => void) => void;\n\tbeforeAddComponent?: (formData: any) => object;\n};\n\nconst AdvancedAppLauncherMenu: React.FunctionComponent<AdvancedAppLauncherMenuProps> = ({\n\twidth = 640,\n\tclassName = \"advancedAppLauncher\",\n\tid = \"AdvancedAppLauncherMenu\",\n\ttitle = \"Apps\",\n\tcustomURLValidation = null,\n\tcustomAddComponent = null,\n\tbeforeAddComponent = null,\n\t...otherProps\n}) => {\n\tconst advancedLauncherProps = {\n\t\tcustomURLValidation,\n\t\tcustomAddComponent,\n\t\tbeforeAddComponent,\n\t\tenableQuickComponents: false,\n\t};\n\n\tlet completeProps = {\n\t\t...otherProps,\n\t\t...advancedLauncherProps,\n\t\twidth,\n\t\tclassName,\n\t\tid,\n\t\ttitle,\n\t};\n\n\treturn (\n\t\t<Menu {...completeProps}>\n\t\t\t<AdvancedAppLauncher {...advancedLauncherProps} />\n\t\t</Menu>\n\t);\n};\nexport { AdvancedAppLauncherMenu };\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AddNewAppForm.js","sourceRoot":"","sources":["../../../../../src/components/toolbar/advancedAppLauncher/components/AddNewAppForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport storeActions from \"../stores/StoreActions\";\r\nimport { FinsembleDialogTextInput } from \"../../../legacyControls/FinsembleDialogTextInput\";\r\nimport { FinsembleDialogButton } from \"../../../legacyControls/FinsembleDialogButton\";\r\nimport \"../../../../assets/css/dialogs.css\";\r\nimport { isValidURL } from \"../../../shared/validateURL\";\r\nimport { addProtocolToValidURL } from \"../../../shared/addProtocolToValidURL\";\r\n\r\nconst FORM_DEFAULTS = {\r\n\tname: \"\",\r\n\ttags: \"\",\r\n\turl: \"\",\r\n};\r\nconst VALIDATION_DEFAULTS = {\r\n\tname: true,\r\n\turl: true,\r\n};\r\n\r\nconst INVALID_NAME_MSG = \"Name cannot be empty or be a duplicate of an existing component.\";\r\nlet INVALID_URL_MSG = \"URL must be valid (e.g., http://www.google.com). Only http and https protocols are supported.\";\r\n\r\ninterface IState {\r\n\tform: {\r\n\t\tname?: string;\r\n\t\turl?: string;\r\n\t\ttags?: string;\r\n\t};\r\n\tvalidation: {\r\n\t\tname: boolean;\r\n\t\turl: boolean;\r\n\t};\r\n\tvalidateOnInputChange: boolean;\r\n}\r\ninterface IProps {\r\n\tonDone: () => void;\r\n\tcustomURLValidation: ((url: string) => [boolean, string]) | null;\r\n\tcustomAddComponent: ((formData: any, callback: (error: any | null) => void) => void) | null;\r\n\tbeforeAddComponent: ((formData: any) => object) | null;\r\n}\r\n/**\r\n * A component that has a form to accept new app properties\r\n * like name, url and tags, validates user input then saves it\r\n * to persistent store. Showing or hiding this component is up to\r\n * parent component.\r\n * @example <AddNewAppForm onDone={this.someHandlerFunction}></AddNewAppForm>\r\n */\r\nexport default class AddNewAppForm extends React.Component<IProps, IState> {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\t// if you do not do this, FORM_DEFAULTS gets mutated by setState later on.\r\n\t\t\tform: Object.assign({}, FORM_DEFAULTS),\r\n\t\t\tvalidation: Object.assign({}, VALIDATION_DEFAULTS),\r\n\t\t\t// changed to true after the user submits (if they submit bad information). This gives updated information on keypress.\r\n\t\t\tvalidateOnInputChange: false,\r\n\t\t};\r\n\r\n\t\tthis.onSubmit = this.onSubmit.bind(this);\r\n\t\tthis.onClear = this.onClear.bind(this);\r\n\t\tthis.onCancel = this.onCancel.bind(this);\r\n\t\tthis.done = this.done.bind(this);\r\n\t\tthis.onURLChanged = this.onURLChanged.bind(this);\r\n\t\tthis.onAppNameChanged = this.onAppNameChanged.bind(this);\r\n\t\tthis.onKeyDown = this.onKeyDown.bind(this);\r\n\t\tthis.addNewApp = this.addNewApp.bind(this);\r\n\t\tthis.addNewAppCallback = this.addNewAppCallback.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Calls the storeActions.addApp() method\r\n\t * to save the new app in store.\r\n\t */\r\n\tonSubmit() {\r\n\t\tthis.fixURL();\r\n\t\tthis.fixName();\r\n\t\tlet validName = this.validateName(this.state.form.name);\r\n\t\tlet validURL = this.validateURL(this.state.form.url);\r\n\t\tif (!validName || !validURL) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tvalidation: {\r\n\t\t\t\t\turl: validURL,\r\n\t\t\t\t\tname: validName,\r\n\t\t\t\t},\r\n\t\t\t\tvalidateOnInputChange: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({\r\n\t\t\tvalidation: Object.assign({}, VALIDATION_DEFAULTS),\r\n\t\t\tvalidateOnInputChange: false,\r\n\t\t});\r\n\r\n\t\tlet formData = this.state.form;\r\n\t\tif (this.props.beforeAddComponent) {\r\n\t\t\tif (typeof this.props.beforeAddComponent !== \"function\") {\r\n\t\t\t\tFSBL.Clients.Logger.system.error(\r\n\t\t\t\t\t\"beforeAddComponent provided to Advanced App Launcher does not appear to be a function, skipping\"\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\tformData = this.props.beforeAddComponent(formData);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.addNewApp(formData, this.addNewAppCallback);\r\n\t}\r\n\r\n\taddNewAppCallback(error: any) {\r\n\t\t// Notify parent if no errors\r\n\t\tif (error) {\r\n\t\t\tFSBL.Clients.Logger.system.error(error);\r\n\t\t\tthis.setState({\r\n\t\t\t\tvalidation: {\r\n\t\t\t\t\tname: false,\r\n\t\t\t\t\turl: true,\r\n\t\t\t\t},\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.done();\r\n\t\t}\r\n\t}\r\n\r\n\taddNewApp(form: IState[\"form\"], cb: (err?: any) => void) {\r\n\t\tif (this.props.customAddComponent) {\r\n\t\t\tif (typeof this.props.customAddComponent === \"function\") {\r\n\t\t\t\tthis.props.customAddComponent(form, cb);\r\n\t\t\t\treturn;\r\n\t\t\t} else {\r\n\t\t\t\tFSBL.Clients.Logger.system.error(\r\n\t\t\t\t\t\"Custom Add Component parameter provided to Advanced App Launcher does not appear to be a function, falling back to default add\"\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst { name, url, tags } = form;\r\n\t\tif (name && url) {\r\n\t\t\tstoreActions.addApp(\r\n\t\t\t\t{\r\n\t\t\t\t\tname,\r\n\t\t\t\t\turl,\r\n\t\t\t\t\ttags: tags ? tags.split(\",\") : [],\r\n\t\t\t\t\tappID: name,\r\n\t\t\t\t\ttype: \"unknown\",\r\n\t\t\t\t\tcanDelete: true,\r\n\t\t\t\t},\r\n\t\t\t\tcb\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Clears all form inputs\r\n\t */\r\n\tonClear() {\r\n\t\t//document.getElementById(\"new-app\").reset();\r\n\t\tthis.setState({\r\n\t\t\tform: Object.assign({}, FORM_DEFAULTS),\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Just cancel and do not add the app\r\n\t */\r\n\tonCancel() {\r\n\t\tthis.done();\r\n\t}\r\n\r\n\t/**\r\n\t * Calls the passed onDone property to let the parent component\r\n\t * know that we finished processing user's request (submit/cancel)\r\n\t */\r\n\tdone() {\r\n\t\tif (this.props.onDone && typeof this.props.onDone === \"function\") {\r\n\t\t\tthis.props.onDone();\r\n\t\t}\r\n\t\tthis.onClear();\r\n\t}\r\n\r\n\t/**\r\n\t * When the url changes, validate it (after submit), or set state.\r\n\t * @param {keyboardEvent} e\r\n\t */\r\n\tonURLChanged(e: React.ChangeEvent<HTMLInputElement>) {\r\n\t\tlet { form, validation } = this.state;\r\n\t\tif (!form) {\r\n\t\t\tform = {};\r\n\t\t}\r\n\t\tform.url = e.target.value;\r\n\t\tif (this.state.validateOnInputChange) {\r\n\t\t\tvalidation.url = this.validateURL(form.url);\r\n\t\t}\r\n\t\tthis.setState({\r\n\t\t\tform,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * When the name changes, validate it (after submit), or set state.\r\n\t * @param {keyboardEvent} e\r\n\t */\r\n\tonAppNameChanged(e: React.ChangeEvent<HTMLInputElement>) {\r\n\t\tlet { form, validation } = this.state;\r\n\t\tif (!form) {\r\n\t\t\tform = {};\r\n\t\t}\r\n\t\tform.name = e.target.value;\r\n\t\tif (this.state.validateOnInputChange) {\r\n\t\t\tvalidation.name = this.validateName(form.name);\r\n\t\t}\r\n\t\tthis.setState({\r\n\t\t\tform,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Attempt to make a URL object, if successful the provided URL is valid.\r\n\t * If the URL constructor determines the provided string to be invalid it throws a TypeError.\r\n\t *\r\n\t * @param {string} url\r\n\t * @return boolean\r\n\t */\r\n\tvalidateURL(url?: string) {\r\n\t\tif (!url) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (this.props.customURLValidation) {\r\n\t\t\tif (typeof this.props.customURLValidation === \"function\") {\r\n\t\t\t\tconst [result, message] = this.props.customURLValidation(url);\r\n\t\t\t\tif (typeof result !== \"boolean\") {\r\n\t\t\t\t\tFSBL.Clients.Logger.system.error(\r\n\t\t\t\t\t\t\"Custom URL Validation routine does not return a boolean, falling back to default validation\"\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (message) {\r\n\t\t\t\t\t\tINVALID_URL_MSG = message;\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn result;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tFSBL.Clients.Logger.system.error(\r\n\t\t\t\t\t\"Custom url validation provided to Advanced App Launcher does not appear to be a function, falling back to default validation\"\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn isValidURL(url);\r\n\t}\r\n\r\n\t/**\r\n\t * When the url changes, validate it (after submit), or set state.\r\n\t * @param {string} name\r\n\t */\r\n\tvalidateName(name?: string) {\r\n\t\tif (typeof name !== \"string\") {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\treturn name !== \"\" || /^[0-9a-zA-Z_.-\\s]+$/.test(name);\r\n\t}\r\n\r\n\t/**\r\n\t * Allows user to skip the protocol. Puts one in there if they don't have it.\r\n\t */\r\n\tfixURL() {\r\n\t\tlet { form } = this.state;\r\n\t\tif (!form) {\r\n\t\t\tform = {};\r\n\t\t}\r\n\t\tif (typeof form.url === \"string\") {\r\n\t\t\tform.url = addProtocolToValidURL(form?.url);\r\n\t\t}\r\n\t\tthis.setState({ form });\r\n\t}\r\n\r\n\t/**\r\n\t * Removes empty spaces from beginning and end of line\r\n\t */\r\n\tfixName() {\r\n\t\tlet { form } = this.state;\r\n\t\tif (!form) {\r\n\t\t\tform = {};\r\n\t\t}\r\n\t\tform.name = form.name?.trim();\r\n\t\tthis.setState({ form });\r\n\t}\r\n\r\n\t/**\r\n\t * Hotkey handler\r\n\t * Escape clears the form and hides it.\r\n\t * Enter submits.\r\n\t * @param {} e\r\n\t */\r\n\tonKeyDown(e: any) {\r\n\t\tif (e.detail.key === \"Escape\") {\r\n\t\t\tthis.onClear();\r\n\t\t\tthis.done();\r\n\t\t}\r\n\t\tif (e.detail.key === \"Enter\") {\r\n\t\t\tthis.onSubmit();\r\n\t\t}\r\n\t}\r\n\r\n\t// Listen for esc/enter\r\n\tcomponentDidMount() {\r\n\t\tdocument.addEventListener(\"portal:keydown\", this.onKeyDown);\r\n\t}\r\n\r\n\t// remove listen for esc/enter\r\n\tcomponentWillUnmount() {\r\n\t\tdocument.removeEventListener(\"portal:keydown\", this.onKeyDown);\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<div className=\"add-app-form controls-wrapper\">\r\n\t\t\t\t<form id=\"new-app\">\r\n\t\t\t\t\t<FinsembleDialogTextInput\r\n\t\t\t\t\t\tinputLabel=\"Name\"\r\n\t\t\t\t\t\tonInputChange={this.onAppNameChanged}\r\n\t\t\t\t\t\tplaceholder=\"Name\"\r\n\t\t\t\t\t\tautoFocus={true}\r\n\t\t\t\t\t\tvalue={this.state.form.name}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t{!this.state.validation.name && <div className=\"input-error\">{INVALID_NAME_MSG}</div>}\r\n\t\t\t\t\t<FinsembleDialogTextInput\r\n\t\t\t\t\t\tinputLabel=\"URL\"\r\n\t\t\t\t\t\tonInputChange={this.onURLChanged}\r\n\t\t\t\t\t\tplaceholder=\"URL\"\r\n\t\t\t\t\t\tvalue={this.state.form.url}\r\n\t\t\t\t\t/>\r\n\t\t\t\t\t{!this.state.validation.url && <div className=\"input-error\">{INVALID_URL_MSG}</div>}\r\n\t\t\t\t\t<div className=\"button-wrapper\">\r\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-neutral\" onClick={this.onClear}>\r\n\t\t\t\t\t\t\tClear\r\n\t\t\t\t\t\t</FinsembleDialogButton>\r\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-neutral\" onClick={this.onCancel}>\r\n\t\t\t\t\t\t\tCancel\r\n\t\t\t\t\t\t</FinsembleDialogButton>\r\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-affirmative\" onClick={this.onSubmit}>\r\n\t\t\t\t\t\t\tConfirm\r\n\t\t\t\t\t\t</FinsembleDialogButton>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</form>\r\n\t\t\t</div>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"AddNewAppForm.js","sourceRoot":"","sources":["../../../../../src/components/toolbar/advancedAppLauncher/components/AddNewAppForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport storeActions from \"../stores/StoreActions\";\nimport { FinsembleDialogTextInput } from \"../../../legacyControls/FinsembleDialogTextInput\";\nimport { FinsembleDialogButton } from \"../../../legacyControls/FinsembleDialogButton\";\nimport \"../../../../assets/css/dialogs.css\";\nimport { isValidURL } from \"../../../shared/validateURL\";\nimport { addProtocolToValidURL } from \"../../../shared/addProtocolToValidURL\";\n\nconst FORM_DEFAULTS = {\n\tname: \"\",\n\ttags: \"\",\n\turl: \"\",\n};\nconst VALIDATION_DEFAULTS = {\n\tname: true,\n\turl: true,\n};\n\nconst INVALID_NAME_MSG = \"Name cannot be empty or be a duplicate of an existing component.\";\nlet INVALID_URL_MSG = \"URL must be valid (e.g., http://www.google.com). Only http and https protocols are supported.\";\n\ninterface IState {\n\tform: {\n\t\tname?: string;\n\t\turl?: string;\n\t\ttags?: string;\n\t};\n\tvalidation: {\n\t\tname: boolean;\n\t\turl: boolean;\n\t};\n\tvalidateOnInputChange: boolean;\n}\ninterface IProps {\n\tonDone: () => void;\n\tcustomURLValidation: ((url: string) => [boolean, string]) | null;\n\tcustomAddComponent: ((formData: any, callback: (error: any | null) => void) => void) | null;\n\tbeforeAddComponent: ((formData: any) => object) | null;\n}\n/**\n * A component that has a form to accept new app properties\n * like name, url and tags, validates user input then saves it\n * to persistent store. Showing or hiding this component is up to\n * parent component.\n * @example <AddNewAppForm onDone={this.someHandlerFunction}></AddNewAppForm>\n */\nexport default class AddNewAppForm extends React.Component<IProps, IState> {\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\t// if you do not do this, FORM_DEFAULTS gets mutated by setState later on.\n\t\t\tform: Object.assign({}, FORM_DEFAULTS),\n\t\t\tvalidation: Object.assign({}, VALIDATION_DEFAULTS),\n\t\t\t// changed to true after the user submits (if they submit bad information). This gives updated information on keypress.\n\t\t\tvalidateOnInputChange: false,\n\t\t};\n\n\t\tthis.onSubmit = this.onSubmit.bind(this);\n\t\tthis.onClear = this.onClear.bind(this);\n\t\tthis.onCancel = this.onCancel.bind(this);\n\t\tthis.done = this.done.bind(this);\n\t\tthis.onURLChanged = this.onURLChanged.bind(this);\n\t\tthis.onAppNameChanged = this.onAppNameChanged.bind(this);\n\t\tthis.onKeyDown = this.onKeyDown.bind(this);\n\t\tthis.addNewApp = this.addNewApp.bind(this);\n\t\tthis.addNewAppCallback = this.addNewAppCallback.bind(this);\n\t}\n\n\t/**\n\t * Calls the storeActions.addApp() method\n\t * to save the new app in store.\n\t */\n\tonSubmit() {\n\t\tthis.fixURL();\n\t\tthis.fixName();\n\t\tlet validName = this.validateName(this.state.form.name);\n\t\tlet validURL = this.validateURL(this.state.form.url);\n\t\tif (!validName || !validURL) {\n\t\t\tthis.setState({\n\t\t\t\tvalidation: {\n\t\t\t\t\turl: validURL,\n\t\t\t\t\tname: validName,\n\t\t\t\t},\n\t\t\t\tvalidateOnInputChange: true,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tthis.setState({\n\t\t\tvalidation: Object.assign({}, VALIDATION_DEFAULTS),\n\t\t\tvalidateOnInputChange: false,\n\t\t});\n\n\t\tlet formData = this.state.form;\n\t\tif (this.props.beforeAddComponent) {\n\t\t\tif (typeof this.props.beforeAddComponent !== \"function\") {\n\t\t\t\tFSBL.Clients.Logger.system.error(\n\t\t\t\t\t\"beforeAddComponent provided to Advanced App Launcher does not appear to be a function, skipping\"\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tformData = this.props.beforeAddComponent(formData);\n\t\t\t}\n\t\t}\n\n\t\tthis.addNewApp(formData, this.addNewAppCallback);\n\t}\n\n\taddNewAppCallback(error: any) {\n\t\t// Notify parent if no errors\n\t\tif (error) {\n\t\t\tFSBL.Clients.Logger.system.error(error);\n\t\t\tthis.setState({\n\t\t\t\tvalidation: {\n\t\t\t\t\tname: false,\n\t\t\t\t\turl: true,\n\t\t\t\t},\n\t\t\t});\n\t\t} else {\n\t\t\tthis.done();\n\t\t}\n\t}\n\n\taddNewApp(form: IState[\"form\"], cb: (err?: any) => void) {\n\t\tif (this.props.customAddComponent) {\n\t\t\tif (typeof this.props.customAddComponent === \"function\") {\n\t\t\t\tthis.props.customAddComponent(form, cb);\n\t\t\t\treturn;\n\t\t\t} else {\n\t\t\t\tFSBL.Clients.Logger.system.error(\n\t\t\t\t\t\"Custom Add Component parameter provided to Advanced App Launcher does not appear to be a function, falling back to default add\"\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tconst { name, url, tags } = form;\n\t\tif (name && url) {\n\t\t\tstoreActions.addApp(\n\t\t\t\t{\n\t\t\t\t\tname,\n\t\t\t\t\turl,\n\t\t\t\t\ttags: tags ? tags.split(\",\") : [],\n\t\t\t\t\tappID: name,\n\t\t\t\t\ttype: \"unknown\",\n\t\t\t\t\tcanDelete: true,\n\t\t\t\t},\n\t\t\t\tcb\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Clears all form inputs\n\t */\n\tonClear() {\n\t\t//document.getElementById(\"new-app\").reset();\n\t\tthis.setState({\n\t\t\tform: Object.assign({}, FORM_DEFAULTS),\n\t\t});\n\t}\n\n\t/**\n\t * Just cancel and do not add the app\n\t */\n\tonCancel() {\n\t\tthis.done();\n\t}\n\n\t/**\n\t * Calls the passed onDone property to let the parent component\n\t * know that we finished processing user's request (submit/cancel)\n\t */\n\tdone() {\n\t\tif (this.props.onDone && typeof this.props.onDone === \"function\") {\n\t\t\tthis.props.onDone();\n\t\t}\n\t\tthis.onClear();\n\t}\n\n\t/**\n\t * When the url changes, validate it (after submit), or set state.\n\t * @param {keyboardEvent} e\n\t */\n\tonURLChanged(e: React.ChangeEvent<HTMLInputElement>) {\n\t\tlet { form, validation } = this.state;\n\t\tif (!form) {\n\t\t\tform = {};\n\t\t}\n\t\tform.url = e.target.value;\n\t\tif (this.state.validateOnInputChange) {\n\t\t\tvalidation.url = this.validateURL(form.url);\n\t\t}\n\t\tthis.setState({\n\t\t\tform,\n\t\t});\n\t}\n\n\t/**\n\t * When the name changes, validate it (after submit), or set state.\n\t * @param {keyboardEvent} e\n\t */\n\tonAppNameChanged(e: React.ChangeEvent<HTMLInputElement>) {\n\t\tlet { form, validation } = this.state;\n\t\tif (!form) {\n\t\t\tform = {};\n\t\t}\n\t\tform.name = e.target.value;\n\t\tif (this.state.validateOnInputChange) {\n\t\t\tvalidation.name = this.validateName(form.name);\n\t\t}\n\t\tthis.setState({\n\t\t\tform,\n\t\t});\n\t}\n\n\t/**\n\t * Attempt to make a URL object, if successful the provided URL is valid.\n\t * If the URL constructor determines the provided string to be invalid it throws a TypeError.\n\t *\n\t * @param {string} url\n\t * @return boolean\n\t */\n\tvalidateURL(url?: string) {\n\t\tif (!url) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this.props.customURLValidation) {\n\t\t\tif (typeof this.props.customURLValidation === \"function\") {\n\t\t\t\tconst [result, message] = this.props.customURLValidation(url);\n\t\t\t\tif (typeof result !== \"boolean\") {\n\t\t\t\t\tFSBL.Clients.Logger.system.error(\n\t\t\t\t\t\t\"Custom URL Validation routine does not return a boolean, falling back to default validation\"\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tif (message) {\n\t\t\t\t\t\tINVALID_URL_MSG = message;\n\t\t\t\t\t}\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tFSBL.Clients.Logger.system.error(\n\t\t\t\t\t\"Custom url validation provided to Advanced App Launcher does not appear to be a function, falling back to default validation\"\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn isValidURL(url);\n\t}\n\n\t/**\n\t * When the url changes, validate it (after submit), or set state.\n\t * @param {string} name\n\t */\n\tvalidateName(name?: string) {\n\t\tif (typeof name !== \"string\") {\n\t\t\treturn false;\n\t\t}\n\t\treturn name !== \"\" || /^[0-9a-zA-Z_.-\\s]+$/.test(name);\n\t}\n\n\t/**\n\t * Allows user to skip the protocol. Puts one in there if they don't have it.\n\t */\n\tfixURL() {\n\t\tlet { form } = this.state;\n\t\tif (!form) {\n\t\t\tform = {};\n\t\t}\n\t\tif (typeof form.url === \"string\") {\n\t\t\tform.url = addProtocolToValidURL(form?.url);\n\t\t}\n\t\tthis.setState({ form });\n\t}\n\n\t/**\n\t * Removes empty spaces from beginning and end of line\n\t */\n\tfixName() {\n\t\tlet { form } = this.state;\n\t\tif (!form) {\n\t\t\tform = {};\n\t\t}\n\t\tform.name = form.name?.trim();\n\t\tthis.setState({ form });\n\t}\n\n\t/**\n\t * Hotkey handler\n\t * Escape clears the form and hides it.\n\t * Enter submits.\n\t * @param {} e\n\t */\n\tonKeyDown(e: any) {\n\t\tif (e.detail.key === \"Escape\") {\n\t\t\tthis.onClear();\n\t\t\tthis.done();\n\t\t}\n\t\tif (e.detail.key === \"Enter\") {\n\t\t\tthis.onSubmit();\n\t\t}\n\t}\n\n\t// Listen for esc/enter\n\tcomponentDidMount() {\n\t\tdocument.addEventListener(\"portal:keydown\", this.onKeyDown);\n\t}\n\n\t// remove listen for esc/enter\n\tcomponentWillUnmount() {\n\t\tdocument.removeEventListener(\"portal:keydown\", this.onKeyDown);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<div className=\"add-app-form controls-wrapper\">\n\t\t\t\t<form id=\"new-app\">\n\t\t\t\t\t<FinsembleDialogTextInput\n\t\t\t\t\t\tinputLabel=\"Name\"\n\t\t\t\t\t\tonInputChange={this.onAppNameChanged}\n\t\t\t\t\t\tplaceholder=\"Name\"\n\t\t\t\t\t\tautoFocus={true}\n\t\t\t\t\t\tvalue={this.state.form.name}\n\t\t\t\t\t/>\n\t\t\t\t\t{!this.state.validation.name && <div className=\"input-error\">{INVALID_NAME_MSG}</div>}\n\t\t\t\t\t<FinsembleDialogTextInput\n\t\t\t\t\t\tinputLabel=\"URL\"\n\t\t\t\t\t\tonInputChange={this.onURLChanged}\n\t\t\t\t\t\tplaceholder=\"URL\"\n\t\t\t\t\t\tvalue={this.state.form.url}\n\t\t\t\t\t/>\n\t\t\t\t\t{!this.state.validation.url && <div className=\"input-error\">{INVALID_URL_MSG}</div>}\n\t\t\t\t\t<div className=\"button-wrapper\">\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-neutral\" onClick={this.onClear}>\n\t\t\t\t\t\t\tClear\n\t\t\t\t\t\t</FinsembleDialogButton>\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-neutral\" onClick={this.onCancel}>\n\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t</FinsembleDialogButton>\n\t\t\t\t\t\t<FinsembleDialogButton className=\"fsbl-button-affirmative\" onClick={this.onSubmit}>\n\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t</FinsembleDialogButton>\n\t\t\t\t\t</div>\n\t\t\t\t</form>\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AddNewFolder.js","sourceRoot":"","sources":["../../../../../src/components/toolbar/advancedAppLauncher/components/AddNewFolder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAOlD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAAS;IACxD,YAAY;QACX,YAAY,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM;QACL,OAAO,CACN,6BAAK,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,EAAC,+BAA+B,iBAEpE,CACN,CAAC;IACH,CAAC;CACD","sourcesContent":["import React from \"react\";\r\nimport storeActions from \"../stores/StoreActions\";\r\n\r\n/**\r\n * A basic component that calls storeActions.addNewFolder()\r\n * to create a new folder in store. This component could be upgraded\r\n * to support inline naming of the new folder\r\n */\r\nexport default class AddNewFolder extends React.Component {\r\n\taddNewFolder() {\r\n\t\tstoreActions.addNewFolder();\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<div onClick={this.addNewFolder} className=\"ff-plus-2 complex-menu-action\">\r\n\t\t\t\tNew Folder\r\n\t\t\t</div>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"AddNewFolder.js","sourceRoot":"","sources":["../../../../../src/components/toolbar/advancedAppLauncher/components/AddNewFolder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAOlD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,KAAK,CAAC,SAAS;IACxD,YAAY;QACX,YAAY,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM;QACL,OAAO,CACN,6BAAK,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,EAAC,+BAA+B,iBAEpE,CACN,CAAC;IACH,CAAC;CACD","sourcesContent":["import React from \"react\";\nimport storeActions from \"../stores/StoreActions\";\n\n/**\n * A basic component that calls storeActions.addNewFolder()\n * to create a new folder in store. This component could be upgraded\n * to support inline naming of the new folder\n */\nexport default class AddNewFolder extends React.Component {\n\taddNewFolder() {\n\t\tstoreActions.addNewFolder();\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<div onClick={this.addNewFolder} className=\"ff-plus-2 complex-menu-action\">\n\t\t\t\tNew Folder\n\t\t\t</div>\n\t\t);\n\t}\n}\n"]}