@finsemble/finsemble-ui 6.3.0 → 6.3.3

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 (546) hide show
  1. package/README.md +28 -28
  2. package/package.json +1 -1
  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.js.map +1 -1
  9. package/react/actions/toolbarActions.js.map +1 -1
  10. package/react/actions/workspaceActions.js.map +1 -1
  11. package/react/assets/css/advancedAppLauncher.css +636 -636
  12. package/react/assets/css/appCatalog.css +1069 -1069
  13. package/react/assets/css/authentication.css +78 -78
  14. package/react/assets/css/button.css +220 -220
  15. package/react/assets/css/core/formElements.css +23 -23
  16. package/react/assets/css/core/icons.css +69 -69
  17. package/react/assets/css/core/notifications.css +75 -75
  18. package/react/assets/css/core/windowFrame.css +36 -36
  19. package/react/assets/css/dashbar.css +78 -78
  20. package/react/assets/css/defaultTheme.css +356 -356
  21. package/react/assets/css/dialogs.css +158 -158
  22. package/react/assets/css/favorites.css +101 -101
  23. package/react/assets/css/finsemble.css +38 -38
  24. package/react/assets/css/focus.css +4 -4
  25. package/react/assets/css/font-finance.css +385 -385
  26. package/react/assets/css/fonts/Open_Sans/LICENSE.txt +202 -202
  27. package/react/assets/css/fonts/Open_Sans/OpenSans-Definition.css +118 -118
  28. package/react/assets/css/fonts/font-finance.svg +124 -124
  29. package/react/assets/css/fonts/icons-reference.html +1174 -1174
  30. package/react/assets/css/linkerWindow.css +124 -124
  31. package/react/assets/css/menus.css +195 -195
  32. package/react/assets/css/notificationsCenter.css +597 -597
  33. package/react/assets/css/processMonitor.css +213 -213
  34. package/react/assets/css/search.css +128 -128
  35. package/react/assets/css/shared/animations.css +99 -99
  36. package/react/assets/css/tags.css +136 -136
  37. package/react/assets/css/toolbar.css +413 -413
  38. package/react/assets/css/userPreferences.css +568 -568
  39. package/react/assets/css/windowTitleBar.css +652 -652
  40. package/react/assets/icons/check-square.svg +5 -5
  41. package/react/assets/icons/check.svg +3 -3
  42. package/react/assets/icons/chevron-left.svg +3 -3
  43. package/react/assets/icons/chevron-right.svg +3 -3
  44. package/react/assets/icons/copy.svg +10 -10
  45. package/react/assets/icons/exclamation-circle.svg +4 -4
  46. package/react/assets/icons/external-link.svg +12 -12
  47. package/react/assets/icons/flag.svg +10 -10
  48. package/react/assets/icons/folder.svg +3 -3
  49. package/react/assets/icons/font.svg +3 -3
  50. package/react/assets/icons/globe.svg +3 -3
  51. package/react/assets/icons/hdd.svg +9 -9
  52. package/react/assets/icons/key.svg +10 -10
  53. package/react/assets/icons/life-ring.svg +3 -3
  54. package/react/assets/icons/lock.svg +5 -5
  55. package/react/assets/icons/magic.svg +15 -15
  56. package/react/assets/icons/moon.svg +10 -10
  57. package/react/assets/icons/paint-roller.svg +3 -3
  58. package/react/assets/icons/pencil.svg +10 -10
  59. package/react/assets/icons/plus.svg +3 -3
  60. package/react/assets/icons/question-circle.svg +5 -5
  61. package/react/assets/icons/search.svg +3 -3
  62. package/react/assets/icons/sun.svg +9 -9
  63. package/react/assets/icons/times.svg +3 -3
  64. package/react/assets/icons/toggle-off.svg +6 -6
  65. package/react/assets/icons/toggle-on.svg +6 -6
  66. package/react/assets/icons/tools.svg +3 -3
  67. package/react/assets/icons/trash.svg +12 -12
  68. package/react/assets/icons/upload.svg +10 -10
  69. package/react/assets/icons/window.svg +3 -3
  70. package/react/componentTemplateGenerator.js +85 -85
  71. package/react/componentTemplateGenerator.js.map +1 -1
  72. package/react/components/FinsembleProvider.js.map +1 -1
  73. package/react/components/appCatalog/AppCatalog.js.map +1 -1
  74. package/react/components/appCatalog/AppCatalogComponent.js.map +1 -1
  75. package/react/components/appCatalog/components/AppCard.js.map +1 -1
  76. package/react/components/appCatalog/components/AppList.js.map +1 -1
  77. package/react/components/appCatalog/components/AppResults.js.map +1 -1
  78. package/react/components/appCatalog/components/Carousel.js.map +1 -1
  79. package/react/components/appCatalog/components/EmptyResults.js.map +1 -1
  80. package/react/components/appCatalog/components/Hero.js.map +1 -1
  81. package/react/components/appCatalog/components/Home.js.map +1 -1
  82. package/react/components/appCatalog/components/SearchBar.js.map +1 -1
  83. package/react/components/appCatalog/components/Showcase/AppDescription.js.map +1 -1
  84. package/react/components/appCatalog/components/Showcase/AppDevNotes.js.map +1 -1
  85. package/react/components/appCatalog/components/Showcase/AppShowcase.js.map +1 -1
  86. package/react/components/appCatalog/components/Showcase/Header.js.map +1 -1
  87. package/react/components/appCatalog/components/Showcase/ImageCarousel.js.map +1 -1
  88. package/react/components/appCatalog/components/Showcase/Modal.js.map +1 -1
  89. package/react/components/appCatalog/components/Showcase/ReleaseNotes.js.map +1 -1
  90. package/react/components/appCatalog/components/Showcase/SupportNotes.js.map +1 -1
  91. package/react/components/appCatalog/components/Showcase/VersionNotes.js.map +1 -1
  92. package/react/components/appCatalog/components/Showcase/defaults.js.map +1 -1
  93. package/react/components/appCatalog/components/Tag.js.map +1 -1
  94. package/react/components/appCatalog/components/Toast.js.map +1 -1
  95. package/react/components/appCatalog/components/helpers.js.map +1 -1
  96. package/react/components/appCatalog/index.js.map +1 -1
  97. package/react/components/appCatalog/modules/AppDirectory.js.map +1 -1
  98. package/react/components/appCatalog/modules/FDC3.js.map +1 -1
  99. package/react/components/appCatalog/stores/appStore.js.map +1 -1
  100. package/react/components/appCatalog/stores/storeActions.js.map +1 -1
  101. package/react/components/common/Button.js.map +1 -1
  102. package/react/components/common/ButtonIcon.js.map +1 -1
  103. package/react/components/common/ButtonRow.js.map +1 -1
  104. package/react/components/common/ButtonTile.js.map +1 -1
  105. package/react/components/common/Checkbox.js.map +1 -1
  106. package/react/components/common/ColorPicker.js.map +1 -1
  107. package/react/components/common/DropZone.js.map +1 -1
  108. package/react/components/common/DropdownButton.js.map +1 -1
  109. package/react/components/common/FileInput.js.map +1 -1
  110. package/react/components/common/FinsembleIcon.js.map +1 -1
  111. package/react/components/common/FinsembleSelect.js.map +1 -1
  112. package/react/components/common/FinsembleToggle.js.map +1 -1
  113. package/react/components/common/FontSizeSelector.js.map +1 -1
  114. package/react/components/common/Header.js.map +1 -1
  115. package/react/components/common/ImagePreview.js.map +1 -1
  116. package/react/components/common/LoadingSpinner.js.map +1 -1
  117. package/react/components/common/Tab.js.map +1 -1
  118. package/react/components/common/Tooltip.js.map +1 -1
  119. package/react/components/common/css/application-edit-page.css +117 -117
  120. package/react/components/common/css/application-list.css +47 -47
  121. package/react/components/common/css/button.css +164 -164
  122. package/react/components/common/css/color-picker.css +52 -52
  123. package/react/components/common/css/drop-zone.css +17 -17
  124. package/react/components/common/css/file-input.css +49 -49
  125. package/react/components/common/css/header.css +43 -43
  126. package/react/components/common/css/icon.css +13 -13
  127. package/react/components/common/css/image-preview.css +57 -57
  128. package/react/components/common/css/loading-spinner.css +39 -39
  129. package/react/components/common/css/selector.css +51 -51
  130. package/react/components/common/css/styles.css +128 -128
  131. package/react/components/common/css/tab.css +56 -56
  132. package/react/components/common/css/toggle.css +32 -32
  133. package/react/components/common/css/tooltip.css +78 -78
  134. package/react/components/common/file_helpers.js.map +1 -1
  135. package/react/components/common/fixtures/FinsembleIcon.css +4 -4
  136. package/react/components/common/helpers.js.map +1 -1
  137. package/react/components/common/stories/Button.stories.js.map +1 -1
  138. package/react/components/common/stories/ButtonIcon.stories.js.map +1 -1
  139. package/react/components/common/stories/ButtonRow.stories.js.map +1 -1
  140. package/react/components/common/stories/ButtonTile.stories.js.map +1 -1
  141. package/react/components/common/stories/Checkbox.stories.js.map +1 -1
  142. package/react/components/common/stories/ColorPicker.stories.js.map +1 -1
  143. package/react/components/common/stories/DropZone.stories.js.map +1 -1
  144. package/react/components/common/stories/DropdownButton.stories.js.map +1 -1
  145. package/react/components/common/stories/FileInput.stories.js.map +1 -1
  146. package/react/components/common/stories/FinsembleIcon.stories.js.map +1 -1
  147. package/react/components/common/stories/FinsembleSelect.stories.js.map +1 -1
  148. package/react/components/common/stories/FinsembleToggle.stories.js.map +1 -1
  149. package/react/components/common/stories/FontSizeSelector.stories.js.map +1 -1
  150. package/react/components/common/stories/Header.stories.js.map +1 -1
  151. package/react/components/common/stories/ImagePreview.stories.js.map +1 -1
  152. package/react/components/common/stories/LoadingSpinner.stories.js.map +1 -1
  153. package/react/components/common/stories/Tab.stories.js.map +1 -1
  154. package/react/components/common/stories/Tooltip.stories.js.map +1 -1
  155. package/react/components/common/tests/ButtonRow.spec.js.map +1 -1
  156. package/react/components/common/tests/Checkbox.spec.js.map +1 -1
  157. package/react/components/common/tests/ColorPicker.spec.js.map +1 -1
  158. package/react/components/common/tests/DropZone.spec.js.map +1 -1
  159. package/react/components/common/tests/FileInput.spec.js.map +1 -1
  160. package/react/components/common/tests/FinsembleSelect.spec.js.map +1 -1
  161. package/react/components/common/tests/FinsembleToggle.spec.js.map +1 -1
  162. package/react/components/common/tests/Header.spec.js.map +1 -1
  163. package/react/components/common/tests/ImagePreview.spec.js.map +1 -1
  164. package/react/components/common/tests/Tab.spec.js.map +1 -1
  165. package/react/components/common/tests/Tooltip.spec.js.map +1 -1
  166. package/react/components/favorites/FavoriteMaker.js.map +1 -1
  167. package/react/components/favorites/FavoritesShell.js.map +1 -1
  168. package/react/components/favorites/FavoritesShell.spec.js.map +1 -1
  169. package/react/components/favorites/FavoritesShell.stories.js.map +1 -1
  170. package/react/components/favorites/index.js.map +1 -1
  171. package/react/components/fdc3Resolver/ResolverContainer.js.map +1 -1
  172. package/react/components/fdc3Resolver/ResolverDialog.css +126 -126
  173. package/react/components/fdc3Resolver/ResolverDialog.js.map +1 -1
  174. package/react/components/fdc3Resolver/ResolverDialog.spec.js.map +1 -1
  175. package/react/components/fdc3Resolver/ResolverDialog.stories.js.map +1 -1
  176. package/react/components/icon/Icon.js.map +1 -1
  177. package/react/components/icon/index.js.map +1 -1
  178. package/react/components/legacyControls/FinsembleDialog.js.map +1 -1
  179. package/react/components/legacyControls/FinsembleDialogButton.js.map +1 -1
  180. package/react/components/legacyControls/FinsembleDialogQuestion.js.map +1 -1
  181. package/react/components/legacyControls/FinsembleDialogTextInput.js.map +1 -1
  182. package/react/components/legacyControls/FinsembleDnDContext.js.map +1 -1
  183. package/react/components/legacyControls/FinsembleDraggable.js.map +1 -1
  184. package/react/components/legacyControls/FinsembleHoverDetector.js.map +1 -1
  185. package/react/components/legacyControls/FinsembleMenuSection.js.map +1 -1
  186. package/react/components/legacyControls/stories/FinsembleDialog.stories.js.map +1 -1
  187. package/react/components/legacyControls/stories/FinsembleDialogButton.stories.js.map +1 -1
  188. package/react/components/legacyControls/stories/FinsembleDialogQuestion.stories.js.map +1 -1
  189. package/react/components/legacyControls/stories/FinsembleDialogTextInput.stories.js.map +1 -1
  190. package/react/components/legacyControls/tests/FinsembleDialog.spec.js.map +1 -1
  191. package/react/components/legacyControls/tests/FinsembleDialogButton.spec.js.map +1 -1
  192. package/react/components/legacyControls/tests/FinsembleDialogQuestion.spec.js.map +1 -1
  193. package/react/components/legacyControls/tests/FinsembleDialogTextInput.spec.js.map +1 -1
  194. package/react/components/linker/LinkerMenu.js.map +1 -1
  195. package/react/components/linker/LinkerMenuDeprecated.js.map +1 -1
  196. package/react/components/linker/index.js.map +1 -1
  197. package/react/components/linker/remoteRedux.js.map +1 -1
  198. package/react/components/menu/Menu.js.map +1 -1
  199. package/react/components/menu/MenuAutoResizer.js.map +1 -1
  200. package/react/components/menu/MenuContent.js.map +1 -1
  201. package/react/components/menu/MenuHotKey.js.map +1 -1
  202. package/react/components/menu/MenuItem.js.map +1 -1
  203. package/react/components/menu/MenuPortal.js.map +1 -1
  204. package/react/components/menu/MenuShell.js.map +1 -1
  205. package/react/components/menu/MenuToggle.js.map +1 -1
  206. package/react/components/menu/index.js.map +1 -1
  207. package/react/components/menu/keyboardNavigation.js.map +1 -1
  208. package/react/components/menu/menuContext.js.map +1 -1
  209. package/react/components/menu/menuHelpers.js.map +1 -1
  210. package/react/components/notifications/components/NoNotifications.js.map +1 -1
  211. package/react/components/notifications/components/drawer/Drawer.js.map +1 -1
  212. package/react/components/notifications/components/drawer/DrawerControls.js.map +1 -1
  213. package/react/components/notifications/components/drawer/DrawerHeader.js.map +1 -1
  214. package/react/components/notifications/components/notificationsCenter/NotificationsCenter.js.map +1 -1
  215. package/react/components/notifications/components/notificationsToasts/NotificationsToasts.js.map +1 -1
  216. package/react/components/notifications/components/shared/CheckButton.js.map +1 -1
  217. package/react/components/notifications/components/shared/IconButton.js.map +1 -1
  218. package/react/components/notifications/components/shared/NotificationCardShell.js +1 -1
  219. package/react/components/notifications/components/shared/NotificationCardShell.js.map +1 -1
  220. package/react/components/notifications/components/shared/OverflowMenu.js.map +1 -1
  221. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyActions.js.map +1 -1
  222. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyContentLogo.js.map +1 -1
  223. package/react/components/notifications/components/shared/notificationCard/NotificationCardBodyShell.js.map +1 -1
  224. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderControls.js.map +1 -1
  225. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderLogo.js.map +1 -1
  226. package/react/components/notifications/components/shared/notificationCard/NotificationCardHeaderShell.js.map +1 -1
  227. package/react/components/notifications/components/views/CardView.js.map +1 -1
  228. package/react/components/notifications/components/views/ListView.js +1 -1
  229. package/react/components/notifications/components/views/ListView.js.map +1 -1
  230. package/react/components/notifications/components/views/NotificationDetailsView.js.map +1 -1
  231. package/react/components/notifications/constants.js.map +1 -1
  232. package/react/components/notifications/icons/Card.js.map +1 -1
  233. package/react/components/notifications/icons/Chevron.js.map +1 -1
  234. package/react/components/notifications/icons/CloseIcon.js.map +1 -1
  235. package/react/components/notifications/icons/EnvelopeClose.js.map +1 -1
  236. package/react/components/notifications/icons/EnvelopeOpen.js.map +1 -1
  237. package/react/components/notifications/icons/SnoozeIcon.js.map +1 -1
  238. package/react/components/notifications/index.js.map +1 -1
  239. package/react/components/notifications/notificationsContext.js.map +1 -1
  240. package/react/components/notifications/types.js.map +1 -1
  241. package/react/components/notifications/utils.js.map +1 -1
  242. package/react/components/processMonitor/ProcessMonitor.js.map +1 -1
  243. package/react/components/processMonitor/ProcessMonitorTypes.js.map +1 -1
  244. package/react/components/processMonitor/components/ChildWindow.js.map +1 -1
  245. package/react/components/processMonitor/components/ListHeader.js.map +1 -1
  246. package/react/components/processMonitor/components/ProcessStatistics.js.map +1 -1
  247. package/react/components/processMonitor/constants.js.map +1 -1
  248. package/react/components/processMonitor/helpers.js.map +1 -1
  249. package/react/components/processMonitor/helpers.spec.js.map +1 -1
  250. package/react/components/processMonitor/index.js.map +1 -1
  251. package/react/components/processMonitor/stores/ProcessMonitorStore.d.ts +1 -0
  252. package/react/components/processMonitor/stores/ProcessMonitorStore.js +2 -1
  253. package/react/components/processMonitor/stores/ProcessMonitorStore.js.map +1 -1
  254. package/react/components/quickComponentForm/QuickComponentForm.js.map +1 -1
  255. package/react/components/quickComponentForm/index.js.map +1 -1
  256. package/react/components/quickComponentForm/quickComponent.css +3 -3
  257. package/react/components/search/Highlight.js.map +1 -1
  258. package/react/components/search/Highlight.spec.js.map +1 -1
  259. package/react/components/search/Highlight.stories.js.map +1 -1
  260. package/react/components/search/Search.js.map +1 -1
  261. package/react/components/search/SearchBestMatch.js.map +1 -1
  262. package/react/components/search/SearchInput.js.map +1 -1
  263. package/react/components/search/SearchProviderResults.js.map +1 -1
  264. package/react/components/search/SearchResult.js.map +1 -1
  265. package/react/components/search/SearchResults.js.map +1 -1
  266. package/react/components/search/index.js.map +1 -1
  267. package/react/components/shared/Animate.js.map +1 -1
  268. package/react/components/shared/BellIcon.js.map +1 -1
  269. package/react/components/shared/BellIconCrossed.js.map +1 -1
  270. package/react/components/shared/Button.js.map +1 -1
  271. package/react/components/shared/ConditionalWrapper.js.map +1 -1
  272. package/react/components/shared/DefaultDropdownButton.js.map +1 -1
  273. package/react/components/shared/NavigationButton.js.map +1 -1
  274. package/react/components/shared/Tag.js.map +1 -1
  275. package/react/components/shared/TagsMenu.js.map +1 -1
  276. package/react/components/shared/addProtocolToValidURL.js.map +1 -1
  277. package/react/components/shared/linkerUtil.js.map +1 -1
  278. package/react/components/shared/openQuitConfirmationDialog.js.map +1 -1
  279. package/react/components/shared/tests/DefaultDropdownButton.spec.js.map +1 -1
  280. package/react/components/shared/tests/addProtocolToValidURL.spec.js.map +1 -1
  281. package/react/components/shared/validateURL.js.map +1 -1
  282. package/react/components/shared/validateURL.spec.js.map +1 -1
  283. package/react/components/singleInputDialog/SingleInputDialog.css +3 -3
  284. package/react/components/singleInputDialog/SingleInputDialog.js.map +1 -1
  285. package/react/components/singleInputDialog/SingleInputDialog.spec.js.map +1 -1
  286. package/react/components/singleInputDialog/SingleInputDialog.stories.js.map +1 -1
  287. package/react/components/singleInputDialog/index.js.map +1 -1
  288. package/react/components/smartDesktopDesigner/AppEditAccess.js.map +1 -1
  289. package/react/components/smartDesktopDesigner/AppEditPage.js.map +1 -1
  290. package/react/components/smartDesktopDesigner/Appearance.css +94 -94
  291. package/react/components/smartDesktopDesigner/Appearance.helpers.js.map +1 -1
  292. package/react/components/smartDesktopDesigner/Appearance.js.map +1 -1
  293. package/react/components/smartDesktopDesigner/Application.js.map +1 -1
  294. package/react/components/smartDesktopDesigner/ApplicationEdit.js.map +1 -1
  295. package/react/components/smartDesktopDesigner/ApplicationList.js.map +1 -1
  296. package/react/components/smartDesktopDesigner/ApplicationSetup.js.map +1 -1
  297. package/react/components/smartDesktopDesigner/Applications.js.map +1 -1
  298. package/react/components/smartDesktopDesigner/AssetsPage.css +26 -26
  299. package/react/components/smartDesktopDesigner/AssetsPage.js.map +1 -1
  300. package/react/components/smartDesktopDesigner/Authentication.js.map +1 -1
  301. package/react/components/smartDesktopDesigner/AuthenticationProviderConfig.js.map +1 -1
  302. package/react/components/smartDesktopDesigner/Content.js.map +1 -1
  303. package/react/components/smartDesktopDesigner/CurrentView.js.map +1 -1
  304. package/react/components/smartDesktopDesigner/Export.js.map +1 -1
  305. package/react/components/smartDesktopDesigner/ExportCloud.js.map +1 -1
  306. package/react/components/smartDesktopDesigner/ExportDeployInfo.js.map +1 -1
  307. package/react/components/smartDesktopDesigner/ExportZip.js.map +1 -1
  308. package/react/components/smartDesktopDesigner/GettingStarted.js.map +1 -1
  309. package/react/components/smartDesktopDesigner/Navigation.js.map +1 -1
  310. package/react/components/smartDesktopDesigner/ProjectErrors.js.map +1 -1
  311. package/react/components/smartDesktopDesigner/ProjectHeader.js.map +1 -1
  312. package/react/components/smartDesktopDesigner/Publish.js.map +1 -1
  313. package/react/components/smartDesktopDesigner/PublishProgress.js.map +1 -1
  314. package/react/components/smartDesktopDesigner/SmartDesktopDesigner.js.map +1 -1
  315. package/react/components/smartDesktopDesigner/ThemePage.css +110 -110
  316. package/react/components/smartDesktopDesigner/ThemePage.js.map +1 -1
  317. package/react/components/smartDesktopDesigner/Themes.js.map +1 -1
  318. package/react/components/smartDesktopDesigner/View.js.map +1 -1
  319. package/react/components/smartDesktopDesigner/common/fsbl_functions.js.map +1 -1
  320. package/react/components/smartDesktopDesigner/common/getCSSVars.js.map +1 -1
  321. package/react/components/smartDesktopDesigner/common/views.js.map +1 -1
  322. package/react/components/smartDesktopDesigner/css/appearance.css +10 -10
  323. package/react/components/smartDesktopDesigner/css/applications.css +127 -127
  324. package/react/components/smartDesktopDesigner/css/authentication.css +125 -125
  325. package/react/components/smartDesktopDesigner/css/buttons.css +12 -12
  326. package/react/components/smartDesktopDesigner/css/export.css +163 -163
  327. package/react/components/smartDesktopDesigner/css/getting-started.css +6 -6
  328. package/react/components/smartDesktopDesigner/css/nav.css +93 -93
  329. package/react/components/smartDesktopDesigner/css/project-errors.css +15 -15
  330. package/react/components/smartDesktopDesigner/css/project-header.css +121 -121
  331. package/react/components/smartDesktopDesigner/css/styles.css +179 -179
  332. package/react/components/smartDesktopDesigner/css/views.css +16 -16
  333. package/react/components/smartDesktopDesigner/fixtures/applicationEditProps.js.map +1 -1
  334. package/react/components/smartDesktopDesigner/fixtures/applicationSetupProps.js.map +1 -1
  335. package/react/components/smartDesktopDesigner/fixtures/apps.js.map +1 -1
  336. package/react/components/smartDesktopDesigner/fixtures/authenticationProps.js.map +1 -1
  337. package/react/components/smartDesktopDesigner/fixtures/configTemplate.js.map +1 -1
  338. package/react/components/smartDesktopDesigner/fixtures/exportProps.js.map +1 -1
  339. package/react/components/smartDesktopDesigner/fixtures/projectErrorsProps.js.map +1 -1
  340. package/react/components/smartDesktopDesigner/fixtures/publishProgress.js.map +1 -1
  341. package/react/components/smartDesktopDesigner/fixtures/themeProps.js.map +1 -1
  342. package/react/components/smartDesktopDesigner/fixtures/views.js.map +1 -1
  343. package/react/components/smartDesktopDesigner/sdd_helpers.js.map +1 -1
  344. package/react/components/smartDesktopDesigner/stories/AppEditPage.stories.js.map +1 -1
  345. package/react/components/smartDesktopDesigner/stories/Appearance.stories.js.map +1 -1
  346. package/react/components/smartDesktopDesigner/stories/ApplicationEdit.stories.js.map +1 -1
  347. package/react/components/smartDesktopDesigner/stories/ApplicationList.stories.js.map +1 -1
  348. package/react/components/smartDesktopDesigner/stories/ApplicationSetup.stories.js.map +1 -1
  349. package/react/components/smartDesktopDesigner/stories/Applications.stories.js.map +1 -1
  350. package/react/components/smartDesktopDesigner/stories/AssetsPage.stories.js.map +1 -1
  351. package/react/components/smartDesktopDesigner/stories/Authentication.stories.js.map +1 -1
  352. package/react/components/smartDesktopDesigner/stories/Export.stories.js.map +1 -1
  353. package/react/components/smartDesktopDesigner/stories/ExportCloud.stories.js.map +1 -1
  354. package/react/components/smartDesktopDesigner/stories/ExportZip.stories.js.map +1 -1
  355. package/react/components/smartDesktopDesigner/stories/GettingStarted.stories.js.map +1 -1
  356. package/react/components/smartDesktopDesigner/stories/Navigation.stories.js.map +1 -1
  357. package/react/components/smartDesktopDesigner/stories/ProjectErrors.stories.js.map +1 -1
  358. package/react/components/smartDesktopDesigner/stories/ProjectHeader.stories.js.map +1 -1
  359. package/react/components/smartDesktopDesigner/stories/Publish.stories.js.map +1 -1
  360. package/react/components/smartDesktopDesigner/stories/PublishProgress.stories.js.map +1 -1
  361. package/react/components/smartDesktopDesigner/stories/SmartDesktopDesigner.stories.js.map +1 -1
  362. package/react/components/smartDesktopDesigner/stories/ThemePage.stories.js.map +1 -1
  363. package/react/components/smartDesktopDesigner/stories/Themes.stories.js.map +1 -1
  364. package/react/components/smartDesktopDesigner/tests/AppEditPage.spec.js.map +1 -1
  365. package/react/components/smartDesktopDesigner/tests/ApplicationEdit.spec.js.map +1 -1
  366. package/react/components/smartDesktopDesigner/tests/ApplicationList.spec.js.map +1 -1
  367. package/react/components/smartDesktopDesigner/tests/ApplicationSetup.spec.js.map +1 -1
  368. package/react/components/smartDesktopDesigner/tests/Applications.spec.js.map +1 -1
  369. package/react/components/smartDesktopDesigner/tests/Authentication.spec.js.map +1 -1
  370. package/react/components/smartDesktopDesigner/tests/Export.spec.js.map +1 -1
  371. package/react/components/smartDesktopDesigner/tests/ExportZip.spec.js.map +1 -1
  372. package/react/components/smartDesktopDesigner/tests/Navigation.spec.js.map +1 -1
  373. package/react/components/smartDesktopDesigner/tests/ProjectErrors.spec.js.map +1 -1
  374. package/react/components/smartDesktopDesigner/tests/ProjectHeader.spec.js.map +1 -1
  375. package/react/components/smartDesktopDesigner/tests/Publish.spec.js.map +1 -1
  376. package/react/components/smartDesktopDesigner/tests/PublishProgess.spec.js.map +1 -1
  377. package/react/components/smartDesktopDesigner/tests/SmartDesktopDesigner.spec.js.map +1 -1
  378. package/react/components/smartDesktopDesigner/tests/Themes.spec.js.map +1 -1
  379. package/react/components/smartDesktopDesigner/tests/a11y_helper.js.map +1 -1
  380. package/react/components/smartDesktopDesigner/themeDefinitions.js.map +1 -1
  381. package/react/components/system/System.js.map +1 -1
  382. package/react/components/system/System.spec.js.map +1 -1
  383. package/react/components/system/System.stories.js.map +1 -1
  384. package/react/components/system/SystemTrayComponentShell.js.map +1 -1
  385. package/react/components/system/index.js.map +1 -1
  386. package/react/components/toolbar/AutoArrange.js.map +1 -1
  387. package/react/components/toolbar/DragHandle.js.map +1 -1
  388. package/react/components/toolbar/MinimizeAll.js.map +1 -1
  389. package/react/components/toolbar/MinimizeAll.spec.js.map +1 -1
  390. package/react/components/toolbar/MinimizeAll.stories.js.map +1 -1
  391. package/react/components/toolbar/NotificationControl.js.map +1 -1
  392. package/react/components/toolbar/RevealAll.js.map +1 -1
  393. package/react/components/toolbar/RevealAll.spec.js.map +1 -1
  394. package/react/components/toolbar/RevealAll.stories.js.map +1 -1
  395. package/react/components/toolbar/ToolbarIcon.js.map +1 -1
  396. package/react/components/toolbar/ToolbarSection.js.map +1 -1
  397. package/react/components/toolbar/ToolbarShell.js.map +1 -1
  398. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncher.js.map +1 -1
  399. package/react/components/toolbar/advancedAppLauncher/AdvancedAppLauncherMenu.js.map +1 -1
  400. package/react/components/toolbar/advancedAppLauncher/components/AddNewAppForm.js.map +1 -1
  401. package/react/components/toolbar/advancedAppLauncher/components/AddNewFolder.js.map +1 -1
  402. package/react/components/toolbar/advancedAppLauncher/components/AppActionsMenu.js.map +1 -1
  403. package/react/components/toolbar/advancedAppLauncher/components/AppDefinition.js.map +1 -1
  404. package/react/components/toolbar/advancedAppLauncher/components/AppTagsList.js.map +1 -1
  405. package/react/components/toolbar/advancedAppLauncher/components/Content.js.map +1 -1
  406. package/react/components/toolbar/advancedAppLauncher/components/FilterSort.js.map +1 -1
  407. package/react/components/toolbar/advancedAppLauncher/components/FoldersList.js.map +1 -1
  408. package/react/components/toolbar/advancedAppLauncher/components/LeftNavBottomLinks.js.map +1 -1
  409. package/react/components/toolbar/advancedAppLauncher/components/NoAppsFound.js.map +1 -1
  410. package/react/components/toolbar/advancedAppLauncher/components/SearchBox.js.map +1 -1
  411. package/react/components/toolbar/advancedAppLauncher/components/SortBy.js.map +1 -1
  412. package/react/components/toolbar/advancedAppLauncher/components/TagsList.js.map +1 -1
  413. package/react/components/toolbar/advancedAppLauncher/components/TagsMenu.js.map +1 -1
  414. package/react/components/toolbar/advancedAppLauncher/components/ToggleFavoriteDropdown.js.map +1 -1
  415. package/react/components/toolbar/advancedAppLauncher/modules/AppDirectory.js.map +1 -1
  416. package/react/components/toolbar/advancedAppLauncher/modules/FDC3.js.map +1 -1
  417. package/react/components/toolbar/advancedAppLauncher/stores/LauncherStore.js.map +1 -1
  418. package/react/components/toolbar/advancedAppLauncher/stores/StoreActions.js.map +1 -1
  419. package/react/components/toolbar/advancedAppLauncher/utils/sort-functions.js.map +1 -1
  420. package/react/components/toolbar/appLauncher/AppLauncherMenu.js.map +1 -1
  421. package/react/components/toolbar/appLauncher/DynamicAppLauncher.js.map +1 -1
  422. package/react/components/toolbar/appLauncher/StaticAppLauncherMenu.js.map +1 -1
  423. package/react/components/toolbar/appLauncher/appLauncher.css +30 -30
  424. package/react/components/toolbar/appLauncher/components/componentList.js.map +1 -1
  425. package/react/components/toolbar/appLauncher/stores/appLauncherStore.js.map +1 -1
  426. package/react/components/toolbar/dashbar/Dashbar.js.map +1 -1
  427. package/react/components/toolbar/dashbar/DashbarItem.js.map +1 -1
  428. package/react/components/toolbar/index.js.map +1 -1
  429. package/react/components/toolbar/workspaceManagementMenu/WorkspaceManagementMenu.js.map +1 -1
  430. package/react/components/toolbar/workspaceManagementMenu/components/Workspace.js.map +1 -1
  431. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceActions.js.map +1 -1
  432. package/react/components/toolbar/workspaceManagementMenu/components/WorkspaceList.js.map +1 -1
  433. package/react/components/toolbar/workspaceManagementMenu/stores/workspaceManagementMenuStore.js.map +1 -1
  434. package/react/components/toolbar/workspaceManagementMenu/workspaceManagementMenu.css +90 -90
  435. package/react/components/userPreferences/NotificationsPreferencesContext.js.map +1 -1
  436. package/react/components/userPreferences/UserPreferenceTypes.js.map +1 -1
  437. package/react/components/userPreferences/UserPreferences.js.map +1 -1
  438. package/react/components/userPreferences/UserPreferencesBase.js.map +1 -1
  439. package/react/components/userPreferences/UserPreferencesWrapper.js.map +1 -1
  440. package/react/components/userPreferences/components/ContentSection.js.map +1 -1
  441. package/react/components/userPreferences/components/LeftNav.js.map +1 -1
  442. package/react/components/userPreferences/components/content/DashbarEditor.js.map +1 -1
  443. package/react/components/userPreferences/components/content/DashbarEditorItem.js.map +1 -1
  444. package/react/components/userPreferences/components/content/General.js.map +1 -1
  445. package/react/components/userPreferences/components/content/Notifications.js.map +1 -1
  446. package/react/components/userPreferences/components/content/Workspaces.js.map +1 -1
  447. package/react/components/userPreferences/components/content/notificationViews/NotificationsPreferencesHome.js.map +1 -1
  448. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourceTypes.js.map +1 -1
  449. package/react/components/userPreferences/components/content/notificationViews/NotificationsSourcesPreferences.js.map +1 -1
  450. package/react/components/userPreferences/components/content/notificationViews/notificationViewsUtils.js.map +1 -1
  451. package/react/components/userPreferences/components/general/ScheduledRestart.js.map +1 -1
  452. package/react/components/userPreferences/components/workspaces/WorkspaceButton.js.map +1 -1
  453. package/react/components/userPreferences/components/workspaces/WorkspaceComponents.js.map +1 -1
  454. package/react/components/userPreferences/components/workspaces/WorkspaceItem.js.map +1 -1
  455. package/react/components/userPreferences/components/workspaces/WorkspaceItemList.js.map +1 -1
  456. package/react/components/userPreferences/index.js.map +1 -1
  457. package/react/components/userPreferences/stores/UserPreferencesStore.js.map +1 -1
  458. package/react/components/userPreferences/stories/DashbarEditor.stories.js.map +1 -1
  459. package/react/components/userPreferences/stories/DashbarEditorItem.stories.js.map +1 -1
  460. package/react/components/userPreferences/stories/General.stories.js.map +1 -1
  461. package/react/components/userPreferences/stories/Notifications.stories.js.map +1 -1
  462. package/react/components/userPreferences/stories/NotificationsSourceTypes.stories.js.map +1 -1
  463. package/react/components/userPreferences/stories/NotificationsSources.stories.js.map +1 -1
  464. package/react/components/userPreferences/stories/UserPreferences.stories.js.map +1 -1
  465. package/react/components/userPreferences/stories/WorkspaceButton.stories.js.map +1 -1
  466. package/react/components/userPreferences/stories/WorkspaceComponents.stories.js.map +1 -1
  467. package/react/components/userPreferences/stories/WorkspaceItem.stories.js.map +1 -1
  468. package/react/components/userPreferences/stories/WorkspaceItemList.stories.js.map +1 -1
  469. package/react/components/userPreferences/stories/Workspaces.stories.js.map +1 -1
  470. package/react/components/userPreferences/tests/ContentSection.spec.js.map +1 -1
  471. package/react/components/userPreferences/tests/DashbarEditor.spec.js.map +1 -1
  472. package/react/components/userPreferences/tests/DashbarEditorItem.spec.js.map +1 -1
  473. package/react/components/userPreferences/tests/General.spec.js.map +1 -1
  474. package/react/components/userPreferences/tests/LeftNav.spec.js.map +1 -1
  475. package/react/components/userPreferences/tests/NotificationSourceTypes.spec.js.map +1 -1
  476. package/react/components/userPreferences/tests/Notifications.spec.js.map +1 -1
  477. package/react/components/userPreferences/tests/NotificationsPreferencesHome.spec.js.map +1 -1
  478. package/react/components/userPreferences/tests/NotificationsSourcesPreferences.spec.js.map +1 -1
  479. package/react/components/userPreferences/tests/ScheduledRestart.spec.js.map +1 -1
  480. package/react/components/userPreferences/tests/WorkspaceButton.spec.js.map +1 -1
  481. package/react/components/userPreferences/tests/WorkspaceComponents.spec.js.map +1 -1
  482. package/react/components/userPreferences/tests/WorkspaceItem.spec.js.map +1 -1
  483. package/react/components/userPreferences/tests/WorkspaceItemList.spec.js.map +1 -1
  484. package/react/components/utils.js.map +1 -1
  485. package/react/components/windowTitleBar/WindowTitleBarShell.js.map +1 -1
  486. package/react/components/windowTitleBar/components/center/Tab.js.map +1 -1
  487. package/react/components/windowTitleBar/components/center/TabList.js.map +1 -1
  488. package/react/components/windowTitleBar/components/center/TabRegion.js.map +1 -1
  489. package/react/components/windowTitleBar/components/left/LinkerButton.js.map +1 -1
  490. package/react/components/windowTitleBar/components/left/LinkerButtonDeprecated.js.map +1 -1
  491. package/react/components/windowTitleBar/components/left/LinkerGroups.js.map +1 -1
  492. package/react/components/windowTitleBar/components/left/LinkerGroupsDeprecated.js.map +1 -1
  493. package/react/components/windowTitleBar/components/left/ShareButton.js.map +1 -1
  494. package/react/components/windowTitleBar/components/right/AlwaysOnTopButton.js.map +1 -1
  495. package/react/components/windowTitleBar/components/right/CloseButton.js.map +1 -1
  496. package/react/components/windowTitleBar/components/right/GroupingButton.js.map +1 -1
  497. package/react/components/windowTitleBar/components/right/MaximizeButton.js.map +1 -1
  498. package/react/components/windowTitleBar/components/right/MinimizeButton.js.map +1 -1
  499. package/react/components/windowTitleBar/components/windowTitle.js.map +1 -1
  500. package/react/components/windowTitleBar/index.js.map +1 -1
  501. package/react/components/windowTitleBar/stores/windowTitleBarStore.js.map +1 -1
  502. package/react/components/windowTitleBar/stores/windowTitleBarStoreDefaults.js.map +1 -1
  503. package/react/components/windowTitleBar/windowTitleBarContext.js.map +1 -1
  504. package/react/components/yesNoDialog/Timer.spec.js.map +1 -1
  505. package/react/components/yesNoDialog/Timer.stories.js.map +1 -1
  506. package/react/components/yesNoDialog/YesNoDialog.css +3 -3
  507. package/react/components/yesNoDialog/YesNoDialog.js.map +1 -1
  508. package/react/components/yesNoDialog/YesNoDialog.spec.js.map +1 -1
  509. package/react/components/yesNoDialog/YesNoDialog.stories.js.map +1 -1
  510. package/react/components/yesNoDialog/index.js.map +1 -1
  511. package/react/components/yesNoDialog/timer.js.map +1 -1
  512. package/react/enzymeSetup.js.map +1 -1
  513. package/react/hooks/index.js.map +1 -1
  514. package/react/hooks/useAuth.js.map +1 -1
  515. package/react/hooks/useDeepEffect.js.map +1 -1
  516. package/react/hooks/useFavorites.js.map +1 -1
  517. package/react/hooks/useFavoritesShell.js.map +1 -1
  518. package/react/hooks/useHotkey.js.map +1 -1
  519. package/react/hooks/useLinker.js.map +1 -1
  520. package/react/hooks/useMenu.js.map +1 -1
  521. package/react/hooks/useNotifications.js.map +1 -1
  522. package/react/hooks/useOutsideClickDetector.js.map +1 -1
  523. package/react/hooks/usePubSub.js.map +1 -1
  524. package/react/hooks/useSearch.js.map +1 -1
  525. package/react/hooks/useToolbar.js.map +1 -1
  526. package/react/hooks/useWorkspace.js.map +1 -1
  527. package/react/reducers/favoriteReducer.js.map +1 -1
  528. package/react/reducers/linkerReducer.js.map +1 -1
  529. package/react/reducers/menuReducer.js.map +1 -1
  530. package/react/reducers/rootReducer.js.map +1 -1
  531. package/react/reducers/searchReducer.js.map +1 -1
  532. package/react/reducers/smartDesktopDesignerReducer.js.map +1 -1
  533. package/react/reducers/toolbarReducer.js.map +1 -1
  534. package/react/reducers/workspaceReducer.js.map +1 -1
  535. package/react/store.js.map +1 -1
  536. package/react/types/advancedAppLauncherTypes.js.map +1 -1
  537. package/react/types/dashbarTypes.js.map +1 -1
  538. package/react/types/favoriteTypes.js.map +1 -1
  539. package/react/types/fdc3.js.map +1 -1
  540. package/react/types/hotkeyTypes.js.map +1 -1
  541. package/react/types/iconTypes.js.map +1 -1
  542. package/react/types/linkerTypes.js.map +1 -1
  543. package/react/types/searchTypes.js.map +1 -1
  544. package/react/types/smartDesktopDesignerTypes.js.map +1 -1
  545. package/react/types/windowTitleBar.js.map +1 -1
  546. package/react/types/workspaceTypes.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Home.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Home.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAmBlC,MAAM,IAAI,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,CAClC,6BAAK,SAAS,EAAC,MAAM;IACpB,oBAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI;IACnE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACzB,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpE,OAAO,oBAAC,QAAQ,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI,CAAC;QAClG,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI,CAC9F,CACN,CAAC;AAEF,eAAe,IAAI,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\n/**\r\n * This component is the name of a component and a pin that will pin that component to all toolbars.\r\n *\r\n */\r\nimport React from \"react\";\r\nimport AppList from \"./AppList\";\r\nimport Hero from \"./Hero\";\r\nimport Carousel from \"./Carousel\";\r\nimport { AppMetadata } from \"../../../types/fdc3\";\r\n\r\ntype Images = {\r\n\turl: string;\r\n};\r\n\r\ntype HomeProps = {\r\n\ttags: string[];\r\n\tcards: (AppMetadata & { tags: string[]; images: Images[] })[];\r\n\tviewAppShowcase: (id: AppMetadata[\"appId\"]) => void;\r\n};\r\n\r\n/**\r\n * Home page. Contains carousels and a hero component\r\n * @param {object} props Component props\r\n * @param {array} props.cards An Array of app information from FDC\r\n * @param {func} props.viewAppShowcase Opens the AppShowcase page for a selected app\r\n */\r\nconst Home = (props: HomeProps) => (\r\n\t<div className=\"home\">\r\n\t\t<Hero cards={props.cards} viewAppShowcase={props.viewAppShowcase} />\r\n\t\t{props.tags.length > 0 &&\r\n\t\t\tprops.tags.map((tag, i) => {\r\n\t\t\t\tconst tagLabel = tag;\r\n\t\t\t\tconst cards = props.cards.filter((card) => card.tags.includes(tag));\r\n\r\n\t\t\t\treturn <Carousel key={i} tag={tagLabel} cards={cards} viewAppShowcase={props.viewAppShowcase} />;\r\n\t\t\t})}\r\n\t\t{props.tags.length === 0 && <AppList cards={props.cards} viewAppShowcase={props.viewAppShowcase} />}\r\n\t</div>\r\n);\r\n\r\nexport default Home;\r\n"]}
