synapse-react-client 4.0.1 → 4.0.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 (274) hide show
  1. package/dist/SWC.index.js +1 -1
  2. package/dist/assets/icons/AwardScroll.d.ts +5 -0
  3. package/dist/assets/icons/AwardScroll.d.ts.map +1 -0
  4. package/dist/assets/icons/AwardScroll.js +78 -0
  5. package/dist/assets/icons/AwardScroll.js.map +1 -0
  6. package/dist/assets/icons/Baseline.d.ts +5 -0
  7. package/dist/assets/icons/Baseline.d.ts.map +1 -0
  8. package/dist/assets/icons/Baseline.js +43 -0
  9. package/dist/assets/icons/Baseline.js.map +1 -0
  10. package/dist/assets/icons/Challenge.svg +13 -0
  11. package/dist/assets/icons/Challenge.svg.js +7 -0
  12. package/dist/assets/icons/Challenge.svg.js.map +1 -0
  13. package/dist/assets/icons/ClappingHands.d.ts +5 -0
  14. package/dist/assets/icons/ClappingHands.d.ts.map +1 -0
  15. package/dist/assets/icons/ClappingHands.js +106 -0
  16. package/dist/assets/icons/ClappingHands.js.map +1 -0
  17. package/dist/assets/icons/HandWithMoney.d.ts +5 -0
  18. package/dist/assets/icons/HandWithMoney.d.ts.map +1 -0
  19. package/dist/assets/icons/HandWithMoney.js +15 -0
  20. package/dist/assets/icons/HandWithMoney.js.map +1 -0
  21. package/dist/assets/icons/MultiFile.d.ts +5 -0
  22. package/dist/assets/icons/MultiFile.d.ts.map +1 -0
  23. package/dist/assets/icons/MultiFile.js +8 -0
  24. package/dist/assets/icons/MultiFile.js.map +1 -0
  25. package/dist/assets/icons/MultiFile.svg +4 -0
  26. package/dist/assets/icons/MultiFile.svg.js +7 -0
  27. package/dist/assets/icons/MultiFile.svg.js.map +1 -0
  28. package/dist/assets/icons/OpenBook.d.ts +5 -0
  29. package/dist/assets/icons/OpenBook.d.ts.map +1 -0
  30. package/dist/assets/icons/OpenBook.js +99 -0
  31. package/dist/assets/icons/OpenBook.js.map +1 -0
  32. package/dist/assets/icons/Podium.d.ts +5 -0
  33. package/dist/assets/icons/Podium.d.ts.map +1 -0
  34. package/dist/assets/icons/Podium.js +36 -0
  35. package/dist/assets/icons/Podium.js.map +1 -0
  36. package/dist/assets/icons/RosetteRibbon.d.ts +5 -0
  37. package/dist/assets/icons/RosetteRibbon.d.ts.map +1 -0
  38. package/dist/assets/icons/RosetteRibbon.js +36 -0
  39. package/dist/assets/icons/RosetteRibbon.js.map +1 -0
  40. package/dist/assets/icons/StarTrophy.d.ts +5 -0
  41. package/dist/assets/icons/StarTrophy.d.ts.map +1 -0
  42. package/dist/assets/icons/StarTrophy.js +99 -0
  43. package/dist/assets/icons/StarTrophy.js.map +1 -0
  44. package/dist/assets/icons/ThreeStars.d.ts +5 -0
  45. package/dist/assets/icons/ThreeStars.d.ts.map +1 -0
  46. package/dist/assets/icons/ThreeStars.js +71 -0
  47. package/dist/assets/icons/ThreeStars.js.map +1 -0
  48. package/dist/assets/icons/UnpackagableFile.d.ts +5 -0
  49. package/dist/assets/icons/UnpackagableFile.d.ts.map +1 -0
  50. package/dist/assets/icons/UnpackagableFile.js +8 -0
  51. package/dist/assets/icons/UnpackagableFile.js.map +1 -0
  52. package/dist/assets/icons/UnpackagableFile.svg +4 -0
  53. package/dist/assets/icons/UnpackagableFile.svg.js +7 -0
  54. package/dist/assets/icons/UnpackagableFile.svg.js.map +1 -0
  55. package/dist/assets/mui_components/PackagableFile.d.ts.map +1 -1
  56. package/dist/assets/mui_components/PackagableFile.js +5 -4
  57. package/dist/assets/mui_components/PackagableFile.js.map +1 -1
  58. package/dist/assets/mui_components/PackagableFile.svg +3 -0
  59. package/dist/assets/mui_components/PackagableFile.svg.js +7 -0
  60. package/dist/assets/mui_components/PackagableFile.svg.js.map +1 -0
  61. package/dist/assets/themed_icons/index.d.ts +1 -2
  62. package/dist/assets/themed_icons/index.d.ts.map +1 -1
  63. package/dist/assets/themed_icons/index.js +8 -10
  64. package/dist/assets/themed_icons/index.js.map +1 -1
  65. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +4 -4
  66. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
  67. package/dist/components/AddToDownloadListV2.js +10 -10
  68. package/dist/components/AddToDownloadListV2.js.map +1 -1
  69. package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
  70. package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -2
  71. package/dist/components/BasePortalCard/BasePortalCard.d.ts.map +1 -1
  72. package/dist/components/BasePortalCard/BasePortalCard.js +21 -28
  73. package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
  74. package/dist/components/BasePortalCard/BasePortalCard.module.scss +7 -1
  75. package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +11 -11
  76. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
  77. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +24 -24
  78. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
  79. package/dist/components/CardContainerLogic/CardContainerLogic.d.ts +5 -1
  80. package/dist/components/CardContainerLogic/CardContainerLogic.d.ts.map +1 -1
  81. package/dist/components/CardContainerLogic/CardContainerLogic.js.map +1 -1
  82. package/dist/components/CardContainerLogic/index.d.ts +1 -1
  83. package/dist/components/CardContainerLogic/index.d.ts.map +1 -1
  84. package/dist/components/CardDeck/TableQueryCardDeck.js +12 -9
  85. package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
  86. package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js +33 -33
  87. package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
  88. package/dist/components/ChangePassword/useChangePasswordFormState.js +5 -2
  89. package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
  90. package/dist/components/ComponentCollapse.d.ts +6 -10
  91. package/dist/components/ComponentCollapse.d.ts.map +1 -1
  92. package/dist/components/ComponentCollapse.js +31 -35
  93. package/dist/components/ComponentCollapse.js.map +1 -1
  94. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +12 -9
  95. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
  96. package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +8 -3
  97. package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
  98. package/dist/components/DataGrid/SynapseGrid.js +8 -3
  99. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  100. package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +8 -3
  101. package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
  102. package/dist/components/DirectDownload/DirectDownload.d.ts.map +1 -1
  103. package/dist/components/DirectDownload/DirectDownload.js +23 -23
  104. package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
  105. package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts +6 -2
  106. package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts.map +1 -1
  107. package/dist/components/DownloadCart/AvailableForDownloadTable.js +10 -8
  108. package/dist/components/DownloadCart/AvailableForDownloadTable.js.map +1 -1
  109. package/dist/components/DownloadCart/CreatePackageV2.css +1 -0
  110. package/dist/components/DownloadCart/CreatePackageV2.d.ts.map +1 -1
  111. package/dist/components/DownloadCart/CreatePackageV2.js +50 -46
  112. package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
  113. package/dist/components/DownloadCart/CreatePackageV2.module.scss +38 -0
  114. package/dist/components/DownloadCart/CreatePackageV2.module.scss.js +14 -0
  115. package/dist/components/DownloadCart/CreatePackageV2.module.scss.js.map +1 -0
  116. package/dist/components/DownloadCart/DownloadCartPage.css +1 -0
  117. package/dist/components/DownloadCart/DownloadCartPage.d.ts.map +1 -1
  118. package/dist/components/DownloadCart/DownloadCartPage.js +316 -186
  119. package/dist/components/DownloadCart/DownloadCartPage.js.map +1 -1
  120. package/dist/components/DownloadCart/DownloadCartPage.module.scss +217 -0
  121. package/dist/components/DownloadCart/DownloadCartPage.module.scss.js +48 -0
  122. package/dist/components/DownloadCart/DownloadCartPage.module.scss.js.map +1 -0
  123. package/dist/components/DownloadCart/DownloadDetails.js +1 -1
  124. package/dist/components/DownloadCart/DownloadDetails.js.map +1 -1
  125. package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js +33 -33
  126. package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
  127. package/dist/components/DownloadCart/DownloadListTable.d.ts +4 -1
  128. package/dist/components/DownloadCart/DownloadListTable.d.ts.map +1 -1
  129. package/dist/components/DownloadCart/DownloadListTable.js +156 -236
  130. package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
  131. package/dist/components/DownloadCart/ShowDownloadV2.js +5 -5
  132. package/dist/components/DownloadCart/ShowDownloadV2.js.map +1 -1
  133. package/dist/components/Ecosystem/EcosystemSkeleton.js +8 -3
  134. package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
  135. package/dist/components/EntityDownloadButton/EntityDownloadButton.d.ts +3 -0
  136. package/dist/components/EntityDownloadButton/EntityDownloadButton.d.ts.map +1 -1
  137. package/dist/components/EntityDownloadButton/EntityDownloadButton.js +113 -119
  138. package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
  139. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +3 -3
  140. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
  141. package/dist/components/FeaturedDataTabs/FacetPlotsCard.js +6 -2
  142. package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
  143. package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js +11 -8
  144. package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js.map +1 -1
  145. package/dist/components/FullWidthAlert/FullWidthAlert.d.ts +2 -2
  146. package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
  147. package/dist/components/GenericCard/GenericCard.d.ts +5 -5
  148. package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
  149. package/dist/components/GenericCard/GenericCard.js +117 -103
  150. package/dist/components/GenericCard/GenericCard.js.map +1 -1
  151. package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts +10 -0
  152. package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts.map +1 -0
  153. package/dist/components/GenericCard/LabelMaybeWithIcon.js +33 -0
  154. package/dist/components/GenericCard/LabelMaybeWithIcon.js.map +1 -0
  155. package/dist/components/GenericCard/SynapseCardLabel.d.ts +2 -1
  156. package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
  157. package/dist/components/GenericCard/SynapseCardLabel.js +86 -81
  158. package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
  159. package/dist/components/GenericCard/TableRowGenericCard.d.ts +7 -1
  160. package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
  161. package/dist/components/GenericCard/TableRowGenericCard.js +239 -202
  162. package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
  163. package/dist/components/HeaderCard.js +17 -13
  164. package/dist/components/HeaderCard.js.map +1 -1
  165. package/dist/components/Icon/Icon.js +52 -52
  166. package/dist/components/Icon/Icon.js.map +1 -1
  167. package/dist/components/IconSvg/IconSvg.d.ts +1 -1
  168. package/dist/components/IconSvg/IconSvg.d.ts.map +1 -1
  169. package/dist/components/IconSvg/IconSvg.js +215 -171
  170. package/dist/components/IconSvg/IconSvg.js.map +1 -1
  171. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts +1 -0
  172. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
  173. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +103 -102
  174. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
  175. package/dist/components/StorybookComponentWrapper.js +6 -3
  176. package/dist/components/StorybookComponentWrapper.js.map +1 -1
  177. package/dist/components/SynapseChat/SynapseChat.d.ts +7 -1
  178. package/dist/components/SynapseChat/SynapseChat.d.ts.map +1 -1
  179. package/dist/components/SynapseChat/SynapseChat.js +76 -67
  180. package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
  181. package/dist/components/SynapseChat/SynapseChatInteraction.d.ts +2 -1
  182. package/dist/components/SynapseChat/SynapseChatInteraction.d.ts.map +1 -1
  183. package/dist/components/SynapseChat/SynapseChatInteraction.js +83 -58
  184. package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
  185. package/dist/components/SynapseChat/SynapseChatMessage.d.ts +1 -0
  186. package/dist/components/SynapseChat/SynapseChatMessage.d.ts.map +1 -1
  187. package/dist/components/SynapseChat/SynapseChatMessage.js +16 -15
  188. package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
  189. package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts +12 -0
  190. package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts.map +1 -0
  191. package/dist/components/SynapseChat/SynapsePortalChatDialog.js +30 -0
  192. package/dist/components/SynapseChat/SynapsePortalChatDialog.js.map +1 -0
  193. package/dist/components/SynapseChat/extractMessageFromTraceEvent.d.ts.map +1 -1
  194. package/dist/components/SynapseChat/extractMessageFromTraceEvent.js +22 -16
  195. package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
  196. package/dist/components/SynapseChat/index.d.ts +2 -0
  197. package/dist/components/SynapseChat/index.d.ts.map +1 -1
  198. package/dist/components/SynapseChat/index.js +5 -3
  199. package/dist/components/SynapseChat/index.js.map +1 -1
  200. package/dist/components/SynapseChat/useChatState.d.ts +1 -1
  201. package/dist/components/SynapseChat/useChatState.d.ts.map +1 -1
  202. package/dist/components/SynapseChat/useChatState.js +10 -7
  203. package/dist/components/SynapseChat/useChatState.js.map +1 -1
  204. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.d.ts.map +1 -1
  205. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js +30 -32
  206. package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js.map +1 -1
  207. package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.d.ts.map +1 -1
  208. package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js +27 -30
  209. package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
  210. package/dist/components/SynapseHomepageV2/SynapseSearchChips.d.ts.map +1 -1
  211. package/dist/components/SynapseHomepageV2/SynapseSearchChips.js +14 -17
  212. package/dist/components/SynapseHomepageV2/SynapseSearchChips.js.map +1 -1
  213. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts.map +1 -1
  214. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +114 -115
  215. package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
  216. package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.d.ts.map +1 -1
  217. package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +66 -64
  218. package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js.map +1 -1
  219. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +13 -13
  220. package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
  221. package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js +9 -9
  222. package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
  223. package/dist/components/TextToComponentCollapse.d.ts +16 -0
  224. package/dist/components/TextToComponentCollapse.d.ts.map +1 -0
  225. package/dist/components/TextToComponentCollapse.js +29 -0
  226. package/dist/components/TextToComponentCollapse.js.map +1 -0
  227. package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +8 -3
  228. package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js.map +1 -1
  229. package/dist/components/download_list/DownloadConfirmationUI.d.ts +1 -1
  230. package/dist/components/download_list/DownloadConfirmationUI.js +22 -22
  231. package/dist/components/download_list/DownloadConfirmationUI.js.map +1 -1
  232. package/dist/components/download_list/DownloadConfirmationUtils.js +4 -4
  233. package/dist/components/download_list/DownloadConfirmationUtils.js.map +1 -1
  234. package/dist/components/index.js +85 -83
  235. package/dist/components/index.js.map +1 -1
  236. package/dist/components/row_renderers/ObservationCard.js +12 -11
  237. package/dist/components/row_renderers/ObservationCard.js.map +1 -1
  238. package/dist/components/row_renderers/utils/CardFooter.d.ts +1 -3
  239. package/dist/components/row_renderers/utils/CardFooter.d.ts.map +1 -1
  240. package/dist/components/row_renderers/utils/CardFooter.js +31 -45
  241. package/dist/components/row_renderers/utils/CardFooter.js.map +1 -1
  242. package/dist/components/table/CsvPreview/CsvPreview.js +8 -3
  243. package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
  244. package/dist/components/table/CsvPreview/CsvPreviewDialog.js +8 -3
  245. package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
  246. package/dist/features/curator/GridPage/GridPage.js +8 -3
  247. package/dist/features/curator/GridPage/GridPage.js.map +1 -1
  248. package/dist/features/curator/GridPage/components/GridPageTitle.js +8 -3
  249. package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
  250. package/dist/index.js +137 -135
  251. package/dist/index.js.map +1 -1
  252. package/dist/style/components/_all.scss +0 -1
  253. package/dist/style/components/_cards.scss +22 -0
  254. package/dist/style/components/_download-list-v2.scss +1 -1
  255. package/dist/style/components/_query-wrapper-plot-nav.scss +13 -0
  256. package/dist/style/main.css +1 -1
  257. package/dist/tsconfig.build.tsbuildinfo +1 -1
  258. package/dist/utils/AppUtils/session/ApplicationSessionManager.d.ts.map +1 -1
  259. package/dist/utils/AppUtils/session/ApplicationSessionManager.js.map +1 -1
  260. package/dist/utils/context/FullContextProvider.js +9 -9
  261. package/dist/utils/context/FullContextProvider.js.map +1 -1
  262. package/dist/utils/context/SynapseContext.d.ts.map +1 -1
  263. package/dist/utils/context/SynapseContext.js +1 -0
  264. package/dist/utils/context/SynapseContext.js.map +1 -1
  265. package/dist/utils/functions/SqlFunctions.d.ts +4 -0
  266. package/dist/utils/functions/SqlFunctions.d.ts.map +1 -1
  267. package/dist/utils/functions/SqlFunctions.js +25 -23
  268. package/dist/utils/functions/SqlFunctions.js.map +1 -1
  269. package/package.json +6 -6
  270. package/dist/assets/themed_icons/Challenge.d.ts +0 -3
  271. package/dist/assets/themed_icons/Challenge.d.ts.map +0 -1
  272. package/dist/assets/themed_icons/Challenge.js +0 -25
  273. package/dist/assets/themed_icons/Challenge.js.map +0 -1
  274. package/dist/style/components/_download-cart-page.scss +0 -204
