synapse-react-client 4.0.3 → 4.0.5

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 (338) hide show
  1. package/dist/SWC.index.js +1 -1
  2. package/dist/assets/DefaultColorfulPortalCardBackground.svg +14 -0
  3. package/dist/assets/DefaultColorfulPortalCardBackground.svg.js +7 -0
  4. package/dist/assets/DefaultColorfulPortalCardBackground.svg.js.map +1 -0
  5. package/dist/assets/homepage/nih-aging.svg +27 -27
  6. package/dist/assets/homepage/nih-aging.svg.js +1 -1
  7. package/dist/assets/homepage/nih-aging.svg.js.map +1 -1
  8. package/dist/assets/homepage/nih-heart.svg +39 -46
  9. package/dist/assets/homepage/nih-heart.svg.js +3 -3
  10. package/dist/assets/homepage/nih-heart.svg.js.map +1 -1
  11. package/dist/assets/homepage/nih-nci.svg +6 -0
  12. package/dist/assets/homepage/nih-nci.svg.js +7 -0
  13. package/dist/assets/homepage/nih-nci.svg.js.map +1 -0
  14. package/dist/assets/homepage/nih-nimh.svg +14 -0
  15. package/dist/assets/homepage/nih-nimh.svg.js +7 -0
  16. package/dist/assets/homepage/nih-nimh.svg.js.map +1 -0
  17. package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js +1 -1
  18. package/dist/components/AccessRequirementList/AccessRequirementList.js +4 -4
  19. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts.map +1 -1
  20. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js +8 -7
  21. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
  22. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js +4 -4
  23. package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js +11 -11
  24. package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js +1 -1
  25. package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js +9 -9
  26. package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js +5 -5
  27. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.d.ts.map +1 -1
  28. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +33 -32
  29. package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
  30. package/dist/components/AclEditor/AclEditor.js +8 -8
  31. package/dist/components/AclEditor/AclEditor.js.map +1 -1
  32. package/dist/components/AclEditor/AclEditor.test-utils.js +34 -34
  33. package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
  34. package/dist/components/Authentication/AuthenticationMethodSelection.js +1 -1
  35. package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
  36. package/dist/components/Authentication/TwoFactorEnrollmentForm.js +6 -5
  37. package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
  38. package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
  39. package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -1
  40. package/dist/components/BasePortalCard/BasePortalCard.d.ts.map +1 -1
  41. package/dist/components/BasePortalCard/BasePortalCard.js +12 -12
  42. package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
  43. package/dist/components/BasePortalCard/BasePortalCard.module.scss +6 -0
  44. package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +1 -1
  45. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.css +1 -1
  46. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
  47. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +24 -23
  48. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
  49. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss +15 -5
  50. package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss.js +1 -1
  51. package/dist/components/CardContainer/CardLink.d.ts +12 -0
  52. package/dist/components/CardContainer/CardLink.d.ts.map +1 -1
  53. package/dist/components/ChallengeSubmission/AvailableEvaluationQueueList.js +12 -12
  54. package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.d.ts.map +1 -1
  55. package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js +7 -7
  56. package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
  57. package/dist/components/CitationPopover/CitationPopoverContent.d.ts.map +1 -1
  58. package/dist/components/CitationPopover/CitationPopoverContent.js +13 -12
  59. package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
  60. package/dist/components/CookiesNotification/CookiesNotification.js +1 -1
  61. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +3 -4
  62. package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
  63. package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +2 -2
  64. package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
  65. package/dist/components/DataGrid/SynapseGrid.js +35 -35
  66. package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
  67. package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +2 -2
  68. package/dist/components/DataGrid/hooks/useExportDataGridToCsv.d.ts.map +1 -1
  69. package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js +9 -7
  70. package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
  71. package/dist/components/DownloadCart/ActionRequiredCard/ActionRequiredCard.js +1 -1
  72. package/dist/components/DownloadCart/RequestDownloadCard.js +1 -1
  73. package/dist/components/Ecosystem/EcosystemSkeleton.js +2 -2
  74. package/dist/components/Ecosystem/TableQueryEcosystem.js +1 -1
  75. package/dist/components/EntityAclEditor/EntityAclEditorModal.js +1 -1
  76. package/dist/components/EntityAclEditor/OpenData.js +1 -1
  77. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.d.ts.map +1 -1
  78. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +113 -127
  79. package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
  80. package/dist/components/EntityCitation/EntityCitation.js +1 -1
  81. package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +1 -1
  82. package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js +1 -1
  83. package/dist/components/EntityFinder/details/view/table/EntityNameCell.js +1 -1
  84. package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js +1 -1
  85. package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js +1 -1
  86. package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js +1 -1
  87. package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js +1 -1
  88. package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js +1 -1
  89. package/dist/components/EntityFinder/tree/EntityTree.js +1 -1
  90. package/dist/components/EntityHeaderTable/EntityHeaderTable.d.ts.map +1 -1
  91. package/dist/components/EntityHeaderTable/EntityHeaderTable.js +39 -39
  92. package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
  93. package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts +8 -0
  94. package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts.map +1 -0
  95. package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js +46 -0
  96. package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -0
  97. package/dist/components/Evaluation/EvaluationCard.d.ts.map +1 -1
  98. package/dist/components/Evaluation/EvaluationCard.js +35 -41
  99. package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
  100. package/dist/components/Evaluation/EvaluationEditor.d.ts.map +1 -1
  101. package/dist/components/Evaluation/EvaluationEditor.js +95 -90
  102. package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
  103. package/dist/components/Evaluation/EvaluationRoundEditor.d.ts.map +1 -1
  104. package/dist/components/Evaluation/EvaluationRoundEditor.js +133 -124
  105. package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
  106. package/dist/components/FilePreview/EntityPreview.js +1 -1
  107. package/dist/components/Forum/DiscussionReply.js +10 -10
  108. package/dist/components/Forum/DiscussionThread.js +21 -21
  109. package/dist/components/GenericCard/CardUtils.d.ts.map +1 -1
  110. package/dist/components/GenericCard/CardUtils.js +36 -36
  111. package/dist/components/GenericCard/CardUtils.js.map +1 -1
  112. package/dist/components/GenericCard/CollapsibleDescription.js +25 -25
  113. package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
  114. package/dist/components/GenericCard/SynapseCardLabel.js +72 -67
  115. package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
  116. package/dist/components/GenericCard/TableRowGenericCard.d.ts +4 -1
  117. package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
  118. package/dist/components/GenericCard/TableRowGenericCard.js +98 -96
  119. package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
  120. package/dist/components/GoalsV2/GoalsV2.Desktop.d.ts.map +1 -1
  121. package/dist/components/GoalsV2/GoalsV2.Desktop.js +14 -15
  122. package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
  123. package/dist/components/GoogleAnalytics/GoogleAnalytics.js +1 -1
  124. package/dist/components/HasAccess/HasAccessV2.js +1 -1
  125. package/dist/components/HasAccess/useHasAccess.js +1 -1
  126. package/dist/components/IDUReport/IDUReportSubmissionInfo.js +23 -23
  127. package/dist/components/IDUReport/IDUReportSubmissionInfo.js.map +1 -1
  128. package/dist/components/JSONArrayEditor/useParseCsv.d.ts +1 -1
  129. package/dist/components/JSONArrayEditor/useParseCsv.d.ts.map +1 -1
  130. package/dist/components/JSONArrayEditor/useParseCsv.js +9 -9
  131. package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
  132. package/dist/components/Markdown/MarkdownCollapse.js +7 -7
  133. package/dist/components/Markdown/MarkdownEditor.js +11 -11
  134. package/dist/components/Markdown/MarkdownGithub.js +1 -1
  135. package/dist/components/Markdown/MarkdownPopover.js +6 -6
  136. package/dist/components/Markdown/MarkdownPopover.js.map +1 -1
  137. package/dist/components/Markdown/MarkdownSynapse.d.ts.map +1 -1
  138. package/dist/components/Markdown/MarkdownSynapse.js +139 -135
  139. package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
  140. package/dist/components/Markdown/MarkdownUtils.d.ts +8 -0
  141. package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
  142. package/dist/components/Markdown/MarkdownUtils.js +139 -65
  143. package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
  144. package/dist/components/Markdown/UserMentionModal.js +18 -18
  145. package/dist/components/Markdown/UserMentionModal.js.map +1 -1
  146. package/dist/components/Markdown/widget/MarkdownButton.js +3 -3
  147. package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
  148. package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.d.ts.map +1 -1
  149. package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js +9 -8
  150. package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
  151. package/dist/components/Plot/SynapsePlot.css +1 -0
  152. package/dist/components/Plot/SynapsePlot.d.ts +2 -0
  153. package/dist/components/Plot/SynapsePlot.d.ts.map +1 -1
  154. package/dist/components/Plot/SynapsePlot.js +43 -39
  155. package/dist/components/Plot/SynapsePlot.js.map +1 -1
  156. package/dist/components/Plot/SynapsePlot.scss +8 -0
  157. package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js +1 -1
  158. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
  159. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +114 -113
  160. package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
  161. package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts +1 -1
  162. package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts.map +1 -1
  163. package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
  164. package/dist/components/Resources/Resources.Desktop.js +7 -7
  165. package/dist/components/Resources/Resources.Mobile.js +6 -6
  166. package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js +3 -3
  167. package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js +10 -10
  168. package/dist/components/SynapseChat/SynapseChatInteraction.js +5 -5
  169. package/dist/components/SynapseForm/WarningDialog.d.ts +1 -0
  170. package/dist/components/SynapseForm/WarningDialog.d.ts.map +1 -1
  171. package/dist/components/SynapseForm/WarningDialog.js +18 -16
  172. package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
  173. package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js +1 -1
  174. package/dist/components/SynapseHomepageV2/SynapsePartners.d.ts.map +1 -1
  175. package/dist/components/SynapseHomepageV2/SynapsePartners.js +17 -12
  176. package/dist/components/SynapseHomepageV2/SynapsePartners.js.map +1 -1
  177. package/dist/components/SynapsePortalBanners/SynapsePortalBanners.d.ts.map +1 -1
  178. package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js +39 -39
  179. package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js.map +1 -1
  180. package/dist/components/SynapseSearchPageResults/HasAccessChip.js +1 -1
  181. package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.d.ts.map +1 -1
  182. package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js +21 -22
  183. package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
  184. package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +5 -5
  185. package/dist/components/SynapseTable/ExpandableTableDataCell.d.ts.map +1 -1
  186. package/dist/components/SynapseTable/ExpandableTableDataCell.js +3 -1
  187. package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
  188. package/dist/components/SynapseTable/SynapseTable.js +4 -4
  189. package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.d.ts.map +1 -1
  190. package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js +122 -122
  191. package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
  192. package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +5 -5
  193. package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +1 -1
  194. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js +1 -1
  195. package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +1 -1
  196. package/dist/components/TableFeedCards/TableFeedCards.js +9 -9
  197. package/dist/components/TermsAndConditions/TermsAndConditionsItem.js +10 -10
  198. package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js +9 -9
  199. package/dist/components/UserSearchBox/UserSearchBox.d.ts +23 -0
  200. package/dist/components/UserSearchBox/UserSearchBox.d.ts.map +1 -0
  201. package/dist/components/UserSearchBox/UserSearchBox.js +146 -0
  202. package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -0
  203. package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js +13 -13
  204. package/dist/components/WizardChoiceButton/WizardChoiceButton.js +3 -3
  205. package/dist/components/dataaccess/AccessHistoryDashboard.js +5 -5
  206. package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
  207. package/dist/components/dataaccess/AccessRequirementDashboard.js +4 -4
  208. package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
  209. package/dist/components/dataaccess/AccessSubmissionDashboard.js +1 -1
  210. package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
  211. package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js +5 -5
  212. package/dist/components/dataaccess/UseAccessRequirementTable.js +3 -3
  213. package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
  214. package/dist/components/doi/CreateOrUpdateDoiModal.js +1 -1
  215. package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +2 -2
  216. package/dist/components/entity/metadata/EntityModal.js +1 -1
  217. package/dist/components/entity/metadata/MetadataTable.js +1 -1
  218. package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +1 -1
  219. package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js +1 -1
  220. package/dist/components/entity/page/title_bar/TitleBarProperties.js +1 -1
  221. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.d.ts.map +1 -1
  222. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js +27 -26
  223. package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
  224. package/dist/components/index.js +109 -107
  225. package/dist/components/index.js.map +1 -1
  226. package/dist/components/layout/InfiniteTableLayout.js +1 -1
  227. package/dist/components/styled/HoverPopover.css +1 -0
  228. package/dist/components/styled/HoverPopover.d.ts +28 -0
  229. package/dist/components/styled/HoverPopover.d.ts.map +1 -0
  230. package/dist/components/styled/HoverPopover.js +103 -0
  231. package/dist/components/styled/HoverPopover.js.map +1 -0
  232. package/dist/components/styled/HoverPopover.module.scss +9 -0
  233. package/dist/components/styled/HoverPopover.module.scss.js +10 -0
  234. package/dist/components/styled/HoverPopover.module.scss.js.map +1 -0
  235. package/dist/components/styled/index.d.ts +2 -0
  236. package/dist/components/styled/index.d.ts.map +1 -1
  237. package/dist/components/styled/index.js +11 -9
  238. package/dist/components/styled/index.js.map +1 -1
  239. package/dist/components/table/CsvPreview/CsvPreview.js +2 -2
  240. package/dist/components/table/CsvPreview/CsvPreviewDialog.js +2 -2
  241. package/dist/components/widgets/Range.js +1 -1
  242. package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts.map +1 -1
  243. package/dist/components/widgets/facet-nav/FacetNavPanel.js +35 -32
  244. package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
  245. package/dist/components/widgets/facet-nav/PlotsContainer.d.ts +1 -1
  246. package/dist/components/widgets/facet-nav/PlotsContainer.d.ts.map +1 -1
  247. package/dist/components/widgets/facet-nav/PlotsContainer.js +69 -68
  248. package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
  249. package/dist/components/widgets/facet-nav/useFacetPlots.d.ts.map +1 -1
  250. package/dist/components/widgets/facet-nav/useFacetPlots.js +24 -21
  251. package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
  252. package/dist/components/widgets/query-filter/FacetFilterControls.js +3 -3
  253. package/dist/features/curator/GridPage/GridPage.js +2 -2
  254. package/dist/features/curator/GridPage/components/GridPageTitle.js +2 -2
  255. package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
  256. package/dist/index.js +157 -155
  257. package/dist/index.js.map +1 -1
  258. package/dist/mocks/msw/handlers/accessRequirementHandlers.js +5 -5
  259. package/dist/mocks/msw/handlers/projectStorageHandlers.js +5 -5
  260. package/dist/mocks/msw/handlers/wikiHandlers.js +1 -1
  261. package/dist/mocks/msw/handlers.d.ts.map +1 -1
  262. package/dist/mocks/msw/handlers.js +67 -59
  263. package/dist/mocks/msw/handlers.js.map +1 -1
  264. package/dist/style/base/_core.scss +0 -1
  265. package/dist/style/components/_all.scss +0 -1
  266. package/dist/style/components/_entity-badge.scss +0 -2
  267. package/dist/style/components/_expandable_table_data.scss +3 -3
  268. package/dist/style/components/facet_nav/_facet-nav-panel.scss +3 -0
  269. package/dist/style/components/facet_nav/_facet-nav.scss +4 -0
  270. package/dist/style/main.css +1 -1
  271. package/dist/synapse-client/SynapseClient.js +118 -118
  272. package/dist/synapse-client/SynapseClient.js.map +1 -1
  273. package/dist/synapse-queries/auth/useOIDC.js +1 -1
  274. package/dist/synapse-queries/auth/useTwoFactorEnrollment.js +1 -1
  275. package/dist/synapse-queries/entity/index.js +6 -6
  276. package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js +1 -1
  277. package/dist/synapse-queries/index.js +1 -1
  278. package/dist/synapse-queries/user/usePersonalAccessToken.js +1 -1
  279. package/dist/testutils/vitest.setup.js +10 -11
  280. package/dist/testutils/vitest.setup.js.map +1 -1
  281. package/dist/theme/DefaultTheme.js +1 -1
  282. package/dist/theme/ThemeProvider.d.ts +2 -1
  283. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  284. package/dist/theme/ThemeProvider.js +11 -10
  285. package/dist/theme/ThemeProvider.js.map +1 -1
  286. package/dist/theme/index.js +1 -1
  287. package/dist/theme/mergeTheme.js +1 -1
  288. package/dist/tsconfig.build.tsbuildinfo +1 -1
  289. package/dist/utils/AppUtils/AppUtils.js +1 -1
  290. package/dist/utils/functions/SanitizeHtmlUtils.d.ts.map +1 -1
  291. package/dist/utils/functions/SanitizeHtmlUtils.js +34 -40
  292. package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
  293. package/dist/utils/functions/deepLinkingUtils.js +10 -10
  294. package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
  295. package/dist/utils/hooks/index.js +6 -6
  296. package/dist/utils/hooks/useDetectSSOCode.js +3 -3
  297. package/dist/utils/hooks/useGetEntityMetadata.js +1 -1
  298. package/dist/utils/hooks/useNativeSearchParams.d.ts.map +1 -1
  299. package/dist/utils/hooks/useNativeSearchParams.js +1 -1
  300. package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
  301. package/dist/utils/hooks/useOneSageURL.d.ts.map +1 -1
  302. package/dist/utils/hooks/useOneSageURL.js +15 -15
  303. package/dist/utils/hooks/useOneSageURL.js.map +1 -1
  304. package/dist/utils/hooks/useSourceAppConfigs.d.ts +1 -0
  305. package/dist/utils/hooks/useSourceAppConfigs.d.ts.map +1 -1
  306. package/dist/utils/hooks/useSourceAppConfigs.js +79 -77
  307. package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
  308. package/dist/utils/index.js +4 -4
  309. package/package.json +14 -15
  310. package/dist/_virtual/index.js +0 -6
  311. package/dist/_virtual/index.js.map +0 -1
  312. package/dist/_virtual/index2.js +0 -5
  313. package/dist/_virtual/index2.js.map +0 -1
  314. package/dist/_virtual/index3.js +0 -5
  315. package/dist/_virtual/index3.js.map +0 -1
  316. package/dist/_virtual/index4.js +0 -5
  317. package/dist/_virtual/index4.js.map +0 -1
  318. package/dist/_virtual/index5.js +0 -5
  319. package/dist/_virtual/index5.js.map +0 -1
  320. package/dist/assets/homepage/nci.svg +0 -6
  321. package/dist/assets/homepage/nci.svg.js +0 -7
  322. package/dist/assets/homepage/nci.svg.js.map +0 -1
  323. package/dist/assets/homepage/nih-mental.svg +0 -9
  324. package/dist/assets/homepage/nih-mental.svg.js +0 -7
  325. package/dist/assets/homepage/nih-mental.svg.js.map +0 -1
  326. package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts +0 -21
  327. package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts.map +0 -1
  328. package/dist/components/UserSearchBox/UserSearchBoxV2.js +0 -144
  329. package/dist/components/UserSearchBox/UserSearchBoxV2.js.map +0 -1
  330. package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js +0 -53
  331. package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js.map +0 -1
  332. package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js +0 -948
  333. package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js.map +0 -1
  334. package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js +0 -30
  335. package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js.map +0 -1
  336. package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js +0 -15
  337. package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js.map +0 -1
  338. package/dist/style/components/_user-search-box.scss +0 -30