1
+ {"version":3,"file":"Home.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Home.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAmBlC,MAAM,IAAI,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,CAClC,6BAAK,SAAS,EAAC,MAAM;IACpB,oBAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI;IACnE,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACzB,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpE,OAAO,oBAAC,QAAQ,IAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI,CAAC;QAClG,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,GAAI,CAC9F,CACN,CAAC;AAEF,eAAe,IAAI,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\n/**\n * This component is the name of a component and a pin that will pin that component to all toolbars.\n *\n */\nimport React from \"react\";\nimport AppList from \"./AppList\";\nimport Hero from \"./Hero\";\nimport Carousel from \"./Carousel\";\nimport { AppMetadata } from \"../../../types/fdc3\";\n\ntype Images = {\n\turl: string;\n};\n\ntype HomeProps = {\n\ttags: string[];\n\tcards: (AppMetadata & { tags: string[]; images: Images[] })[];\n\tviewAppShowcase: (id: AppMetadata[\"appId\"]) => void;\n};\n\n/**\n * Home page. Contains carousels and a hero component\n * @param {object} props Component props\n * @param {array} props.cards An Array of app information from FDC\n * @param {func} props.viewAppShowcase Opens the AppShowcase page for a selected app\n */\nconst Home = (props: HomeProps) => (\n\t<div className=\"home\">\n\t\t<Hero cards={props.cards} viewAppShowcase={props.viewAppShowcase} />\n\t\t{props.tags.length > 0 &&\n\t\t\tprops.tags.map((tag, i) => {\n\t\t\t\tconst tagLabel = tag;\n\t\t\t\tconst cards = props.cards.filter((card) => card.tags.includes(tag));\n\n\t\t\t\treturn <Carousel key={i} tag={tagLabel} cards={cards} viewAppShowcase={props.viewAppShowcase} />;\n\t\t\t})}\n\t\t{props.tags.length === 0 && <AppList cards={props.cards} viewAppShowcase={props.viewAppShowcase} />}\n\t</div>\n);\n\nexport default Home;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/SearchBar.tsx"],"names":[],"mappings":"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","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React, { Component } from \"react\";\r\n\r\n// data\r\nimport storeActions from \"../stores/storeActions\";\r\n\r\n// components\r\nimport Toast from \"./Toast\";\r\nimport Tag from \"../../shared/Tag\";\r\nimport TagsMenu from \"../../shared/TagsMenu\";\r\n\r\ninterface IProps {\r\n\tbackButton?: Boolean;\r\n\ttags: string[];\r\n\tactiveTags: string[];\r\n\tgoHome: () => void;\r\n\tinstallationActionTaken: string;\r\n\tsearch: (searchTerms: string) => void;\r\n}\r\n\r\ninterface IState {\r\n\ttagSelectorOpen: Boolean;\r\n\tsearchText: string;\r\n}\r\n\r\n/**\r\n * The search bar, tags filter menu, and any active tags being filtered on\r\n * @param {object} props Component props\r\n * @param {boolean} [props.backButton] If true, display a back button for going back to the homepage\r\n * @param {array} props.tags An array of all available tags for the tags menu\r\n * @param {array} props.activeTags An array of active tags acting as search criteria\r\n * @param {func} props.goHome Function to handle sending the app back to the homepage\r\n * @param {string} props.installationActionTaken Name of action that handles display/hiding the success/failure message from adding/removing an app\r\n */\r\nclass SearchBar extends Component<IProps, IState> {\r\n\ttextInput: React.RefObject<HTMLInputElement> | undefined;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.textInput = React.createRef();\r\n\t\tthis.state = {\r\n\t\t\ttagSelectorOpen: false,\r\n\t\t\tsearchText: \"\",\r\n\t\t};\r\n\t\tthis.bindCorrectContext();\r\n\t}\r\n\r\n\tbindCorrectContext() {\r\n\t\tthis.goHome = this.goHome.bind(this);\r\n\t\tthis.changeSearch = this.changeSearch.bind(this);\r\n\t\tthis.toggleTagSelector = this.toggleTagSelector.bind(this);\r\n\t\tthis.selectTag = this.selectTag.bind(this);\r\n\t\tthis.removeTag = this.removeTag.bind(this);\r\n\t\tthis.focus = this.focus.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Handles changing the component state for handling local input value. Also calls parent function to effect the store\r\n\t * @param {object} e React Synthetic event\r\n\t */\r\n\tchangeSearch(e: React.ChangeEvent<HTMLInputElement>) {\r\n\t\tconst { value: searchTerms } = e.target;\r\n\t\tthis.setState({ searchText: searchTerms });\r\n\t\tthis.props.search(searchTerms);\r\n\t}\r\n\r\n\t/**\r\n\t * Opens/hides the tag selection menu\r\n\t */\r\n\ttoggleTagSelector() {\r\n\t\tthis.setState({\r\n\t\t\ttagSelectorOpen: !this.state.tagSelectorOpen,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Calls parent function to add a tag to filters\r\n\t * @param {string} tag The name of the tag\r\n\t */\r\n\tselectTag(tag: string) {\r\n\t\tlet tags: string[] = storeActions.getActiveTags();\r\n\r\n\t\tthis.setState(\r\n\t\t\t{\r\n\t\t\t\ttagSelectorOpen: false,\r\n\t\t\t},\r\n\t\t\t() => {\r\n\t\t\t\tif (tags.includes(tag)) {\r\n\t\t\t\t\tstoreActions.removeTag(tag);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstoreActions.addTag(tag);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * Calls parent function to remove a tag from filters\r\n\t * @param {string} tag The name of the tag\r\n\t */\r\n\tremoveTag(tag: string) {\r\n\t\tstoreActions.removeTag(tag);\r\n\t}\r\n\r\n\t/**\r\n\t * Clears search because 'back' button was clicked\r\n\t */\r\n\tgoHome() {\r\n\t\tthis.setState({ searchText: \"\" });\r\n\t\tthis.props.goHome();\r\n\t}\r\n\r\n\tfocus() {\r\n\t\tthis.textInput?.current?.focus();\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst activeTags: string[] = storeActions.getActiveTags();\r\n\r\n\t\treturn (\r\n\t\t\t<div className=\"search-main\">\r\n\t\t\t\t<Toast installationActionTaken={this.props.installationActionTaken} />\r\n\t\t\t\t<div className=\"search-action-items\">\r\n\t\t\t\t\t{this.props.backButton ? (\r\n\t\t\t\t\t\t<div className=\"search-back\" onClick={this.goHome}>\r\n\t\t\t\t\t\t\t<i className=\"ff-arrow-back\"></i>\r\n\t\t\t\t\t\t\t<span className=\"button-label\">Back</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t\t<div className=\"search-input-container\">\r\n\t\t\t\t\t\t<i className=\"ff-search\"></i>\r\n\t\t\t\t\t\t<input\r\n\t\t\t\t\t\t\tclassName=\"search-input\"\r\n\t\t\t\t\t\t\trequired\r\n\t\t\t\t\t\t\tref={this.textInput}\r\n\t\t\t\t\t\t\tplaceholder=\"Search\"\r\n\t\t\t\t\t\t\ttype=\"text\"\r\n\t\t\t\t\t\t\tvalue={this.state.searchText}\r\n\t\t\t\t\t\t\tonChange={this.changeSearch}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t<button className=\"close-icon\" onClick={this.goHome} type=\"reset\"></button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<TagsMenu\r\n\t\t\t\t\t\tactive={activeTags}\r\n\t\t\t\t\t\tlist={this.props.tags}\r\n\t\t\t\t\t\tonItemClick={this.selectTag}\r\n\t\t\t\t\t\tlabel={\"Tags\"}\r\n\t\t\t\t\t\talign=\"right\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div className=\"label-bar\">\r\n\t\t\t\t\t{activeTags.map((tag) => (\r\n\t\t\t\t\t\t<Tag key={tag} name={tag} removeTag={this.removeTag} />\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\r\nexport default SearchBar;\r\n"]}
1
+ {"version":3,"file":"SearchBar.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/SearchBar.tsx"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React, { Component } from \"react\";\n\n// data\nimport storeActions from \"../stores/storeActions\";\n\n// components\nimport Toast from \"./Toast\";\nimport Tag from \"../../shared/Tag\";\nimport TagsMenu from \"../../shared/TagsMenu\";\n\ninterface IProps {\n\tbackButton?: Boolean;\n\ttags: string[];\n\tactiveTags: string[];\n\tgoHome: () => void;\n\tinstallationActionTaken: string;\n\tsearch: (searchTerms: string) => void;\n}\n\ninterface IState {\n\ttagSelectorOpen: Boolean;\n\tsearchText: string;\n}\n\n/**\n * The search bar, tags filter menu, and any active tags being filtered on\n * @param {object} props Component props\n * @param {boolean} [props.backButton] If true, display a back button for going back to the homepage\n * @param {array} props.tags An array of all available tags for the tags menu\n * @param {array} props.activeTags An array of active tags acting as search criteria\n * @param {func} props.goHome Function to handle sending the app back to the homepage\n * @param {string} props.installationActionTaken Name of action that handles display/hiding the success/failure message from adding/removing an app\n */\nclass SearchBar extends Component<IProps, IState> {\n\ttextInput: React.RefObject<HTMLInputElement> | undefined;\n\n\tconstructor(props: IProps) {\n\t\tsuper(props);\n\t\tthis.textInput = React.createRef();\n\t\tthis.state = {\n\t\t\ttagSelectorOpen: false,\n\t\t\tsearchText: \"\",\n\t\t};\n\t\tthis.bindCorrectContext();\n\t}\n\n\tbindCorrectContext() {\n\t\tthis.goHome = this.goHome.bind(this);\n\t\tthis.changeSearch = this.changeSearch.bind(this);\n\t\tthis.toggleTagSelector = this.toggleTagSelector.bind(this);\n\t\tthis.selectTag = this.selectTag.bind(this);\n\t\tthis.removeTag = this.removeTag.bind(this);\n\t\tthis.focus = this.focus.bind(this);\n\t}\n\n\t/**\n\t * Handles changing the component state for handling local input value. Also calls parent function to effect the store\n\t * @param {object} e React Synthetic event\n\t */\n\tchangeSearch(e: React.ChangeEvent<HTMLInputElement>) {\n\t\tconst { value: searchTerms } = e.target;\n\t\tthis.setState({ searchText: searchTerms });\n\t\tthis.props.search(searchTerms);\n\t}\n\n\t/**\n\t * Opens/hides the tag selection menu\n\t */\n\ttoggleTagSelector() {\n\t\tthis.setState({\n\t\t\ttagSelectorOpen: !this.state.tagSelectorOpen,\n\t\t});\n\t}\n\n\t/**\n\t * Calls parent function to add a tag to filters\n\t * @param {string} tag The name of the tag\n\t */\n\tselectTag(tag: string) {\n\t\tlet tags: string[] = storeActions.getActiveTags();\n\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\ttagSelectorOpen: false,\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tif (tags.includes(tag)) {\n\t\t\t\t\tstoreActions.removeTag(tag);\n\t\t\t\t} else {\n\t\t\t\t\tstoreActions.addTag(tag);\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * Calls parent function to remove a tag from filters\n\t * @param {string} tag The name of the tag\n\t */\n\tremoveTag(tag: string) {\n\t\tstoreActions.removeTag(tag);\n\t}\n\n\t/**\n\t * Clears search because 'back' button was clicked\n\t */\n\tgoHome() {\n\t\tthis.setState({ searchText: \"\" });\n\t\tthis.props.goHome();\n\t}\n\n\tfocus() {\n\t\tthis.textInput?.current?.focus();\n\t}\n\n\trender() {\n\t\tconst activeTags: string[] = storeActions.getActiveTags();\n\n\t\treturn (\n\t\t\t<div className=\"search-main\">\n\t\t\t\t<Toast installationActionTaken={this.props.installationActionTaken} />\n\t\t\t\t<div className=\"search-action-items\">\n\t\t\t\t\t{this.props.backButton ? (\n\t\t\t\t\t\t<div className=\"search-back\" onClick={this.goHome}>\n\t\t\t\t\t\t\t<i className=\"ff-arrow-back\"></i>\n\t\t\t\t\t\t\t<span className=\"button-label\">Back</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : null}\n\t\t\t\t\t<div className=\"search-input-container\">\n\t\t\t\t\t\t<i className=\"ff-search\"></i>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tclassName=\"search-input\"\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\tref={this.textInput}\n\t\t\t\t\t\t\tplaceholder=\"Search\"\n\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\tvalue={this.state.searchText}\n\t\t\t\t\t\t\tonChange={this.changeSearch}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<button className=\"close-icon\" onClick={this.goHome} type=\"reset\"></button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<TagsMenu\n\t\t\t\t\t\tactive={activeTags}\n\t\t\t\t\t\tlist={this.props.tags}\n\t\t\t\t\t\tonItemClick={this.selectTag}\n\t\t\t\t\t\tlabel={\"Tags\"}\n\t\t\t\t\t\talign=\"right\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"label-bar\">\n\t\t\t\t\t{activeTags.map((tag) => (\n\t\t\t\t\t\t<Tag key={tag} name={tag} removeTag={this.removeTag} />\n\t\t\t\t\t))}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nexport default SearchBar;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppDescription.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppDescription.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,cAAc,GAAG,CAAC,EAAE,WAAW,EAAoB,EAAE,EAAE,CAAC,CAC7D,6BAAK,SAAS,EAAC,uBAAuB;IACrC,8BAAM,SAAS,EAAC,gBAAgB,kBAAmB;IACnD,6BAAK,SAAS,EAAC,qBAAqB;QACnC,iCAAM,WAAW,CAAO,CACnB,CACD,CACN,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\ntype DescriptionProps = {\r\n\tdescription: string;\r\n};\r\n/**\r\n * AppShowcase description section\r\n * @param {object} props Component props\r\n * @param {string} props.description The app description\r\n */\r\nconst AppDescription = ({ description }: DescriptionProps) => (\r\n\t<div className=\"app-notes description\">\r\n\t\t<span className=\"showcase-label\">Description</span>\r\n\t\t<div className=\"description-content\">\r\n\t\t\t<div>{description}</div>\r\n\t\t</div>\r\n\t</div>\r\n);\r\n\r\nexport default AppDescription;\r\n"]}
1
+ {"version":3,"file":"AppDescription.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppDescription.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,cAAc,GAAG,CAAC,EAAE,WAAW,EAAoB,EAAE,EAAE,CAAC,CAC7D,6BAAK,SAAS,EAAC,uBAAuB;IACrC,8BAAM,SAAS,EAAC,gBAAgB,kBAAmB;IACnD,6BAAK,SAAS,EAAC,qBAAqB;QACnC,iCAAM,WAAW,CAAO,CACnB,CACD,CACN,CAAC;AAEF,eAAe,cAAc,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\ntype DescriptionProps = {\n\tdescription: string;\n};\n/**\n * AppShowcase description section\n * @param {object} props Component props\n * @param {string} props.description The app description\n */\nconst AppDescription = ({ description }: DescriptionProps) => (\n\t<div className=\"app-notes description\">\n\t\t<span className=\"showcase-label\">Description</span>\n\t\t<div className=\"description-content\">\n\t\t\t<div>{description}</div>\n\t\t</div>\n\t</div>\n);\n\nexport default AppDescription;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppDevNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppDevNotes.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IAK/C,MAAM,QAAQ,GAAG,GAAG,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,OAAO,CACN,6BAAK,SAAS,EAAC,qBAAqB;QACnC,8BAAM,SAAS,EAAC,gBAAgB,gBAAiB;QACjD,6BAAK,SAAS,EAAC,mBAAmB;YACjC;gBACE,KAAK,CAAC,SAAS;;gBAAI,GAAG;gBACvB,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,QAAQ,IAC3B,KAAK,CAAC,KAAK,CACT,CACC,CACD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\ntype AppDevNotesProps = {\r\n\tpublisher: string;\r\n\temail: string;\r\n};\r\n\r\n/**\r\n * AppShowcase dev notes section. Contains developer information\r\n * @param {object} props Component props\r\n * @param {string} props.publisher The name of this app's publisher\r\n * @param {func} props.openSite Parent function to launch the developer's site in Finsemble window\r\n * @param {string} props.email The developer's contact email\r\n */\r\nconst AppDevNotes = (props: AppDevNotesProps) => {\r\n\t/**\r\n\t * Opens the publisher's website.\r\n\t */\r\n\t// NOTE: There is currently no prop in the FDC spec that has a dev site.\r\n\tconst openSite = () => {\r\n\t\tconsole.log(\"open the developers site\");\r\n\t};\r\n\treturn (\r\n\t\t<div className=\"app-notes developer\">\r\n\t\t\t<span className=\"showcase-label\">Developer</span>\r\n\t\t\t<div className=\"developer-content\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\t{props.publisher} -{\" \"}\r\n\t\t\t\t\t<a href=\"#\" onClick={openSite}>\r\n\t\t\t\t\t\t{props.email}\r\n\t\t\t\t\t</a>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default AppDevNotes;\r\n"]}
1
+ {"version":3,"file":"AppDevNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppDevNotes.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IAK/C,MAAM,QAAQ,GAAG,GAAG,EAAE;QACrB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,OAAO,CACN,6BAAK,SAAS,EAAC,qBAAqB;QACnC,8BAAM,SAAS,EAAC,gBAAgB,gBAAiB;QACjD,6BAAK,SAAS,EAAC,mBAAmB;YACjC;gBACE,KAAK,CAAC,SAAS;;gBAAI,GAAG;gBACvB,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,QAAQ,IAC3B,KAAK,CAAC,KAAK,CACT,CACC,CACD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\ntype AppDevNotesProps = {\n\tpublisher: string;\n\temail: string;\n};\n\n/**\n * AppShowcase dev notes section. Contains developer information\n * @param {object} props Component props\n * @param {string} props.publisher The name of this app's publisher\n * @param {func} props.openSite Parent function to launch the developer's site in Finsemble window\n * @param {string} props.email The developer's contact email\n */\nconst AppDevNotes = (props: AppDevNotesProps) => {\n\t/**\n\t * Opens the publisher's website.\n\t */\n\t// NOTE: There is currently no prop in the FDC spec that has a dev site.\n\tconst openSite = () => {\n\t\tconsole.log(\"open the developers site\");\n\t};\n\treturn (\n\t\t<div className=\"app-notes developer\">\n\t\t\t<span className=\"showcase-label\">Developer</span>\n\t\t\t<div className=\"developer-content\">\n\t\t\t\t<div>\n\t\t\t\t\t{props.publisher} -{\" \"}\n\t\t\t\t\t<a href=\"#\" onClick={openSite}>\n\t\t\t\t\t\t{props.email}\n\t\t\t\t\t</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default AppDevNotes;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppShowcase.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppShowcase.jsx"],"names":[],"mappings":"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","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React, { Component } from \"react\";\r\n\r\n// data\r\nimport storeActions from \"../../stores/storeActions\";\r\n\r\n// components\r\nimport Modal from \"./Modal\";\r\nimport Header from \"./Header\";\r\nimport ImageCarousel from \"./ImageCarousel\";\r\nimport AppDescription from \"./AppDescription\";\r\nimport ReleaseNotes from \"./ReleaseNotes\";\r\nimport AppDevNotes from \"./AppDevNotes\";\r\nimport VersionNotes from \"./VersionNotes\";\r\nimport SupportNotes from \"./SupportNotes\";\r\n\r\nconst imagesInCarousel = 4;\r\nclass AppShowcase extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tname: this.props.app.title || this.props.app.name,\r\n\t\t\ticonUrl:\r\n\t\t\t\tthis.props.app.icons !== undefined && this.props.app.icons[0].url !== undefined\r\n\t\t\t\t\t? this.props.app.icons[0].url\r\n\t\t\t\t\t: \"../assets/placeholder.svg\",\r\n\t\t\tentitled: this.props.app.entitled ? this.props.app.entitled : false,\r\n\t\t\timageIndex: 0,\r\n\t\t\timageModalOpen: false,\r\n\t\t\tmodalImage: null,\r\n\t\t};\r\n\t\tthis.bindCorrectContext();\r\n\t}\r\n\r\n\tbindCorrectContext() {\r\n\t\tthis.nextImage = this.nextImage.bind(this);\r\n\t\tthis.previousImage = this.previousImage.bind(this);\r\n\t\tthis.openModal = this.openModal.bind(this);\r\n\t\tthis.closeModal = this.closeModal.bind(this);\r\n\t\tthis.addTag = this.addTag.bind(this);\r\n\t}\r\n\r\n\t/**\r\n\t * Pages right through the app's images.\r\n\t */\r\n\tnextImage() {\r\n\t\tlet imageIndex = this.state.imageIndex;\r\n\r\n\t\t// We want to increase the image index for the carousel, but if this paging action takes us past the length of the image array, we need to reset\r\n\t\tif (imageIndex + 1 >= this.props.app.images.length) {\r\n\t\t\timageIndex = 0;\r\n\t\t} else {\r\n\t\t\timageIndex++;\r\n\t\t}\r\n\r\n\t\tthis.setState({\r\n\t\t\timageIndex,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Pages left through the app's images.\r\n\t */\r\n\tpreviousImage() {\r\n\t\tlet imageIndex = this.state.imageIndex;\r\n\r\n\t\t// We want to decrease the image index for the carousel, but if this paging action takes us under 0, we need to reset\r\n\t\tif (imageIndex - 1 < 0) {\r\n\t\t\timageIndex = this.props.app.images.length - 1;\r\n\t\t} else {\r\n\t\t\timageIndex--;\r\n\t\t}\r\n\r\n\t\tthis.setState({\r\n\t\t\timageIndex,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Opens the image modal (light box). Sets the image to display\r\n\t * @param {string} url The image url to display in the light box\r\n\t */\r\n\topenModal(url) {\r\n\t\tthis.setState({\r\n\t\t\tmodalImage: url,\r\n\t\t\timageModalOpen: true,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Closes the image modal\r\n\t */\r\n\tcloseModal() {\r\n\t\tthis.setState({\r\n\t\t\timageModalOpen: false,\r\n\t\t\tmodalImage: null,\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Calls the parents function to add a tag to list of filters\r\n\t * @param {string} name The tag name\r\n\t */\r\n\taddTag(name) {\r\n\t\tstoreActions.addTag(name);\r\n\t}\r\n\r\n\trender() {\r\n\t\tlet { name, iconUrl, imageIndex } = this.state;\r\n\r\n\t\tlet images = [];\r\n\t\tfor (let i = 0; i < (this.props.app.images ? Math.min(imagesInCarousel, this.props.app.images.length) : 0); i++) {\r\n\t\t\tlet imageUrl =\r\n\t\t\t\tthis.props.app.images[imageIndex].url !== undefined\r\n\t\t\t\t\t? this.props.app.images[imageIndex].url\r\n\t\t\t\t\t: \"../assets/placeholder.svg\";\r\n\t\t\timages.push(imageUrl);\r\n\t\t\tif (++imageIndex >= this.props.app.images.length) {\r\n\t\t\t\timageIndex = 0;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t<div className=\"app-showcase\">\r\n\t\t\t\t<Modal open={this.state.imageModalOpen} closeModal={this.closeModal}>\r\n\t\t\t\t\t<img src={this.state.modalImage} className=\"modal-image\" />\r\n\t\t\t\t</Modal>\r\n\t\t\t\t{!this.state.entitled && (\r\n\t\t\t\t\t<div className=\"app-warning\">\r\n\t\t\t\t\t\t<span className=\"app-warning-wrapper\">\r\n\t\t\t\t\t\t\t<span className=\"app-warning-text\">\r\n\t\t\t\t\t\t\t\tYou don&apos;t have permission to add this App. <a href=\"#\">Contact your administrator</a> to request\r\n\t\t\t\t\t\t\t\tpermission.\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t)}\r\n\t\t\t\t<Header iconUrl={iconUrl} entitled={this.state.entitled} {...this.props.app} />\r\n\r\n\t\t\t\t<ImageCarousel\r\n\t\t\t\t\tnextImage={this.nextImage}\r\n\t\t\t\t\tpreviousImage={this.previousImage}\r\n\t\t\t\t\topenModal={this.openModal}\r\n\t\t\t\t\timages={images}\r\n\t\t\t\t/>\r\n\r\n\t\t\t\t<AppDescription description={this.props.app.description} />\r\n\r\n\t\t\t\t<ReleaseNotes releaseNotes={this.props.app.releaseNotes} />\r\n\r\n\t\t\t\t<AppDevNotes email={this.props.app.contactEmail} publisher={this.props.app.publisher} />\r\n\r\n\t\t\t\t<VersionNotes version={this.props.app.version} />\r\n\r\n\t\t\t\t<SupportNotes email={this.props.app.supportEmail} tags={this.props.app.tags} />\r\n\t\t\t</div>\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default AppShowcase;\r\n"]}
1
+ {"version":3,"file":"AppShowcase.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/AppShowcase.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAGrD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,WAAY,SAAQ,SAAS;IAClC,YAAY,KAAK;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACZ,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI;YACjD,OAAO,EACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS;gBAC9E,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG;gBAC7B,CAAC,CAAC,2BAA2B;YAC/B,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;YACnE,UAAU,EAAE,CAAC;YACb,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,IAAI;SAChB,CAAC;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC3B,CAAC;IAED,kBAAkB;QACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAKD,SAAS;QACR,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAGvC,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;YACnD,UAAU,GAAG,CAAC,CAAC;SACf;aAAM;YACN,UAAU,EAAE,CAAC;SACb;QAED,IAAI,CAAC,QAAQ,CAAC;YACb,UAAU;SACV,CAAC,CAAC;IACJ,CAAC;IAKD,aAAa;QACZ,IAAI,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAGvC,IAAI,UAAU,GAAG,CAAC,GAAG,CAAC,EAAE;YACvB,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;SAC9C;aAAM;YACN,UAAU,EAAE,CAAC;SACb;QAED,IAAI,CAAC,QAAQ,CAAC;YACb,UAAU;SACV,CAAC,CAAC;IACJ,CAAC;IAMD,SAAS,CAAC,GAAG;QACZ,IAAI,CAAC,QAAQ,CAAC;YACb,UAAU,EAAE,GAAG;YACf,cAAc,EAAE,IAAI;SACpB,CAAC,CAAC;IACJ,CAAC;IAKD,UAAU;QACT,IAAI,CAAC,QAAQ,CAAC;YACb,cAAc,EAAE,KAAK;YACrB,UAAU,EAAE,IAAI;SAChB,CAAC,CAAC;IACJ,CAAC;IAMD,MAAM,CAAC,IAAI;QACV,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM;QACL,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAE/C,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChH,IAAI,QAAQ,GACX,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,KAAK,SAAS;gBAClD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG;gBACvC,CAAC,CAAC,2BAA2B,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtB,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;gBACjD,UAAU,GAAG,CAAC,CAAC;aACf;SACD;QACD,OAAO,CACN,6BAAK,SAAS,EAAC,cAAc;YAC5B,oBAAC,KAAK,IAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU;gBAClE,6BAAK,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,EAAC,aAAa,GAAG,CACpD;YACP,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CACxB,6BAAK,SAAS,EAAC,aAAa;gBAC3B,8BAAM,SAAS,EAAC,qBAAqB;oBACpC,8BAAM,SAAS,EAAC,kBAAkB;;wBACe,2BAAG,IAAI,EAAC,GAAG,iCAA+B;kDAEpF,CACD,CACF,CACN;YACD,oBAAC,MAAM,kBAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAI;YAE/E,oBAAC,aAAa,IACb,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,SAAS,EAAE,IAAI,CAAC,SAAS,EACzB,MAAM,EAAE,MAAM,GACb;YAEF,oBAAC,cAAc,IAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,GAAI;YAE3D,oBAAC,YAAY,IAAC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,GAAI;YAE3D,oBAAC,WAAW,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,GAAI;YAExF,oBAAC,YAAY,IAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAI;YAEjD,oBAAC,YAAY,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAI,CAC1E,CACN,CAAC;IACH,CAAC;CACD;AAED,eAAe,WAAW,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React, { Component } from \"react\";\n\n// data\nimport storeActions from \"../../stores/storeActions\";\n\n// components\nimport Modal from \"./Modal\";\nimport Header from \"./Header\";\nimport ImageCarousel from \"./ImageCarousel\";\nimport AppDescription from \"./AppDescription\";\nimport ReleaseNotes from \"./ReleaseNotes\";\nimport AppDevNotes from \"./AppDevNotes\";\nimport VersionNotes from \"./VersionNotes\";\nimport SupportNotes from \"./SupportNotes\";\n\nconst imagesInCarousel = 4;\nclass AppShowcase extends Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tname: this.props.app.title || this.props.app.name,\n\t\t\ticonUrl:\n\t\t\t\tthis.props.app.icons !== undefined && this.props.app.icons[0].url !== undefined\n\t\t\t\t\t? this.props.app.icons[0].url\n\t\t\t\t\t: \"../assets/placeholder.svg\",\n\t\t\tentitled: this.props.app.entitled ? this.props.app.entitled : false,\n\t\t\timageIndex: 0,\n\t\t\timageModalOpen: false,\n\t\t\tmodalImage: null,\n\t\t};\n\t\tthis.bindCorrectContext();\n\t}\n\n\tbindCorrectContext() {\n\t\tthis.nextImage = this.nextImage.bind(this);\n\t\tthis.previousImage = this.previousImage.bind(this);\n\t\tthis.openModal = this.openModal.bind(this);\n\t\tthis.closeModal = this.closeModal.bind(this);\n\t\tthis.addTag = this.addTag.bind(this);\n\t}\n\n\t/**\n\t * Pages right through the app's images.\n\t */\n\tnextImage() {\n\t\tlet imageIndex = this.state.imageIndex;\n\n\t\t// We want to increase the image index for the carousel, but if this paging action takes us past the length of the image array, we need to reset\n\t\tif (imageIndex + 1 >= this.props.app.images.length) {\n\t\t\timageIndex = 0;\n\t\t} else {\n\t\t\timageIndex++;\n\t\t}\n\n\t\tthis.setState({\n\t\t\timageIndex,\n\t\t});\n\t}\n\n\t/**\n\t * Pages left through the app's images.\n\t */\n\tpreviousImage() {\n\t\tlet imageIndex = this.state.imageIndex;\n\n\t\t// We want to decrease the image index for the carousel, but if this paging action takes us under 0, we need to reset\n\t\tif (imageIndex - 1 < 0) {\n\t\t\timageIndex = this.props.app.images.length - 1;\n\t\t} else {\n\t\t\timageIndex--;\n\t\t}\n\n\t\tthis.setState({\n\t\t\timageIndex,\n\t\t});\n\t}\n\n\t/**\n\t * Opens the image modal (light box). Sets the image to display\n\t * @param {string} url The image url to display in the light box\n\t */\n\topenModal(url) {\n\t\tthis.setState({\n\t\t\tmodalImage: url,\n\t\t\timageModalOpen: true,\n\t\t});\n\t}\n\n\t/**\n\t * Closes the image modal\n\t */\n\tcloseModal() {\n\t\tthis.setState({\n\t\t\timageModalOpen: false,\n\t\t\tmodalImage: null,\n\t\t});\n\t}\n\n\t/**\n\t * Calls the parents function to add a tag to list of filters\n\t * @param {string} name The tag name\n\t */\n\taddTag(name) {\n\t\tstoreActions.addTag(name);\n\t}\n\n\trender() {\n\t\tlet { name, iconUrl, imageIndex } = this.state;\n\n\t\tlet images = [];\n\t\tfor (let i = 0; i < (this.props.app.images ? Math.min(imagesInCarousel, this.props.app.images.length) : 0); i++) {\n\t\t\tlet imageUrl =\n\t\t\t\tthis.props.app.images[imageIndex].url !== undefined\n\t\t\t\t\t? this.props.app.images[imageIndex].url\n\t\t\t\t\t: \"../assets/placeholder.svg\";\n\t\t\timages.push(imageUrl);\n\t\t\tif (++imageIndex >= this.props.app.images.length) {\n\t\t\t\timageIndex = 0;\n\t\t\t}\n\t\t}\n\t\treturn (\n\t\t\t<div className=\"app-showcase\">\n\t\t\t\t<Modal open={this.state.imageModalOpen} closeModal={this.closeModal}>\n\t\t\t\t\t<img src={this.state.modalImage} className=\"modal-image\" />\n\t\t\t\t</Modal>\n\t\t\t\t{!this.state.entitled && (\n\t\t\t\t\t<div className=\"app-warning\">\n\t\t\t\t\t\t<span className=\"app-warning-wrapper\">\n\t\t\t\t\t\t\t<span className=\"app-warning-text\">\n\t\t\t\t\t\t\t\tYou don&apos;t have permission to add this App. <a href=\"#\">Contact your administrator</a> to request\n\t\t\t\t\t\t\t\tpermission.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t<Header iconUrl={iconUrl} entitled={this.state.entitled} {...this.props.app} />\n\n\t\t\t\t<ImageCarousel\n\t\t\t\t\tnextImage={this.nextImage}\n\t\t\t\t\tpreviousImage={this.previousImage}\n\t\t\t\t\topenModal={this.openModal}\n\t\t\t\t\timages={images}\n\t\t\t\t/>\n\n\t\t\t\t<AppDescription description={this.props.app.description} />\n\n\t\t\t\t<ReleaseNotes releaseNotes={this.props.app.releaseNotes} />\n\n\t\t\t\t<AppDevNotes email={this.props.app.contactEmail} publisher={this.props.app.publisher} />\n\n\t\t\t\t<VersionNotes version={this.props.app.version} />\n\n\t\t\t\t<SupportNotes email={this.props.app.supportEmail} tags={this.props.app.tags} />\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nexport default AppShowcase;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/Header.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAErD,IAAI,YAAY,GAAG,KAAK,CAAC;AAgBzB,MAAM,MAAM,GAAG,CAAC,KAAkB,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,GAAG,EAAE;QACnB,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,IAAI,YAAY;gBAAE,OAAO;YACzB,YAAY,GAAG,IAAI,CAAC;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;YAIvC,IAAI,KAAK,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAChC,EAAE,EACF;oBACC,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,cAAc,EAAE,IAAI;iBACpB,EACD,GAAG,EAAE;oBACJ,YAAY,GAAG,KAAK,CAAC;gBACtB,CAAC,CACD,CAAC;gBACF,OAAO;aACP;YAED,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;gBAC7E,YAAY,GAAG,KAAK,CAAC;YACtB,CAAC,CAAC,CAAC;SACH;aAAM;YACN,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACjC;IACF,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO,CACN,6BAAK,SAAS,EAAC,QAAQ;QACtB,6BAAK,SAAS,EAAC,sBAAsB;YACpC,6BAAK,SAAS,EAAC,aAAa,EAAC,GAAG,EAAE,KAAK,CAAC,OAAO,GAAI;YACnD,8BAAM,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,IAAI,CAAQ,CACxC;QACN,6BAAK,SAAS,EAAC,yBAAyB;YACvC,gCACC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,wBAAwB,EAC3E,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EACzB,OAAO,EAAE,MAAM,IAEd,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAClB;gBACC,8BAAM,SAAS,EAAC,qBAAqB,WAAY,CAC5C,CACN,CAAC,CAAC,CAAC,CACH,8BAAM,SAAS,EAAC,qBAAqB,UAAW,CAChD,CACO;YACR,KAAK,CAAC,SAAS,IAAI,CACnB,gCACC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,+BAA+B,EACpF,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EACzB,OAAO,EAAE,SAAS;gBAElB,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAC,YAAY,GAAG,CACnD,CACT,CACI,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\n\r\nimport React from \"react\";\r\nimport { AppMetadata } from \"../../../../types/fdc3\";\r\n\r\n// data\r\nimport storeActions from \"../../stores/storeActions\";\r\n\r\nlet pendingSpawn = false;\r\n\r\ntype HeaderProps = AppMetadata & {\r\n\turl: string | undefined;\r\n\tinstalled: any;\r\n\ticonUrl: string | undefined;\r\n\tentitled: any;\r\n};\r\n\r\n/**\r\n * The header of the AppShowcase. Contains the actionable buttons (to add/remove and app) and the app title and icon\r\n * @param {object} props Component props\r\n * @param {string} props.iconUrl The image url for the app's icon\r\n * @param {string} props.name The app name\r\n * @param {func} props.appAction The function to call when a button is clicked.\r\n */\r\nconst Header = (props: HeaderProps) => {\r\n\tconst addApp = () => {\r\n\t\tif (props.installed) {\r\n\t\t\tif (pendingSpawn) return;\r\n\t\t\tpendingSpawn = true;\r\n\t\t\tconst name = props.title || props.name;\r\n\t\t\t// If the app has a URL property\r\n\t\t\t// For now, this means it was manually added\r\n\t\t\t// So lets spawn from URL\r\n\t\t\tif (props.url) {\r\n\t\t\t\tFSBL.Clients.LauncherClient.spawn(\r\n\t\t\t\t\t\"\",\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\turl: props.url,\r\n\t\t\t\t\t\taddToWorkspace: true,\r\n\t\t\t\t\t},\r\n\t\t\t\t\t() => {\r\n\t\t\t\t\t\tpendingSpawn = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\t// Otherwise launch application by name\r\n\t\t\tFSBL.Clients.LauncherClient.spawn(name.trim(), { addToWorkspace: true }, () => {\r\n\t\t\t\tpendingSpawn = false;\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tstoreActions.addApp(props.appId);\r\n\t\t}\r\n\t};\r\n\r\n\tconst removeApp = () => {\r\n\t\tstoreActions.removeApp(props.appId);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<div className=\"header\">\r\n\t\t\t<div className=\"icon-title-container\">\r\n\t\t\t\t<img className=\"header-icon\" src={props.iconUrl} />\r\n\t\t\t\t<span className=\"appName\">{props.name}</span>\r\n\t\t\t</div>\r\n\t\t\t<div className=\"action-button-container\">\r\n\t\t\t\t<button\r\n\t\t\t\t\tclassName={props.entitled ? \"action-button open\" : \"action-button disabled\"}\r\n\t\t\t\t\tdisabled={!props.entitled}\r\n\t\t\t\t\tonClick={addApp}\r\n\t\t\t\t>\r\n\t\t\t\t\t{props.installed ? (\r\n\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t<span className=\"action-button-label\">Open</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t<span className=\"action-button-label\">Add</span>\r\n\t\t\t\t\t)}\r\n\t\t\t\t</button>\r\n\t\t\t\t{props.installed && (\r\n\t\t\t\t\t<button\r\n\t\t\t\t\t\tclassName={props.entitled ? \"action-button remove\" : \"action-button remove disabled\"}\r\n\t\t\t\t\t\tdisabled={!props.entitled}\r\n\t\t\t\t\t\tonClick={removeApp}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<div className=\"ff-adp-trash-outline\" title=\"Remove App\" />\r\n\t\t\t\t\t</button>\r\n\t\t\t\t)}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default Header;\r\n"]}
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/Header.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAErD,IAAI,YAAY,GAAG,KAAK,CAAC;AAgBzB,MAAM,MAAM,GAAG,CAAC,KAAkB,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,GAAG,EAAE;QACnB,IAAI,KAAK,CAAC,SAAS,EAAE;YACpB,IAAI,YAAY;gBAAE,OAAO;YACzB,YAAY,GAAG,IAAI,CAAC;YACpB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;YAIvC,IAAI,KAAK,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAChC,EAAE,EACF;oBACC,GAAG,EAAE,KAAK,CAAC,GAAG;oBACd,cAAc,EAAE,IAAI;iBACpB,EACD,GAAG,EAAE;oBACJ,YAAY,GAAG,KAAK,CAAC;gBACtB,CAAC,CACD,CAAC;gBACF,OAAO;aACP;YAED,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE;gBAC7E,YAAY,GAAG,KAAK,CAAC;YACtB,CAAC,CAAC,CAAC;SACH;aAAM;YACN,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACjC;IACF,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,GAAG,EAAE;QACtB,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO,CACN,6BAAK,SAAS,EAAC,QAAQ;QACtB,6BAAK,SAAS,EAAC,sBAAsB;YACpC,6BAAK,SAAS,EAAC,aAAa,EAAC,GAAG,EAAE,KAAK,CAAC,OAAO,GAAI;YACnD,8BAAM,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,IAAI,CAAQ,CACxC;QACN,6BAAK,SAAS,EAAC,yBAAyB;YACvC,gCACC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,wBAAwB,EAC3E,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EACzB,OAAO,EAAE,MAAM,IAEd,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAClB;gBACC,8BAAM,SAAS,EAAC,qBAAqB,WAAY,CAC5C,CACN,CAAC,CAAC,CAAC,CACH,8BAAM,SAAS,EAAC,qBAAqB,UAAW,CAChD,CACO;YACR,KAAK,CAAC,SAAS,IAAI,CACnB,gCACC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,+BAA+B,EACpF,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EACzB,OAAO,EAAE,SAAS;gBAElB,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAC,YAAY,GAAG,CACnD,CACT,CACI,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\n\nimport React from \"react\";\nimport { AppMetadata } from \"../../../../types/fdc3\";\n\n// data\nimport storeActions from \"../../stores/storeActions\";\n\nlet pendingSpawn = false;\n\ntype HeaderProps = AppMetadata & {\n\turl: string | undefined;\n\tinstalled: any;\n\ticonUrl: string | undefined;\n\tentitled: any;\n};\n\n/**\n * The header of the AppShowcase. Contains the actionable buttons (to add/remove and app) and the app title and icon\n * @param {object} props Component props\n * @param {string} props.iconUrl The image url for the app's icon\n * @param {string} props.name The app name\n * @param {func} props.appAction The function to call when a button is clicked.\n */\nconst Header = (props: HeaderProps) => {\n\tconst addApp = () => {\n\t\tif (props.installed) {\n\t\t\tif (pendingSpawn) return;\n\t\t\tpendingSpawn = true;\n\t\t\tconst name = props.title || props.name;\n\t\t\t// If the app has a URL property\n\t\t\t// For now, this means it was manually added\n\t\t\t// So lets spawn from URL\n\t\t\tif (props.url) {\n\t\t\t\tFSBL.Clients.LauncherClient.spawn(\n\t\t\t\t\t\"\",\n\t\t\t\t\t{\n\t\t\t\t\t\turl: props.url,\n\t\t\t\t\t\taddToWorkspace: true,\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tpendingSpawn = false;\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Otherwise launch application by name\n\t\t\tFSBL.Clients.LauncherClient.spawn(name.trim(), { addToWorkspace: true }, () => {\n\t\t\t\tpendingSpawn = false;\n\t\t\t});\n\t\t} else {\n\t\t\tstoreActions.addApp(props.appId);\n\t\t}\n\t};\n\n\tconst removeApp = () => {\n\t\tstoreActions.removeApp(props.appId);\n\t};\n\n\treturn (\n\t\t<div className=\"header\">\n\t\t\t<div className=\"icon-title-container\">\n\t\t\t\t<img className=\"header-icon\" src={props.iconUrl} />\n\t\t\t\t<span className=\"appName\">{props.name}</span>\n\t\t\t</div>\n\t\t\t<div className=\"action-button-container\">\n\t\t\t\t<button\n\t\t\t\t\tclassName={props.entitled ? \"action-button open\" : \"action-button disabled\"}\n\t\t\t\t\tdisabled={!props.entitled}\n\t\t\t\t\tonClick={addApp}\n\t\t\t\t>\n\t\t\t\t\t{props.installed ? (\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<span className=\"action-button-label\">Open</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span className=\"action-button-label\">Add</span>\n\t\t\t\t\t)}\n\t\t\t\t</button>\n\t\t\t\t{props.installed && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName={props.entitled ? \"action-button remove\" : \"action-button remove disabled\"}\n\t\t\t\t\t\tdisabled={!props.entitled}\n\t\t\t\t\t\tonClick={removeApp}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"ff-adp-trash-outline\" title=\"Remove App\" />\n\t\t\t\t\t</button>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default Header;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageCarousel.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/ImageCarousel.jsx"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE;IAC/B,OAAO,CACN,6BAAK,SAAS,EAAC,0BAA0B;QACxC,2BAAG,SAAS,EAAC,qBAAqB,EAAC,OAAO,EAAE,KAAK,CAAC,SAAS,GAAM;QACjE,6BAAK,SAAS,EAAC,gBAAgB,IAC7B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;YACjC,OAAO,CACN,6BACC,GAAG,EAAE,iBAAiB,GAAG,CAAC,EAC1B,SAAS,EAAC,sBAAsB,EAChC,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAC5C,CACF,CAAC;QACH,CAAC,CAAC,CACG;QACN,2BAAG,SAAS,EAAC,sBAAsB,EAAC,OAAO,EAAE,KAAK,CAAC,aAAa,GAAM,CACjE,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\n/**\r\n * This component is the name of a component and a pin that will pin that component to all toolbars.\r\n *\r\n */\r\nimport React from \"react\";\r\n\r\n/**\r\n * The image carousel which displays images for a single app\r\n * @param {object} props Component props\r\n * @param {func} props.nextImage Function supplied by the parent to page through the images (right)\r\n * @param {func} props.previousImage Function supplied by the parent to page through the images (left)\r\n * @param {array} props.images The images of the displayed app\r\n */\r\nconst ImageCarousel = (props) => {\r\n\treturn (\r\n\t\t<div className=\"image-carousel-container\">\r\n\t\t\t<i className=\"ff-adp-chevron-left\" onClick={props.nextImage}></i>\r\n\t\t\t<div className=\"image-carousel\">\r\n\t\t\t\t{props.images.map((imageUrl, i) => {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t<img\r\n\t\t\t\t\t\t\tkey={\"showcase-image-\" + i}\r\n\t\t\t\t\t\t\tclassName=\"image-carousel-image\"\r\n\t\t\t\t\t\t\tsrc={imageUrl}\r\n\t\t\t\t\t\t\tonClick={props.openModal.bind(this, imageUrl)}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t</div>\r\n\t\t\t<i className=\"ff-adp-chevron-right\" onClick={props.previousImage}></i>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default ImageCarousel;\r\n"]}
1
+ {"version":3,"file":"ImageCarousel.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/ImageCarousel.jsx"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,EAAE;IAC/B,OAAO,CACN,6BAAK,SAAS,EAAC,0BAA0B;QACxC,2BAAG,SAAS,EAAC,qBAAqB,EAAC,OAAO,EAAE,KAAK,CAAC,SAAS,GAAM;QACjE,6BAAK,SAAS,EAAC,gBAAgB,IAC7B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE;YACjC,OAAO,CACN,6BACC,GAAG,EAAE,iBAAiB,GAAG,CAAC,EAC1B,SAAS,EAAC,sBAAsB,EAChC,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAC5C,CACF,CAAC;QACH,CAAC,CAAC,CACG;QACN,2BAAG,SAAS,EAAC,sBAAsB,EAAC,OAAO,EAAE,KAAK,CAAC,aAAa,GAAM,CACjE,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,aAAa,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\n/**\n * This component is the name of a component and a pin that will pin that component to all toolbars.\n *\n */\nimport React from \"react\";\n\n/**\n * The image carousel which displays images for a single app\n * @param {object} props Component props\n * @param {func} props.nextImage Function supplied by the parent to page through the images (right)\n * @param {func} props.previousImage Function supplied by the parent to page through the images (left)\n * @param {array} props.images The images of the displayed app\n */\nconst ImageCarousel = (props) => {\n\treturn (\n\t\t<div className=\"image-carousel-container\">\n\t\t\t<i className=\"ff-adp-chevron-left\" onClick={props.nextImage}></i>\n\t\t\t<div className=\"image-carousel\">\n\t\t\t\t{props.images.map((imageUrl, i) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tkey={\"showcase-image-\" + i}\n\t\t\t\t\t\t\tclassName=\"image-carousel-image\"\n\t\t\t\t\t\t\tsrc={imageUrl}\n\t\t\t\t\t\t\tonClick={props.openModal.bind(this, imageUrl)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t\t<i className=\"ff-adp-chevron-right\" onClick={props.previousImage}></i>\n\t\t</div>\n\t);\n};\n\nexport default ImageCarousel;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/Modal.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAc,EAAE,EAAE;IAC5D,IAAI,cAAc,GAAG,OAAO,CAAC;IAC7B,IAAI,IAAI,EAAE;QACT,cAAc,GAAG,GAAG,cAAc,OAAO,CAAC;KAC1C;SAAM;QACN,cAAc,GAAG,GAAG,cAAc,SAAS,CAAC;KAC5C;IAED,OAAO,CACN,6BAAK,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU;QAClD,6BAAK,SAAS,EAAC,YAAY,IAAE,QAAQ,CAAO,CACvC,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\ntype ModalProps = {\r\n\topen: boolean;\r\n\tcloseModal: () => void;\r\n\tchildren: React.ReactNode;\r\n};\r\n\r\n/**\r\n * The image modal (light box)\r\n * @param {object} props Component props\r\n * @param {func} props.closeModal Parent function to close the modal. Actual display is handled by CSS\r\n * @param {object} props.children The inner contents (elements) of the array\r\n */\r\nconst Modal = ({ open, closeModal, children }: ModalProps) => {\r\n\tlet modalClassName = \"modal\";\r\n\tif (open) {\r\n\t\tmodalClassName = `${modalClassName} open`;\r\n\t} else {\r\n\t\tmodalClassName = `${modalClassName} closed`;\r\n\t}\r\n\r\n\treturn (\r\n\t\t<div className={modalClassName} onClick={closeModal}>\r\n\t\t\t<div className=\"modal-main\">{children}</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default Modal;\r\n"]}
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/Modal.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAc,EAAE,EAAE;IAC5D,IAAI,cAAc,GAAG,OAAO,CAAC;IAC7B,IAAI,IAAI,EAAE;QACT,cAAc,GAAG,GAAG,cAAc,OAAO,CAAC;KAC1C;SAAM;QACN,cAAc,GAAG,GAAG,cAAc,SAAS,CAAC;KAC5C;IAED,OAAO,CACN,6BAAK,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU;QAClD,6BAAK,SAAS,EAAC,YAAY,IAAE,QAAQ,CAAO,CACvC,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\ntype ModalProps = {\n\topen: boolean;\n\tcloseModal: () => void;\n\tchildren: React.ReactNode;\n};\n\n/**\n * The image modal (light box)\n * @param {object} props Component props\n * @param {func} props.closeModal Parent function to close the modal. Actual display is handled by CSS\n * @param {object} props.children The inner contents (elements) of the array\n */\nconst Modal = ({ open, closeModal, children }: ModalProps) => {\n\tlet modalClassName = \"modal\";\n\tif (open) {\n\t\tmodalClassName = `${modalClassName} open`;\n\t} else {\n\t\tmodalClassName = `${modalClassName} closed`;\n\t}\n\n\treturn (\n\t\t<div className={modalClassName} onClick={closeModal}>\n\t\t\t<div className=\"modal-main\">{children}</div>\n\t\t</div>\n\t);\n};\n\nexport default Modal;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ReleaseNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/ReleaseNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAOvD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE;IAC9B,OAAO,CACN,6BAAK,SAAS,EAAC,yBAAyB;QACvC,8BAAM,SAAS,EAAC,gBAAgB,oBAAqB;QACrD,6BAAK,SAAS,EAAC,uBAAuB;YACrC,iCAAM,KAAK,CAAC,YAAY,IAAI,yBAAyB,CAAO,CACvD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\nimport { DEFAULT_APP_RELEASE_NOTES } from \"./defaults\";\r\n\r\n/**\r\n * AppShowcase release notes section. Display information about app's most recent change notes\r\n * @param {object} props Component props\r\n * @param {string} props.releaseNotes The release notes\r\n */\r\nconst ReleaseNotes = (props) => {\r\n\treturn (\r\n\t\t<div className=\"app-notes release-notes\">\r\n\t\t\t<span className=\"showcase-label\">Release Notes</span>\r\n\t\t\t<div className=\"release-notes-content\">\r\n\t\t\t\t<div>{props.releaseNotes || DEFAULT_APP_RELEASE_NOTES}</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default ReleaseNotes;\r\n"]}
1
+ {"version":3,"file":"ReleaseNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/ReleaseNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAOvD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE;IAC9B,OAAO,CACN,6BAAK,SAAS,EAAC,yBAAyB;QACvC,8BAAM,SAAS,EAAC,gBAAgB,oBAAqB;QACrD,6BAAK,SAAS,EAAC,uBAAuB;YACrC,iCAAM,KAAK,CAAC,YAAY,IAAI,yBAAyB,CAAO,CACvD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\nimport { DEFAULT_APP_RELEASE_NOTES } from \"./defaults\";\n\n/**\n * AppShowcase release notes section. Display information about app's most recent change notes\n * @param {object} props Component props\n * @param {string} props.releaseNotes The release notes\n */\nconst ReleaseNotes = (props) => {\n\treturn (\n\t\t<div className=\"app-notes release-notes\">\n\t\t\t<span className=\"showcase-label\">Release Notes</span>\n\t\t\t<div className=\"release-notes-content\">\n\t\t\t\t<div>{props.releaseNotes || DEFAULT_APP_RELEASE_NOTES}</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default ReleaseNotes;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SupportNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/SupportNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAG5D,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAQrD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAC/B,6BAAK,SAAS,EAAC,mBAAmB;IACjC,6BAAK,SAAS,EAAC,iBAAiB;QAC/B,8BAAM,SAAS,EAAC,gBAAgB,cAAe;QAC/C,6BAAK,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,KAAK,CAAO,CACvC;IACN,6BAAK,SAAS,EAAC,cAAc;QAC5B,8BAAM,SAAS,EAAC,gBAAgB,WAAY;QAC5C,6BAAK,SAAS,EAAC,MAAM,IACnB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,OAAO,GAAG,GAAG,CAAC;YAElB,OAAO,CACN,6BAAK,GAAG,EAAE,sBAAsB,CAAC,EAAE,EAAE,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;gBACtG,8BAAM,SAAS,EAAC,eAAe,EAAC,KAAK,EAAE,OAAO,IAC5C,8BAA8B,CAAC,OAAO,CAAC,CAClC,CACF,CACN,CAAC;QACH,CAAC,CAAC,CACG,CACD,CACD,CACN,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\nimport { getTruncatedStringWithEllipses } from \"../helpers\";\r\n\r\n//data\r\nimport storeActions from \"../../stores/storeActions\";\r\n\r\n/**\r\n * AppShowcase support notes section.\r\n * @param {object} props Component props\r\n * @param {string} props.email The publisher's support email address\r\n * @param {array} props.tags An array containing the names of all tags that apply to this app\r\n */\r\nconst SupportNotes = (props) => (\r\n\t<div className=\"dev-notes support\">\r\n\t\t<div className=\"support-content\">\r\n\t\t\t<span className=\"showcase-label\">Support</span>\r\n\t\t\t<div className=\"support\">{props.email}</div>\r\n\t\t</div>\r\n\t\t<div className=\"tags-content\">\r\n\t\t\t<span className=\"showcase-label\">Tags</span>\r\n\t\t\t<div className=\"tags\">\r\n\t\t\t\t{props.tags.map((tag, i) => {\r\n\t\t\t\t\tlet tagName = tag;\r\n\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t<div key={`showcase-tag-label-${i}`} className=\"tag-label\" onClick={storeActions.addTag.bind(this, tag)}>\r\n\t\t\t\t\t\t\t<span className=\"label-content\" title={tagName}>\r\n\t\t\t\t\t\t\t\t{getTruncatedStringWithEllipses(tagName)}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n);\r\n\r\nexport default SupportNotes;\r\n"]}
1
+ {"version":3,"file":"SupportNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/SupportNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAG5D,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAQrD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAC/B,6BAAK,SAAS,EAAC,mBAAmB;IACjC,6BAAK,SAAS,EAAC,iBAAiB;QAC/B,8BAAM,SAAS,EAAC,gBAAgB,cAAe;QAC/C,6BAAK,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,KAAK,CAAO,CACvC;IACN,6BAAK,SAAS,EAAC,cAAc;QAC5B,8BAAM,SAAS,EAAC,gBAAgB,WAAY;QAC5C,6BAAK,SAAS,EAAC,MAAM,IACnB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,OAAO,GAAG,GAAG,CAAC;YAElB,OAAO,CACN,6BAAK,GAAG,EAAE,sBAAsB,CAAC,EAAE,EAAE,SAAS,EAAC,WAAW,EAAC,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;gBACtG,8BAAM,SAAS,EAAC,eAAe,EAAC,KAAK,EAAE,OAAO,IAC5C,8BAA8B,CAAC,OAAO,CAAC,CAClC,CACF,CACN,CAAC;QACH,CAAC,CAAC,CACG,CACD,CACD,CACN,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\nimport { getTruncatedStringWithEllipses } from \"../helpers\";\n\n//data\nimport storeActions from \"../../stores/storeActions\";\n\n/**\n * AppShowcase support notes section.\n * @param {object} props Component props\n * @param {string} props.email The publisher's support email address\n * @param {array} props.tags An array containing the names of all tags that apply to this app\n */\nconst SupportNotes = (props) => (\n\t<div className=\"dev-notes support\">\n\t\t<div className=\"support-content\">\n\t\t\t<span className=\"showcase-label\">Support</span>\n\t\t\t<div className=\"support\">{props.email}</div>\n\t\t</div>\n\t\t<div className=\"tags-content\">\n\t\t\t<span className=\"showcase-label\">Tags</span>\n\t\t\t<div className=\"tags\">\n\t\t\t\t{props.tags.map((tag, i) => {\n\t\t\t\t\tlet tagName = tag;\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div key={`showcase-tag-label-${i}`} className=\"tag-label\" onClick={storeActions.addTag.bind(this, tag)}>\n\t\t\t\t\t\t\t<span className=\"label-content\" title={tagName}>\n\t\t\t\t\t\t\t\t{getTruncatedStringWithEllipses(tagName)}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t</div>\n);\n\nexport default SupportNotes;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"VersionNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/VersionNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAOjD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE;IAC9B,OAAO,CACN,6BAAK,SAAS,EAAC,0BAA0B;QACxC,6BAAK,SAAS,EAAC,iBAAiB;YAC/B,8BAAM,SAAS,EAAC,gBAAgB,cAAe;YAC/C,6BAAK,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAO,CAChE;QACN,6BAAK,SAAS,EAAC,iBAAiB;YAC/B,8BAAM,SAAS,EAAC,gBAAgB,mBAAoB;YACpD,6BAAK,SAAS,EAAC,SAAS,oBAAoB,CACvC,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\nimport { DEFAULT_APP_VERSION } from \"./defaults\";\r\n\r\n/**\r\n * AppShowcase version notes section.\r\n * @param {object} props Component props\r\n * @param {string} props.version The current app version\r\n */\r\nconst VersionNotes = (props) => {\r\n\treturn (\r\n\t\t<div className=\"dev-notes version-update\">\r\n\t\t\t<div className=\"version-content\">\r\n\t\t\t\t<span className=\"showcase-label\">Version</span>\r\n\t\t\t\t<div className=\"version\">{props.version || DEFAULT_APP_VERSION}</div>\r\n\t\t\t</div>\r\n\t\t\t<div className=\"updated-content\">\r\n\t\t\t\t<span className=\"showcase-label\">Last Updated</span>\r\n\t\t\t\t<div className=\"updated\">Not available</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default VersionNotes;\r\n"]}
1
+ {"version":3,"file":"VersionNotes.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/VersionNotes.jsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAOjD,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE;IAC9B,OAAO,CACN,6BAAK,SAAS,EAAC,0BAA0B;QACxC,6BAAK,SAAS,EAAC,iBAAiB;YAC/B,8BAAM,SAAS,EAAC,gBAAgB,cAAe;YAC/C,6BAAK,SAAS,EAAC,SAAS,IAAE,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAO,CAChE;QACN,6BAAK,SAAS,EAAC,iBAAiB;YAC/B,8BAAM,SAAS,EAAC,gBAAgB,mBAAoB;YACpD,6BAAK,SAAS,EAAC,SAAS,oBAAoB,CACvC,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\nimport { DEFAULT_APP_VERSION } from \"./defaults\";\n\n/**\n * AppShowcase version notes section.\n * @param {object} props Component props\n * @param {string} props.version The current app version\n */\nconst VersionNotes = (props) => {\n\treturn (\n\t\t<div className=\"dev-notes version-update\">\n\t\t\t<div className=\"version-content\">\n\t\t\t\t<span className=\"showcase-label\">Version</span>\n\t\t\t\t<div className=\"version\">{props.version || DEFAULT_APP_VERSION}</div>\n\t\t\t</div>\n\t\t\t<div className=\"updated-content\">\n\t\t\t\t<span className=\"showcase-label\">Last Updated</span>\n\t\t\t\t<div className=\"updated\">Not available</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default VersionNotes;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/defaults.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,sCAAsC,CAAC;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC","sourcesContent":["export const DEFAULT_APP_DESCRIPTION = \"Place a description of the app here.\";\r\nexport const DEFAULT_APP_VERSION = \"N/A\";\r\nexport const DEFAULT_APP_RELEASE_NOTES = \"N/A\";\r\n"]}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../../../src/components/appCatalog/components/Showcase/defaults.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,sCAAsC,CAAC;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC","sourcesContent":["export const DEFAULT_APP_DESCRIPTION = \"Place a description of the app here.\";\nexport const DEFAULT_APP_VERSION = \"N/A\";\nexport const DEFAULT_APP_RELEASE_NOTES = \"N/A\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Tag.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,MAAM,GAAG,GAAG,CAAC,KAAY,EAAE,EAAE;IAC5B,MAAM,MAAM,GAAG,GAAG,EAAE;QACnB,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACN,6BAAK,SAAS,EAAC,SAAS;QACvB,6BAAK,SAAS,EAAC,aAAa;YAC3B,6BAAK,SAAS,EAAC,UAAU,IAAE,KAAK,CAAC,IAAI,CAAO;;YAC5C,2BAAG,SAAS,EAAC,qBAAqB,EAAC,OAAO,EAAE,MAAM,GAAM,CACnD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,GAAG,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\ninterface Props {\r\n\tname: string;\r\n\tremoveTag: (tag: string) => void;\r\n}\r\n\r\n/**\r\n * A display component for tag name. Contains a stylized label\r\n * @param {object} props Component props\r\n * @param {string} props.name The name of the tag\r\n * @param {func} props.removeTag Parent function to remove a tag from active filters\r\n */\r\nconst Tag = (props: Props) => {\r\n\tconst remove = () => {\r\n\t\tprops.removeTag(props.name);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<div className=\"app-tag\">\r\n\t\t\t<div className=\"tag-content\">\r\n\t\t\t\t<div className=\"tag-name\">{props.name}</div>&nbsp;&nbsp;\r\n\t\t\t\t<i className=\"ff-close tag-delete\" onClick={remove}></i>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nexport default Tag;\r\n"]}
1
+ {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Tag.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,MAAM,GAAG,GAAG,CAAC,KAAY,EAAE,EAAE;IAC5B,MAAM,MAAM,GAAG,GAAG,EAAE;QACnB,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACN,6BAAK,SAAS,EAAC,SAAS;QACvB,6BAAK,SAAS,EAAC,aAAa;YAC3B,6BAAK,SAAS,EAAC,UAAU,IAAE,KAAK,CAAC,IAAI,CAAO;;YAC5C,2BAAG,SAAS,EAAC,qBAAqB,EAAC,OAAO,EAAE,MAAM,GAAM,CACnD,CACD,CACN,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,GAAG,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\ninterface Props {\n\tname: string;\n\tremoveTag: (tag: string) => void;\n}\n\n/**\n * A display component for tag name. Contains a stylized label\n * @param {object} props Component props\n * @param {string} props.name The name of the tag\n * @param {func} props.removeTag Parent function to remove a tag from active filters\n */\nconst Tag = (props: Props) => {\n\tconst remove = () => {\n\t\tprops.removeTag(props.name);\n\t};\n\n\treturn (\n\t\t<div className=\"app-tag\">\n\t\t\t<div className=\"tag-content\">\n\t\t\t\t<div className=\"tag-name\">{props.name}</div>&nbsp;&nbsp;\n\t\t\t\t<i className=\"ff-close tag-delete\" onClick={remove}></i>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nexport default Tag;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Toast.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE;IAC/B,IAAI,OAAO,GAAG,eAAe,CAAC;IAC9B,IAAI,cAAc,GAAkB,IAAI,CAAC;IAEzC,QAAQ,KAAK,CAAC,uBAAuB,EAAE;QACtC,KAAK,KAAK;YACT,cAAc,GAAG,WAAW,CAAC;YAC7B,OAAO,GAAG,GAAG,OAAO,UAAU,CAAC;YAC/B,MAAM;QACP,KAAK,QAAQ;YACZ,cAAc,GAAG,aAAa,CAAC;YAC/B,OAAO,GAAG,GAAG,OAAO,QAAQ,CAAC;YAC7B,MAAM;QACP;YACC,OAAO,GAAG,GAAG,OAAO,YAAY,CAAC;YACjC,MAAM;KACP;IAED,IAAI,cAAc,KAAK,IAAI,EAAE;QAC5B,OAAO,CACN,6BAAK,SAAS,EAAE,OAAO;YACtB,8BAAM,SAAS,EAAC,OAAO;gBACtB,8BAAK;;gBACQ,cAAc,CACrB,CACF,CACN,CAAC;KACF;SAAM;QACN,OAAO,IAAI,CAAC;KACZ;AACF,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/*!\r\n * Copyright 2017 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport React from \"react\";\r\n\r\ninterface IProps {\r\n\tinstallationActionTaken: string;\r\n}\r\n\r\n/**\r\n * Toast component. Displays a success/failure message when an app is added/removed\r\n * @param {object} props Component props\r\n * @param {string} props.installationActionTaken String containing the action that occurred\r\n */\r\nconst Toast = (props: IProps) => {\r\n\tlet classes = \"toast-content\";\r\n\tlet messageContent: string | null = null;\r\n\r\n\tswitch (props.installationActionTaken) {\r\n\t\tcase \"add\":\r\n\t\t\tmessageContent = \"App Added\";\r\n\t\t\tclasses = `${classes} success`;\r\n\t\t\tbreak;\r\n\t\tcase \"remove\":\r\n\t\t\tmessageContent = \"App Removed\";\r\n\t\t\tclasses = `${classes} error`;\r\n\t\t\tbreak;\r\n\t\tdefault:\r\n\t\t\tclasses = `${classes} not-shown`;\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\tif (messageContent !== null) {\r\n\t\treturn (\r\n\t\t\t<div className={classes}>\r\n\t\t\t\t<span className=\"toast\">\r\n\t\t\t\t\t<i />\r\n\t\t\t\t\t&nbsp;&nbsp;{messageContent}\r\n\t\t\t\t</span>\r\n\t\t\t</div>\r\n\t\t);\r\n\t} else {\r\n\t\treturn null;\r\n\t}\r\n};\r\n\r\nexport default Toast;\r\n"]}
1
+ {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/Toast.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE;IAC/B,IAAI,OAAO,GAAG,eAAe,CAAC;IAC9B,IAAI,cAAc,GAAkB,IAAI,CAAC;IAEzC,QAAQ,KAAK,CAAC,uBAAuB,EAAE;QACtC,KAAK,KAAK;YACT,cAAc,GAAG,WAAW,CAAC;YAC7B,OAAO,GAAG,GAAG,OAAO,UAAU,CAAC;YAC/B,MAAM;QACP,KAAK,QAAQ;YACZ,cAAc,GAAG,aAAa,CAAC;YAC/B,OAAO,GAAG,GAAG,OAAO,QAAQ,CAAC;YAC7B,MAAM;QACP;YACC,OAAO,GAAG,GAAG,OAAO,YAAY,CAAC;YACjC,MAAM;KACP;IAED,IAAI,cAAc,KAAK,IAAI,EAAE;QAC5B,OAAO,CACN,6BAAK,SAAS,EAAE,OAAO;YACtB,8BAAM,SAAS,EAAC,OAAO;gBACtB,8BAAK;;gBACQ,cAAc,CACrB,CACF,CACN,CAAC;KACF;SAAM;QACN,OAAO,IAAI,CAAC;KACZ;AACF,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["/*!\n * Copyright 2017 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport React from \"react\";\n\ninterface IProps {\n\tinstallationActionTaken: string;\n}\n\n/**\n * Toast component. Displays a success/failure message when an app is added/removed\n * @param {object} props Component props\n * @param {string} props.installationActionTaken String containing the action that occurred\n */\nconst Toast = (props: IProps) => {\n\tlet classes = \"toast-content\";\n\tlet messageContent: string | null = null;\n\n\tswitch (props.installationActionTaken) {\n\t\tcase \"add\":\n\t\t\tmessageContent = \"App Added\";\n\t\t\tclasses = `${classes} success`;\n\t\t\tbreak;\n\t\tcase \"remove\":\n\t\t\tmessageContent = \"App Removed\";\n\t\t\tclasses = `${classes} error`;\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tclasses = `${classes} not-shown`;\n\t\t\tbreak;\n\t}\n\n\tif (messageContent !== null) {\n\t\treturn (\n\t\t\t<div className={classes}>\n\t\t\t\t<span className=\"toast\">\n\t\t\t\t\t<i />\n\t\t\t\t\t&nbsp;&nbsp;{messageContent}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexport default Toast;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/helpers.js"],"names":[],"mappings":"AAAA,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,OAAO,EAAE,EAAE;IACpD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,mBAAmB,GAAG,cAAc,CAAC;IAE3C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5B,IAAI,WAAW,CAAC;QAChB,IAAI,WAAW,CAAC;QAEhB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC1C,MAAM;aACN;SACD;QAGD,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC1C,MAAM;aACN;SACD;QAED,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;KAClE;SAAM;QACN,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;KACxC;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,8BAA8B,CAAC,IAAI;IAClD,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;QACtB,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;KAC1D;IAED,OAAO,IAAI,CAAC;AACb,CAAC","sourcesContent":["const TAG_CHARACTER_LIMIT = 30;\r\n\r\nexport const getAppNameIconWhenNoImage = (appName) => {\r\n\tconst appNameWords = appName.split(\" \");\r\n\tconst testForAlphaNumeric = /[a-zA-Z0-9]/g;\r\n\r\n\tif (appNameWords.length > 1) {\r\n\t\tlet word1Letter;\r\n\t\tlet word2Letter;\r\n\r\n\t\tfor (let i = 0; i < appNameWords[0].length; i++) {\r\n\t\t\tword1Letter = appNameWords[0][i];\r\n\t\t\tif (testForAlphaNumeric.test(word1Letter)) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t//Reset the regexp\r\n\t\ttestForAlphaNumeric.compile();\r\n\r\n\t\tfor (let j = 0; j < appNameWords[1].length; j++) {\r\n\t\t\tword2Letter = appNameWords[1][j];\r\n\t\t\tif (testForAlphaNumeric.test(word2Letter)) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn `${word1Letter.toUpperCase()}${word2Letter.toUpperCase()}`;\r\n\t} else {\r\n\t\treturn appNameWords[0][0].toUpperCase();\r\n\t}\r\n};\r\n\r\nexport function getTruncatedStringWithEllipses(name) {\r\n\tif (name.length >= 30) {\r\n\t\treturn `${name.substring(0, TAG_CHARACTER_LIMIT - 3)}...`;\r\n\t}\r\n\r\n\treturn name;\r\n}\r\n"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/components/helpers.js"],"names":[],"mappings":"AAAA,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,OAAO,EAAE,EAAE;IACpD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,mBAAmB,GAAG,cAAc,CAAC;IAE3C,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC5B,IAAI,WAAW,CAAC;QAChB,IAAI,WAAW,CAAC;QAEhB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC1C,MAAM;aACN;SACD;QAGD,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC1C,MAAM;aACN;SACD;QAED,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;KAClE;SAAM;QACN,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;KACxC;AACF,CAAC,CAAC;AAEF,MAAM,UAAU,8BAA8B,CAAC,IAAI;IAClD,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;QACtB,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;KAC1D;IAED,OAAO,IAAI,CAAC;AACb,CAAC","sourcesContent":["const TAG_CHARACTER_LIMIT = 30;\n\nexport const getAppNameIconWhenNoImage = (appName) => {\n\tconst appNameWords = appName.split(\" \");\n\tconst testForAlphaNumeric = /[a-zA-Z0-9]/g;\n\n\tif (appNameWords.length > 1) {\n\t\tlet word1Letter;\n\t\tlet word2Letter;\n\n\t\tfor (let i = 0; i < appNameWords[0].length; i++) {\n\t\t\tword1Letter = appNameWords[0][i];\n\t\t\tif (testForAlphaNumeric.test(word1Letter)) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t//Reset the regexp\n\t\ttestForAlphaNumeric.compile();\n\n\t\tfor (let j = 0; j < appNameWords[1].length; j++) {\n\t\t\tword2Letter = appNameWords[1][j];\n\t\t\tif (testForAlphaNumeric.test(word2Letter)) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn `${word1Letter.toUpperCase()}${word2Letter.toUpperCase()}`;\n\t} else {\n\t\treturn appNameWords[0][0].toUpperCase();\n\t}\n};\n\nexport function getTruncatedStringWithEllipses(name) {\n\tif (name.length >= 30) {\n\t\treturn `${name.substring(0, TAG_CHARACTER_LIMIT - 3)}...`;\n\t}\n\n\treturn name;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/appCatalog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC","sourcesContent":["export { AppCatalog } from \"./AppCatalog\";\r\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/appCatalog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC","sourcesContent":["export { AppCatalog } from \"./AppCatalog\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AppDirectory.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/modules/AppDirectory.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAO,YAAY;IAChC,YAAY,MAAa;QACxB,OAAO,MAAM,CAAC;IACf,CAAC;CACD","sourcesContent":["/**\r\n * Copyright 2018 by ChartIQ, Inc.\r\n * All rights reserved.\r\n * To be implemented..\r\n */\r\n\r\ntype Class = { new (...args: any[]): any };\r\n\r\nexport default class AppDirectory {\r\n\tconstructor(client: Class) {\r\n\t\treturn client;\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"AppDirectory.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/modules/AppDirectory.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAO,YAAY;IAChC,YAAY,MAAa;QACxB,OAAO,MAAM,CAAC;IACf,CAAC;CACD","sourcesContent":["/**\n * Copyright 2018 by ChartIQ, Inc.\n * All rights reserved.\n * To be implemented..\n */\n\ntype Class = { new (...args: any[]): any };\n\nexport default class AppDirectory {\n\tconstructor(client: Class) {\n\t\treturn client;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FDC3.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/modules/FDC3.ts"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\r\nimport {\r\n\tFDC3Props,\r\n\tFDC3PostCallback,\r\n\tFDC3SearchCallback,\r\n\tFDC3GetCallback,\r\n\tErrorOrMessage,\r\n\tFDC3PostCallbackData,\r\n} from \"../../../types/fdc3\";\r\nimport { StandardError } from \"@finsemble/finsemble-core/types/types\";\r\n\r\nconst handleFdc3Response = (\r\n\tresponse: {\r\n\t\tjson: () => Promise<any>;\r\n\t\tstatus: number;\r\n\t},\r\n\tdone: (dataOrNull: any, data?: any) => void\r\n) => {\r\n\tresponse.json().then((data) => {\r\n\t\t// We are expecting 200 here for data\r\n\t\tif (response.status !== 200) {\r\n\t\t\t// We have a problem, data as error message\r\n\t\t\tdone(data);\r\n\t\t} else {\r\n\t\t\t// All good, no problem\r\n\t\t\tdone(null, data);\r\n\t\t}\r\n\t});\r\n};\r\n\r\nconst handleFdc3Error = (error: Error, done: (msg: { message: string }) => void) => {\r\n\tdone({\r\n\t\tmessage: `Request failed ${error.message}`,\r\n\t});\r\n};\r\n\r\n/**\r\n * Copyright 2018 by ChartIQ, Inc.\r\n * All rights reserved.\r\n *\r\n * FDC3 App directory client, I will be using fetch()\r\n * to make calls to the appd web service, even though I'm\r\n * not sure where did fetch() come from, will investigate later\r\n */\r\nexport default class FDC3 extends React.Component<FDC3Props> {\r\n\tcreds: {};\r\n\r\n\tconfig: FDC3Props[\"config\"];\r\n\r\n\tconstructor(props: FDC3Props) {\r\n\t\tsuper(props);\r\n\t\tif (!this.props.config.url) {\r\n\t\t\tthrow new Error(\"Please specify the url of the app directory.\");\r\n\t\t}\r\n\t\tthis.creds = this.props.creds;\r\n\t\tthis.config = {\r\n\t\t\turl: this.props.config.url.replace(/\\/+$/, \"\"),\r\n\t\t};\r\n\t}\r\n\r\n\t/**\r\n\t * Http get wrapper\r\n\t * @param {string} path The restful method path\r\n\t * @param {function} done The callback function\r\n\t */\r\n\t_get(path: string, done: FDC3GetCallback) {\r\n\t\tfetch(this.config.url + path, {\r\n\t\t\tmethod: \"GET\",\r\n\t\t})\r\n\t\t\t.then((response) => handleFdc3Response(response, done))\r\n\t\t\t.catch((error) => handleFdc3Error(error, done));\r\n\t}\r\n\r\n\t/**\r\n\t *\r\n\t * @param {string} path The restful method path\r\n\t * @param {object} params The post data\r\n\t * @param {function} done The callback function\r\n\t */\r\n\t_post(path: string, params: Record<string, string>, done: FDC3PostCallback) {\r\n\t\tfetch(this.config.url + path, {\r\n\t\t\tmethod: \"POST\",\r\n\t\t\tbody: JSON.stringify(params),\r\n\t\t\theaders: {\r\n\t\t\t\t\"Content-Type\": \"application/json\",\r\n\t\t\t},\r\n\t\t})\r\n\t\t\t.then((response) => handleFdc3Response(response, done))\r\n\t\t\t.catch((error) => handleFdc3Error(error, done));\r\n\t}\r\n\r\n\t/**\r\n\t * Returns all applications\r\n\t * @param {function} callback The optional callback function\r\n\t */\r\n\tgetAll(callback: (arg1: Record<string, string> | null, applications: string[]) => void) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis._get(\"/apps/\", (error, data) => {\r\n\t\t\t\tif (error) {\r\n\t\t\t\t\treject(error);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tresolve(data?.applications);\r\n\t\t\t\t}\r\n\t\t\t\tif (callback) {\r\n\t\t\t\t\tcallback(error, data?.applications || []);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Returns a single application in results\r\n\t * @param {string} appId The app id\r\n\t */\r\n\tget(appId: string, callback: (error: StandardError, application: string) => void) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis._get(`/apps/${appId}`, (error, data) => {\r\n\t\t\t\tif (error) {\r\n\t\t\t\t\treject(error);\r\n\t\t\t\t}\r\n\t\t\t\tif (callback && data?.applications) {\r\n\t\t\t\t\tcallback(null, data.applications[0]);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (data?.applications) {\r\n\t\t\t\t\tresolve(data.applications[0]);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Returns unique tags\r\n\t * @param {function} callback The optional callback function\r\n\t */\r\n\tgetTags(callback: (error: StandardError, results: string[]) => void) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis._get(\"/tags/\", (error, data) => {\r\n\t\t\t\tif (error) {\r\n\t\t\t\t\treject(error);\r\n\t\t\t\t} else if (data) {\r\n\t\t\t\t\tresolve(data.tags);\r\n\t\t\t\t}\r\n\t\t\t\tif (callback && data) {\r\n\t\t\t\t\tcallback(null, data.tags);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Returns a list of applications based on text and filter\r\n\t * @param {object} params The search criteria\r\n\t * @param {function} callback The callback function\r\n\t * @example search({text: 'blah', filter: {tag: 'newrelease'}})\r\n\t */\r\n\tsearch(params: Record<string, string>, callback: FDC3SearchCallback) {\r\n\t\treturn new Promise((resolve, reject) => {\r\n\t\t\tthis._post(\"/apps/search\", params, (error: ErrorOrMessage, data: FDC3PostCallbackData) => {\r\n\t\t\t\tif (error) {\r\n\t\t\t\t\treject(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (callback) {\r\n\t\t\t\t\tcallback(null, data?.applications);\r\n\t\t\t\t} else if (data) {\r\n\t\t\t\t\tresolve(data.applications);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"FDC3.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/modules/FDC3.ts"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport {\n\tFDC3Props,\n\tFDC3PostCallback,\n\tFDC3SearchCallback,\n\tFDC3GetCallback,\n\tErrorOrMessage,\n\tFDC3PostCallbackData,\n} from \"../../../types/fdc3\";\nimport { StandardError } from \"@finsemble/finsemble-core/types/types\";\n\nconst handleFdc3Response = (\n\tresponse: {\n\t\tjson: () => Promise<any>;\n\t\tstatus: number;\n\t},\n\tdone: (dataOrNull: any, data?: any) => void\n) => {\n\tresponse.json().then((data) => {\n\t\t// We are expecting 200 here for data\n\t\tif (response.status !== 200) {\n\t\t\t// We have a problem, data as error message\n\t\t\tdone(data);\n\t\t} else {\n\t\t\t// All good, no problem\n\t\t\tdone(null, data);\n\t\t}\n\t});\n};\n\nconst handleFdc3Error = (error: Error, done: (msg: { message: string }) => void) => {\n\tdone({\n\t\tmessage: `Request failed ${error.message}`,\n\t});\n};\n\n/**\n * Copyright 2018 by ChartIQ, Inc.\n * All rights reserved.\n *\n * FDC3 App directory client, I will be using fetch()\n * to make calls to the appd web service, even though I'm\n * not sure where did fetch() come from, will investigate later\n */\nexport default class FDC3 extends React.Component<FDC3Props> {\n\tcreds: {};\n\n\tconfig: FDC3Props[\"config\"];\n\n\tconstructor(props: FDC3Props) {\n\t\tsuper(props);\n\t\tif (!this.props.config.url) {\n\t\t\tthrow new Error(\"Please specify the url of the app directory.\");\n\t\t}\n\t\tthis.creds = this.props.creds;\n\t\tthis.config = {\n\t\t\turl: this.props.config.url.replace(/\\/+$/, \"\"),\n\t\t};\n\t}\n\n\t/**\n\t * Http get wrapper\n\t * @param {string} path The restful method path\n\t * @param {function} done The callback function\n\t */\n\t_get(path: string, done: FDC3GetCallback) {\n\t\tfetch(this.config.url + path, {\n\t\t\tmethod: \"GET\",\n\t\t})\n\t\t\t.then((response) => handleFdc3Response(response, done))\n\t\t\t.catch((error) => handleFdc3Error(error, done));\n\t}\n\n\t/**\n\t *\n\t * @param {string} path The restful method path\n\t * @param {object} params The post data\n\t * @param {function} done The callback function\n\t */\n\t_post(path: string, params: Record<string, string>, done: FDC3PostCallback) {\n\t\tfetch(this.config.url + path, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify(params),\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => handleFdc3Response(response, done))\n\t\t\t.catch((error) => handleFdc3Error(error, done));\n\t}\n\n\t/**\n\t * Returns all applications\n\t * @param {function} callback The optional callback function\n\t */\n\tgetAll(callback: (arg1: Record<string, string> | null, applications: string[]) => void) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tthis._get(\"/apps/\", (error, data) => {\n\t\t\t\tif (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(data?.applications);\n\t\t\t\t}\n\t\t\t\tif (callback) {\n\t\t\t\t\tcallback(error, data?.applications || []);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Returns a single application in results\n\t * @param {string} appId The app id\n\t */\n\tget(appId: string, callback: (error: StandardError, application: string) => void) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tthis._get(`/apps/${appId}`, (error, data) => {\n\t\t\t\tif (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\t\t\t\tif (callback && data?.applications) {\n\t\t\t\t\tcallback(null, data.applications[0]);\n\t\t\t\t}\n\n\t\t\t\tif (data?.applications) {\n\t\t\t\t\tresolve(data.applications[0]);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Returns unique tags\n\t * @param {function} callback The optional callback function\n\t */\n\tgetTags(callback: (error: StandardError, results: string[]) => void) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tthis._get(\"/tags/\", (error, data) => {\n\t\t\t\tif (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t} else if (data) {\n\t\t\t\t\tresolve(data.tags);\n\t\t\t\t}\n\t\t\t\tif (callback && data) {\n\t\t\t\t\tcallback(null, data.tags);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Returns a list of applications based on text and filter\n\t * @param {object} params The search criteria\n\t * @param {function} callback The callback function\n\t * @example search({text: 'blah', filter: {tag: 'newrelease'}})\n\t */\n\tsearch(params: Record<string, string>, callback: FDC3SearchCallback) {\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tthis._post(\"/apps/search\", params, (error: ErrorOrMessage, data: FDC3PostCallbackData) => {\n\t\t\t\tif (error) {\n\t\t\t\t\treject(error);\n\t\t\t\t}\n\n\t\t\t\tif (callback) {\n\t\t\t\t\tcallback(null, data?.applications);\n\t\t\t\t} else if (data) {\n\t\t\t\t\tresolve(data.applications);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"appStore.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/stores/appStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAEjC,MAAM,aAAa,GAAG;IACrB;QACC,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,IAAI;KACX;IACD;QACC,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,KAAK;KACZ;CACD,CAAC;AAEF,IAAI,eAA2B,CAAC;AAEhC,SAAS,WAAW,CAAC,EAAoB;IACxC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAC3C,EAAE,KAAK,EAAE,6BAA6B,EAAE,MAAM,EAAE,IAAI,EAAE,EACtD,CAAC,GAAkB,EAAE,KAAkB,EAAE,EAAE;QAC1C,IAAI,KAAK,EAAE;YACV,eAAe,GAAG,KAAK,CAAC;YAGxB,eAAe,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,EAAE;gBAC7C,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;SACH;IACF,CAAC,CACD,CAAC;AACH,CAAC;AAED,SAAS,QAAQ;IAChB,OAAO,eAAe,CAAC;AACxB,CAAC","sourcesContent":["/*!\r\n * Copyright 2018 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\n\r\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\r\nimport { StandardCallback, StandardError } from \"@finsemble/finsemble-core/types/types\";\r\n\r\nexport { createStore, getStore };\r\n\r\nconst defaultValues = [\r\n\t{\r\n\t\tfield: \"apps\",\r\n\t\tvalue: [],\r\n\t},\r\n\t{\r\n\t\tfield: \"filteredApps\",\r\n\t\tvalue: [],\r\n\t},\r\n\t{\r\n\t\tfield: \"activeTags\",\r\n\t\tvalue: [],\r\n\t},\r\n\t{\r\n\t\tfield: \"activeApp\",\r\n\t\tvalue: null,\r\n\t},\r\n\t{\r\n\t\tfield: \"searchText\",\r\n\t\tvalue: \"\",\r\n\t},\r\n\t{\r\n\t\tfield: \"forceSearch\",\r\n\t\tvalue: false,\r\n\t},\r\n];\r\n\r\nlet appCatalogStore: StoreModel;\r\n\r\nfunction createStore(cb: StandardCallback) {\r\n\tFSBL.Clients.DistributedStoreClient.getStore(\r\n\t\t{ store: \"Finsemble-AppLauncher-Store\", global: true },\r\n\t\t(err: StandardError, store?: StoreModel) => {\r\n\t\t\tif (store) {\r\n\t\t\t\tappCatalogStore = store;\r\n\r\n\t\t\t\t// set default values before initializing the store with values from storage.\r\n\t\t\t\tappCatalogStore.setValues(defaultValues, () => {\r\n\t\t\t\t\tcb(null, appCatalogStore);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t);\r\n}\r\n\r\nfunction getStore() {\r\n\treturn appCatalogStore;\r\n}\r\n"]}
1
+ {"version":3,"file":"appStore.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/stores/appStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AAEjC,MAAM,aAAa,GAAG;IACrB;QACC,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,IAAI;KACX;IACD;QACC,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,EAAE;KACT;IACD;QACC,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,KAAK;KACZ;CACD,CAAC;AAEF,IAAI,eAA2B,CAAC;AAEhC,SAAS,WAAW,CAAC,EAAoB;IACxC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAC3C,EAAE,KAAK,EAAE,6BAA6B,EAAE,MAAM,EAAE,IAAI,EAAE,EACtD,CAAC,GAAkB,EAAE,KAAkB,EAAE,EAAE;QAC1C,IAAI,KAAK,EAAE;YACV,eAAe,GAAG,KAAK,CAAC;YAGxB,eAAe,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,EAAE;gBAC7C,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;SACH;IACF,CAAC,CACD,CAAC;AACH,CAAC;AAED,SAAS,QAAQ;IAChB,OAAO,eAAe,CAAC;AACxB,CAAC","sourcesContent":["/*!\n * Copyright 2018 by ChartIQ, Inc.\n * All rights reserved.\n */\n\nimport StoreModel from \"@finsemble/finsemble-core/types/clients/StoreModel\";\nimport { StandardCallback, StandardError } from \"@finsemble/finsemble-core/types/types\";\n\nexport { createStore, getStore };\n\nconst defaultValues = [\n\t{\n\t\tfield: \"apps\",\n\t\tvalue: [],\n\t},\n\t{\n\t\tfield: \"filteredApps\",\n\t\tvalue: [],\n\t},\n\t{\n\t\tfield: \"activeTags\",\n\t\tvalue: [],\n\t},\n\t{\n\t\tfield: \"activeApp\",\n\t\tvalue: null,\n\t},\n\t{\n\t\tfield: \"searchText\",\n\t\tvalue: \"\",\n\t},\n\t{\n\t\tfield: \"forceSearch\",\n\t\tvalue: false,\n\t},\n];\n\nlet appCatalogStore: StoreModel;\n\nfunction createStore(cb: StandardCallback) {\n\tFSBL.Clients.DistributedStoreClient.getStore(\n\t\t{ store: \"Finsemble-AppLauncher-Store\", global: true },\n\t\t(err: StandardError, store?: StoreModel) => {\n\t\t\tif (store) {\n\t\t\t\tappCatalogStore = store;\n\n\t\t\t\t// set default values before initializing the store with values from storage.\n\t\t\t\tappCatalogStore.setValues(defaultValues, () => {\n\t\t\t\t\tcb(null, appCatalogStore);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t);\n}\n\nfunction getStore() {\n\treturn appCatalogStore;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"storeActions.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/stores/storeActions.js"],"names":[],"mappings":"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","sourcesContent":["/*!\r\n * Copyright 2017 - 2020 by ChartIQ, Inc.\r\n * All rights reserved.\r\n */\r\nimport AppDirectory from \"../modules/AppDirectory\";\r\nimport FDC3 from \"../modules/FDC3\";\r\nimport { getStore } from \"./appStore\";\r\nimport { findIndex } from \"lodash\";\r\n\r\nexport const findAppIndexInFolder = (appID, folderName, folders) =>\r\n\tfindIndex(folders[folderName].apps, (app) => app.appID === appID);\r\n\r\nconst data = {};\r\nlet FDC3Client;\r\nlet appd;\r\n\r\nfunction initialize(done = Function.prototype) {\r\n\tFSBL.Clients.ConfigClient.getValue({ field: \"finsemble.appDirectoryEndpoint\" }, (err, appDirectoryEndpoint) => {\r\n\t\tFDC3Client = new FDC3({ url: appDirectoryEndpoint });\r\n\t\tappd = new AppDirectory(FDC3Client);\r\n\r\n\t\tconst store = getStore();\r\n\t\tdata.apps = store.values.apps;\r\n\t\tstore.getValue({ field: \"appFolders.folders\" }, (_err, folders) => {\r\n\t\t\tdata.folders = folders;\r\n\t\t\tstore.addListener({ field: \"appFolders.folders\" }, (__err, dt) => (data.folders = dt.value));\r\n\t\t});\r\n\t\tstore.getValue({ field: \"activeFolder\" }, (_err, active) => {\r\n\t\t\tdata.activeFolder = active;\r\n\t\t\tstore.addListener({ field: \"activeFolder\" }, (__err, dt) => (data.activeFolder = dt.value));\r\n\t\t});\r\n\t\tstore.getValue({ field: \"defaultFolder\" }, (_err, folder) => {\r\n\t\t\tdata.defaultFolder = folder;\r\n\t\t});\r\n\r\n\t\tdata.installed = store.values.appDefinitions;\r\n\t\tdata.tags = store.values.tags;\r\n\t\tdata.filteredApps = store.values.filteredApps;\r\n\t\tdata.activeTags = store.values.activeTags;\r\n\t\tdata.activeApp = store.values.activeApp;\r\n\t\tdata.searchText = store.values.searchText;\r\n\t\tdata.forceSearch = store.values.forceSearch;\r\n\t\tdata.ADVANCED_APP_LAUNCHER = store.values.defaultFolder;\r\n\r\n\t\tstore.addListener({ field: \"apps\" }, (_err, dt) => (data.apps = dt.value));\r\n\t\tstore.addListener({ field: \"appDefinitions\" }, (_err, dt) => (data.installed = dt.value));\r\n\t\tstore.addListener({ field: \"tags\" }, (_err, dt) => (data.tags = dt.value));\r\n\t\tstore.addListener({ field: \"activeApp\" }, (_err, dt) => (data.activeApp = dt.value));\r\n\t\tstore.addListener({ field: \"activeTags\" }, (_err, dt) => (data.activeTags = dt.value));\r\n\t\tstore.addListener({ field: \"filteredApps\" }, (_err, dt) => (data.filteredApps = dt.value));\r\n\t\tstore.addListener({ field: \"searchText\" }, (_err, dt) => (data.searchText = dt.value));\r\n\t\tstore.addListener({ field: \"forceSearch\" }, (_err, dt) => (data.forceSearch = dt.value));\r\n\t\tdone();\r\n\t});\r\n}\r\n\r\n/**\r\n * Clears all active tags\r\n */\r\nfunction _clearActiveTags() {\r\n\tgetStore().setValue({ field: \"activeTags\", value: [] });\r\n}\r\n\r\n/**\r\n * Async function to fetch apps from the FDC3 api (appD)\r\n */\r\nasync function getApps() {\r\n\treturn await appd.getAll((err, retrievedApps) => {\r\n\t\tif (!err) {\r\n\t\t\tgetStore().setValue({\r\n\t\t\t\tfield: \"apps\",\r\n\t\t\t\tvalue: retrievedApps,\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n}\r\n\r\n/**\r\n * Call to appD to get the list of all tags\r\n */\r\nasync function getTags() {\r\n\treturn await appd.getTags((err, retrievedTags) => {\r\n\t\tgetStore().setValue({\r\n\t\t\tfield: \"tags\",\r\n\t\t\tvalue: retrievedTags,\r\n\t\t});\r\n\t});\r\n}\r\n\r\n/**\r\n * Function to write errors to the log\r\n * @param {string} message The log message\r\n * @param {string} [protocol] Provide the logging protocol (default is error)\r\n */\r\nfunction writeToLog(message, protocol = \"error\") {\r\n\tFSBL.Clients.Logger[protocol](message);\r\n}\r\n\r\n/**\r\n * Function to \"install\" an app. Adds the id to a list of installed apps\r\n * @param {string} name The name of the app\r\n */\r\nasync function addApp(id, cb = Function.prototype) {\r\n\tconst { activeApp, installed, apps } = data;\r\n\tconst appID = id;\r\n\tconst app = apps.find((checkedApp) => checkedApp.appId === appID);\r\n\r\n\tif (!app) {\r\n\t\tFSBL.Clients.Logger.system.error(\r\n\t\t\t`Attempted to install app with id: ${id}, but could not find it in the local store.`\r\n\t\t);\r\n\t\treturn cb();\r\n\t}\r\n\r\n\tconst name = app.title || app.name;\r\n\tconst folder = data.activeFolder;\r\n\r\n\tif (app === undefined) {\r\n\t\tconsole.warn(\"App not found.\");\r\n\t\treturn cb();\r\n\t}\r\n\r\n\tlet manifest;\r\n\tlet appConfig;\r\n\t// Manifest from FDC3 is a string property which can either be a stringified JSON, or a uri which delivers valid JSON.\r\n\t// The catalog will attempt to parse the string as JSON, then fetch from a URL if that fails.\r\n\t// If both paths fail, notify the user that this app can't be added\r\n\tif (app.manifestType.toLowerCase() === \"finsemble\") {\r\n\t\ttry {\r\n\t\t\tmanifest = JSON.parse(app.manifest);\r\n\t\t} catch (e) {\r\n\t\t\ttry {\r\n\t\t\t\tconst urlRes = await fetch(app.manifest, { method: \"GET\" });\r\n\t\t\t\tmanifest = await urlRes.json();\r\n\t\t\t} catch (err) {\r\n\t\t\t\twriteToLog(\r\n\t\t\t\t\t`${name} is missing a valid manifest or URI that delivers a valid JSON manifest. Unable to add app.`,\r\n\t\t\t\t\t\"error\"\r\n\t\t\t\t);\r\n\t\t\t\treturn cb();\r\n\t\t\t}\r\n\t\t} finally {\r\n\t\t\tappConfig = installed[appID] = {\r\n\t\t\t\tappID,\r\n\t\t\t\ttags: app.tags,\r\n\t\t\t\tname: name.trim(),\r\n\t\t\t\ttype: \"component\",\r\n\t\t\t\tmanifest,\r\n\t\t\t\tcanDelete: true,\r\n\t\t\t\tsource: \"FDC3\",\r\n\t\t\t};\r\n\t\t}\r\n\t} else {\r\n\t\twriteToLog(`${name} does not appear to be a Finsemble manifest. This app cannot be added to Finsemble.`, \"error\");\r\n\t\treturn cb();\r\n\t}\r\n\r\n\tconst ADVANCED_APP_LAUNCHER = data.defaultFolder;\r\n\tconst { folders } = data;\r\n\r\n\tfolders[ADVANCED_APP_LAUNCHER].apps.push(appConfig);\r\n\tif (folder !== ADVANCED_APP_LAUNCHER) folders[folder].apps.push(appConfig);\r\n\r\n\tFSBL.Clients.LauncherClient.registerComponent(\r\n\t\t{\r\n\t\t\tcomponentType: appConfig.name,\r\n\t\t\tmanifest: appConfig.manifest,\r\n\t\t},\r\n\t\t() => {\r\n\t\t\tgetStore().setValues(\r\n\t\t\t\t[\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfield: \"activeApp\",\r\n\t\t\t\t\t\tvalue: activeApp,\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfield: \"appDefinitions\",\r\n\t\t\t\t\t\tvalue: installed,\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tfield: \"appFolders.folders\",\r\n\t\t\t\t\t\tvalue: folders,\r\n\t\t\t\t\t},\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\r\n/**\r\n * Function to \"uninstall\" an app. Removes the id from a list of installed apps\r\n * @param {string} name The name of the app\r\n */\r\nfunction removeApp(id, cb = Function.prototype) {\r\n\tlet { installed, folders } = data;\r\n\tFSBL.Clients.LauncherClient.unRegisterComponent({ componentType: installed[id].name }, (err) => {\r\n\t\tif (err) {\r\n\t\t\tconsole.warn(\"Failed to deregister a component\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tfor (const key in data.folders) {\r\n\t\t\tconst appIndex = findAppIndexInFolder(id, key, data.folders);\r\n\t\t\tif (appIndex > -1) {\r\n\t\t\t\tfolders[key].apps.splice(appIndex, 1);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Delete the app from the list\r\n\t\tdelete installed[id];\r\n\r\n\t\tgetStore().setValues(\r\n\t\t\t[\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: \"appDefinitions\",\r\n\t\t\t\t\tvalue: installed,\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tfield: \"appFolders.folders\",\r\n\t\t\t\t\tvalue: folders,\r\n\t\t\t\t},\r\n\t\t\t],\r\n\t\t\tcb\r\n\t\t);\r\n\t});\r\n}\r\n\r\n/**\r\n * Function to set the 'active app' for the catalog.\r\n * @param {string} id The app id to show as the actively showcasing app\r\n */\r\nfunction openApp(id) {\r\n\tlet { apps } = data;\r\n\r\n\tlet index = apps.findIndex((app) => app.appId === id);\r\n\r\n\tif (index > -1) {\r\n\t\tgetStore().setValue({\r\n\t\t\tfield: \"activeApp\",\r\n\t\t\tvalue: id,\r\n\t\t});\r\n\t}\r\n}\r\n\r\n/**\r\n * Clear the activeApp in store\r\n */\r\nfunction clearApp() {\r\n\tgetStore().setValue({\r\n\t\tfield: \"activeApp\",\r\n\t\tvalue: null,\r\n\t});\r\n}\r\n\r\n/**\r\n * Return activeApp from store\r\n *\r\n * @returns {string} activeApp\r\n */\r\nfunction getActiveApp() {\r\n\treturn data.activeApp;\r\n}\r\n\r\n/**\r\n * Set the activeApp param in store\r\n *\r\n * @param {*} app\r\n */\r\nfunction setActiveApp(app) {\r\n\tgetStore().setValue({\r\n\t\tfield: \"activeApp\",\r\n\t\tvalue: app,\r\n\t});\r\n}\r\n\r\n/**\r\n * Retrieves a list of installed apps by id\r\n */\r\nfunction getInstalledApps() {\r\n\treturn data.installed;\r\n}\r\n\r\n/**\r\n * Gets the list of filtered apps (when searching/filtering by tags)\r\n */\r\nfunction getFilteredApps() {\r\n\treturn data.filteredApps;\r\n}\r\n\r\n/**\r\n * Clears the list of filtered apps\r\n */\r\nfunction clearFilteredApps() {\r\n\tgetStore().setValue({\r\n\t\tfield: \"filteredApps\",\r\n\t\tvalue: [],\r\n\t});\r\n}\r\n\r\n/**\r\n * Set the value of the search text in store\r\n *\r\n * @param {set} val Search string\r\n */\r\nfunction setSearchValue(val) {\r\n\tgetStore().setValue({ field: \"searchText\", value: val });\r\n}\r\n\r\n/**\r\n * Get the current value of the text in the store\r\n *\r\n * @returns {string} Search string\r\n */\r\nfunction getSearchValue() {\r\n\treturn data.searchText;\r\n}\r\n\r\n/**\r\n * Clears the search text in store\r\n *\r\n */\r\nfunction clearSearchText() {\r\n\tgetStore().setValue({ field: \"searchText\", value: \"\" });\r\n}\r\n\r\n/**\r\n * Get forceSearch store value\r\n *\r\n * @returns {boolean} forceSearch\r\n */\r\nfunction getForceSearch() {\r\n\treturn data.forceSearch;\r\n}\r\n\r\n/**\r\n * Set the forceSearch value\r\n *\r\n * @param {string} val Boolean value for forceSearch\r\n */\r\nfunction setForceSearch(val) {\r\n\tgetStore().setValue({ field: \"forceSearch\", value: val });\r\n}\r\n\r\n/**\r\n * Gets the list of active tags (these are tags that are actively filtering the content list)\r\n */\r\nfunction getActiveTags() {\r\n\treturn data.activeTags; // type: string[]\r\n}\r\n\r\n/**\r\n * Removes all tags from the active tags list\r\n */\r\nfunction clearTags() {\r\n\t_clearActiveTags();\r\n}\r\n\r\n/**\r\n * Return to the App Catalog home page\r\n */\r\nfunction goHome() {\r\n\tsetForceSearch(false);\r\n\tclearFilteredApps();\r\n\tclearApp();\r\n\tclearTags();\r\n\tclearSearchText();\r\n}\r\n\r\n/**\r\n * Send the search text and tags to the appd server and get a list of apps\r\n */\r\nfunction filterApps() {\r\n\tlet { activeTags, searchText } = data;\r\n\r\n\tif (activeTags.length === 0 && searchText === \"\") {\r\n\t\tgoHome();\r\n\t} else {\r\n\t\tappd.search({ text: searchText, tags: activeTags }, (err, retrievedData) => {\r\n\t\t\tif (err) {\r\n\t\t\t\tFSBL.Logger.system.error(`FDC3 App search failed!: ${err}`);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tgetStore().setValue({ field: \"activeApp\", value: null });\r\n\t\t\tgetStore().setValue({ field: \"activeTags\", value: activeTags });\r\n\t\t\tgetStore().setValue({ field: \"filteredApps\", value: retrievedData });\r\n\t\t});\r\n\t}\r\n}\r\n\r\n/**\r\n * Refreshes the active tags search\r\n */\r\nfunction refreshTagSearch() {\r\n\tfilterApps();\r\n}\r\n\r\n/**\r\n * Calls appD to search the directory of apps based on search text and tag names\r\n * @param {string} terms The search terms provided by the user\r\n */\r\nfunction searchApps(terms, cb = Function.prototype) {\r\n\tdata.searchText = terms;\r\n\tsetForceSearch(true);\r\n\tgetStore().setValue(\r\n\t\t{\r\n\t\t\tfield: \"searchText\",\r\n\t\t\tvalue: terms,\r\n\t\t},\r\n\t\t() => {\r\n\t\t\tfilterApps();\r\n\t\t\tcb();\r\n\t\t}\r\n\t);\r\n}\r\n\r\n/**\r\n * Private function to remove an active tag. This will filter apps based on tags\r\n * @param {string} tag The name of the tag\r\n */\r\nfunction _removeActiveTag(tag) {\r\n\tdata.activeTags = data.activeTags.filter((currentTag) => currentTag !== tag);\r\n\r\n\tgetStore().setValue({ field: \"activeTags\", value: data.activeTags });\r\n\tfilterApps();\r\n}\r\n\r\n/**\r\n * Removes an 'active tag' from the list of filtered tags\r\n * @param {string} tag The tag name\r\n */\r\nfunction removeTag(tag) {\r\n\t_removeActiveTag(tag);\r\n}\r\n\r\n/**\r\n * Private function to add an active tag. This will filter apps based on tags\r\n * @param {string} tag The name of the tag\r\n */\r\nfunction _addActiveTag(tag) {\r\n\tlet { activeTags } = data;\r\n\tif (!activeTags.includes(tag)) {\r\n\t\tactiveTags.push(tag);\r\n\t}\r\n\r\n\tgetStore().setValue({ field: \"activeTags\", value: activeTags }, () => {\r\n\t\tfilterApps();\r\n\t});\r\n}\r\n\r\n/**\r\n * Adds an 'active tag' to the list of filtered tags\r\n * @param {string} tag The tag name\r\n */\r\nfunction addTag(tag) {\r\n\t_addActiveTag(tag);\r\n}\r\n\r\nexport default {\r\n\tinitialize,\r\n\tgetApps,\r\n\tgetFilteredApps,\r\n\tclearFilteredApps,\r\n\tsearchApps,\r\n\tgetActiveTags,\r\n\tgetTags,\r\n\taddTag,\r\n\tremoveTag,\r\n\trefreshTagSearch,\r\n\tclearTags,\r\n\tclearSearchText,\r\n\taddApp,\r\n\tremoveApp,\r\n\topenApp,\r\n\tclearApp,\r\n\tgetInstalledApps,\r\n\tgetActiveApp,\r\n\tsetActiveApp,\r\n\tfilterApps,\r\n\tsetSearchValue,\r\n\tsetForceSearch,\r\n\tgetSearchValue,\r\n\tgetForceSearch,\r\n\tgoHome,\r\n};\r\n"]}
1
+ {"version":3,"file":"storeActions.js","sourceRoot":"","sources":["../../../../src/components/appCatalog/stores/storeActions.js"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Copyright 2017 - 2020 by ChartIQ, Inc.\n * All rights reserved.\n */\nimport AppDirectory from \"../modules/AppDirectory\";\nimport FDC3 from \"../modules/FDC3\";\nimport { getStore } from \"./appStore\";\nimport { findIndex } from \"lodash\";\n\nexport const findAppIndexInFolder = (appID, folderName, folders) =>\n\tfindIndex(folders[folderName].apps, (app) => app.appID === appID);\n\nconst data = {};\nlet FDC3Client;\nlet appd;\n\nfunction initialize(done = Function.prototype) {\n\tFSBL.Clients.ConfigClient.getValue({ field: \"finsemble.appDirectoryEndpoint\" }, (err, appDirectoryEndpoint) => {\n\t\tFDC3Client = new FDC3({ url: appDirectoryEndpoint });\n\t\tappd = new AppDirectory(FDC3Client);\n\n\t\tconst store = getStore();\n\t\tdata.apps = store.values.apps;\n\t\tstore.getValue({ field: \"appFolders.folders\" }, (_err, folders) => {\n\t\t\tdata.folders = folders;\n\t\t\tstore.addListener({ field: \"appFolders.folders\" }, (__err, dt) => (data.folders = dt.value));\n\t\t});\n\t\tstore.getValue({ field: \"activeFolder\" }, (_err, active) => {\n\t\t\tdata.activeFolder = active;\n\t\t\tstore.addListener({ field: \"activeFolder\" }, (__err, dt) => (data.activeFolder = dt.value));\n\t\t});\n\t\tstore.getValue({ field: \"defaultFolder\" }, (_err, folder) => {\n\t\t\tdata.defaultFolder = folder;\n\t\t});\n\n\t\tdata.installed = store.values.appDefinitions;\n\t\tdata.tags = store.values.tags;\n\t\tdata.filteredApps = store.values.filteredApps;\n\t\tdata.activeTags = store.values.activeTags;\n\t\tdata.activeApp = store.values.activeApp;\n\t\tdata.searchText = store.values.searchText;\n\t\tdata.forceSearch = store.values.forceSearch;\n\t\tdata.ADVANCED_APP_LAUNCHER = store.values.defaultFolder;\n\n\t\tstore.addListener({ field: \"apps\" }, (_err, dt) => (data.apps = dt.value));\n\t\tstore.addListener({ field: \"appDefinitions\" }, (_err, dt) => (data.installed = dt.value));\n\t\tstore.addListener({ field: \"tags\" }, (_err, dt) => (data.tags = dt.value));\n\t\tstore.addListener({ field: \"activeApp\" }, (_err, dt) => (data.activeApp = dt.value));\n\t\tstore.addListener({ field: \"activeTags\" }, (_err, dt) => (data.activeTags = dt.value));\n\t\tstore.addListener({ field: \"filteredApps\" }, (_err, dt) => (data.filteredApps = dt.value));\n\t\tstore.addListener({ field: \"searchText\" }, (_err, dt) => (data.searchText = dt.value));\n\t\tstore.addListener({ field: \"forceSearch\" }, (_err, dt) => (data.forceSearch = dt.value));\n\t\tdone();\n\t});\n}\n\n/**\n * Clears all active tags\n */\nfunction _clearActiveTags() {\n\tgetStore().setValue({ field: \"activeTags\", value: [] });\n}\n\n/**\n * Async function to fetch apps from the FDC3 api (appD)\n */\nasync function getApps() {\n\treturn await appd.getAll((err, retrievedApps) => {\n\t\tif (!err) {\n\t\t\tgetStore().setValue({\n\t\t\t\tfield: \"apps\",\n\t\t\t\tvalue: retrievedApps,\n\t\t\t});\n\t\t}\n\t});\n}\n\n/**\n * Call to appD to get the list of all tags\n */\nasync function getTags() {\n\treturn await appd.getTags((err, retrievedTags) => {\n\t\tgetStore().setValue({\n\t\t\tfield: \"tags\",\n\t\t\tvalue: retrievedTags,\n\t\t});\n\t});\n}\n\n/**\n * Function to write errors to the log\n * @param {string} message The log message\n * @param {string} [protocol] Provide the logging protocol (default is error)\n */\nfunction writeToLog(message, protocol = \"error\") {\n\tFSBL.Clients.Logger[protocol](message);\n}\n\n/**\n * Function to \"install\" an app. Adds the id to a list of installed apps\n * @param {string} name The name of the app\n */\nasync function addApp(id, cb = Function.prototype) {\n\tconst { activeApp, installed, apps } = data;\n\tconst appID = id;\n\tconst app = apps.find((checkedApp) => checkedApp.appId === appID);\n\n\tif (!app) {\n\t\tFSBL.Clients.Logger.system.error(\n\t\t\t`Attempted to install app with id: ${id}, but could not find it in the local store.`\n\t\t);\n\t\treturn cb();\n\t}\n\n\tconst name = app.title || app.name;\n\tconst folder = data.activeFolder;\n\n\tif (app === undefined) {\n\t\tconsole.warn(\"App not found.\");\n\t\treturn cb();\n\t}\n\n\tlet manifest;\n\tlet appConfig;\n\t// Manifest from FDC3 is a string property which can either be a stringified JSON, or a uri which delivers valid JSON.\n\t// The catalog will attempt to parse the string as JSON, then fetch from a URL if that fails.\n\t// If both paths fail, notify the user that this app can't be added\n\tif (app.manifestType.toLowerCase() === \"finsemble\") {\n\t\ttry {\n\t\t\tmanifest = JSON.parse(app.manifest);\n\t\t} catch (e) {\n\t\t\ttry {\n\t\t\t\tconst urlRes = await fetch(app.manifest, { method: \"GET\" });\n\t\t\t\tmanifest = await urlRes.json();\n\t\t\t} catch (err) {\n\t\t\t\twriteToLog(\n\t\t\t\t\t`${name} is missing a valid manifest or URI that delivers a valid JSON manifest. Unable to add app.`,\n\t\t\t\t\t\"error\"\n\t\t\t\t);\n\t\t\t\treturn cb();\n\t\t\t}\n\t\t} finally {\n\t\t\tappConfig = installed[appID] = {\n\t\t\t\tappID,\n\t\t\t\ttags: app.tags,\n\t\t\t\tname: name.trim(),\n\t\t\t\ttype: \"component\",\n\t\t\t\tmanifest,\n\t\t\t\tcanDelete: true,\n\t\t\t\tsource: \"FDC3\",\n\t\t\t};\n\t\t}\n\t} else {\n\t\twriteToLog(`${name} does not appear to be a Finsemble manifest. This app cannot be added to Finsemble.`, \"error\");\n\t\treturn cb();\n\t}\n\n\tconst ADVANCED_APP_LAUNCHER = data.defaultFolder;\n\tconst { folders } = data;\n\n\tfolders[ADVANCED_APP_LAUNCHER].apps.push(appConfig);\n\tif (folder !== ADVANCED_APP_LAUNCHER) folders[folder].apps.push(appConfig);\n\n\tFSBL.Clients.LauncherClient.registerComponent(\n\t\t{\n\t\t\tcomponentType: appConfig.name,\n\t\t\tmanifest: appConfig.manifest,\n\t\t},\n\t\t() => {\n\t\t\tgetStore().setValues(\n\t\t\t\t[\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"activeApp\",\n\t\t\t\t\t\tvalue: activeApp,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"appDefinitions\",\n\t\t\t\t\t\tvalue: installed,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tfield: \"appFolders.folders\",\n\t\t\t\t\t\tvalue: folders,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\tcb\n\t\t\t);\n\t\t}\n\t);\n}\n\n/**\n * Function to \"uninstall\" an app. Removes the id from a list of installed apps\n * @param {string} name The name of the app\n */\nfunction removeApp(id, cb = Function.prototype) {\n\tlet { installed, folders } = data;\n\tFSBL.Clients.LauncherClient.unRegisterComponent({ componentType: installed[id].name }, (err) => {\n\t\tif (err) {\n\t\t\tconsole.warn(\"Failed to deregister a component\");\n\t\t\treturn;\n\t\t}\n\n\t\tfor (const key in data.folders) {\n\t\t\tconst appIndex = findAppIndexInFolder(id, key, data.folders);\n\t\t\tif (appIndex > -1) {\n\t\t\t\tfolders[key].apps.splice(appIndex, 1);\n\t\t\t}\n\t\t}\n\n\t\t// Delete the app from the list\n\t\tdelete installed[id];\n\n\t\tgetStore().setValues(\n\t\t\t[\n\t\t\t\t{\n\t\t\t\t\tfield: \"appDefinitions\",\n\t\t\t\t\tvalue: installed,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfield: \"appFolders.folders\",\n\t\t\t\t\tvalue: folders,\n\t\t\t\t},\n\t\t\t],\n\t\t\tcb\n\t\t);\n\t});\n}\n\n/**\n * Function to set the 'active app' for the catalog.\n * @param {string} id The app id to show as the actively showcasing app\n */\nfunction openApp(id) {\n\tlet { apps } = data;\n\n\tlet index = apps.findIndex((app) => app.appId === id);\n\n\tif (index > -1) {\n\t\tgetStore().setValue({\n\t\t\tfield: \"activeApp\",\n\t\t\tvalue: id,\n\t\t});\n\t}\n}\n\n/**\n * Clear the activeApp in store\n */\nfunction clearApp() {\n\tgetStore().setValue({\n\t\tfield: \"activeApp\",\n\t\tvalue: null,\n\t});\n}\n\n/**\n * Return activeApp from store\n *\n * @returns {string} activeApp\n */\nfunction getActiveApp() {\n\treturn data.activeApp;\n}\n\n/**\n * Set the activeApp param in store\n *\n * @param {*} app\n */\nfunction setActiveApp(app) {\n\tgetStore().setValue({\n\t\tfield: \"activeApp\",\n\t\tvalue: app,\n\t});\n}\n\n/**\n * Retrieves a list of installed apps by id\n */\nfunction getInstalledApps() {\n\treturn data.installed;\n}\n\n/**\n * Gets the list of filtered apps (when searching/filtering by tags)\n */\nfunction getFilteredApps() {\n\treturn data.filteredApps;\n}\n\n/**\n * Clears the list of filtered apps\n */\nfunction clearFilteredApps() {\n\tgetStore().setValue({\n\t\tfield: \"filteredApps\",\n\t\tvalue: [],\n\t});\n}\n\n/**\n * Set the value of the search text in store\n *\n * @param {set} val Search string\n */\nfunction setSearchValue(val) {\n\tgetStore().setValue({ field: \"searchText\", value: val });\n}\n\n/**\n * Get the current value of the text in the store\n *\n * @returns {string} Search string\n */\nfunction getSearchValue() {\n\treturn data.searchText;\n}\n\n/**\n * Clears the search text in store\n *\n */\nfunction clearSearchText() {\n\tgetStore().setValue({ field: \"searchText\", value: \"\" });\n}\n\n/**\n * Get forceSearch store value\n *\n * @returns {boolean} forceSearch\n */\nfunction getForceSearch() {\n\treturn data.forceSearch;\n}\n\n/**\n * Set the forceSearch value\n *\n * @param {string} val Boolean value for forceSearch\n */\nfunction setForceSearch(val) {\n\tgetStore().setValue({ field: \"forceSearch\", value: val });\n}\n\n/**\n * Gets the list of active tags (these are tags that are actively filtering the content list)\n */\nfunction getActiveTags() {\n\treturn data.activeTags; // type: string[]\n}\n\n/**\n * Removes all tags from the active tags list\n */\nfunction clearTags() {\n\t_clearActiveTags();\n}\n\n/**\n * Return to the App Catalog home page\n */\nfunction goHome() {\n\tsetForceSearch(false);\n\tclearFilteredApps();\n\tclearApp();\n\tclearTags();\n\tclearSearchText();\n}\n\n/**\n * Send the search text and tags to the appd server and get a list of apps\n */\nfunction filterApps() {\n\tlet { activeTags, searchText } = data;\n\n\tif (activeTags.length === 0 && searchText === \"\") {\n\t\tgoHome();\n\t} else {\n\t\tappd.search({ text: searchText, tags: activeTags }, (err, retrievedData) => {\n\t\t\tif (err) {\n\t\t\t\tFSBL.Logger.system.error(`FDC3 App search failed!: ${err}`);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tgetStore().setValue({ field: \"activeApp\", value: null });\n\t\t\tgetStore().setValue({ field: \"activeTags\", value: activeTags });\n\t\t\tgetStore().setValue({ field: \"filteredApps\", value: retrievedData });\n\t\t});\n\t}\n}\n\n/**\n * Refreshes the active tags search\n */\nfunction refreshTagSearch() {\n\tfilterApps();\n}\n\n/**\n * Calls appD to search the directory of apps based on search text and tag names\n * @param {string} terms The search terms provided by the user\n */\nfunction searchApps(terms, cb = Function.prototype) {\n\tdata.searchText = terms;\n\tsetForceSearch(true);\n\tgetStore().setValue(\n\t\t{\n\t\t\tfield: \"searchText\",\n\t\t\tvalue: terms,\n\t\t},\n\t\t() => {\n\t\t\tfilterApps();\n\t\t\tcb();\n\t\t}\n\t);\n}\n\n/**\n * Private function to remove an active tag. This will filter apps based on tags\n * @param {string} tag The name of the tag\n */\nfunction _removeActiveTag(tag) {\n\tdata.activeTags = data.activeTags.filter((currentTag) => currentTag !== tag);\n\n\tgetStore().setValue({ field: \"activeTags\", value: data.activeTags });\n\tfilterApps();\n}\n\n/**\n * Removes an 'active tag' from the list of filtered tags\n * @param {string} tag The tag name\n */\nfunction removeTag(tag) {\n\t_removeActiveTag(tag);\n}\n\n/**\n * Private function to add an active tag. This will filter apps based on tags\n * @param {string} tag The name of the tag\n */\nfunction _addActiveTag(tag) {\n\tlet { activeTags } = data;\n\tif (!activeTags.includes(tag)) {\n\t\tactiveTags.push(tag);\n\t}\n\n\tgetStore().setValue({ field: \"activeTags\", value: activeTags }, () => {\n\t\tfilterApps();\n\t});\n}\n\n/**\n * Adds an 'active tag' to the list of filtered tags\n * @param {string} tag The tag name\n */\nfunction addTag(tag) {\n\t_addActiveTag(tag);\n}\n\nexport default {\n\tinitialize,\n\tgetApps,\n\tgetFilteredApps,\n\tclearFilteredApps,\n\tsearchApps,\n\tgetActiveTags,\n\tgetTags,\n\taddTag,\n\tremoveTag,\n\trefreshTagSearch,\n\tclearTags,\n\tclearSearchText,\n\taddApp,\n\tremoveApp,\n\topenApp,\n\tclearApp,\n\tgetInstalledApps,\n\tgetActiveApp,\n\tsetActiveApp,\n\tfilterApps,\n\tsetSearchValue,\n\tsetForceSearch,\n\tgetSearchValue,\n\tgetForceSearch,\n\tgoHome,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/common/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAqB,MAAM,iBAAiB,CAAC;AAwBnE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,uBAAuB;IAC7B,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,yBAAyB;IACjC,KAAK,EAAE,wBAAwB;IAC/B,cAAc,EAAE,+BAA+B;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAC7C,OAAO,GAAG,WAAW,EACrB,IAAI,GAAG,EAAE,EACT,UAAU,EACV,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,EACd,gBAAgB,GAAG,EAAE,EACrB,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhF,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,EAAE;QACtC,gDAAY,gBAAgB,IAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7F,UAAU,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAC,oBAAoB,EAAC,IAAI,EAAE,UAAU,GAAkB;YAC9F,IAAI;YACJ,SAAS,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAC,mBAAmB,EAAC,IAAI,EAAE,SAAS,GAAkB,CACpF,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\r\nimport \"./css/button.css\";\r\nimport { FinsembleIcon, FinsembleIconType } from \"./FinsembleIcon\";\r\n\r\nexport interface AdvancedButtonProps {\r\n\ticon: FinsembleIconType;\r\n\ttext: string;\r\n\tdisabled?: boolean;\r\n\tonClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\r\n\ttabIndex?: number;\r\n\tclassName?: string;\r\n\tbuttonAttributes?: object;\r\n}\r\n\r\nexport interface ButtonProps {\r\n\tfashion: \"secondary\" | \"primary\" | \"danger\" | \"ghost\" | \"danger ghost\";\r\n\ttext: string;\r\n\ticonBefore?: FinsembleIconType;\r\n\ticonAfter?: FinsembleIconType;\r\n\tdisabled?: boolean;\r\n\tonClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\r\n\tclassName?: string;\r\n\tbuttonAttributes?: object;\r\n\tfixedSize?: number;\r\n}\r\n\r\nexport const fashion_class_lookup = {\r\n\tsecondary: \"button-container-secondary\",\r\n\ttile: \"button-container-tile\",\r\n\tprimary: \"button-container-primary\",\r\n\ticon: \"button-container-icon\",\r\n\tdanger: \"button-container-danger\",\r\n\tghost: \"button-container-ghost\",\r\n\t\"danger ghost\": \"button-container-danger-ghost\",\r\n};\r\n\r\nexport const Button: React.FC<ButtonProps> = ({\r\n\tfashion = \"secondary\",\r\n\ttext = \"\",\r\n\ticonBefore,\r\n\ticonAfter,\r\n\tdisabled = false,\r\n\tonClick = () => {},\r\n\tclassName = \"\",\r\n\tbuttonAttributes = {},\r\n\tfixedSize,\r\n}) => {\r\n\tconst containerClassName = [fashion_class_lookup[fashion], className].join(\" \");\r\n\r\n\treturn (\r\n\t\t<div className={`${containerClassName}`}>\r\n\t\t\t<button {...buttonAttributes} onClick={onClick} disabled={disabled} style={{ width: fixedSize }}>\r\n\t\t\t\t{iconBefore && <FinsembleIcon className=\"button-icon-before\" icon={iconBefore}></FinsembleIcon>}\r\n\t\t\t\t{text}\r\n\t\t\t\t{iconAfter && <FinsembleIcon className=\"button-icon-after\" icon={iconAfter}></FinsembleIcon>}\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/common/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAqB,MAAM,iBAAiB,CAAC;AAwBnE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IACnC,SAAS,EAAE,4BAA4B;IACvC,IAAI,EAAE,uBAAuB;IAC7B,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,yBAAyB;IACjC,KAAK,EAAE,wBAAwB;IAC/B,cAAc,EAAE,+BAA+B;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAC7C,OAAO,GAAG,WAAW,EACrB,IAAI,GAAG,EAAE,EACT,UAAU,EACV,SAAS,EACT,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,EACd,gBAAgB,GAAG,EAAE,EACrB,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhF,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,EAAE;QACtC,gDAAY,gBAAgB,IAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7F,UAAU,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAC,oBAAoB,EAAC,IAAI,EAAE,UAAU,GAAkB;YAC9F,IAAI;YACJ,SAAS,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAC,mBAAmB,EAAC,IAAI,EAAE,SAAS,GAAkB,CACpF,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\nimport \"./css/button.css\";\nimport { FinsembleIcon, FinsembleIconType } from \"./FinsembleIcon\";\n\nexport interface AdvancedButtonProps {\n\ticon: FinsembleIconType;\n\ttext: string;\n\tdisabled?: boolean;\n\tonClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n\ttabIndex?: number;\n\tclassName?: string;\n\tbuttonAttributes?: object;\n}\n\nexport interface ButtonProps {\n\tfashion: \"secondary\" | \"primary\" | \"danger\" | \"ghost\" | \"danger ghost\";\n\ttext: string;\n\ticonBefore?: FinsembleIconType;\n\ticonAfter?: FinsembleIconType;\n\tdisabled?: boolean;\n\tonClick?: (e: React.MouseEvent<HTMLButtonElement>) => void;\n\tclassName?: string;\n\tbuttonAttributes?: object;\n\tfixedSize?: number;\n}\n\nexport const fashion_class_lookup = {\n\tsecondary: \"button-container-secondary\",\n\ttile: \"button-container-tile\",\n\tprimary: \"button-container-primary\",\n\ticon: \"button-container-icon\",\n\tdanger: \"button-container-danger\",\n\tghost: \"button-container-ghost\",\n\t\"danger ghost\": \"button-container-danger-ghost\",\n};\n\nexport const Button: React.FC<ButtonProps> = ({\n\tfashion = \"secondary\",\n\ttext = \"\",\n\ticonBefore,\n\ticonAfter,\n\tdisabled = false,\n\tonClick = () => {},\n\tclassName = \"\",\n\tbuttonAttributes = {},\n\tfixedSize,\n}) => {\n\tconst containerClassName = [fashion_class_lookup[fashion], className].join(\" \");\n\n\treturn (\n\t\t<div className={`${containerClassName}`}>\n\t\t\t<button {...buttonAttributes} onClick={onClick} disabled={disabled} style={{ width: fixedSize }}>\n\t\t\t\t{iconBefore && <FinsembleIcon className=\"button-icon-before\" icon={iconBefore}></FinsembleIcon>}\n\t\t\t\t{text}\n\t\t\t\t{iconAfter && <FinsembleIcon className=\"button-icon-after\" icon={iconAfter}></FinsembleIcon>}\n\t\t\t</button>\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonIcon.js","sourceRoot":"","sources":["../../../src/components/common/ButtonIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAuB,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAkC,CAAC,EACzD,IAAI,EACJ,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,CAAC,EACZ,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,EACd,gBAAgB,GAAG,EAAE,GACrB,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAErD,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,IAAI,SAAS,EAAE;QACnD,gDAAY,gBAAgB,IAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ;YAClG,oBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,GAAkB,CACnC,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\r\nimport { AdvancedButtonProps, fashion_class_lookup } from \"./Button\";\r\nimport \"./css/button.css\";\r\nimport { FinsembleIcon } from \"./FinsembleIcon\";\r\n\r\nexport const ButtonIcon: React.FC<AdvancedButtonProps> = ({\r\n\ticon,\r\n\ttext = \"\",\r\n\tdisabled = false,\r\n\ttabIndex = 0,\r\n\tonClick = () => {},\r\n\tclassName = \"\",\r\n\tbuttonAttributes = {},\r\n}) => {\r\n\tconst containerClassName = fashion_class_lookup.icon;\r\n\r\n\treturn (\r\n\t\t<div className={`${containerClassName} ${className}`}>\r\n\t\t\t<button {...buttonAttributes} onClick={onClick} disabled={disabled} title={text} tabIndex={tabIndex}>\r\n\t\t\t\t<FinsembleIcon icon={icon}></FinsembleIcon>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"ButtonIcon.js","sourceRoot":"","sources":["../../../src/components/common/ButtonIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAuB,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAkC,CAAC,EACzD,IAAI,EACJ,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,CAAC,EACZ,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,EACd,gBAAgB,GAAG,EAAE,GACrB,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAErD,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,IAAI,SAAS,EAAE;QACnD,gDAAY,gBAAgB,IAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ;YAClG,oBAAC,aAAa,IAAC,IAAI,EAAE,IAAI,GAAkB,CACnC,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\nimport { AdvancedButtonProps, fashion_class_lookup } from \"./Button\";\nimport \"./css/button.css\";\nimport { FinsembleIcon } from \"./FinsembleIcon\";\n\nexport const ButtonIcon: React.FC<AdvancedButtonProps> = ({\n\ticon,\n\ttext = \"\",\n\tdisabled = false,\n\ttabIndex = 0,\n\tonClick = () => {},\n\tclassName = \"\",\n\tbuttonAttributes = {},\n}) => {\n\tconst containerClassName = fashion_class_lookup.icon;\n\n\treturn (\n\t\t<div className={`${containerClassName} ${className}`}>\n\t\t\t<button {...buttonAttributes} onClick={onClick} disabled={disabled} title={text} tabIndex={tabIndex}>\n\t\t\t\t<FinsembleIcon icon={icon}></FinsembleIcon>\n\t\t\t</button>\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonRow.js","sourceRoot":"","sources":["../../../src/components/common/ButtonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAexC,MAAM,YAAY,GAAmB;IACpC,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,KAAK;IACf,eAAe,EAAE,KAAK;IACtB,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,SAAS,GAA6B,CAAC,EAC5C,KAAK,EACL,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,EACH,eAAe,EACf,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,CACN,6BACC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,EACpD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE;YACb,IAAI,CAAC,QAAQ,EAAE;gBACd,MAAM,IAAI,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,CAAC;aACP;QACF,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACtD,MAAM,IAAI,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,CAAC;aACP;QACF,CAAC;QAEA,GAAG,IAAI,CACP,6BACC,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAC5F,OAAO,EAAE,GAAG,EAAE;gBACb,WAAW,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC,GACA,CACF;QACA,CAAC,eAAe,IAAI,QAAQ,CAAC,IAAI,2BAAG,SAAS,EAAC,0BAA0B,GAAG;QAC5E,8BAAM,SAAS,EAAC,UAAU,IAAE,KAAK,CAAQ;QACzC,2BAAG,SAAS,EAAE,SAAS,GAAI,CACtB,CACN,CAAC;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;AACtC,eAAe,SAAS,CAAC","sourcesContent":["import React, { useState } from \"react\";\r\n\r\nexport interface ButtonRowProps {\r\n\tlabel?: string;\r\n\tonClick: Function;\r\n\ticonClass?: string;\r\n\tdisabled?: boolean;\r\n\timg?: string;\r\n\tshowDefaultIcon?: boolean;\r\n\tclassName?: string;\r\n\trole?: string;\r\n\ttabIndex?: number;\r\n\tonKeyDown?: Function;\r\n}\r\n\r\nconst defaultProps: ButtonRowProps = {\r\n\tlabel: \"\",\r\n\tonClick: () => {},\r\n\ticonClass: \"\",\r\n\tdisabled: false,\r\n\tshowDefaultIcon: false,\r\n\tclassName: \"row-btn\",\r\n};\r\n\r\nconst ButtonRow: React.FC<ButtonRowProps> = ({\r\n\tlabel,\r\n\tonClick,\r\n\ticonClass,\r\n\tdisabled,\r\n\timg,\r\n\tshowDefaultIcon,\r\n\tclassName,\r\n}) => {\r\n\tconst [imgError, setImgError] = useState(false);\r\n\treturn (\r\n\t\t<div\r\n\t\t\tclassName={disabled ? \"row-btn-disabled\" : className}\r\n\t\t\trole=\"button\"\r\n\t\t\ttabIndex={0}\r\n\t\t\tonClick={() => {\r\n\t\t\t\tif (!disabled) {\r\n\t\t\t\t\tconst func = onClick;\r\n\t\t\t\t\tfunc();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t\tonKeyDown={(e) => {\r\n\t\t\t\tif ((e.key === \"Enter\" || e.key === \" \") && !disabled) {\r\n\t\t\t\t\tconst func = onClick;\r\n\t\t\t\t\tfunc();\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{img && (\r\n\t\t\t\t<img\r\n\t\t\t\t\tsrc={img}\r\n\t\t\t\t\tstyle={showDefaultIcon || imgError ? { display: \"none\" } : { width: \"auto\", height: \"20px\" }}\r\n\t\t\t\t\tonError={() => {\r\n\t\t\t\t\t\tsetImgError(true);\r\n\t\t\t\t\t}}\r\n\t\t\t\t/>\r\n\t\t\t)}\r\n\t\t\t{(showDefaultIcon || imgError) && <i className=\"ff-finsemble default-img\" />}\r\n\t\t\t<span className=\"row__lbl\">{label}</span>\r\n\t\t\t<i className={iconClass} />\r\n\t\t</div>\r\n\t);\r\n};\r\n\r\nButtonRow.defaultProps = defaultProps;\r\nexport default ButtonRow;\r\n"]}
1
+ {"version":3,"file":"ButtonRow.js","sourceRoot":"","sources":["../../../src/components/common/ButtonRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAexC,MAAM,YAAY,GAAmB;IACpC,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;IACjB,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,KAAK;IACf,eAAe,EAAE,KAAK;IACtB,SAAS,EAAE,SAAS;CACpB,CAAC;AAEF,MAAM,SAAS,GAA6B,CAAC,EAC5C,KAAK,EACL,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,EACH,eAAe,EACf,SAAS,GACT,EAAE,EAAE;IACJ,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,CACN,6BACC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,EACpD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE;YACb,IAAI,CAAC,QAAQ,EAAE;gBACd,MAAM,IAAI,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,CAAC;aACP;QACF,CAAC,EACD,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACtD,MAAM,IAAI,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,CAAC;aACP;QACF,CAAC;QAEA,GAAG,IAAI,CACP,6BACC,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,eAAe,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAC5F,OAAO,EAAE,GAAG,EAAE;gBACb,WAAW,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC,GACA,CACF;QACA,CAAC,eAAe,IAAI,QAAQ,CAAC,IAAI,2BAAG,SAAS,EAAC,0BAA0B,GAAG;QAC5E,8BAAM,SAAS,EAAC,UAAU,IAAE,KAAK,CAAQ;QACzC,2BAAG,SAAS,EAAE,SAAS,GAAI,CACtB,CACN,CAAC;AACH,CAAC,CAAC;AAEF,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;AACtC,eAAe,SAAS,CAAC","sourcesContent":["import React, { useState } from \"react\";\n\nexport interface ButtonRowProps {\n\tlabel?: string;\n\tonClick: Function;\n\ticonClass?: string;\n\tdisabled?: boolean;\n\timg?: string;\n\tshowDefaultIcon?: boolean;\n\tclassName?: string;\n\trole?: string;\n\ttabIndex?: number;\n\tonKeyDown?: Function;\n}\n\nconst defaultProps: ButtonRowProps = {\n\tlabel: \"\",\n\tonClick: () => {},\n\ticonClass: \"\",\n\tdisabled: false,\n\tshowDefaultIcon: false,\n\tclassName: \"row-btn\",\n};\n\nconst ButtonRow: React.FC<ButtonRowProps> = ({\n\tlabel,\n\tonClick,\n\ticonClass,\n\tdisabled,\n\timg,\n\tshowDefaultIcon,\n\tclassName,\n}) => {\n\tconst [imgError, setImgError] = useState(false);\n\treturn (\n\t\t<div\n\t\t\tclassName={disabled ? \"row-btn-disabled\" : className}\n\t\t\trole=\"button\"\n\t\t\ttabIndex={0}\n\t\t\tonClick={() => {\n\t\t\t\tif (!disabled) {\n\t\t\t\t\tconst func = onClick;\n\t\t\t\t\tfunc();\n\t\t\t\t}\n\t\t\t}}\n\t\t\tonKeyDown={(e) => {\n\t\t\t\tif ((e.key === \"Enter\" || e.key === \" \") && !disabled) {\n\t\t\t\t\tconst func = onClick;\n\t\t\t\t\tfunc();\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t{img && (\n\t\t\t\t<img\n\t\t\t\t\tsrc={img}\n\t\t\t\t\tstyle={showDefaultIcon || imgError ? { display: \"none\" } : { width: \"auto\", height: \"20px\" }}\n\t\t\t\t\tonError={() => {\n\t\t\t\t\t\tsetImgError(true);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t{(showDefaultIcon || imgError) && <i className=\"ff-finsemble default-img\" />}\n\t\t\t<span className=\"row__lbl\">{label}</span>\n\t\t\t<i className={iconClass} />\n\t\t</div>\n\t);\n};\n\nButtonRow.defaultProps = defaultProps;\nexport default ButtonRow;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonTile.js","sourceRoot":"","sources":["../../../src/components/common/ButtonTile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAuB,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAkC,CAAC,EACzD,IAAI,GAAG,EAAE,EACT,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,GACd,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAErD,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,IAAI,SAAS,EAAE;QACnD,gCAAQ,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;YAC1C,IAAI,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAE,GAAG,oBAAoB,CAAC,IAAI,OAAO,EAAE,IAAI,EAAE,IAAI,GAAkB;YAEpG,iCAAM,IAAI,CAAO,CACT,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\r\nimport { AdvancedButtonProps, fashion_class_lookup } from \"./Button\";\r\nimport \"./css/button.css\";\r\nimport { FinsembleIcon } from \"./FinsembleIcon\";\r\n\r\nexport const ButtonTile: React.FC<AdvancedButtonProps> = ({\r\n\ttext = \"\",\r\n\ticon,\r\n\tdisabled = false,\r\n\tonClick = () => {},\r\n\tclassName = \"\",\r\n}) => {\r\n\tconst containerClassName = fashion_class_lookup.tile;\r\n\r\n\treturn (\r\n\t\t<div className={`${containerClassName} ${className}`}>\r\n\t\t\t<button onClick={onClick} disabled={disabled}>\r\n\t\t\t\t{icon && <FinsembleIcon className={`${fashion_class_lookup.tile}-icon`} icon={icon}></FinsembleIcon>}\r\n\r\n\t\t\t\t<div>{text}</div>\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"ButtonTile.js","sourceRoot":"","sources":["../../../src/components/common/ButtonTile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAuB,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,CAAC,MAAM,UAAU,GAAkC,CAAC,EACzD,IAAI,GAAG,EAAE,EACT,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,SAAS,GAAG,EAAE,GACd,EAAE,EAAE;IACJ,MAAM,kBAAkB,GAAG,oBAAoB,CAAC,IAAI,CAAC;IAErD,OAAO,CACN,6BAAK,SAAS,EAAE,GAAG,kBAAkB,IAAI,SAAS,EAAE;QACnD,gCAAQ,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;YAC1C,IAAI,IAAI,oBAAC,aAAa,IAAC,SAAS,EAAE,GAAG,oBAAoB,CAAC,IAAI,OAAO,EAAE,IAAI,EAAE,IAAI,GAAkB;YAEpG,iCAAM,IAAI,CAAO,CACT,CACJ,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\nimport { AdvancedButtonProps, fashion_class_lookup } from \"./Button\";\nimport \"./css/button.css\";\nimport { FinsembleIcon } from \"./FinsembleIcon\";\n\nexport const ButtonTile: React.FC<AdvancedButtonProps> = ({\n\ttext = \"\",\n\ticon,\n\tdisabled = false,\n\tonClick = () => {},\n\tclassName = \"\",\n}) => {\n\tconst containerClassName = fashion_class_lookup.tile;\n\n\treturn (\n\t\t<div className={`${containerClassName} ${className}`}>\n\t\t\t<button onClick={onClick} disabled={disabled}>\n\t\t\t\t{icon && <FinsembleIcon className={`${fashion_class_lookup.tile}-icon`} icon={icon}></FinsembleIcon>}\n\n\t\t\t\t<div>{text}</div>\n\t\t\t</button>\n\t\t</div>\n\t);\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../src/components/common/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,MAAM,CAAC,MAAM,QAAQ,GAA4B,CAAC,EACjD,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,EAAE,EACV,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GAClB,EAAE,EAAE;IACJ,IAAI,eAAe,GAAG,uBAAuB,CAAC;IAC9C,IAAI,OAAO,EAAE;QACZ,eAAe,GAAG,GAAG,eAAe,UAAU,CAAC;KAC/C;IACD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,QAAQ,EAAE;QACb,KAAK,GAAG;YACP,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,KAAK;SACd,CAAC;KACF;IACD,OAAO,CACN,6BACC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAC,+BAA+B,EACzC,IAAI,EAAC,UAAU,gBACH,KAAK,EACjB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EACtC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gBACvC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;aACxB;QACF,CAAC;QAED,6BAAK,SAAS,EAAE,eAAe,IAAG,OAAO,IAAI,2BAAG,SAAS,EAAC,eAAe,GAAK,CAAO;QACrF,6BAAK,SAAS,EAAC,6BAA6B,IAAE,KAAK,CAAO,CACrD,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\r\n\r\nexport interface CheckboxProps {\r\n\tchecked?: boolean;\r\n\tdisabled?: boolean;\r\n\tlabel?: string;\r\n\tonClick?: (e: React.MouseEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>) => void;\r\n}\r\n\r\nexport const Checkbox: React.FC<CheckboxProps> = ({\r\n\tchecked = false,\r\n\tdisabled = false,\r\n\tlabel = \"\",\r\n\tonClick = () => {},\r\n}) => {\r\n\tlet checkboxClasses = \"complex-menu-checkbox\";\r\n\tif (checked) {\r\n\t\tcheckboxClasses = `${checkboxClasses} checked`;\r\n\t}\r\n\tlet style = {};\r\n\tif (disabled) {\r\n\t\tstyle = {\r\n\t\t\tcursor: \"default\",\r\n\t\t\topacity: \".55\",\r\n\t\t};\r\n\t}\r\n\treturn (\r\n\t\t<div\r\n\t\t\tstyle={style}\r\n\t\t\tclassName=\"complex-menu-checkbox-wrapper\"\r\n\t\t\trole=\"checkbox\"\r\n\t\t\taria-label={label}\r\n\t\t\ttabIndex={0}\r\n\t\t\tonClick={disabled ? () => {} : onClick}\r\n\t\t\tonKeyDown={(e) => {\r\n\t\t\t\tif (e.key === \"Enter\" || e.key === \" \") {\r\n\t\t\t\t\t!disabled && onClick(e);\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t<div className={checkboxClasses}>{checked && <i className=\"ff-check-mark\"></i>}</div>\r\n\t\t\t<div className=\"complex-menu-checkbox-label\">{label}</div>\r\n\t\t</div>\r\n\t);\r\n};\r\n"]}
1
+ {"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../src/components/common/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,MAAM,CAAC,MAAM,QAAQ,GAA4B,CAAC,EACjD,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,EAAE,EACV,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GAClB,EAAE,EAAE;IACJ,IAAI,eAAe,GAAG,uBAAuB,CAAC;IAC9C,IAAI,OAAO,EAAE;QACZ,eAAe,GAAG,GAAG,eAAe,UAAU,CAAC;KAC/C;IACD,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,QAAQ,EAAE;QACb,KAAK,GAAG;YACP,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,KAAK;SACd,CAAC;KACF;IACD,OAAO,CACN,6BACC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAC,+BAA+B,EACzC,IAAI,EAAC,UAAU,gBACH,KAAK,EACjB,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EACtC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YAChB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gBACvC,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;aACxB;QACF,CAAC;QAED,6BAAK,SAAS,EAAE,eAAe,IAAG,OAAO,IAAI,2BAAG,SAAS,EAAC,eAAe,GAAK,CAAO;QACrF,6BAAK,SAAS,EAAC,6BAA6B,IAAE,KAAK,CAAO,CACrD,CACN,CAAC;AACH,CAAC,CAAC","sourcesContent":["import React from \"react\";\n\nexport interface CheckboxProps {\n\tchecked?: boolean;\n\tdisabled?: boolean;\n\tlabel?: string;\n\tonClick?: (e: React.MouseEvent<HTMLDivElement> | React.KeyboardEvent<HTMLDivElement>) => void;\n}\n\nexport const Checkbox: React.FC<CheckboxProps> = ({\n\tchecked = false,\n\tdisabled = false,\n\tlabel = \"\",\n\tonClick = () => {},\n}) => {\n\tlet checkboxClasses = \"complex-menu-checkbox\";\n\tif (checked) {\n\t\tcheckboxClasses = `${checkboxClasses} checked`;\n\t}\n\tlet style = {};\n\tif (disabled) {\n\t\tstyle = {\n\t\t\tcursor: \"default\",\n\t\t\topacity: \".55\",\n\t\t};\n\t}\n\treturn (\n\t\t<div\n\t\t\tstyle={style}\n\t\t\tclassName=\"complex-menu-checkbox-wrapper\"\n\t\t\trole=\"checkbox\"\n\t\t\taria-label={label}\n\t\t\ttabIndex={0}\n\t\t\tonClick={disabled ? () => {} : onClick}\n\t\t\tonKeyDown={(e) => {\n\t\t\t\tif (e.key === \"Enter\" || e.key === \" \") {\n\t\t\t\t\t!disabled && onClick(e);\n\t\t\t\t}\n\t\t\t}}\n\t\t>\n\t\t\t<div className={checkboxClasses}>{checked && <i className=\"ff-check-mark\"></i>}</div>\n\t\t\t<div className=\"complex-menu-checkbox-label\">{label}</div>\n\t\t</div>\n\t);\n};\n"]}