@@ -1 +1 @@
1
- {"version":3,"file":"SynapseNavDrawer.js","sources":["../../../src/components/SynapseNavDrawer/SynapseNavDrawer.tsx"],"sourcesContent":["import React from 'react'\nimport SynapseIconWhite from '@/assets/icons/SynapseIconWhite'\nimport SynapseLogoName from '@/assets/icons/SynapseLogoName'\nimport {\n useGetCurrentUserBundle,\n useGetDownloadListStatistics,\n useSearchAccessSubmissionsInfinite,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useApplicationSessionContext,\n useSynapseContext,\n} from '@/utils'\nimport { useOneSageURL } from '@/utils/hooks/useOneSageURL'\nimport {\n Badge,\n Drawer,\n InputAdornment,\n List,\n ListItemButton,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport {\n Direction,\n SubmissionSortField,\n SubmissionState,\n FeatureFlagEnum,\n} from '@sage-bionetworks/synapse-types'\nimport { KeyboardEvent, ReactNode, useState } from 'react'\nimport { CreateProjectModal } from '../CreateProjectModal/CreateProjectModal'\nimport IconSvg, { IconName } from '../IconSvg/IconSvg'\nimport { PLANS_LINK } from '../SynapseHomepageV2/SynapseHomepageNavBar'\nimport UserCard from '../UserCard/UserCard'\nimport { useGetFeatureFlag } from '@/synapse-queries/featureflags/useGetFeatureFlag'\nimport { DEFAULT_SEARCH_QUERY } from '@/utils/searchDefaults'\n\nexport type SynapseNavDrawerProps = {\n initIsOpen?: boolean\n gotoPlace: (href: string) => void\n}\n\ntype MenuItemParams = {\n tooltip: string\n iconName?: IconName\n onClickOpenNavMenu?: NavItem\n onClickGoToPlace?: () => void\n additionalChildren?: ReactNode\n badgeContent?: string | number\n isCurrentlySelectedItem?: boolean\n handleDrawerClose: () => void\n handleDrawerOpen: (navItem?: NavItem) => void\n}\n\nexport enum NavItem {\n PROJECTS,\n FAVORITES,\n TEAMS,\n CHALLENGES,\n DOWNLOADS,\n SEARCH,\n PROFILE,\n HELP,\n}\n\nexport const getSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...DEFAULT_SEARCH_QUERY,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst projectSearchJson = {\n // To support project search, we send this json object in the url.\n // We update the queryTerm array based on user input.\n ...DEFAULT_SEARCH_QUERY,\n booleanQuery: [\n {\n key: 'node_type',\n value: 'project',\n },\n ],\n}\nconst getProjectSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...projectSearchJson,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst NavDrawerListItem = (props: MenuItemParams): React.ReactNode => {\n const {\n tooltip,\n iconName,\n onClickOpenNavMenu,\n onClickGoToPlace,\n additionalChildren,\n badgeContent,\n isCurrentlySelectedItem = false,\n handleDrawerClose,\n handleDrawerOpen,\n } = props\n const handler =\n isCurrentlySelectedItem || onClickGoToPlace\n ? handleDrawerClose\n : () => {\n handleDrawerOpen(onClickOpenNavMenu)\n }\n const item = iconName ? (\n <>\n <IconSvg icon={iconName} /> {additionalChildren}{' '}\n </>\n ) : (\n additionalChildren\n )\n\n const listItem = (\n <Tooltip title={tooltip} placement=\"right\">\n <ListItemButton\n key={iconName}\n onClick={handler}\n className=\"SRC-whiteText\"\n selected={isCurrentlySelectedItem}\n >\n <Badge badgeContent={badgeContent} color=\"secondary\">\n {item}\n </Badge>\n </ListItemButton>\n </Tooltip>\n )\n\n return onClickGoToPlace ? (\n <li>\n <a\n onClick={onClickGoToPlace}\n rel=\"noopener noreferrer\"\n className=\"SRC-whiteText\"\n >\n {listItem}\n </a>\n </li>\n ) : (\n <li>{listItem}</li>\n )\n}\n\n/**\n * Displays the Synapse navigational drawer on the left side of the page. Has links to various areas if logged in.\n */\nexport function SynapseNavDrawer({\n initIsOpen = false,\n gotoPlace,\n}: SynapseNavDrawerProps) {\n const [isOpen, setOpen] = useState(initIsOpen)\n const [selectedItem, setSelectedItem] = useState<NavItem>()\n const [projectSearchText, setProjectSearchText] = useState<string>('')\n const [docSiteSearchText, setDocSiteSearchText] = useState<string>('')\n const [isShowingCreateProjectModal, setIsShowingCreateProjectModal] =\n useState<boolean>(false)\n\n const { clearSession } = useApplicationSessionContext()\n\n const { isAuthenticated } = useSynapseContext()\n\n const { data: currentUserBundle } = useGetCurrentUserBundle()\n\n // If the user is logged out, the UserBundle provides an \"anonymous\" user profile, so override that case with undefined\n const currentUserProfile =\n isAuthenticated && currentUserBundle\n ? currentUserBundle.userProfile\n : undefined\n\n const { data: downloadListStatistics } = useGetDownloadListStatistics({\n enabled: isAuthenticated,\n })\n\n const numberOfFilesInDownloadList = downloadListStatistics?.totalNumberOfFiles\n\n const searchV2Enabled = useGetFeatureFlag(FeatureFlagEnum.SEARCHV2_ENABLED)\n\n const { data: openSubmissionData } = useSearchAccessSubmissionsInfinite(\n {\n submissionState: SubmissionState.SUBMITTED,\n sort: [\n {\n field: SubmissionSortField.CREATED_ON,\n direction: Direction.DESC,\n },\n ],\n },\n {\n enabled: currentUserBundle?.isARReviewer,\n },\n )\n\n let countOfOpenSubmissionsForReview: number | string =\n openSubmissionData?.pages[0].results.length ?? 0\n if (openSubmissionData?.pages[0].nextPageToken) {\n countOfOpenSubmissionsForReview = `${countOfOpenSubmissionsForReview}+`\n }\n\n const handleDrawerOpen = (navItem?: NavItem) => {\n setOpen(true)\n setSelectedItem(navItem)\n }\n\n const handleDrawerClose = () => {\n setOpen(false)\n setSelectedItem(undefined)\n }\n\n const onProjectSearch = (searchTerm: string) => {\n if (searchV2Enabled) {\n gotoPlace(\n `/SearchV2:default?query=${getProjectSearchToken(\n searchTerm.split(/[ ,]+/),\n )}`,\n )\n } else {\n gotoPlace(`/Search:${getProjectSearchToken(searchTerm.split(/[ ,]+/))}`)\n }\n }\n\n const oneSageURL = useOneSageURL()\n const accountSettingsURL = useOneSageURL('/authenticated/myaccount')\n\n return (\n <>\n <div className=\"SynapseNavDrawer\">\n <Drawer\n variant=\"permanent\"\n className={`SynapseNavDrawerMenu ${isOpen ? 'tempDrawerOpen' : ''}`}\n >\n <div onClick={handleDrawerClose}>\n <a\n className=\"synapseIcon\"\n rel=\"noopener noreferrer\"\n onClick={() => gotoPlace('/Home:x')}\n aria-label=\"Synapse Home\"\n >\n <SynapseIconWhite />\n </a>\n </div>\n <List>\n {isAuthenticated && currentUserProfile && (\n <>\n <NavDrawerListItem\n tooltip=\"Projects\"\n iconName=\"dashboard\"\n onClickOpenNavMenu={NavItem.PROJECTS}\n isCurrentlySelectedItem={selectedItem == NavItem.PROJECTS}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Favorites\"\n iconName=\"favTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/favorites`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Teams\"\n iconName=\"peopleTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(`/Profile:${currentUserProfile.ownerId}/teams`)\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Challenges\"\n iconName=\"challengesTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/challenges`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Download Cart\"\n iconName=\"download\"\n onClickGoToPlace={() => gotoPlace('/DownloadCart:0')}\n badgeContent={numberOfFilesInDownloadList}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Trash Can\"\n iconName=\"delete\"\n onClickGoToPlace={() => gotoPlace('/Trash:0')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n {currentUserBundle?.isARReviewer && (\n <NavDrawerListItem\n tooltip=\"Data Access Management\"\n iconName=\"accessManagement\"\n onClickGoToPlace={() =>\n gotoPlace('/DataAccessManagement:default/Submissions')\n }\n badgeContent={countOfOpenSubmissionsForReview}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n </>\n )}\n <NavDrawerListItem\n tooltip=\"Search\"\n iconName=\"search\"\n onClickGoToPlace={() =>\n gotoPlace(searchV2Enabled ? '/SearchV2:default' : '/Search:')\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n <div className=\"filler\" />\n <List>\n {isAuthenticated && currentUserProfile && (\n <NavDrawerListItem\n tooltip=\"Your Account\"\n onClickOpenNavMenu={NavItem.PROFILE}\n additionalChildren={\n <UserCard\n userProfile={currentUserProfile}\n size=\"AVATAR\"\n avatarSize=\"SMALL\"\n />\n }\n isCurrentlySelectedItem={selectedItem == NavItem.PROFILE}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n {!isAuthenticated && (\n <NavDrawerListItem\n tooltip=\"Sign in\"\n iconName=\"login\"\n onClickGoToPlace={() =>\n storeRedirectURLForOneSageLoginAndGotoURL(\n oneSageURL.toString(),\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n <NavDrawerListItem\n tooltip=\"Help\"\n iconName=\"helpOutlined\"\n onClickOpenNavMenu={NavItem.HELP}\n isCurrentlySelectedItem={selectedItem == NavItem.HELP}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n </Drawer>\n <Drawer\n variant=\"temporary\"\n open={isOpen}\n className={`SynapseNavContentDrawer`}\n onClose={handleDrawerClose}\n >\n <div className=\"synapseLogoNameContainer\">\n <SynapseLogoName />\n </div>\n <div className=\"navContentContainer\">\n {selectedItem == NavItem.PROJECTS && (\n <>\n <div className=\"header projectHeader\">Projects</div>\n <Tooltip title=\"Create a New Project\" placement=\"right\">\n <a\n className=\"createProjectLink\"\n onClick={() => {\n setIsShowingCreateProjectModal(true)\n handleDrawerClose()\n }}\n >\n <IconSvg icon=\"addCircleOutline\" />\n </a>\n </Tooltip>\n <TextField\n type=\"search\"\n placeholder=\"Search All Projects\"\n value={projectSearchText}\n onChange={event => {\n setProjectSearchText(event.target.value)\n }}\n onKeyDown={(event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n setProjectSearchText('')\n handleDrawerClose()\n onProjectSearch(\n (event.target as HTMLInputElement).value,\n )\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n All\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/created_by_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Created By Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/favorites`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Favorite Projects\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/shared_directly_with_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Shared With Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all_my_team_projects`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Team Projects\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.PROFILE && (\n <>\n <div className=\"header\">\n Welcome Back,\n <br />\n {currentUserProfile?.userName}!\n </div>\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/profile`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n View Profile\n </a>\n <a\n className=\"SRC-whiteText\"\n href={accountSettingsURL.toString()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Account Settings\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/RequestHistory:default`)}\n rel=\"noopener noreferrer\"\n >\n Access Requests\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/Following:0`)}\n rel=\"noopener noreferrer\"\n >\n Following\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => {\n void clearSession()\n }}\n rel=\"noopener noreferrer\"\n >\n Sign Out\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.HELP && (\n <>\n <div className=\"header\">Help</div>\n <TextField\n type=\"search\"\n placeholder=\"Search Documentation\"\n value={docSiteSearchText}\n onChange={event => {\n setDocSiteSearchText(event.target.value)\n }}\n onKeyDown={event => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n window.open(\n `https://help.synapse.org/search.html?max=10&s=docs&q=${encodeURI(\n (event.target as HTMLInputElement).value,\n )}`,\n )\n setDocSiteSearchText('')\n handleDrawerClose()\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/Getting-Started.2055471150.html\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Getting Started\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(PLANS_LINK)}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Plans\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Synapse Web Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://python-docs.synapse.org/en/stable/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Python Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://r-docs.synapse.org/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n R Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://blog.synapse.org/\"\n rel=\"noopener noreferrer\"\n >\n Blog\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://sagebionetworks.jira.com/servicedesk/customer/portals/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Contact Us\n </a>\n </div>\n </>\n )}\n </div>\n </Drawer>\n </div>\n <CreateProjectModal\n onClose={() => setIsShowingCreateProjectModal(false)}\n isShowingModal={isShowingCreateProjectModal}\n />\n </>\n )\n}\n\nexport default SynapseNavDrawer\n"],"names":["NavItem","getSearchToken","queryTerm","searchQuery","DEFAULT_SEARCH_QUERY","projectSearchJson","getProjectSearchToken","NavDrawerListItem","props","tooltip","iconName","onClickOpenNavMenu","onClickGoToPlace","additionalChildren","badgeContent","isCurrentlySelectedItem","handleDrawerClose","handleDrawerOpen","listItem","jsx","Tooltip","ListItemButton","Badge","jsxs","Fragment","IconSvg","SynapseNavDrawer","initIsOpen","gotoPlace","isOpen","setOpen","useState","selectedItem","setSelectedItem","projectSearchText","setProjectSearchText","docSiteSearchText","setDocSiteSearchText","isShowingCreateProjectModal","setIsShowingCreateProjectModal","clearSession","useApplicationSessionContext","isAuthenticated","useSynapseContext","currentUserBundle","useGetCurrentUserBundle","currentUserProfile","downloadListStatistics","useGetDownloadListStatistics","numberOfFilesInDownloadList","searchV2Enabled","useGetFeatureFlag","FeatureFlagEnum","openSubmissionData","useSearchAccessSubmissionsInfinite","SubmissionState","SubmissionSortField","Direction","countOfOpenSubmissionsForReview","navItem","onProjectSearch","searchTerm","oneSageURL","useOneSageURL","accountSettingsURL","Drawer","SynapseIconWhite","List","UserCard","storeRedirectURLForOneSageLoginAndGotoURL","SynapseLogoName","TextField","event","InputAdornment","PLANS_LINK","CreateProjectModal"],"mappings":"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"}
1
+ {"version":3,"file":"SynapseNavDrawer.js","sources":["../../../src/components/SynapseNavDrawer/SynapseNavDrawer.tsx"],"sourcesContent":["import React from 'react'\nimport SynapseIconWhite from '@/assets/icons/SynapseIconWhite'\nimport SynapseLogoName from '@/assets/icons/SynapseLogoName'\nimport {\n useGetCurrentUserBundle,\n useGetDownloadListStatistics,\n useSearchAccessSubmissionsInfinite,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useApplicationSessionContext,\n useSynapseContext,\n} from '@/utils'\nimport { useOneSageURL } from '@/utils/hooks/useOneSageURL'\nimport {\n Badge,\n Drawer,\n InputAdornment,\n List,\n ListItemButton,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport {\n Direction,\n SubmissionSortField,\n SubmissionState,\n} from '@sage-bionetworks/synapse-types'\nimport { KeyboardEvent, ReactNode, useState } from 'react'\nimport { CreateProjectModal } from '../CreateProjectModal/CreateProjectModal'\nimport IconSvg, { IconName } from '../IconSvg/IconSvg'\nimport { PLANS_LINK } from '../SynapseHomepageV2/SynapseHomepageNavBar'\nimport UserCard from '../UserCard/UserCard'\nimport { DEFAULT_SEARCH_QUERY } from '@/utils/searchDefaults'\n\nexport type SynapseNavDrawerProps = {\n initIsOpen?: boolean\n gotoPlace: (href: string) => void\n}\n\ntype MenuItemParams = {\n tooltip: string\n iconName?: IconName\n onClickOpenNavMenu?: NavItem\n onClickGoToPlace?: () => void\n additionalChildren?: ReactNode\n badgeContent?: string | number\n isCurrentlySelectedItem?: boolean\n handleDrawerClose: () => void\n handleDrawerOpen: (navItem?: NavItem) => void\n}\n\nexport enum NavItem {\n PROJECTS,\n FAVORITES,\n TEAMS,\n CHALLENGES,\n DOWNLOADS,\n SEARCH,\n PROFILE,\n HELP,\n}\n\nexport const getSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...DEFAULT_SEARCH_QUERY,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst projectSearchJson = {\n // To support project search, we send this json object in the url.\n // We update the queryTerm array based on user input.\n ...DEFAULT_SEARCH_QUERY,\n booleanQuery: [\n {\n key: 'node_type',\n value: 'project',\n },\n ],\n}\nconst getProjectSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...projectSearchJson,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst NavDrawerListItem = (props: MenuItemParams): React.ReactNode => {\n const {\n tooltip,\n iconName,\n onClickOpenNavMenu,\n onClickGoToPlace,\n additionalChildren,\n badgeContent,\n isCurrentlySelectedItem = false,\n handleDrawerClose,\n handleDrawerOpen,\n } = props\n const handler =\n isCurrentlySelectedItem || onClickGoToPlace\n ? handleDrawerClose\n : () => {\n handleDrawerOpen(onClickOpenNavMenu)\n }\n const item = iconName ? (\n <>\n <IconSvg icon={iconName} /> {additionalChildren}{' '}\n </>\n ) : (\n additionalChildren\n )\n\n const listItem = (\n <Tooltip title={tooltip} placement=\"right\">\n <ListItemButton\n key={iconName}\n onClick={handler}\n className=\"SRC-whiteText\"\n selected={isCurrentlySelectedItem}\n >\n <Badge badgeContent={badgeContent} color=\"secondary\">\n {item}\n </Badge>\n </ListItemButton>\n </Tooltip>\n )\n\n return onClickGoToPlace ? (\n <li>\n <a\n onClick={onClickGoToPlace}\n rel=\"noopener noreferrer\"\n className=\"SRC-whiteText\"\n >\n {listItem}\n </a>\n </li>\n ) : (\n <li>{listItem}</li>\n )\n}\n\n/**\n * Displays the Synapse navigational drawer on the left side of the page. Has links to various areas if logged in.\n */\nexport function SynapseNavDrawer({\n initIsOpen = false,\n gotoPlace,\n}: SynapseNavDrawerProps) {\n const [isOpen, setOpen] = useState(initIsOpen)\n const [selectedItem, setSelectedItem] = useState<NavItem>()\n const [projectSearchText, setProjectSearchText] = useState<string>('')\n const [docSiteSearchText, setDocSiteSearchText] = useState<string>('')\n const [isShowingCreateProjectModal, setIsShowingCreateProjectModal] =\n useState<boolean>(false)\n\n const { clearSession } = useApplicationSessionContext()\n\n const { isAuthenticated } = useSynapseContext()\n\n const { data: currentUserBundle } = useGetCurrentUserBundle()\n\n // If the user is logged out, the UserBundle provides an \"anonymous\" user profile, so override that case with undefined\n const currentUserProfile =\n isAuthenticated && currentUserBundle\n ? currentUserBundle.userProfile\n : undefined\n\n const { data: downloadListStatistics } = useGetDownloadListStatistics({\n enabled: isAuthenticated,\n })\n\n const numberOfFilesInDownloadList = downloadListStatistics?.totalNumberOfFiles\n\n const { data: openSubmissionData } = useSearchAccessSubmissionsInfinite(\n {\n submissionState: SubmissionState.SUBMITTED,\n sort: [\n {\n field: SubmissionSortField.CREATED_ON,\n direction: Direction.DESC,\n },\n ],\n },\n {\n enabled: currentUserBundle?.isARReviewer,\n },\n )\n\n let countOfOpenSubmissionsForReview: number | string =\n openSubmissionData?.pages[0].results.length ?? 0\n if (openSubmissionData?.pages[0].nextPageToken) {\n countOfOpenSubmissionsForReview = `${countOfOpenSubmissionsForReview}+`\n }\n\n const handleDrawerOpen = (navItem?: NavItem) => {\n setOpen(true)\n setSelectedItem(navItem)\n }\n\n const handleDrawerClose = () => {\n setOpen(false)\n setSelectedItem(undefined)\n }\n\n const onProjectSearch = (searchTerm: string) => {\n gotoPlace(\n `/SearchV2:default?query=${getProjectSearchToken(\n searchTerm.split(/[ ,]+/),\n )}`,\n )\n }\n\n const oneSageURL = useOneSageURL()\n const accountSettingsURL = useOneSageURL('/authenticated/myaccount')\n\n return (\n <>\n <div className=\"SynapseNavDrawer\">\n <Drawer\n variant=\"permanent\"\n className={`SynapseNavDrawerMenu ${isOpen ? 'tempDrawerOpen' : ''}`}\n >\n <div onClick={handleDrawerClose}>\n <a\n className=\"synapseIcon\"\n rel=\"noopener noreferrer\"\n onClick={() => gotoPlace('/Home:x')}\n aria-label=\"Synapse Home\"\n >\n <SynapseIconWhite />\n </a>\n </div>\n <List>\n {isAuthenticated && currentUserProfile && (\n <>\n <NavDrawerListItem\n tooltip=\"Projects\"\n iconName=\"dashboard\"\n onClickOpenNavMenu={NavItem.PROJECTS}\n isCurrentlySelectedItem={selectedItem == NavItem.PROJECTS}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Favorites\"\n iconName=\"favTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/favorites`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Teams\"\n iconName=\"peopleTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(`/Profile:${currentUserProfile.ownerId}/teams`)\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Challenges\"\n iconName=\"challengesTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/challenges`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Download List\"\n iconName=\"download\"\n onClickGoToPlace={() => gotoPlace('/DownloadCart:0')}\n badgeContent={numberOfFilesInDownloadList}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Trash Can\"\n iconName=\"delete\"\n onClickGoToPlace={() => gotoPlace('/Trash:0')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n {currentUserBundle?.isARReviewer && (\n <NavDrawerListItem\n tooltip=\"Data Access Management\"\n iconName=\"accessManagement\"\n onClickGoToPlace={() =>\n gotoPlace('/DataAccessManagement:default/Submissions')\n }\n badgeContent={countOfOpenSubmissionsForReview}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n </>\n )}\n <NavDrawerListItem\n tooltip=\"Search\"\n iconName=\"search\"\n onClickGoToPlace={() => gotoPlace('/SearchV2:default')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n <div className=\"filler\" />\n <List>\n {isAuthenticated && currentUserProfile && (\n <NavDrawerListItem\n tooltip=\"Your Account\"\n onClickOpenNavMenu={NavItem.PROFILE}\n additionalChildren={\n <UserCard\n userProfile={currentUserProfile}\n size=\"AVATAR\"\n avatarSize=\"SMALL\"\n />\n }\n isCurrentlySelectedItem={selectedItem == NavItem.PROFILE}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n {!isAuthenticated && (\n <NavDrawerListItem\n tooltip=\"Sign in\"\n iconName=\"login\"\n onClickGoToPlace={() =>\n storeRedirectURLForOneSageLoginAndGotoURL(\n oneSageURL.toString(),\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n <NavDrawerListItem\n tooltip=\"Help\"\n iconName=\"helpOutlined\"\n onClickOpenNavMenu={NavItem.HELP}\n isCurrentlySelectedItem={selectedItem == NavItem.HELP}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n </Drawer>\n <Drawer\n variant=\"temporary\"\n open={isOpen}\n className={`SynapseNavContentDrawer`}\n onClose={handleDrawerClose}\n >\n <div className=\"synapseLogoNameContainer\">\n <SynapseLogoName />\n </div>\n <div className=\"navContentContainer\">\n {selectedItem == NavItem.PROJECTS && (\n <>\n <div className=\"header projectHeader\">Projects</div>\n <Tooltip title=\"Create a New Project\" placement=\"right\">\n <a\n className=\"createProjectLink\"\n onClick={() => {\n setIsShowingCreateProjectModal(true)\n handleDrawerClose()\n }}\n >\n <IconSvg icon=\"addCircleOutline\" />\n </a>\n </Tooltip>\n <TextField\n type=\"search\"\n placeholder=\"Search All Projects\"\n value={projectSearchText}\n onChange={event => {\n setProjectSearchText(event.target.value)\n }}\n onKeyDown={(event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n setProjectSearchText('')\n handleDrawerClose()\n onProjectSearch(\n (event.target as HTMLInputElement).value,\n )\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n All\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/created_by_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Created By Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/favorites`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Favorite Projects\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/shared_directly_with_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Shared With Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all_my_team_projects`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Team Projects\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.PROFILE && (\n <>\n <div className=\"header\">\n Welcome Back,\n <br />\n {currentUserProfile?.userName}!\n </div>\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/profile`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n View Profile\n </a>\n <a\n className=\"SRC-whiteText\"\n href={accountSettingsURL.toString()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Account Settings\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/RequestHistory:default`)}\n rel=\"noopener noreferrer\"\n >\n Access Requests\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/Following:0`)}\n rel=\"noopener noreferrer\"\n >\n Following\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => {\n void clearSession()\n }}\n rel=\"noopener noreferrer\"\n >\n Sign Out\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.HELP && (\n <>\n <div className=\"header\">Help</div>\n <TextField\n type=\"search\"\n placeholder=\"Search Documentation\"\n value={docSiteSearchText}\n onChange={event => {\n setDocSiteSearchText(event.target.value)\n }}\n onKeyDown={event => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n window.open(\n `https://help.synapse.org/search.html?max=10&s=docs&q=${encodeURI(\n (event.target as HTMLInputElement).value,\n )}`,\n )\n setDocSiteSearchText('')\n handleDrawerClose()\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/Getting-Started.2055471150.html\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Getting Started\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(PLANS_LINK)}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Plans\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Synapse Web Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://python-docs.synapse.org/en/stable/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Python Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://r-docs.synapse.org/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n R Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://blog.synapse.org/\"\n rel=\"noopener noreferrer\"\n >\n Blog\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://sagebionetworks.jira.com/servicedesk/customer/portals/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Contact Us\n </a>\n </div>\n </>\n )}\n </div>\n </Drawer>\n </div>\n <CreateProjectModal\n onClose={() => setIsShowingCreateProjectModal(false)}\n isShowingModal={isShowingCreateProjectModal}\n />\n </>\n )\n}\n\nexport default SynapseNavDrawer\n"],"names":["NavItem","getSearchToken","queryTerm","searchQuery","DEFAULT_SEARCH_QUERY","projectSearchJson","getProjectSearchToken","NavDrawerListItem","props","tooltip","iconName","onClickOpenNavMenu","onClickGoToPlace","additionalChildren","badgeContent","isCurrentlySelectedItem","handleDrawerClose","handleDrawerOpen","listItem","jsx","Tooltip","ListItemButton","Badge","jsxs","Fragment","IconSvg","SynapseNavDrawer","initIsOpen","gotoPlace","isOpen","setOpen","useState","selectedItem","setSelectedItem","projectSearchText","setProjectSearchText","docSiteSearchText","setDocSiteSearchText","isShowingCreateProjectModal","setIsShowingCreateProjectModal","clearSession","useApplicationSessionContext","isAuthenticated","useSynapseContext","currentUserBundle","useGetCurrentUserBundle","currentUserProfile","downloadListStatistics","useGetDownloadListStatistics","numberOfFilesInDownloadList","openSubmissionData","useSearchAccessSubmissionsInfinite","SubmissionState","SubmissionSortField","Direction","countOfOpenSubmissionsForReview","navItem","onProjectSearch","searchTerm","oneSageURL","useOneSageURL","accountSettingsURL","Drawer","SynapseIconWhite","List","UserCard","storeRedirectURLForOneSageLoginAndGotoURL","SynapseLogoName","TextField","event","InputAdornment","PLANS_LINK","CreateProjectModal"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SynapseSearchResultsCard.d.ts","sourceRoot":"","sources":["../../../src/components/SynapseSearchPageResults/SynapseSearchResultsCard.tsx"],"names":[],"mappings":"AAyBA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAY7D,MAAM,MAAM,6BAA6B,GAAG;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,UAAU,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAiBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,2CAmJ5E;AAED,eAAe,wBAAwB,CAAA"}
1
+ {"version":3,"file":"SynapseSearchResultsCard.d.ts","sourceRoot":"","sources":["../../../src/components/SynapseSearchPageResults/SynapseSearchResultsCard.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAc7D,MAAM,MAAM,6BAA6B,GAAG;IAC1C,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,UAAU,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB,CAAA;AAiBD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,2CAwJ5E;AAED,eAAe,wBAAwB,CAAA"}
@@ -1,32 +1,20 @@
1
1
  import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import { formatDate as u } from "../../utils/functions/DateFormatter.js";
3
- import { getEndpoint as m, BackendDestinationEnum as c } from "../../utils/functions/getEndpoint.js";
4
- import { useInView as I } from "react-intersection-observer";
5
- import { Update as T, ArticleOutlined as g, InfoOutline as w, DashboardTwoTone as D } from "@mui/icons-material";
6
- import { styled as N, Box as r, Link as s, Chip as S, Stack as C, Typography as n, Paper as M } from "@mui/material";
7
- import O from "dayjs";
8
- import { EntityTypeIcon as E } from "../EntityIcon.js";
9
- import { EntityType as R } from "@sage-bionetworks/synapse-client";
10
- import b from "../favorites/FavoriteButton.js";
11
- import { EntityDownloadButton as L } from "../EntityDownloadButton/EntityDownloadButton.js";
12
- import { HasAccessChip as P } from "./HasAccessChip.js";
13
- import { searchResultsCardChipStyles as B } from "./chipStyles.js";
14
- import a from "./SynapseSearchResultsCard.module.scss.js";
15
- import { calculateFriendlyFileSize as $ } from "../../utils/functions/calculateFriendlyFileSize.js";
16
2
  import "../../synapse-client/SynapseClient.js";
17
3
  import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
18
4
  import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
19
5
  import "@sage-bionetworks/synapse-client/util/SynapseClientError";
20
6
  import "@sage-bionetworks/synapse-types";
21
7
  import "../../utils/functions/EntityTypeUtils.js";
8
+ import { getEndpoint as c, BackendDestinationEnum as s } from "../../utils/functions/getEndpoint.js";
22
9
  import "lodash-es";
23
10
  import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
24
11
  import "@tanstack/react-query";
25
12
  import "../../utils/PermissionLevelToAccessType.js";
26
13
  import "../../utils/SynapseConstants.js";
27
- import "react";
14
+ import { useRef as I } from "react";
28
15
  import "../../utils/context/SynapseContext.js";
29
16
  import "use-deep-compare-effect";
17
+ import { styled as T, Box as n, Link as p, Chip as g, Stack as w, Typography as r, Paper as D } from "@mui/material";
30
18
  import "../../utils/hooks/useCookiePreferences.js";
31
19
  import "../../utils/hooks/useSourceAppConfigs.js";
32
20
  import "universal-cookie";
@@ -39,12 +27,24 @@ import "lodash-es/isEmpty";
39
27
  import "lodash-es/isEqual";
40
28
  import "lodash-es/xorWith";
41
29
  import "react-router";
30
+ import { EntityType as N } from "@sage-bionetworks/synapse-client";
42
31
  import "../../utils/types/IsType.js";
43
- import { useGetEntityBundle as k } from "../../synapse-queries/entity/useEntityBundle.js";
44
- import { HighlightedTypography as p } from "./HighlightedTypography.js";
45
- import { markdownToPlainText as z } from "../Markdown/MarkdownUtils.js";
46
- const F = N(
47
- M,
32
+ import { useGetEntityBundle as S } from "../../synapse-queries/entity/useEntityBundle.js";
33
+ import { calculateFriendlyFileSize as C } from "../../utils/functions/calculateFriendlyFileSize.js";
34
+ import { formatDate as M } from "../../utils/functions/DateFormatter.js";
35
+ import { Update as R, ArticleOutlined as O, InfoOutline as E, DashboardTwoTone as b } from "@mui/icons-material";
36
+ import L from "dayjs";
37
+ import { useInView as P } from "react-intersection-observer";
38
+ import { EntityDownloadButton as B } from "../EntityDownloadButton/EntityDownloadButton.js";
39
+ import { EntityTypeIcon as $ } from "../EntityIcon.js";
40
+ import k from "../favorites/FavoriteButton.js";
41
+ import { markdownToPlainText as v } from "../Markdown/MarkdownUtils.js";
42
+ import { searchResultsCardChipStyles as z } from "./chipStyles.js";
43
+ import { HasAccessChip as F } from "./HasAccessChip.js";
44
+ import { HighlightedTypography as y } from "./HighlightedTypography.js";
45
+ import a from "./SynapseSearchResultsCard.module.scss.js";
46
+ const H = T(
47
+ D,
48
48
  {
49
49
  label: "SynapseSearchResultsCardContainer"
50
50
  }
@@ -57,21 +57,21 @@ const F = N(
57
57
  padding: "32px",
58
58
  gap: "15px"
59
59
  });
60
- function Re(e) {
61
- const { ref: y, inView: h } = I({
60
+ function Le(e) {
61
+ const o = I(null), { ref: f, inView: h } = P({
62
62
  triggerOnce: !0,
63
63
  rootMargin: "250px 0px"
64
- }), { data: x } = k(
64
+ }), { data: x } = S(
65
65
  e.entityId,
66
66
  void 0,
67
67
  { includeFileHandles: !0 },
68
- { enabled: e.entityType === R.file && h }
69
- ), o = x?.fileHandles.find(
70
- (f) => f.isPreview !== !0
71
- ), d = o?.contentSize ? $(o?.contentSize) : "", l = e.description ? z(e.description) : "";
72
- return /* @__PURE__ */ i(F, { ref: y, children: [
68
+ { enabled: e.entityType === N.file && h }
69
+ ), d = x?.fileHandles.find(
70
+ (u) => u.isPreview !== !0
71
+ ), l = d?.contentSize ? C(d?.contentSize) : "", m = e.description ? v(e.description) : "";
72
+ return /* @__PURE__ */ i(H, { ref: f, children: [
73
73
  /* @__PURE__ */ i(
74
- r,
74
+ n,
75
75
  {
76
76
  sx: {
77
77
  display: "flex",
@@ -81,17 +81,17 @@ function Re(e) {
81
81
  },
82
82
  children: [
83
83
  /* @__PURE__ */ t(
84
- s,
84
+ p,
85
85
  {
86
- href: `${m(
87
- c.PORTAL_ENDPOINT
86
+ href: `${c(
87
+ s.PORTAL_ENDPOINT
88
88
  )}Synapse:${e.entityId}`,
89
89
  sx: {
90
90
  textDecoration: "underline 2px",
91
91
  textUnderlineOffset: "9px"
92
92
  },
93
93
  children: /* @__PURE__ */ t(
94
- p,
94
+ y,
95
95
  {
96
96
  className: a.cardTitle,
97
97
  variant: "headline3",
@@ -102,7 +102,7 @@ function Re(e) {
102
102
  }
103
103
  ),
104
104
  /* @__PURE__ */ i(
105
- r,
105
+ n,
106
106
  {
107
107
  sx: {
108
108
  display: "flex",
@@ -110,13 +110,14 @@ function Re(e) {
110
110
  alignItems: "center"
111
111
  },
112
112
  children: [
113
- /* @__PURE__ */ t(b, { entityId: e.entityId }),
113
+ /* @__PURE__ */ t(k, { entityId: e.entityId }),
114
114
  /* @__PURE__ */ t(
115
- L,
115
+ B,
116
116
  {
117
117
  entityId: e.entityId,
118
118
  name: e.name,
119
- entityType: e.entityType
119
+ entityType: e.entityType,
120
+ downloadConfirmationContainer: o
120
121
  }
121
122
  )
122
123
  ]
@@ -125,8 +126,9 @@ function Re(e) {
125
126
  ]
126
127
  }
127
128
  ),
129
+ /* @__PURE__ */ t("div", { ref: o }),
128
130
  /* @__PURE__ */ i(
129
- r,
131
+ n,
130
132
  {
131
133
  sx: {
132
134
  display: "flex",
@@ -134,10 +136,10 @@ function Re(e) {
134
136
  },
135
137
  children: [
136
138
  /* @__PURE__ */ t(
137
- S,
139
+ g,
138
140
  {
139
141
  icon: /* @__PURE__ */ t(
140
- E,
142
+ $,
141
143
  {
142
144
  type: e.entityType,
143
145
  wrap: !1,
@@ -145,59 +147,59 @@ function Re(e) {
145
147
  }
146
148
  ),
147
149
  label: e.entityType,
148
- sx: { ...B }
150
+ sx: { ...z }
149
151
  }
150
152
  ),
151
- /* @__PURE__ */ t(P, { entityId: e.entityId })
153
+ /* @__PURE__ */ t(F, { entityId: e.entityId })
152
154
  ]
153
155
  }
154
156
  ),
155
157
  /* @__PURE__ */ t(
156
- r,
158
+ n,
157
159
  {
158
160
  sx: {
159
161
  display: "flex",
160
162
  flexDirection: "row",
161
163
  gap: "8px"
162
164
  },
163
- children: /* @__PURE__ */ i(C, { sx: { gap: "20px", minWidth: 0, width: "100%" }, children: [
164
- /* @__PURE__ */ i(r, { sx: { display: "flex" }, children: [
165
- /* @__PURE__ */ t(T, { className: a.cardMetadataIcon }),
166
- /* @__PURE__ */ i(n, { className: a.cardMetadataTypographyWithIcon, children: [
165
+ children: /* @__PURE__ */ i(w, { sx: { gap: "20px", minWidth: 0, width: "100%" }, children: [
166
+ /* @__PURE__ */ i(n, { sx: { display: "flex" }, children: [
167
+ /* @__PURE__ */ t(R, { className: a.cardMetadataIcon }),
168
+ /* @__PURE__ */ i(r, { className: a.cardMetadataTypographyWithIcon, children: [
167
169
  "Last updated:",
168
170
  " ",
169
- u(O.unix(e.modifiedOn), "M/D/YYYY")
171
+ M(L.unix(e.modifiedOn), "M/D/YYYY")
170
172
  ] })
171
173
  ] }),
172
- l && /* @__PURE__ */ i(r, { sx: { display: "flex" }, children: [
173
- /* @__PURE__ */ t(g, { className: a.cardMetadataIcon }),
174
+ m && /* @__PURE__ */ i(n, { sx: { display: "flex" }, children: [
175
+ /* @__PURE__ */ t(O, { className: a.cardMetadataIcon }),
174
176
  /* @__PURE__ */ t(
175
- p,
177
+ y,
176
178
  {
177
179
  className: `${a.cardMetadataTypographyWithIcon} ${a.cardDescription}`,
178
- text: l,
180
+ text: m,
179
181
  searchTerms: e.searchTerms ?? []
180
182
  }
181
183
  )
182
184
  ] }),
183
- d && /* @__PURE__ */ i(r, { sx: { display: "flex" }, children: [
184
- /* @__PURE__ */ t(w, { className: a.cardMetadataIcon }),
185
- /* @__PURE__ */ i(n, { className: a.cardMetadataTypographyWithIcon, children: [
185
+ l && /* @__PURE__ */ i(n, { sx: { display: "flex" }, children: [
186
+ /* @__PURE__ */ t(E, { className: a.cardMetadataIcon }),
187
+ /* @__PURE__ */ i(r, { className: a.cardMetadataTypographyWithIcon, children: [
186
188
  "File size: ",
187
- /* @__PURE__ */ t("b", { children: d })
189
+ /* @__PURE__ */ t("b", { children: l })
188
190
  ] })
189
191
  ] }),
190
192
  e.locatedIn && /* @__PURE__ */ i(
191
- r,
193
+ n,
192
194
  {
193
195
  sx: { display: "flex", marginLeft: "24px", alignItems: "center" },
194
196
  children: [
195
- /* @__PURE__ */ i(n, { className: a.cardMetadataTypographyWithIcon, children: [
197
+ /* @__PURE__ */ i(r, { className: a.cardMetadataTypographyWithIcon, children: [
196
198
  "Located in:",
197
199
  " "
198
200
  ] }),
199
201
  /* @__PURE__ */ t(
200
- D,
202
+ b,
201
203
  {
202
204
  className: a.cardMetadataIcon,
203
205
  sx: {
@@ -206,11 +208,11 @@ function Re(e) {
206
208
  }
207
209
  ),
208
210
  /* @__PURE__ */ t(
209
- s,
211
+ p,
210
212
  {
211
213
  className: a.locatedInLink,
212
- href: `${m(
213
- c.PORTAL_ENDPOINT
214
+ href: `${c(
215
+ s.PORTAL_ENDPOINT
214
216
  )}Synapse:${e.locatedIn?.id}`,
215
217
  children: e.locatedIn?.name
216
218
  }
@@ -224,7 +226,7 @@ function Re(e) {
224
226
  ] });
225
227
  }
226
228
  export {
227
- Re as SynapseSearchResultsCard,
228
- Re as default
229
+ Le as SynapseSearchResultsCard,
230
+ Le as default
229
231
  };
230
232
  //# sourceMappingURL=SynapseSearchResultsCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SynapseSearchResultsCard.js","sources":["../../../src/components/SynapseSearchPageResults/SynapseSearchResultsCard.tsx"],"sourcesContent":["import { formatDate } from '@/utils/functions/DateFormatter'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { useInView } from 'react-intersection-observer'\nimport { StyledComponent } from '@emotion/styled'\nimport {\n ArticleOutlined,\n DashboardTwoTone,\n InfoOutline,\n Update as UpdateIcon,\n} from '@mui/icons-material'\nimport {\n Box,\n Chip,\n Link,\n Paper,\n PaperProps,\n Stack,\n styled,\n Typography,\n} from '@mui/material'\nimport dayjs from 'dayjs'\nimport { EntityTypeIcon } from '../EntityIcon'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport FavoriteButton from '../favorites/FavoriteButton'\nimport { EntityDownloadButton } from '../EntityDownloadButton/EntityDownloadButton'\nimport HasAccessChip from './HasAccessChip'\nimport { searchResultsCardChipStyles } from './chipStyles'\nimport styles from './SynapseSearchResultsCard.module.scss'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport { useGetEntityBundle } from '@/synapse-queries'\nimport { FileHandleWithPreview } from '../EntityFinder/details/view/table/TableCellTypes'\nimport { HighlightedTypography } from './HighlightedTypography'\nimport { markdownToPlainText } from '../Markdown/MarkdownUtils'\n\nexport type SynapseSearchResultsCardProps = {\n entityId: string\n name: string\n description?: string\n entityType: EntityType\n modifiedOn: number\n locatedIn?: { name: string; id: string }\n searchTerms?: string[]\n}\n\nconst SynapseSearchResultsCardContainer: StyledComponent<PaperProps> = styled(\n Paper,\n {\n label: 'SynapseSearchResultsCardContainer',\n },\n)({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '250px',\n width: '100%',\n borderRadius: '10px',\n padding: '32px',\n gap: '15px',\n})\n\nexport function SynapseSearchResultsCard(props: SynapseSearchResultsCardProps) {\n const { ref, inView } = useInView({\n triggerOnce: true,\n rootMargin: '250px 0px',\n })\n\n const { data: entityBundle } = useGetEntityBundle(\n props.entityId,\n undefined,\n { includeFileHandles: true },\n { enabled: props.entityType === EntityType.file && inView },\n )\n\n const file = entityBundle?.fileHandles.find(\n (file: FileHandleWithPreview) => file.isPreview !== true,\n )\n\n const friendlySize = file?.contentSize\n ? calculateFriendlyFileSize(file?.contentSize)\n : ''\n\n const plainDescription = props.description\n ? markdownToPlainText(props.description)\n : ''\n\n return (\n <SynapseSearchResultsCardContainer ref={ref}>\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Link\n href={`${getEndpoint(\n BackendDestinationEnum.PORTAL_ENDPOINT,\n )}Synapse:${props.entityId}`}\n sx={{\n textDecoration: 'underline 2px',\n textUnderlineOffset: '9px',\n }}\n >\n <HighlightedTypography\n className={styles.cardTitle}\n variant=\"headline3\"\n text={props.name}\n searchTerms={props.searchTerms ?? []}\n />\n </Link>\n\n <Box\n sx={{\n display: 'flex',\n gap: '16px',\n alignItems: 'center',\n }}\n >\n <FavoriteButton entityId={props.entityId} />\n <EntityDownloadButton\n entityId={props.entityId}\n name={props.name}\n entityType={props.entityType}\n />\n </Box>\n </Box>\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n }}\n >\n <Chip\n icon={\n <EntityTypeIcon\n type={props.entityType}\n wrap={false}\n sx={{ color: '#265149', width: '18px' }}\n />\n }\n label={props.entityType}\n sx={{ ...searchResultsCardChipStyles }}\n />\n <HasAccessChip entityId={props.entityId} />\n </Box>\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n gap: '8px',\n }}\n >\n <Stack sx={{ gap: '20px', minWidth: 0, width: '100%' }}>\n <Box sx={{ display: 'flex' }}>\n <UpdateIcon className={styles.cardMetadataIcon} />\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n Last updated:{' '}\n {formatDate(dayjs.unix(props.modifiedOn), 'M/D/YYYY')}\n </Typography>\n </Box>\n {plainDescription && (\n <Box sx={{ display: 'flex' }}>\n <ArticleOutlined className={styles.cardMetadataIcon} />\n <HighlightedTypography\n className={`${styles.cardMetadataTypographyWithIcon} ${styles.cardDescription}`}\n text={plainDescription}\n searchTerms={props.searchTerms ?? []}\n />\n </Box>\n )}\n\n {friendlySize && (\n <Box sx={{ display: 'flex' }}>\n <InfoOutline className={styles.cardMetadataIcon} />\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n File size: <b>{friendlySize}</b>\n </Typography>\n </Box>\n )}\n {props.locatedIn && (\n <Box\n sx={{ display: 'flex', marginLeft: '24px', alignItems: 'center' }}\n >\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n Located in:{' '}\n </Typography>\n <DashboardTwoTone\n className={styles.cardMetadataIcon}\n sx={{\n marginRight: '4px',\n }}\n />\n <Link\n className={styles.locatedInLink}\n href={`${getEndpoint(\n BackendDestinationEnum.PORTAL_ENDPOINT,\n )}Synapse:${props.locatedIn?.id}`}\n >\n {props.locatedIn?.name}\n </Link>\n </Box>\n )}\n </Stack>\n </Box>\n </SynapseSearchResultsCardContainer>\n )\n}\n\nexport default SynapseSearchResultsCard\n"],"names":["SynapseSearchResultsCardContainer","styled","Paper","SynapseSearchResultsCard","props","ref","inView","useInView","entityBundle","useGetEntityBundle","EntityType","file","friendlySize","calculateFriendlyFileSize","plainDescription","markdownToPlainText","jsxs","Box","jsx","Link","getEndpoint","BackendDestinationEnum","HighlightedTypography","styles","FavoriteButton","EntityDownloadButton","Chip","EntityTypeIcon","searchResultsCardChipStyles","HasAccessChip","Stack","UpdateIcon","Typography","formatDate","dayjs","ArticleOutlined","InfoOutline","DashboardTwoTone"],"mappings":"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"}
1
+ {"version":3,"file":"SynapseSearchResultsCard.js","sources":["../../../src/components/SynapseSearchPageResults/SynapseSearchResultsCard.tsx"],"sourcesContent":["import { useGetEntityBundle } from '@/synapse-queries'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport { formatDate } from '@/utils/functions/DateFormatter'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { StyledComponent } from '@emotion/styled'\nimport {\n ArticleOutlined,\n DashboardTwoTone,\n InfoOutline,\n Update as UpdateIcon,\n} from '@mui/icons-material'\nimport {\n Box,\n Chip,\n Link,\n Paper,\n PaperProps,\n Stack,\n styled,\n Typography,\n} from '@mui/material'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport dayjs from 'dayjs'\nimport { useRef } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { EntityDownloadButton } from '../EntityDownloadButton/EntityDownloadButton'\nimport { FileHandleWithPreview } from '../EntityFinder/details/view/table/TableCellTypes'\nimport { EntityTypeIcon } from '../EntityIcon'\nimport FavoriteButton from '../favorites/FavoriteButton'\nimport { markdownToPlainText } from '../Markdown/MarkdownUtils'\nimport { searchResultsCardChipStyles } from './chipStyles'\nimport HasAccessChip from './HasAccessChip'\nimport { HighlightedTypography } from './HighlightedTypography'\nimport styles from './SynapseSearchResultsCard.module.scss'\n\nexport type SynapseSearchResultsCardProps = {\n entityId: string\n name: string\n description?: string\n entityType: EntityType\n modifiedOn: number\n locatedIn?: { name: string; id: string }\n searchTerms?: string[]\n}\n\nconst SynapseSearchResultsCardContainer: StyledComponent<PaperProps> = styled(\n Paper,\n {\n label: 'SynapseSearchResultsCardContainer',\n },\n)({\n display: 'flex',\n flexDirection: 'column',\n minHeight: '250px',\n width: '100%',\n borderRadius: '10px',\n padding: '32px',\n gap: '15px',\n})\n\nexport function SynapseSearchResultsCard(props: SynapseSearchResultsCardProps) {\n const downloadConfirmationRef = useRef<HTMLDivElement>(null)\n\n const { ref, inView } = useInView({\n triggerOnce: true,\n rootMargin: '250px 0px',\n })\n\n const { data: entityBundle } = useGetEntityBundle(\n props.entityId,\n undefined,\n { includeFileHandles: true },\n { enabled: props.entityType === EntityType.file && inView },\n )\n\n const file = entityBundle?.fileHandles.find(\n (file: FileHandleWithPreview) => file.isPreview !== true,\n )\n\n const friendlySize = file?.contentSize\n ? calculateFriendlyFileSize(file?.contentSize)\n : ''\n\n const plainDescription = props.description\n ? markdownToPlainText(props.description)\n : ''\n\n return (\n <SynapseSearchResultsCardContainer ref={ref}>\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'space-between',\n width: '100%',\n }}\n >\n <Link\n href={`${getEndpoint(\n BackendDestinationEnum.PORTAL_ENDPOINT,\n )}Synapse:${props.entityId}`}\n sx={{\n textDecoration: 'underline 2px',\n textUnderlineOffset: '9px',\n }}\n >\n <HighlightedTypography\n className={styles.cardTitle}\n variant=\"headline3\"\n text={props.name}\n searchTerms={props.searchTerms ?? []}\n />\n </Link>\n\n <Box\n sx={{\n display: 'flex',\n gap: '16px',\n alignItems: 'center',\n }}\n >\n <FavoriteButton entityId={props.entityId} />\n <EntityDownloadButton\n entityId={props.entityId}\n name={props.name}\n entityType={props.entityType}\n downloadConfirmationContainer={downloadConfirmationRef}\n />\n </Box>\n </Box>\n {/* Portal target for EntityDownloadButton's download confirmation dialog */}\n <div ref={downloadConfirmationRef} />\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n }}\n >\n <Chip\n icon={\n <EntityTypeIcon\n type={props.entityType}\n wrap={false}\n sx={{ color: '#265149', width: '18px' }}\n />\n }\n label={props.entityType}\n sx={{ ...searchResultsCardChipStyles }}\n />\n <HasAccessChip entityId={props.entityId} />\n </Box>\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'row',\n gap: '8px',\n }}\n >\n <Stack sx={{ gap: '20px', minWidth: 0, width: '100%' }}>\n <Box sx={{ display: 'flex' }}>\n <UpdateIcon className={styles.cardMetadataIcon} />\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n Last updated:{' '}\n {formatDate(dayjs.unix(props.modifiedOn), 'M/D/YYYY')}\n </Typography>\n </Box>\n {plainDescription && (\n <Box sx={{ display: 'flex' }}>\n <ArticleOutlined className={styles.cardMetadataIcon} />\n <HighlightedTypography\n className={`${styles.cardMetadataTypographyWithIcon} ${styles.cardDescription}`}\n text={plainDescription}\n searchTerms={props.searchTerms ?? []}\n />\n </Box>\n )}\n\n {friendlySize && (\n <Box sx={{ display: 'flex' }}>\n <InfoOutline className={styles.cardMetadataIcon} />\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n File size: <b>{friendlySize}</b>\n </Typography>\n </Box>\n )}\n {props.locatedIn && (\n <Box\n sx={{ display: 'flex', marginLeft: '24px', alignItems: 'center' }}\n >\n <Typography className={styles.cardMetadataTypographyWithIcon}>\n Located in:{' '}\n </Typography>\n <DashboardTwoTone\n className={styles.cardMetadataIcon}\n sx={{\n marginRight: '4px',\n }}\n />\n <Link\n className={styles.locatedInLink}\n href={`${getEndpoint(\n BackendDestinationEnum.PORTAL_ENDPOINT,\n )}Synapse:${props.locatedIn?.id}`}\n >\n {props.locatedIn?.name}\n </Link>\n </Box>\n )}\n </Stack>\n </Box>\n </SynapseSearchResultsCardContainer>\n )\n}\n\nexport default SynapseSearchResultsCard\n"],"names":["SynapseSearchResultsCardContainer","styled","Paper","SynapseSearchResultsCard","props","downloadConfirmationRef","useRef","ref","inView","useInView","entityBundle","useGetEntityBundle","EntityType","file","friendlySize","calculateFriendlyFileSize","plainDescription","markdownToPlainText","jsxs","Box","jsx","Link","getEndpoint","BackendDestinationEnum","HighlightedTypography","styles","FavoriteButton","EntityDownloadButton","Chip","EntityTypeIcon","searchResultsCardChipStyles","HasAccessChip","Stack","UpdateIcon","Typography","formatDate","dayjs","ArticleOutlined","InfoOutline","DashboardTwoTone"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { jsx as o, jsxs as x, Fragment as M } from "react/jsx-runtime";
2
- import _ from "../../download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js";
3
- import { useGetAddToDownloadListRequestForCurrentQuery as g } from "../../QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery.js";
1
+ import { jsx as o, jsxs as x, Fragment as L } from "react/jsx-runtime";
2
+ import M from "../../download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js";
3
+ import { useGetAddToDownloadListRequestForCurrentQuery as _ } from "../../QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery.js";
4
4
  import "../../../synapse-client/SynapseClient.js";
5
5
  import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
6
6
  import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
@@ -12,8 +12,8 @@ import "lodash-es";
12
12
  import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
13
13
  import "@tanstack/react-query";
14
14
  import "../../../utils/PermissionLevelToAccessType.js";
15
- import { useState as D } from "react";
16
- import { useSynapseContext as L } from "../../../utils/context/SynapseContext.js";
15
+ import { useState as g } from "react";
16
+ import { useSynapseContext as D } from "../../../utils/context/SynapseContext.js";
17
17
  import "use-deep-compare-effect";
18
18
  import { Button as a, Box as E } from "@mui/material";
19
19
  import "../../../utils/hooks/useCookiePreferences.js";
@@ -45,12 +45,12 @@ import { RowSelectionUI as j } from "./RowSelectionUI.js";
45
45
  import { SignInRequiredModal as U } from "../../SignInRequiredModal/SignInRequiredModal.js";
46
46
  const Y = "SendToAnalysisPlatformRowSelectionControlButton";
47
47
  function Qo(d) {
48
- const { customControls: p = [], remount: e } = d, { isAuthenticated: u } = L(), [c, n] = D(!1), { entityId: i, versionNumber: f, getCurrentQueryRequest: A } = q(), { data: w } = N(i, f), { data: m } = G(), [r, s] = b(F), S = g(), {
48
+ const { customControls: p = [], remount: e } = d, { isAuthenticated: u } = D(), [c, n] = g(!1), { entityId: i, versionNumber: f, getCurrentQueryRequest: A } = q(), { data: w } = N(i, f), { data: s } = G(), [r, m] = b(F), S = _(), {
49
49
  setIsShowingExportToAnalysisPlatformModal: C,
50
50
  enabledExternalAnalysisPlatforms: T
51
51
  } = Q(), y = T.length > 0, h = () => {
52
- s([]), e && e();
53
- }, I = O(m?.columnModels), R = B(
52
+ m([]), e && e();
53
+ }, I = O(s?.columnModels), R = B(
54
54
  w,
55
55
  I
56
56
  );
@@ -59,15 +59,15 @@ function Qo(d) {
59
59
  {
60
60
  show: r.length > 0,
61
61
  selectedRowCount: r.length,
62
- onClearSelection: () => s([]),
63
- customControls: /* @__PURE__ */ x(M, { children: [
62
+ onClearSelection: () => m([]),
63
+ customControls: /* @__PURE__ */ x(L, { children: [
64
64
  p.map((t) => /* @__PURE__ */ o(
65
65
  k,
66
66
  {
67
67
  variant: "contained",
68
68
  callbackData: {
69
69
  tableId: i,
70
- queryMetadata: m,
70
+ queryMetadata: s,
71
71
  selectedRows: r,
72
72
  refresh: h,
73
73
  request: A()
@@ -108,7 +108,7 @@ function Qo(d) {
108
108
  width: "100%"
109
109
  },
110
110
  children: /* @__PURE__ */ o(
111
- _,
111
+ M,
112
112
  {
113
113
  addToDownloadListRequest: S,
114
114
  onClose: () => {
@@ -124,7 +124,7 @@ function Qo(d) {
124
124
  );
125
125
  },
126
126
  startIcon: /* @__PURE__ */ o(P, {}),
127
- children: "Add to Download Cart"
127
+ children: "Add to Download List"
128
128
  }
129
129
  )
130
130
  ] })