@@ -1 +1 @@
1
- {"version":3,"file":"PlotsContainer.js","sources":["../../../../src/components/widgets/facet-nav/PlotsContainer.tsx"],"sourcesContent":["import { UniqueFacetIdentifier } from '@/utils'\nimport { facetObjectMatchesDefinition } from '@/utils/functions/queryUtils'\nimport { Box, Button } from '@mui/material'\nimport type { PlotType as PlotlyPlotType } from 'plotly.js-basic-dist'\nimport { Suspense, useEffect, useMemo, useState } from 'react'\nimport { useQueryVisualizationContext } from '../../QueryVisualizationWrapper'\nimport { useSuspenseGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport QueryWrapperSynapsePlot, {\n QueryWrapperSynapsePlotProps,\n} from '../../QueryWrapperPlotNav/QueryWrapperSynapsePlot'\nimport FacetNavPanel, {\n FacetNavPanelProps,\n PlotType,\n} from '../facet-nav/FacetNavPanel'\nimport { PlotsContainerSkeleton } from './PlotsContainerSkeleton'\nimport useFacetPlots, { getFacets } from './useFacetPlots'\n\nconst DEFAULT_VISIBLE_PLOTS = 2\ntype ShowMoreState = 'MORE' | 'LESS' | 'NONE'\nexport type PlotsContainerProps = {\n facetsToPlot?: string[]\n customPlots?: QueryWrapperSynapsePlotProps[]\n initialPlotType?: PlotType\n}\ntype CustomPlotIdentifier = {\n title: string\n __custom: true\n}\nexport type PlotIdentifier = UniqueFacetIdentifier | CustomPlotIdentifier\n\nexport type UiPlotState = {\n plotId: PlotIdentifier\n isHidden: boolean\n plotType: PlotType\n index?: number\n}\nconst plotMatchesDefinition = (\n definition: PlotIdentifier,\n plotId: PlotIdentifier,\n) => {\n if ('__custom' in plotId && '__custom' in definition) {\n return definition.title == plotId.title\n } else if (!('__custom' in plotId) && !('__custom' in definition)) {\n return facetObjectMatchesDefinition(definition, plotId)\n } else {\n return false\n }\n}\n\nfunction convertPlotlyPlotTypeToFacetNavPlotType(\n plotlyPlotType: PlotlyPlotType,\n): PlotType {\n if (plotlyPlotType === 'bar') {\n return 'BAR'\n } else if (plotlyPlotType === 'pie') {\n return 'PIE'\n }\n return 'PIE'\n}\n\nconst generatePlotKey = (plotUiState: UiPlotState) => {\n if ('__custom' in plotUiState.plotId) {\n // For custom plots\n return `custom-${plotUiState.plotId.title}`\n } else {\n // For facet plots\n return `facet-${plotUiState.plotId.columnName}-${plotUiState.plotId.jsonPath}`\n }\n}\n\nconst isPlotInState = (\n plotId: PlotIdentifier,\n plotUiStateArray: UiPlotState[],\n): boolean => {\n return !!plotUiStateArray.find(plot => {\n return plotMatchesDefinition(plot.plotId, plotId)\n })\n}\n\nconst getCustomPlotIdentifier = (\n customPlot: QueryWrapperSynapsePlotProps,\n): PlotIdentifier => {\n return { __custom: true, title: customPlot.title ?? '' }\n}\n\nconst getCombinedNewPlots = (\n customPlots: QueryWrapperSynapsePlotProps[] = [],\n facetNavPanelPropsArray: Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n >[] = [],\n initialPlotType: PlotType = DEFAULT_PLOT_TYPE,\n): UiPlotState[] => [\n ...customPlots.map((plotProps, index) => ({\n plotId: getCustomPlotIdentifier(plotProps),\n isHidden: index >= DEFAULT_VISIBLE_PLOTS,\n plotType: convertPlotlyPlotTypeToFacetNavPlotType(plotProps.type),\n })),\n ...facetNavPanelPropsArray.map((facetPlotProps, index) => ({\n plotId: facetPlotProps.facetToPlot,\n isHidden: index + customPlots.length >= DEFAULT_VISIBLE_PLOTS,\n plotType: initialPlotType,\n })),\n]\n\n// Remove plots that are no longer in props from prevPlots\nconst isPlotStillPresent = (\n prevPlot: UiPlotState,\n customPlots: QueryWrapperSynapsePlotProps[],\n facetNavPanelProps: Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n >[],\n): boolean => {\n return (\n customPlots.some(customPlot =>\n plotMatchesDefinition(\n getCustomPlotIdentifier(customPlot),\n prevPlot.plotId,\n ),\n ) ||\n facetNavPanelProps.some(facetPlot =>\n plotMatchesDefinition(facetPlot.facetToPlot, prevPlot.plotId),\n )\n )\n} // fn returns true iff the plot id is in customPlots or facetNavPanelPropsArray\n\nconst DEFAULT_PLOT_TYPE: PlotType = 'PIE'\n\nconst DEFAULT_FACETS_TO_PLOT: string[] = []\nconst DEFAULT_CUSTOM_PLOTS: QueryWrapperSynapsePlotProps[] = []\n\nfunction PlotsContainer(props: PlotsContainerProps) {\n const {\n facetsToPlot = DEFAULT_FACETS_TO_PLOT,\n customPlots = DEFAULT_CUSTOM_PLOTS,\n initialPlotType = DEFAULT_PLOT_TYPE,\n } = props\n const { data: queryMetadata } = useSuspenseGetQueryMetadata()\n const { showPlots: showPlotVisualization } = useQueryVisualizationContext()\n const [plotUiStateArray, setPlotUiStateArray] = useState<UiPlotState[]>([])\n const facetNavPanelPropsArray = useFacetPlots(facetsToPlot)\n\n const getPlotType = (plotId: PlotIdentifier): PlotType => {\n const plotType = plotUiStateArray.find(item =>\n plotMatchesDefinition(plotId, item.plotId),\n )?.plotType\n return plotType ?? DEFAULT_PLOT_TYPE\n }\n\n useEffect(() => {\n const combinedNewPlots = getCombinedNewPlots(\n customPlots,\n facetNavPanelPropsArray,\n initialPlotType,\n )\n\n // Update the state with new plots\n setPlotUiStateArray(prevPlots => {\n // Filter to only include new plots\n const newPlots = combinedNewPlots.filter(plot => {\n const inState = isPlotInState(plot.plotId, prevPlots)\n return !inState\n })\n\n const updatedPlots = prevPlots.filter(prevPlot =>\n isPlotStillPresent(prevPlot, customPlots, facetNavPanelPropsArray),\n )\n\n // Append new plots\n const combinedPlots = [...updatedPlots, ...newPlots]\n return combinedPlots\n })\n }, [customPlots, facetNavPanelPropsArray])\n\n // when 'show more/less' is clicked\n const onShowMoreClick = (shouldShowMore: boolean) => {\n setPlotUiStateArray(plotUiStateArray => {\n return plotUiStateArray.map((item, index) => {\n if (shouldShowMore) {\n // show everything\n return { ...item, isHidden: false }\n }\n // otherwise hide everything except the first few items\n return { ...item, isHidden: index >= DEFAULT_VISIBLE_PLOTS }\n })\n })\n }\n\n const isPlotHiddenInGrid = (plotId: PlotIdentifier) => {\n const itemHidden = plotUiStateArray.find(\n item =>\n plotMatchesDefinition(plotId, item.plotId) && item.isHidden === true,\n )\n const result = itemHidden !== undefined\n return result\n }\n\n const showMoreButtonState = useMemo<ShowMoreState>(() => {\n if (\n // if at least one item is hidden\n plotUiStateArray.find(item => item.isHidden === true)\n ) {\n return 'MORE'\n } else if (plotUiStateArray.length <= DEFAULT_VISIBLE_PLOTS) {\n return 'NONE'\n } else {\n return 'LESS'\n }\n }, [plotUiStateArray])\n\n // hides plot graph\n const hidePlotInGrid = (plotId: PlotIdentifier) => {\n setUiPropertyForPlot(plotId, 'isHidden', true)\n }\n\n const setPlotType = (plotId: PlotIdentifier, plotType: PlotType) => {\n setUiPropertyForPlot(plotId, 'plotType', plotType)\n }\n\n const setUiPropertyForPlot = (\n plotId: PlotIdentifier,\n propName: keyof UiPlotState,\n value: boolean | PlotType, // 'the possible values of the above type' (currently can't be specified in TS using symbols)\n ) => {\n setPlotUiStateArray(plotUiStateArray =>\n plotUiStateArray.map(item =>\n plotMatchesDefinition(plotId, item.plotId)\n ? { ...item, [propName]: value }\n : item,\n ),\n )\n }\n\n const colorTracker: { facet: PlotIdentifier; colorIndex: number }[] =\n // TODO: customPlots should use the color index\n // additionally, it is unclear why this object is created\n // We can probably just pass the index from `plotUiStateArray.map)\n getFacets(queryMetadata, facetsToPlot).map((el, index) => {\n return {\n facet: { columnName: el.columnName, jsonPath: el.jsonPath },\n colorIndex: index,\n }\n })\n\n return (\n <>\n {plotUiStateArray.length > 0 && (\n <div\n className={`PlotsContainer ${showPlotVisualization ? '' : 'hidden'} ${\n showMoreButtonState === 'LESS' ? 'less' : ''\n }`}\n >\n <div className=\"PlotsContainer__row\" role=\"list\">\n {plotUiStateArray.map(plotUiState => {\n const isCustomPlot = '__custom' in plotUiState.plotId\n const customPlotProps = customPlots.find(customPlot =>\n plotMatchesDefinition(\n getCustomPlotIdentifier(customPlot),\n plotUiState.plotId,\n ),\n )\n const facetNavPanelProps = facetNavPanelPropsArray.find(props =>\n plotMatchesDefinition(props.facetToPlot, plotUiState.plotId),\n )\n\n return (\n <div\n style={{\n minWidth: '435px',\n display: isPlotHiddenInGrid(plotUiState.plotId)\n ? 'none'\n : 'block',\n }}\n key={generatePlotKey(plotUiState)}\n >\n {isCustomPlot && customPlotProps && (\n <QueryWrapperSynapsePlot\n {...customPlotProps}\n onHide={() => hidePlotInGrid(plotUiState.plotId)}\n />\n )}\n {!isCustomPlot && facetNavPanelProps && (\n <FacetNavPanel\n index={\n colorTracker.find(el =>\n plotMatchesDefinition(el.facet, plotUiState.plotId),\n )?.colorIndex!\n }\n onHide={() => hidePlotInGrid(plotUiState.plotId)}\n plotType={getPlotType(plotUiState.plotId)}\n onSetPlotType={(plotType: PlotType) =>\n setPlotType(plotUiState.plotId, plotType)\n }\n isModalView={false}\n {...facetNavPanelProps}\n />\n )}\n </div>\n )\n })}\n </div>\n {showMoreButtonState !== 'NONE' && (\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'center',\n backgroundColor: 'grey.100',\n p: 2,\n mt: 2,\n }}\n >\n <Button\n variant=\"contained\"\n color=\"secondary\"\n onClick={() => onShowMoreClick(showMoreButtonState === 'MORE')}\n sx={{ width: '150px' }}\n >\n {showMoreButtonState === 'LESS'\n ? 'Hide Charts'\n : 'View All Charts'}\n </Button>\n </Box>\n )}\n </div>\n )}\n </>\n )\n}\n\nexport default function PlotsContainerWithSuspense(props: PlotsContainerProps) {\n const { showPlots } = useQueryVisualizationContext()\n return (\n <Suspense fallback={showPlots ? <PlotsContainerSkeleton /> : null}>\n <PlotsContainer {...props} />\n </Suspense>\n )\n}\n"],"names":["DEFAULT_VISIBLE_PLOTS","plotMatchesDefinition","definition","plotId","facetObjectMatchesDefinition","convertPlotlyPlotTypeToFacetNavPlotType","plotlyPlotType","generatePlotKey","plotUiState","isPlotInState","plotUiStateArray","plot","getCustomPlotIdentifier","customPlot","getCombinedNewPlots","customPlots","facetNavPanelPropsArray","initialPlotType","DEFAULT_PLOT_TYPE","plotProps","index","facetPlotProps","isPlotStillPresent","prevPlot","facetNavPanelProps","facetPlot","DEFAULT_FACETS_TO_PLOT","DEFAULT_CUSTOM_PLOTS","PlotsContainer","props","facetsToPlot","queryMetadata","useSuspenseGetQueryMetadata","showPlotVisualization","useQueryVisualizationContext","setPlotUiStateArray","useState","useFacetPlots","getPlotType","item","useEffect","combinedNewPlots","prevPlots","newPlots","onShowMoreClick","shouldShowMore","isPlotHiddenInGrid","showMoreButtonState","useMemo","hidePlotInGrid","setUiPropertyForPlot","setPlotType","plotType","propName","value","colorTracker","getFacets","el","jsx","Fragment","jsxs","isCustomPlot","customPlotProps","QueryWrapperSynapsePlot","FacetNavPanel","Box","Button","PlotsContainerWithSuspense","showPlots","Suspense","PlotsContainerSkeleton"],"mappings":"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"}
1
+ {"version":3,"file":"PlotsContainer.js","sources":["../../../../src/components/widgets/facet-nav/PlotsContainer.tsx"],"sourcesContent":["import { UniqueFacetIdentifier } from '@/utils'\nimport { facetObjectMatchesDefinition } from '@/utils/functions/queryUtils'\nimport { Box, Button } from '@mui/material'\nimport type { PlotType as PlotlyPlotType } from 'plotly.js-basic-dist'\nimport { Suspense, useEffect, useMemo, useState } from 'react'\nimport { useQueryVisualizationContext } from '../../QueryVisualizationWrapper'\nimport { useSuspenseGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport QueryWrapperSynapsePlot, {\n QueryWrapperSynapsePlotProps,\n} from '../../QueryWrapperPlotNav/QueryWrapperSynapsePlot'\nimport FacetNavPanel, {\n FacetNavPanelProps,\n PlotType,\n} from '../facet-nav/FacetNavPanel'\nimport { PlotsContainerSkeleton } from './PlotsContainerSkeleton'\nimport useFacetPlots, { getFacets } from './useFacetPlots'\n\nconst DEFAULT_VISIBLE_PLOTS = 2\ntype ShowMoreState = 'MORE' | 'LESS' | 'NONE'\nexport type PlotsContainerProps = {\n facetsToPlot?: string[]\n customPlots?: QueryWrapperSynapsePlotProps[]\n initialPlotTypeByFacetColumnName?: Record<string, PlotType>\n}\ntype CustomPlotIdentifier = {\n title: string\n __custom: true\n}\nexport type PlotIdentifier = UniqueFacetIdentifier | CustomPlotIdentifier\n\nexport type UiPlotState = {\n plotId: PlotIdentifier\n isHidden: boolean\n plotType: PlotType\n index?: number\n}\nconst plotMatchesDefinition = (\n definition: PlotIdentifier,\n plotId: PlotIdentifier,\n) => {\n if ('__custom' in plotId && '__custom' in definition) {\n return definition.title == plotId.title\n } else if (!('__custom' in plotId) && !('__custom' in definition)) {\n return facetObjectMatchesDefinition(definition, plotId)\n } else {\n return false\n }\n}\n\nfunction convertPlotlyPlotTypeToFacetNavPlotType(\n plotlyPlotType: PlotlyPlotType,\n): PlotType {\n if (plotlyPlotType === 'bar') {\n return 'BAR'\n } else if (plotlyPlotType === 'pie') {\n return 'PIE'\n }\n return 'PIE'\n}\n\nconst generatePlotKey = (plotUiState: UiPlotState) => {\n if ('__custom' in plotUiState.plotId) {\n // For custom plots\n return `custom-${plotUiState.plotId.title}`\n } else {\n // For facet plots\n return `facet-${plotUiState.plotId.columnName}-${plotUiState.plotId.jsonPath}`\n }\n}\n\nconst isPlotInState = (\n plotId: PlotIdentifier,\n plotUiStateArray: UiPlotState[],\n): boolean => {\n return !!plotUiStateArray.find(plot => {\n return plotMatchesDefinition(plot.plotId, plotId)\n })\n}\n\nconst getCustomPlotIdentifier = (\n customPlot: QueryWrapperSynapsePlotProps,\n): PlotIdentifier => {\n return { __custom: true, title: customPlot.title ?? '' }\n}\n\nconst getCombinedNewPlots = (\n customPlots: QueryWrapperSynapsePlotProps[] = [],\n facetNavPanelPropsArray: Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n >[] = [],\n initialPlotTypeByFacetColumnName?: Record<string, PlotType>,\n): UiPlotState[] => [\n ...customPlots.map((plotProps, index) => ({\n plotId: getCustomPlotIdentifier(plotProps),\n isHidden: index >= DEFAULT_VISIBLE_PLOTS,\n plotType: convertPlotlyPlotTypeToFacetNavPlotType(plotProps.type),\n })),\n ...facetNavPanelPropsArray.map((facetPlotProps, index) => ({\n plotId: facetPlotProps.facetToPlot,\n isHidden: index + customPlots.length >= DEFAULT_VISIBLE_PLOTS,\n plotType:\n initialPlotTypeByFacetColumnName?.[\n facetPlotProps.facetToPlot.columnName\n ] ?? DEFAULT_PLOT_TYPE,\n })),\n]\n\n// Remove plots that are no longer in props from prevPlots\nconst isPlotStillPresent = (\n prevPlot: UiPlotState,\n customPlots: QueryWrapperSynapsePlotProps[],\n facetNavPanelProps: Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n >[],\n): boolean => {\n return (\n customPlots.some(customPlot =>\n plotMatchesDefinition(\n getCustomPlotIdentifier(customPlot),\n prevPlot.plotId,\n ),\n ) ||\n facetNavPanelProps.some(facetPlot =>\n plotMatchesDefinition(facetPlot.facetToPlot, prevPlot.plotId),\n )\n )\n} // fn returns true iff the plot id is in customPlots or facetNavPanelPropsArray\n\nconst DEFAULT_PLOT_TYPE: PlotType = 'PIE'\n\nconst DEFAULT_FACETS_TO_PLOT: string[] = []\nconst DEFAULT_CUSTOM_PLOTS: QueryWrapperSynapsePlotProps[] = []\n\nfunction PlotsContainer(props: PlotsContainerProps) {\n const {\n facetsToPlot = DEFAULT_FACETS_TO_PLOT,\n customPlots = DEFAULT_CUSTOM_PLOTS,\n initialPlotTypeByFacetColumnName,\n } = props\n const { data: queryMetadata } = useSuspenseGetQueryMetadata()\n const { showPlots: showPlotVisualization } = useQueryVisualizationContext()\n const [plotUiStateArray, setPlotUiStateArray] = useState<UiPlotState[]>([])\n const facetNavPanelPropsArray = useFacetPlots(facetsToPlot)\n\n const getPlotType = (plotId: PlotIdentifier): PlotType => {\n const plotType = plotUiStateArray.find(item =>\n plotMatchesDefinition(plotId, item.plotId),\n )?.plotType\n return plotType ?? DEFAULT_PLOT_TYPE\n }\n\n useEffect(() => {\n const combinedNewPlots = getCombinedNewPlots(\n customPlots,\n facetNavPanelPropsArray,\n initialPlotTypeByFacetColumnName,\n )\n\n // Update the state with new plots\n setPlotUiStateArray(prevPlots => {\n // Filter to only include new plots\n const newPlots = combinedNewPlots.filter(plot => {\n const inState = isPlotInState(plot.plotId, prevPlots)\n return !inState\n })\n\n const updatedPlots = prevPlots.filter(prevPlot =>\n isPlotStillPresent(prevPlot, customPlots, facetNavPanelPropsArray),\n )\n\n // Append new plots\n const combinedPlots = [...updatedPlots, ...newPlots]\n return combinedPlots\n })\n }, [customPlots, facetNavPanelPropsArray, initialPlotTypeByFacetColumnName])\n\n // when 'show more/less' is clicked\n const onShowMoreClick = (shouldShowMore: boolean) => {\n setPlotUiStateArray(plotUiStateArray => {\n return plotUiStateArray.map((item, index) => {\n if (shouldShowMore) {\n // show everything\n return { ...item, isHidden: false }\n }\n // otherwise hide everything except the first few items\n return { ...item, isHidden: index >= DEFAULT_VISIBLE_PLOTS }\n })\n })\n }\n\n const isPlotHiddenInGrid = (plotId: PlotIdentifier) => {\n const itemHidden = plotUiStateArray.find(\n item =>\n plotMatchesDefinition(plotId, item.plotId) && item.isHidden === true,\n )\n const result = itemHidden !== undefined\n return result\n }\n\n const showMoreButtonState = useMemo<ShowMoreState>(() => {\n if (\n // if at least one item is hidden\n plotUiStateArray.find(item => item.isHidden === true)\n ) {\n return 'MORE'\n } else if (plotUiStateArray.length <= DEFAULT_VISIBLE_PLOTS) {\n return 'NONE'\n } else {\n return 'LESS'\n }\n }, [plotUiStateArray])\n\n // hides plot graph\n const hidePlotInGrid = (plotId: PlotIdentifier) => {\n setUiPropertyForPlot(plotId, 'isHidden', true)\n }\n\n const setPlotType = (plotId: PlotIdentifier, plotType: PlotType) => {\n setUiPropertyForPlot(plotId, 'plotType', plotType)\n }\n\n const setUiPropertyForPlot = (\n plotId: PlotIdentifier,\n propName: keyof UiPlotState,\n value: boolean | PlotType, // 'the possible values of the above type' (currently can't be specified in TS using symbols)\n ) => {\n setPlotUiStateArray(plotUiStateArray =>\n plotUiStateArray.map(item =>\n plotMatchesDefinition(plotId, item.plotId)\n ? { ...item, [propName]: value }\n : item,\n ),\n )\n }\n\n const colorTracker: { facet: PlotIdentifier; colorIndex: number }[] =\n // TODO: customPlots should use the color index\n // additionally, it is unclear why this object is created\n // We can probably just pass the index from `plotUiStateArray.map)\n getFacets(queryMetadata, facetsToPlot).map((el, index) => {\n return {\n facet: { columnName: el.columnName, jsonPath: el.jsonPath },\n colorIndex: index,\n }\n })\n\n return (\n <>\n {plotUiStateArray.length > 0 && (\n <div\n className={`PlotsContainer ${showPlotVisualization ? '' : 'hidden'} ${\n showMoreButtonState === 'LESS' ? 'less' : ''\n }`}\n >\n <div className=\"PlotsContainer__row\" role=\"list\">\n {plotUiStateArray.map(plotUiState => {\n const isCustomPlot = '__custom' in plotUiState.plotId\n const customPlotProps = customPlots.find(customPlot =>\n plotMatchesDefinition(\n getCustomPlotIdentifier(customPlot),\n plotUiState.plotId,\n ),\n )\n const facetNavPanelProps = facetNavPanelPropsArray.find(props =>\n plotMatchesDefinition(props.facetToPlot, plotUiState.plotId),\n )\n\n return (\n <div\n className={\n plotUiState.plotType === 'BAR'\n ? 'PlotsContainer__row__item--full-width'\n : undefined\n }\n style={{\n minWidth: '435px',\n display: isPlotHiddenInGrid(plotUiState.plotId)\n ? 'none'\n : 'block',\n }}\n key={generatePlotKey(plotUiState)}\n >\n {isCustomPlot && customPlotProps && (\n <QueryWrapperSynapsePlot\n {...customPlotProps}\n onHide={() => hidePlotInGrid(plotUiState.plotId)}\n />\n )}\n {!isCustomPlot && facetNavPanelProps && (\n <FacetNavPanel\n index={\n colorTracker.find(el =>\n plotMatchesDefinition(el.facet, plotUiState.plotId),\n )?.colorIndex!\n }\n onHide={() => hidePlotInGrid(plotUiState.plotId)}\n plotType={getPlotType(plotUiState.plotId)}\n onSetPlotType={(plotType: PlotType) =>\n setPlotType(plotUiState.plotId, plotType)\n }\n isModalView={false}\n {...facetNavPanelProps}\n />\n )}\n </div>\n )\n })}\n </div>\n {showMoreButtonState !== 'NONE' && (\n <Box\n sx={{\n display: 'flex',\n justifyContent: 'center',\n backgroundColor: 'grey.100',\n p: 2,\n mt: 2,\n }}\n >\n <Button\n variant=\"contained\"\n color=\"secondary\"\n onClick={() => onShowMoreClick(showMoreButtonState === 'MORE')}\n sx={{ width: '150px' }}\n >\n {showMoreButtonState === 'LESS'\n ? 'Hide Charts'\n : 'View All Charts'}\n </Button>\n </Box>\n )}\n </div>\n )}\n </>\n )\n}\n\nexport default function PlotsContainerWithSuspense(props: PlotsContainerProps) {\n const { showPlots } = useQueryVisualizationContext()\n return (\n <Suspense fallback={showPlots ? <PlotsContainerSkeleton /> : null}>\n <PlotsContainer {...props} />\n </Suspense>\n )\n}\n"],"names":["DEFAULT_VISIBLE_PLOTS","plotMatchesDefinition","definition","plotId","facetObjectMatchesDefinition","convertPlotlyPlotTypeToFacetNavPlotType","plotlyPlotType","generatePlotKey","plotUiState","isPlotInState","plotUiStateArray","plot","getCustomPlotIdentifier","customPlot","getCombinedNewPlots","customPlots","facetNavPanelPropsArray","initialPlotTypeByFacetColumnName","plotProps","index","facetPlotProps","DEFAULT_PLOT_TYPE","isPlotStillPresent","prevPlot","facetNavPanelProps","facetPlot","DEFAULT_FACETS_TO_PLOT","DEFAULT_CUSTOM_PLOTS","PlotsContainer","props","facetsToPlot","queryMetadata","useSuspenseGetQueryMetadata","showPlotVisualization","useQueryVisualizationContext","setPlotUiStateArray","useState","useFacetPlots","getPlotType","item","useEffect","combinedNewPlots","prevPlots","newPlots","onShowMoreClick","shouldShowMore","isPlotHiddenInGrid","showMoreButtonState","useMemo","hidePlotInGrid","setUiPropertyForPlot","setPlotType","plotType","propName","value","colorTracker","getFacets","el","jsx","Fragment","jsxs","isCustomPlot","customPlotProps","QueryWrapperSynapsePlot","FacetNavPanel","Box","Button","PlotsContainerWithSuspense","showPlots","Suspense","PlotsContainerSkeleton"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFacetPlots.d.ts","sourceRoot":"","sources":["../../../../src/components/widgets/facet-nav/useFacetPlots.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,iCAAiC,CAAA;AAKxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGpD,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,YAAY,EAAE,MAAM,EAAE,GACrB,IAAI,CACL,kBAAkB,EAClB,2BAA2B,GAAG,0BAA0B,GAAG,aAAa,CACzE,EAAE,CAqDF;AAED,wBAAgB,SAAS,CACvB,IAAI,EAAE,iBAAiB,GAAG,SAAS,EACnC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,iBAAiB,EAAE,CAcrB"}
1
+ {"version":3,"file":"useFacetPlots.d.ts","sourceRoot":"","sources":["../../../../src/components/widgets/facet-nav/useFacetPlots.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,iCAAiC,CAAA;AAKxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGpD,MAAM,CAAC,OAAO,UAAU,aAAa,CACnC,YAAY,EAAE,MAAM,EAAE,GACrB,IAAI,CACL,kBAAkB,EAClB,2BAA2B,GAAG,0BAA0B,GAAG,aAAa,CACzE,EAAE,CAqDF;AAED,wBAAgB,SAAS,CACvB,IAAI,EAAE,iBAAiB,GAAG,SAAS,EACnC,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,iBAAiB,EAAE,CAoBrB"}
@@ -1,44 +1,47 @@
1
- import { isSingleNotSetValue as i } from "../../../utils/functions/queryUtils.js";
2
- import { useMemo as c, useCallback as m } from "react";
1
+ import { isSingleNotSetValue as f } from "../../../utils/functions/queryUtils.js";
2
+ import { useMemo as c, useCallback as i } from "react";
3
3
  import { useQueryContext as y } from "../../QueryContext/QueryContext.js";
4
4
  import { useSuspenseGetQueryMetadata as g } from "../../QueryWrapper/useGetQueryMetadata.js";
5
- import { applyChangesToValuesColumn as F } from "../query-filter/FacetFilterControls.js";
6
- function N(r) {
7
- const { getCurrentQueryRequest: t, executeQueryRequest: o } = y(), { data: e } = g(), n = c(
5
+ import { applyChangesToValuesColumn as d } from "../query-filter/FacetFilterControls.js";
6
+ function S(u) {
7
+ const { getCurrentQueryRequest: t, executeQueryRequest: a } = y(), { data: e } = g(), r = c(
8
8
  () => t(),
9
9
  [t]
10
10
  ), l = c(
11
- () => C(e, r),
12
- [e, r]
13
- ), u = m(
11
+ () => F(e, u),
12
+ [e, u]
13
+ ), o = i(
14
14
  (s) => {
15
- o(
16
- (a) => (a.query.selectedFacets = s, a.query.offset = 0, a),
15
+ a(
16
+ (n) => (n.query.selectedFacets = s, n.query.offset = 0, n),
17
17
  { debounce: !0 }
18
18
  );
19
19
  },
20
- [o]
20
+ [a]
21
21
  );
22
22
  return c(
23
23
  () => l.map((s) => ({
24
24
  facetToPlot: s,
25
- applyChangesToFacetFilter: u,
26
- applyChangesToGraphSlice: (a, p, f) => F(
25
+ applyChangesToFacetFilter: o,
26
+ applyChangesToGraphSlice: (n, p, m) => d(
27
+ r,
27
28
  n,
28
- a,
29
- u,
29
+ o,
30
30
  p?.value,
31
- f
31
+ m
32
32
  )
33
33
  })),
34
- [l, u, n]
34
+ [l, o, r]
35
35
  );
36
36
  }
37
- function C(r, t) {
38
- return r?.facets?.filter((e) => e.facetType === "enumeration" && (!t?.length || t.indexOf(e.columnName) > -1) && e.facetValues.length > 0 && !i(e)) ?? [];
37
+ function F(u, t) {
38
+ const a = u?.facets?.filter((e) => e.facetType === "enumeration" && (!t?.length || t.indexOf(e.columnName) > -1) && e.facetValues.length > 0 && !f(e)) ?? [];
39
+ return t?.length && a.sort(
40
+ (e, r) => t.indexOf(e.columnName) - t.indexOf(r.columnName)
41
+ ), a;
39
42
  }
40
43
  export {
41
- N as default,
42
- C as getFacets
44
+ S as default,
45
+ F as getFacets
43
46
  };
44
47
  //# sourceMappingURL=useFacetPlots.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFacetPlots.js","sources":["../../../../src/components/widgets/facet-nav/useFacetPlots.ts"],"sourcesContent":["import { isSingleNotSetValue } from '@/utils/functions/queryUtils'\nimport {\n FacetColumnRequest,\n FacetColumnResult,\n FacetColumnResultValueCount,\n FacetColumnResultValues,\n QueryResultBundle,\n} from '@sage-bionetworks/synapse-types'\nimport { useCallback, useMemo } from 'react'\nimport { useQueryContext } from '../../QueryContext'\nimport { useSuspenseGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport { applyChangesToValuesColumn } from '../query-filter/FacetFilterControls'\nimport { FacetNavPanelProps } from './FacetNavPanel'\n\n// Custom hook for generating properties for FacetNavPanel components with filter controls based on the given facets\nexport default function useFacetPlots(\n facetsToPlot: string[],\n): Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n>[] {\n const { getCurrentQueryRequest, executeQueryRequest } = useQueryContext()\n\n const { data: queryMetadata } = useSuspenseGetQueryMetadata()\n\n const lastQueryRequest = useMemo(\n () => getCurrentQueryRequest(),\n [getCurrentQueryRequest],\n )\n const facets = useMemo(\n () => getFacets(queryMetadata, facetsToPlot),\n [queryMetadata, facetsToPlot],\n )\n\n const applyChangesFromQueryFilter = useCallback(\n (facets: FacetColumnRequest[]) => {\n executeQueryRequest(\n lastQueryRequest => {\n lastQueryRequest.query.selectedFacets = facets\n lastQueryRequest.query.offset = 0\n return lastQueryRequest\n },\n { debounce: true },\n )\n },\n [executeQueryRequest],\n )\n\n const facetNavPanelProps = useMemo(\n () =>\n facets.map(facet => {\n return {\n facetToPlot: facet as FacetColumnResultValues,\n\n applyChangesToFacetFilter: applyChangesFromQueryFilter,\n\n applyChangesToGraphSlice: (\n facet: FacetColumnResultValues,\n value: FacetColumnResultValueCount | undefined,\n isSelected: boolean,\n ) =>\n applyChangesToValuesColumn(\n lastQueryRequest,\n facet,\n applyChangesFromQueryFilter,\n value?.value,\n isSelected,\n ),\n }\n }),\n [facets, applyChangesFromQueryFilter, lastQueryRequest],\n )\n return facetNavPanelProps\n}\n\nexport function getFacets(\n data: QueryResultBundle | undefined,\n facetsToPlot?: string[],\n): FacetColumnResult[] {\n const result =\n data?.facets?.filter(item => {\n const isFacetToPlot =\n item.facetType === 'enumeration' &&\n (!facetsToPlot?.length || facetsToPlot.indexOf(item.columnName) > -1)\n // PORTALS-1993: only plot if the facet has count data\n return (\n isFacetToPlot &&\n item.facetValues.length > 0 &&\n !isSingleNotSetValue(item)\n )\n }) ?? []\n return result\n}\n"],"names":["useFacetPlots","facetsToPlot","getCurrentQueryRequest","executeQueryRequest","useQueryContext","queryMetadata","useSuspenseGetQueryMetadata","lastQueryRequest","useMemo","facets","getFacets","applyChangesFromQueryFilter","useCallback","facet","value","isSelected","applyChangesToValuesColumn","data","item","isSingleNotSetValue"],"mappings":";;;;;AAeA,SAAwBA,EACtBC,GAIE;AACF,QAAM,EAAE,wBAAAC,GAAwB,qBAAAC,EAAA,IAAwBC,EAAA,GAElD,EAAE,MAAMC,EAAA,IAAkBC,EAAA,GAE1BC,IAAmBC;AAAA,IACvB,MAAMN,EAAA;AAAA,IACN,CAACA,CAAsB;AAAA,EAAA,GAEnBO,IAASD;AAAA,IACb,MAAME,EAAUL,GAAeJ,CAAY;AAAA,IAC3C,CAACI,GAAeJ,CAAY;AAAA,EAAA,GAGxBU,IAA8BC;AAAA,IAClC,CAACH,MAAiC;AAChC,MAAAN;AAAA,QACE,CAAAI,OACEA,EAAiB,MAAM,iBAAiBE,GACxCF,EAAiB,MAAM,SAAS,GACzBA;AAAAA,QAET,EAAE,UAAU,GAAA;AAAA,MAAK;AAAA,IAErB;AAAA,IACA,CAACJ,CAAmB;AAAA,EAAA;AA2BtB,SAxB2BK;AAAA,IACzB,MACEC,EAAO,IAAI,CAAAI,OACF;AAAA,MACL,aAAaA;AAAA,MAEb,2BAA2BF;AAAA,MAE3B,0BAA0B,CACxBE,GACAC,GACAC,MAEAC;AAAA,QACET;AAAA,QACAM;AAAAA,QACAF;AAAA,QACAG,GAAO;AAAA,QACPC;AAAA,MAAA;AAAA,IACF,EAEL;AAAA,IACH,CAACN,GAAQE,GAA6BJ,CAAgB;AAAA,EAAA;AAG1D;AAEO,SAASG,EACdO,GACAhB,GACqB;AAarB,SAXEgB,GAAM,QAAQ,OAAO,CAAAC,MAEjBA,EAAK,cAAc,kBAClB,CAACjB,GAAc,UAAUA,EAAa,QAAQiB,EAAK,UAAU,IAAI,OAIlEA,EAAK,YAAY,SAAS,KAC1B,CAACC,EAAoBD,CAAI,CAE5B,KAAK,CAAA;AAEV;"}
1
+ {"version":3,"file":"useFacetPlots.js","sources":["../../../../src/components/widgets/facet-nav/useFacetPlots.ts"],"sourcesContent":["import { isSingleNotSetValue } from '@/utils/functions/queryUtils'\nimport {\n FacetColumnRequest,\n FacetColumnResult,\n FacetColumnResultValueCount,\n FacetColumnResultValues,\n QueryResultBundle,\n} from '@sage-bionetworks/synapse-types'\nimport { useCallback, useMemo } from 'react'\nimport { useQueryContext } from '../../QueryContext'\nimport { useSuspenseGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport { applyChangesToValuesColumn } from '../query-filter/FacetFilterControls'\nimport { FacetNavPanelProps } from './FacetNavPanel'\n\n// Custom hook for generating properties for FacetNavPanel components with filter controls based on the given facets\nexport default function useFacetPlots(\n facetsToPlot: string[],\n): Pick<\n FacetNavPanelProps,\n 'applyChangesToFacetFilter' | 'applyChangesToGraphSlice' | 'facetToPlot'\n>[] {\n const { getCurrentQueryRequest, executeQueryRequest } = useQueryContext()\n\n const { data: queryMetadata } = useSuspenseGetQueryMetadata()\n\n const lastQueryRequest = useMemo(\n () => getCurrentQueryRequest(),\n [getCurrentQueryRequest],\n )\n const facets = useMemo(\n () => getFacets(queryMetadata, facetsToPlot),\n [queryMetadata, facetsToPlot],\n )\n\n const applyChangesFromQueryFilter = useCallback(\n (facets: FacetColumnRequest[]) => {\n executeQueryRequest(\n lastQueryRequest => {\n lastQueryRequest.query.selectedFacets = facets\n lastQueryRequest.query.offset = 0\n return lastQueryRequest\n },\n { debounce: true },\n )\n },\n [executeQueryRequest],\n )\n\n const facetNavPanelProps = useMemo(\n () =>\n facets.map(facet => {\n return {\n facetToPlot: facet as FacetColumnResultValues,\n\n applyChangesToFacetFilter: applyChangesFromQueryFilter,\n\n applyChangesToGraphSlice: (\n facet: FacetColumnResultValues,\n value: FacetColumnResultValueCount | undefined,\n isSelected: boolean,\n ) =>\n applyChangesToValuesColumn(\n lastQueryRequest,\n facet,\n applyChangesFromQueryFilter,\n value?.value,\n isSelected,\n ),\n }\n }),\n [facets, applyChangesFromQueryFilter, lastQueryRequest],\n )\n return facetNavPanelProps\n}\n\nexport function getFacets(\n data: QueryResultBundle | undefined,\n facetsToPlot?: string[],\n): FacetColumnResult[] {\n const result =\n data?.facets?.filter(item => {\n const isFacetToPlot =\n item.facetType === 'enumeration' &&\n (!facetsToPlot?.length || facetsToPlot.indexOf(item.columnName) > -1)\n // PORTALS-1993: only plot if the facet has count data\n return (\n isFacetToPlot &&\n item.facetValues.length > 0 &&\n !isSingleNotSetValue(item)\n )\n }) ?? []\n if (facetsToPlot?.length) {\n result.sort(\n (a, b) =>\n facetsToPlot.indexOf(a.columnName) - facetsToPlot.indexOf(b.columnName),\n )\n }\n return result\n}\n"],"names":["useFacetPlots","facetsToPlot","getCurrentQueryRequest","executeQueryRequest","useQueryContext","queryMetadata","useSuspenseGetQueryMetadata","lastQueryRequest","useMemo","facets","getFacets","applyChangesFromQueryFilter","useCallback","facet","value","isSelected","applyChangesToValuesColumn","data","result","item","isSingleNotSetValue","a","b"],"mappings":";;;;;AAeA,SAAwBA,EACtBC,GAIE;AACF,QAAM,EAAE,wBAAAC,GAAwB,qBAAAC,EAAA,IAAwBC,EAAA,GAElD,EAAE,MAAMC,EAAA,IAAkBC,EAAA,GAE1BC,IAAmBC;AAAA,IACvB,MAAMN,EAAA;AAAA,IACN,CAACA,CAAsB;AAAA,EAAA,GAEnBO,IAASD;AAAA,IACb,MAAME,EAAUL,GAAeJ,CAAY;AAAA,IAC3C,CAACI,GAAeJ,CAAY;AAAA,EAAA,GAGxBU,IAA8BC;AAAA,IAClC,CAACH,MAAiC;AAChC,MAAAN;AAAA,QACE,CAAAI,OACEA,EAAiB,MAAM,iBAAiBE,GACxCF,EAAiB,MAAM,SAAS,GACzBA;AAAAA,QAET,EAAE,UAAU,GAAA;AAAA,MAAK;AAAA,IAErB;AAAA,IACA,CAACJ,CAAmB;AAAA,EAAA;AA2BtB,SAxB2BK;AAAA,IACzB,MACEC,EAAO,IAAI,CAAAI,OACF;AAAA,MACL,aAAaA;AAAA,MAEb,2BAA2BF;AAAA,MAE3B,0BAA0B,CACxBE,GACAC,GACAC,MAEAC;AAAA,QACET;AAAA,QACAM;AAAAA,QACAF;AAAA,QACAG,GAAO;AAAA,QACPC;AAAA,MAAA;AAAA,IACF,EAEL;AAAA,IACH,CAACN,GAAQE,GAA6BJ,CAAgB;AAAA,EAAA;AAG1D;AAEO,SAASG,EACdO,GACAhB,GACqB;AACrB,QAAMiB,IACJD,GAAM,QAAQ,OAAO,CAAAE,MAEjBA,EAAK,cAAc,kBAClB,CAAClB,GAAc,UAAUA,EAAa,QAAQkB,EAAK,UAAU,IAAI,OAIlEA,EAAK,YAAY,SAAS,KAC1B,CAACC,EAAoBD,CAAI,CAE5B,KAAK,CAAA;AACR,SAAIlB,GAAc,UAChBiB,EAAO;AAAA,IACL,CAACG,GAAGC,MACFrB,EAAa,QAAQoB,EAAE,UAAU,IAAIpB,EAAa,QAAQqB,EAAE,UAAU;AAAA,EAAA,GAGrEJ;AACT;"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as s, jsxs as C } from "react/jsx-runtime";
2
2
  import { isSingleNotSetValue as q, getCorrespondingColumnForFacet as T, facetObjectMatchesDefinition as v } from "../../../utils/functions/queryUtils.js";
3
- import { groupBy as M, union as E, sortBy as N, noop as j } from "lodash-es";
3
+ import { groupBy as M, union as E, noop as N, sortBy as j } from "lodash-es";
4
4
  import { Suspense as D, useMemo as F, useState as Q, useCallback as A } from "react";
5
5
  import { useDeepCompareEffectNoCheck as B } from "use-deep-compare-effect";
6
6
  import { useQueryContext as G } from "../../QueryContext/QueryContext.js";
@@ -135,10 +135,10 @@ function X(t) {
135
135
  label: "Available Filters",
136
136
  hideCollapsible: !0,
137
137
  isCollapsed: !1,
138
- onClick: j
138
+ onClick: N
139
139
  }
140
140
  ),
141
- N(d).map((e) => /* @__PURE__ */ s(
141
+ j(d).map((e) => /* @__PURE__ */ s(
142
142
  _,
143
143
  {
144
144
  onClick: () => S(e),
@@ -30,7 +30,7 @@ import "universal-cookie";
30
30
  import "../../../utils/AppUtils/session/ApplicationSessionContext.js";
31
31
  import "../../../utils/context/FullContextProvider.js";
32
32
  import "../../../utils/context/DocumentMetadataContext.js";
33
- import '../../../components/FullWidthAlert/FullWidthAlert.css';import '../../../style/components/_spinner.css';/* empty css */
33
+ import '../../../components/Plot/SynapsePlot.css';import '../../../components/FullWidthAlert/FullWidthAlert.css';import '../../../style/components/_spinner.css';/* empty css */
34
34
  import { useSearchParams as g } from "react-router";
35
35
  import "@mui/icons-material/Close";
36
36
  import "../../../components/styled/StyledPopover.js";
@@ -169,7 +169,6 @@ import "@mui/x-date-pickers/AdapterDayjs";
169
169
  import "@mui/x-date-pickers/LocalizationProvider";
170
170
  import "../../../components/FeaturedDataTabs/FacetPlotsCardGrid.js";
171
171
  import "../../../components/Forum/ForumTable.js";
172
- import "@mui/material/IconButton";
173
172
  import "@mui/icons-material/NavigateNext";
174
173
  import "@react-google-maps/api";
175
174
  import "../../../components/Markdown/MarkdownUtils.js";
@@ -183,6 +182,7 @@ import "lodash-es/orderBy";
183
182
  import "../../../components/styled/LargeButton.js";
184
183
  import "../../../assets/illustrations/diagonalLinePattern.svg.js";
185
184
  import "@upsetjs/react";
185
+ /* empty css */
186
186
  import "reactflow";
187
187
  import "../../../components/ProvenanceGraph/ProvenanceUtils.js";
188
188
  import "reactflow/dist/style.css";
@@ -31,7 +31,7 @@ import "universal-cookie";
31
31
  import "../../../../utils/AppUtils/session/ApplicationSessionContext.js";
32
32
  import "../../../../utils/context/FullContextProvider.js";
33
33
  import "../../../../utils/context/DocumentMetadataContext.js";
34
- import '../../../../components/FullWidthAlert/FullWidthAlert.css';import '../../../../style/components/_spinner.css';/* empty css */
34
+ import '../../../../components/Plot/SynapsePlot.css';import '../../../../components/FullWidthAlert/FullWidthAlert.css';import '../../../../style/components/_spinner.css';/* empty css */
35
35
  import "react-router";
36
36
  import "@mui/icons-material/Close";
37
37
  import { StyledPopover as f } from "../../../../components/styled/StyledPopover.js";
@@ -170,7 +170,6 @@ import "@mui/x-date-pickers/AdapterDayjs";
170
170
  import "@mui/x-date-pickers/LocalizationProvider";
171
171
  import "../../../../components/FeaturedDataTabs/FacetPlotsCardGrid.js";
172
172
  import "../../../../components/Forum/ForumTable.js";
173
- import "@mui/material/IconButton";
174
173
  import "@mui/icons-material/NavigateNext";
175
174
  import "@react-google-maps/api";
176
175
  import "../../../../components/Markdown/MarkdownUtils.js";
@@ -184,6 +183,7 @@ import "lodash-es/orderBy";
184
183
  import "../../../../components/styled/LargeButton.js";
185
184
  import "../../../../assets/illustrations/diagonalLinePattern.svg.js";
186
185
  import "@upsetjs/react";
186
+ /* empty css */
187
187
  import "reactflow";
188
188
  import "../../../../components/ProvenanceGraph/ProvenanceUtils.js";
189
189
  import "reactflow/dist/style.css";
@@ -32,7 +32,7 @@ import "lodash-es/xorWith";
32
32
  import "react-router";
33
33
  import "@sage-bionetworks/synapse-client";
34
34
  import "../../../../utils/types/IsType.js";
35
- import { useGetEntityBundle as k } from "../../../../synapse-queries/entity/useEntityBundle.js";
35
+ import k from "../../../../synapse-queries/entity/useEntityBundle.js";
36
36
  import { formatDate as C } from "../../../../utils/functions/DateFormatter.js";
37
37
  import { getLinkToEntityPage as y } from "../../../../utils/functions/getSynapseWebClientLink.js";
38
38
  import { useReactTable as I, getCoreRowModel as M, createColumnHelper as B } from "@tanstack/react-table";