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,16 +1,16 @@
1
- import { jsx as e, Fragment as c, jsxs as n } from "react/jsx-runtime";
1
+ import { jsx as t, Fragment as d, jsxs as l } from "react/jsx-runtime";
2
2
  import "../../synapse-client/SynapseClient.js";
3
3
  import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
4
4
  import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
5
5
  import "@sage-bionetworks/synapse-client/util/SynapseClientError";
6
- import { ALL_ENTITY_BUNDLE_FIELDS as Y } from "@sage-bionetworks/synapse-types";
6
+ import { ALL_ENTITY_BUNDLE_FIELDS as $ } from "@sage-bionetworks/synapse-types";
7
7
  import "../../utils/functions/EntityTypeUtils.js";
8
8
  import "../../utils/SynapseConstants.js";
9
- import { isEmpty as $ } from "lodash-es";
9
+ import { isEmpty as J } from "lodash-es";
10
10
  import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
11
11
  import "@tanstack/react-query";
12
12
  import "../../utils/PermissionLevelToAccessType.js";
13
- import { useState as y, useEffect as q } from "react";
13
+ import { useState as u, useEffect as Y } from "react";
14
14
  import "../../utils/context/SynapseContext.js";
15
15
  import "use-deep-compare-effect";
16
16
  import { Tooltip as a } from "@mui/material";
@@ -26,128 +26,110 @@ import "lodash-es/isEmpty";
26
26
  import "lodash-es/isEqual";
27
27
  import "lodash-es/xorWith";
28
28
  import "react-router";
29
- import { EntityType as z } from "@sage-bionetworks/synapse-client";
29
+ import { EntityType as q } from "@sage-bionetworks/synapse-client";
30
30
  import "../../utils/types/IsType.js";
31
- import { useGetJson as K, useDeleteEntity as Q } from "../../synapse-queries/entity/useEntity.js";
32
- import { useGetSchemaBinding as X, useGetValidationResults as Z } from "../../synapse-queries/entity/useEntityBoundSchema.js";
33
- import { useGetEntityBundle as ee } from "../../synapse-queries/entity/useEntityBundle.js";
34
- import { useGetRealmPrincipals as te } from "../../synapse-queries/realm/useRealmPrincipals.js";
35
- import { isEntityPublic as _ } from "../../utils/functions/AccessControlListUtils.js";
36
- import { PublicTwoTone as ie, LockTwoTone as ne, CheckTwoTone as oe, LocalOfferTwoTone as ae, DescriptionTwoTone as re, ChatBubbleTwoTone as le, LinkOffTwoTone as se } from "@mui/icons-material";
37
- import { useInView as ce } from "react-intersection-observer";
38
- import { getDisplayedAnnotation as D } from "../entity/metadata/AnnotationsTable.js";
39
- import { EntityModal as de } from "../entity/metadata/EntityModal.js";
40
- import { WarningDialog as me } from "../SynapseForm/WarningDialog.js";
41
- const Xe = (I) => {
31
+ import { useGetJson as z, useDeleteEntity as K } from "../../synapse-queries/entity/useEntity.js";
32
+ import { useGetSchemaBinding as Q, useGetValidationResults as X } from "../../synapse-queries/entity/useEntityBoundSchema.js";
33
+ import Z from "../../synapse-queries/entity/useEntityBundle.js";
34
+ import { useGetRealmPrincipals as tt } from "../../synapse-queries/realm/useRealmPrincipals.js";
35
+ import { isEntityPublic as B } from "../../utils/functions/AccessControlListUtils.js";
36
+ import { PublicTwoTone as et, LockTwoTone as it, CheckTwoTone as nt, LocalOfferTwoTone as ot, DescriptionTwoTone as at, ChatBubbleTwoTone as rt, LinkOffTwoTone as st } from "@mui/icons-material";
37
+ import { useInView as lt } from "react-intersection-observer";
38
+ import { getDisplayedAnnotation as A } from "../entity/metadata/AnnotationsTable.js";
39
+ import { EntityModal as ct } from "../entity/metadata/EntityModal.js";
40
+ import { HoverPopover as dt } from "../styled/HoverPopover.js";
41
+ import { WarningDialog as mt } from "../SynapseForm/WarningDialog.js";
42
+ const Zt = (_) => {
42
43
  const {
43
- entityId: o,
44
- versionNumber: b,
44
+ entityId: n,
45
+ versionNumber: g,
45
46
  flexWrap: C = "nowrap",
46
- justifyContent: S = "flex-start",
47
- showIsPublicPrivate: T = !0,
48
- showHasLocalSharingSettings: v = !0,
49
- showHasAnnotations: x = !0,
50
- showHasWiki: V = !0,
51
- showHasDiscussionThread: M = !0,
52
- showUnlink: L = !0,
53
- onUnlink: O = () => {
47
+ justifyContent: I = "flex-start",
48
+ showIsPublicPrivate: b = !0,
49
+ showHasLocalSharingSettings: D = !0,
50
+ showHasAnnotations: v = !0,
51
+ showHasWiki: S = !0,
52
+ showHasDiscussionThread: x = !0,
53
+ showUnlink: V = !0,
54
+ onUnlink: M = () => {
54
55
  },
55
- onUnlinkError: P = () => {
56
+ onUnlinkError: O = () => {
56
57
  },
57
- canOpenModal: p
58
- } = I, { data: U } = te(), w = U || {};
59
- let N;
58
+ canOpenModal: y
59
+ } = _, { data: L } = tt(), T = L || {};
60
+ let w;
60
61
  ((i) => {
61
62
  i.NO_SCHEMA = "", i.VALID = "Valid", i.INVALID = "Invalid", i.ANNOTATIONS_MISSING = "Missing";
62
- })(N || (N = {}));
63
- const { ref: j, inView: h } = ce(), { data: H } = K(o, b, !0, {
64
- enabled: h
65
- }), r = H?.annotations, { data: t } = ee(
66
- o,
67
- b,
68
- Y,
63
+ })(w || (w = {}));
64
+ const { ref: P, inView: c } = lt(), { data: H } = z(n, g, !0, {
65
+ enabled: c
66
+ }), o = H?.annotations, { data: e } = Z(
67
+ n,
68
+ g,
69
+ $,
69
70
  {
70
- enabled: h
71
+ enabled: c
71
72
  }
72
- ), [G, k] = y(!1), [R, f] = y(!1), [E, u] = y(
73
+ ), [U, N] = u(!1), [j, m] = u(!1), [E, h] = u(
73
74
  ""
74
75
  /* NO_SCHEMA */
75
- ), { data: g } = X(o, {
76
- enabled: h,
76
+ ), { data: p } = Q(n, {
77
+ enabled: c,
77
78
  staleTime: 60 * 1e3
78
79
  // 60 seconds
79
- }), { data: d } = Z(o, {
80
- enabled: h && !!g,
80
+ }), { data: r } = X(n, {
81
+ enabled: c && !!p,
81
82
  staleTime: 60 * 1e3
82
83
  // 60 seconds
83
- }), m = 10, l = r && !$(r) ? Object.keys(r).length : 0;
84
- q(() => {
85
- d && (d.isValid ? u(
84
+ }), f = o && !J(o) ? Object.keys(o).length : 0;
85
+ Y(() => {
86
+ r && (r.isValid ? h(
86
87
  "Valid"
87
88
  /* VALID */
88
- ) : u(
89
- l ? "Invalid" : "Missing"
89
+ ) : h(
90
+ f ? "Invalid" : "Missing"
90
91
  /* INVALID */
91
92
  ));
92
93
  }, [
93
- d,
94
- l,
95
94
  r,
95
+ f,
96
+ o,
96
97
  "Valid",
97
98
  "Invalid",
98
99
  "Missing"
99
100
  /* ANNOTATIONS_MISSING */
100
101
  ]);
101
- const { mutate: W } = Q({
102
+ const { mutate: G } = K({
102
103
  onSuccess: (i, s) => {
103
- O(s);
104
+ M(s);
104
105
  },
105
- onError: P
106
- }), A = /* @__PURE__ */ e(c, { children: r ? Object.entries(r ?? []).reduce(
107
- (i, s, B) => B < m || B === m && m === l ? /* @__PURE__ */ n(c, { children: [
108
- i,
109
- /* @__PURE__ */ n("tr", { children: [
110
- /* @__PURE__ */ e("td", { children: /* @__PURE__ */ e("b", { children: s[0] }) }),
111
- /* @__PURE__ */ e("td", { children: Array.isArray(s[1]) ? s[1].map(D).join(", ") : D(
112
- s[1]
113
- ) })
114
- ] })
115
- ] }) : i,
116
- /* @__PURE__ */ e(c, {})
117
- ) : "" }), F = /* @__PURE__ */ e(c, { children: g ? /* @__PURE__ */ n("tr", { children: [
118
- /* @__PURE__ */ e("td", { children: /* @__PURE__ */ e("b", { children: "Validation Schema" }) }),
119
- /* @__PURE__ */ e("td", { children: g.jsonSchemaVersionInfo.schemaName })
120
- ] }) : "" }), J = /* @__PURE__ */ n("div", { className: "EntityBadgeTooltip", children: [
121
- d ? /* @__PURE__ */ n("p", { children: [
122
- E,
123
- " Annotations"
124
- ] }) : "",
125
- /* @__PURE__ */ n("table", { children: [
126
- A || "",
127
- F
128
- ] }),
129
- l > m ? /* @__PURE__ */ n("p", { children: [
130
- "and ",
131
- l - m,
132
- " more"
133
- ] }) : ""
134
- ] });
135
- return /* @__PURE__ */ e("div", { className: "EntityBadge", ref: j, style: { flexWrap: C, justifyContent: S }, children: t && /* @__PURE__ */ n(c, { children: [
136
- /* @__PURE__ */ e("div", { onClick: (i) => i.stopPropagation(), children: /* @__PURE__ */ e(
137
- de,
106
+ onError: O
107
+ }), k = /* @__PURE__ */ t(d, { children: o ? Object.entries(o ?? []).map(([i, s]) => /* @__PURE__ */ l("tr", { children: [
108
+ /* @__PURE__ */ t("td", { children: /* @__PURE__ */ t("b", { children: i }) }),
109
+ /* @__PURE__ */ t("td", { children: Array.isArray(s) ? s.map(A).join(", ") : A(s) })
110
+ ] }, i)) : "" }), R = /* @__PURE__ */ t(d, { children: p ? /* @__PURE__ */ l("tr", { children: [
111
+ /* @__PURE__ */ t("td", { children: /* @__PURE__ */ t("b", { children: "Validation Schema" }) }),
112
+ /* @__PURE__ */ t("td", { children: p.jsonSchemaVersionInfo.schemaName })
113
+ ] }) : "" }), W = r ? `${E} Annotations` : "", F = /* @__PURE__ */ t("div", { className: "EntityBadgeTooltip", children: /* @__PURE__ */ t("table", { children: /* @__PURE__ */ l("tbody", { children: [
114
+ k || "",
115
+ R
116
+ ] }) }) });
117
+ return /* @__PURE__ */ t("div", { className: "EntityBadge", ref: P, style: { flexWrap: C, justifyContent: I }, children: e && /* @__PURE__ */ l(d, { children: [
118
+ /* @__PURE__ */ t("div", { onClick: (i) => i.stopPropagation(), children: /* @__PURE__ */ t(
119
+ ct,
138
120
  {
139
- entityId: o,
140
- show: G,
121
+ entityId: n,
122
+ show: U,
141
123
  showTabs: !1,
142
- onClose: () => k(!1),
124
+ onClose: () => N(!1),
143
125
  initialTab: "ANNOTATIONS"
144
126
  }
145
127
  ) }),
146
- T && t.benefactorAcl && _(
147
- t.benefactorAcl.resourceAccess,
148
- w
149
- ) ? /* @__PURE__ */ e(a, { title: "Public", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ e(
150
- ie,
128
+ b && e.benefactorAcl && B(
129
+ e.benefactorAcl.resourceAccess,
130
+ T
131
+ ) ? /* @__PURE__ */ t(a, { title: "Public", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
132
+ et,
151
133
  {
152
134
  "aria-hidden": !1,
153
135
  role: "img",
@@ -155,11 +137,11 @@ const Xe = (I) => {
155
137
  "data-testid": "is-public-icon"
156
138
  }
157
139
  ) }) : null,
158
- T && t.benefactorAcl && !_(
159
- t.benefactorAcl.resourceAccess,
160
- w
161
- ) ? /* @__PURE__ */ e(a, { title: "Private", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ e(
162
- ne,
140
+ b && e.benefactorAcl && !B(
141
+ e.benefactorAcl.resourceAccess,
142
+ T
143
+ ) ? /* @__PURE__ */ t(a, { title: "Private", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
144
+ it,
163
145
  {
164
146
  "aria-hidden": !1,
165
147
  role: "img",
@@ -167,14 +149,14 @@ const Xe = (I) => {
167
149
  "data-testid": "is-private-icon"
168
150
  }
169
151
  ) }) : null,
170
- v && t.benefactorAcl && o === t.benefactorAcl.id ? /* @__PURE__ */ e(
152
+ D && e.benefactorAcl && n === e.benefactorAcl.id ? /* @__PURE__ */ t(
171
153
  a,
172
154
  {
173
155
  title: "Sharing Settings have been set",
174
156
  enterNextDelay: 100,
175
157
  placement: "right",
176
- children: /* @__PURE__ */ e(
177
- oe,
158
+ children: /* @__PURE__ */ t(
159
+ nt,
178
160
  {
179
161
  "aria-hidden": !1,
180
162
  role: "img",
@@ -184,28 +166,32 @@ const Xe = (I) => {
184
166
  )
185
167
  }
186
168
  ) : null,
187
- x && !!(l || d) && /* @__PURE__ */ e(
188
- a,
169
+ v && !!(f || r) && /* @__PURE__ */ t(
170
+ dt,
189
171
  {
190
- title: J,
191
- enterNextDelay: 100,
172
+ title: W,
173
+ popoverContent: F,
192
174
  placement: "right",
193
- children: /* @__PURE__ */ e(
194
- ae,
175
+ maxWidth: 500,
176
+ actionButton: y ? {
177
+ content: "Edit Annotations",
178
+ onClick: () => N(!0),
179
+ closeOnClick: !0
180
+ } : void 0,
181
+ children: /* @__PURE__ */ t(
182
+ ot,
195
183
  {
196
184
  "aria-hidden": !1,
197
- role: p ? "button" : "img",
185
+ role: y ? "button" : "img",
198
186
  className: `EntityBadge__Badge ${E}`,
199
- style: p ? { cursor: "pointer" } : void 0,
200
- onClick: p ? () => k(!0) : void 0,
201
187
  "data-html": !0,
202
188
  "data-testid": "annotations-icon"
203
189
  }
204
190
  )
205
191
  }
206
192
  ),
207
- V && t.rootWikiId && /* @__PURE__ */ e(a, { title: "Has a wiki", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ e(
208
- re,
193
+ S && e.rootWikiId && /* @__PURE__ */ t(a, { title: "Has a wiki", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
194
+ at,
209
195
  {
210
196
  "aria-hidden": !1,
211
197
  role: "img",
@@ -213,14 +199,14 @@ const Xe = (I) => {
213
199
  "data-testid": "wiki-icon"
214
200
  }
215
201
  ) }),
216
- M && !!t.threadCount && t.threadCount > 0 && /* @__PURE__ */ e(
202
+ x && !!e.threadCount && e.threadCount > 0 && /* @__PURE__ */ t(
217
203
  a,
218
204
  {
219
205
  title: "Has been mentioned in discussion",
220
206
  enterNextDelay: 100,
221
207
  placement: "right",
222
- children: /* @__PURE__ */ e(
223
- le,
208
+ children: /* @__PURE__ */ t(
209
+ rt,
224
210
  {
225
211
  "aria-hidden": !1,
226
212
  role: "img",
@@ -230,35 +216,35 @@ const Xe = (I) => {
230
216
  )
231
217
  }
232
218
  ),
233
- L && t.entityType === z.link && t.permissions?.canDelete && /* @__PURE__ */ n(c, { children: [
234
- /* @__PURE__ */ e(
235
- me,
219
+ V && e.entityType === q.link && e.permissions?.canDelete && /* @__PURE__ */ l(d, { children: [
220
+ /* @__PURE__ */ t(
221
+ mt,
236
222
  {
237
- open: R,
223
+ open: j,
238
224
  title: "Confirm Unlink",
239
225
  content: "Are you sure you want to remove this link? The original object will not be changed.",
240
226
  confirmButtonText: "Unlink",
241
227
  confirmButtonColor: "error",
242
228
  onConfirm: () => {
243
- W(o), f(!1);
229
+ G(n), m(!1);
244
230
  },
245
231
  onCancel: () => {
246
- f(!1);
232
+ m(!1);
247
233
  }
248
234
  }
249
235
  ),
250
- /* @__PURE__ */ e(
236
+ /* @__PURE__ */ t(
251
237
  a,
252
238
  {
253
239
  title: "Remove this link",
254
240
  enterNextDelay: 100,
255
241
  placement: "right",
256
- children: /* @__PURE__ */ e(
257
- se,
242
+ children: /* @__PURE__ */ t(
243
+ st,
258
244
  {
259
245
  "aria-hidden": !1,
260
246
  role: "button",
261
- onClick: () => f(!0),
247
+ onClick: () => m(!0),
262
248
  className: "EntityBadge__Badge Unlink",
263
249
  "data-testid": "unlink-icon"
264
250
  }
@@ -269,7 +255,7 @@ const Xe = (I) => {
269
255
  ] }) });
270
256
  };
271
257
  export {
272
- Xe as EntityBadgeIcons,
273
- Xe as default
258
+ Zt as EntityBadgeIcons,
259
+ Zt as default
274
260
  };
275
261
  //# sourceMappingURL=EntityBadgeIcons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityBadgeIcons.js","sources":["../../../src/components/EntityBadgeIcons/EntityBadgeIcons.tsx"],"sourcesContent":["import {\n useDeleteEntity,\n useGetEntityBundle,\n useGetJson,\n useGetSchemaBinding,\n useGetValidationResults,\n} from '@/synapse-queries'\nimport { useGetRealmPrincipals } from '@/synapse-queries/realm/useRealmPrincipals'\nimport { isEntityPublic } from '@/utils/functions/AccessControlListUtils'\nimport {\n ChatBubbleTwoTone,\n CheckTwoTone,\n DescriptionTwoTone,\n LinkOffTwoTone,\n LocalOfferTwoTone,\n LockTwoTone,\n PublicTwoTone,\n} from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport { ALL_ENTITY_BUNDLE_FIELDS } from '@sage-bionetworks/synapse-types'\nimport { isEmpty } from 'lodash-es'\nimport React, { useEffect, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { getDisplayedAnnotation } from '../entity/metadata/AnnotationsTable'\nimport { EntityModal } from '../entity/metadata/EntityModal'\nimport WarningDialog from '../SynapseForm/WarningDialog'\n\nexport type EntityBadgeIconsProps = {\n entityId: string\n versionNumber?: number\n flexWrap?: // possible settings for flex-wrap\n | 'wrap'\n | 'nowrap'\n | '-moz-initial'\n | 'inherit'\n | 'initial'\n | 'revert'\n | 'unset'\n | 'wrap-reverse'\n justifyContent?: 'flex-start' | 'flex-end' | string\n /** Shows an icon indicating if the entity is 'public' or 'private'. Default true */\n showIsPublicPrivate?: boolean\n /** Shows an icon if the entity has sharing settings set on itself. Default true */\n showHasLocalSharingSettings?: boolean\n /** Shows an icon if the entity has annotations, or if it has a validation schema (in experimental mode only). Default true */\n showHasAnnotations?: boolean\n /** Shows an icon if the entity a wiki. Default true */\n showHasWiki?: boolean\n /** Shows an icon if the entity has been mentioned in discussion threads. Default true */\n showHasDiscussionThread?: boolean\n /* Shows an 'unlink' button if the entity is a link and the user has permission to delete it. Default true */\n showUnlink?: boolean\n /* Invoked after the entity is unlinked/deleted in case there is cleanup to do. Returns the entityId */\n onUnlink?: (entityId: string) => void\n onUnlinkError?: (error: unknown) => void\n /** Whether or not the badges (e.g. Annotations) can trigger opening a modal on click */\n canOpenModal: boolean\n}\n\n/**\n * Stateless component used to show icons that show an entity's status.\n * Adapted from https://github.com/Sage-Bionetworks/SynapseWebClient/blob/46b9b717636cda2421926d96365244bbb72a05b6/src/main/java/org/sagebionetworks/web/client/widget/entity/EntityBadge.java\n */\nexport const EntityBadgeIcons = (\n props: EntityBadgeIconsProps,\n): React.ReactNode => {\n const {\n entityId,\n versionNumber,\n flexWrap = 'nowrap',\n justifyContent = 'flex-start',\n showIsPublicPrivate = true,\n showHasLocalSharingSettings = true,\n showHasAnnotations = true,\n showHasWiki = true,\n showHasDiscussionThread = true,\n showUnlink = true,\n onUnlink = () => {\n /* noop */\n },\n onUnlinkError = () => {\n /* noop */\n },\n canOpenModal,\n } = props\n\n const { data } = useGetRealmPrincipals()\n const realmPrincipals = data || {}\n\n enum SchemaConformanceState {\n NO_SCHEMA = '', // or not in experimental mode\n VALID = 'Valid',\n INVALID = 'Invalid',\n ANNOTATIONS_MISSING = 'Missing',\n }\n\n const { ref, inView } = useInView()\n\n const { data: entityData } = useGetJson(entityId, versionNumber, true, {\n enabled: inView,\n })\n const annotations = entityData?.annotations\n const { data: bundle } = useGetEntityBundle(\n entityId,\n versionNumber,\n ALL_ENTITY_BUNDLE_FIELDS,\n {\n enabled: inView,\n },\n )\n const [showModal, setShowModal] = useState(false)\n const [showUnlinkConfirmModal, setShowUnlinkConfirmModal] = useState(false)\n const [schemaConformance, setSchemaConformance] = useState(\n SchemaConformanceState.NO_SCHEMA,\n )\n\n const { data: boundSchema } = useGetSchemaBinding(entityId, {\n enabled: inView,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const { data: schemaValidationResults } = useGetValidationResults(entityId, {\n enabled: inView && !!boundSchema,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n // The maximum number of annotations to show in the popover\n const maxAnnosToShow = 10\n const annotationsCount =\n annotations && !isEmpty(annotations) ? Object.keys(annotations).length : 0\n useEffect(() => {\n if (schemaValidationResults) {\n if (schemaValidationResults.isValid) {\n setSchemaConformance(SchemaConformanceState.VALID)\n } else if (annotationsCount) {\n // If annotations exist, then indicate that they are invalid\n setSchemaConformance(SchemaConformanceState.INVALID)\n } else {\n // If annotations are missing, it's still invalid, but should appear differently\n setSchemaConformance(SchemaConformanceState.ANNOTATIONS_MISSING)\n }\n }\n }, [\n schemaValidationResults,\n annotationsCount,\n annotations,\n SchemaConformanceState.VALID,\n SchemaConformanceState.INVALID,\n SchemaConformanceState.ANNOTATIONS_MISSING,\n ])\n\n const { mutate: unlinkEntity } = useDeleteEntity({\n onSuccess: (_, entityId) => {\n onUnlink(entityId)\n },\n onError: onUnlinkError,\n })\n\n /**\n * Convert the list of annotations to a string of <tr>...anno1</tr><tr>...anno2</tr>...\n * If there are no annotations, this is the empty string ('')\n */\n const annotationsTableRows = (\n <>\n {annotations\n ? Object.entries(annotations ?? []).reduce(\n (previous, current, index) => {\n if (\n index < maxAnnosToShow ||\n (index === maxAnnosToShow &&\n maxAnnosToShow === annotationsCount)\n ) {\n return (\n <>\n {previous}\n <tr>\n <td>\n <b>{current[0]}</b>\n </td>\n <td>\n {Array.isArray(current[1])\n ? current[1].map(getDisplayedAnnotation).join(', ')\n : getDisplayedAnnotation(\n current[1] as string | number | boolean,\n )}\n </td>\n </tr>\n </>\n )\n } else {\n return previous\n }\n },\n <></>,\n )\n : ''}\n </>\n )\n // We also show the schema name if there is one (and we're in experimental mode)\n const valiationSchemaTableRow = (\n <>\n {boundSchema ? (\n <tr>\n <td>\n <b>Validation Schema</b>\n </td>\n <td>{boundSchema.jsonSchemaVersionInfo.schemaName}</td>\n </tr>\n ) : (\n ''\n )}\n </>\n )\n const annotationsHtml = (\n <div className=\"EntityBadgeTooltip\">\n {schemaValidationResults ? <p>{schemaConformance} Annotations</p> : ''}\n <table>\n {annotationsTableRows ? annotationsTableRows : ''}\n {valiationSchemaTableRow}\n </table>\n {annotationsCount > maxAnnosToShow ? (\n <p>and {annotationsCount - maxAnnosToShow} more</p>\n ) : (\n ''\n )}\n </div>\n )\n\n return (\n <div className=\"EntityBadge\" ref={ref} style={{ flexWrap, justifyContent }}>\n {bundle && (\n <>\n <div onClick={e => e.stopPropagation()}>\n <EntityModal\n entityId={entityId}\n show={showModal}\n showTabs={false}\n onClose={() => setShowModal(false)}\n initialTab={'ANNOTATIONS'}\n />\n </div>\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Public\" enterNextDelay={100} placement=\"right\">\n <PublicTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-public-icon'}\n />\n </Tooltip>\n ) : null}\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n !isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Private\" enterNextDelay={100} placement=\"right\">\n <LockTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-private-icon'}\n />\n </Tooltip>\n ) : null}\n {showHasLocalSharingSettings &&\n bundle.benefactorAcl &&\n entityId === bundle.benefactorAcl.id ? (\n <Tooltip\n title=\"Sharing Settings have been set\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <CheckTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'sharing-settings-icon'}\n />\n </Tooltip>\n ) : null}\n\n {showHasAnnotations &&\n !!(annotationsCount || schemaValidationResults) && (\n <Tooltip\n title={annotationsHtml}\n enterNextDelay={100}\n placement=\"right\"\n >\n <LocalOfferTwoTone\n aria-hidden={false}\n role={canOpenModal ? 'button' : 'img'}\n className={`EntityBadge__Badge ${schemaConformance}`}\n style={canOpenModal ? { cursor: 'pointer' } : undefined}\n onClick={canOpenModal ? () => setShowModal(true) : undefined}\n data-html={true}\n data-testid={'annotations-icon'}\n />\n </Tooltip>\n )}\n {showHasWiki && bundle.rootWikiId && (\n <Tooltip title=\"Has a wiki\" enterNextDelay={100} placement=\"right\">\n <DescriptionTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'wiki-icon'}\n />\n </Tooltip>\n )}\n {showHasDiscussionThread &&\n !!bundle.threadCount &&\n !!(bundle.threadCount > 0) && (\n <Tooltip\n title=\"Has been mentioned in discussion\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <ChatBubbleTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'discussion-icon'}\n />\n </Tooltip>\n )}\n {showUnlink &&\n bundle.entityType === EntityType.link &&\n bundle.permissions?.canDelete && (\n <>\n <WarningDialog\n open={showUnlinkConfirmModal}\n title=\"Confirm Unlink\"\n content={\n 'Are you sure you want to remove this link? The original object will not be changed.'\n }\n confirmButtonText=\"Unlink\"\n confirmButtonColor=\"error\"\n onConfirm={() => {\n unlinkEntity(entityId)\n setShowUnlinkConfirmModal(false)\n }}\n onCancel={() => {\n setShowUnlinkConfirmModal(false)\n }}\n />\n <Tooltip\n title=\"Remove this link\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <LinkOffTwoTone\n aria-hidden={false}\n role=\"button\"\n onClick={() => setShowUnlinkConfirmModal(true)}\n className=\"EntityBadge__Badge Unlink\"\n data-testid={'unlink-icon'}\n />\n </Tooltip>\n </>\n )}\n </>\n )}\n </div>\n )\n}\n\nexport default EntityBadgeIcons\n"],"names":["EntityBadgeIcons","props","entityId","versionNumber","flexWrap","justifyContent","showIsPublicPrivate","showHasLocalSharingSettings","showHasAnnotations","showHasWiki","showHasDiscussionThread","showUnlink","onUnlink","onUnlinkError","canOpenModal","data","useGetRealmPrincipals","realmPrincipals","SchemaConformanceState","ref","inView","useInView","entityData","useGetJson","annotations","bundle","useGetEntityBundle","ALL_ENTITY_BUNDLE_FIELDS","showModal","setShowModal","useState","showUnlinkConfirmModal","setShowUnlinkConfirmModal","schemaConformance","setSchemaConformance","boundSchema","useGetSchemaBinding","schemaValidationResults","useGetValidationResults","maxAnnosToShow","annotationsCount","isEmpty","useEffect","unlinkEntity","useDeleteEntity","_","annotationsTableRows","previous","current","index","jsxs","Fragment","jsx","getDisplayedAnnotation","valiationSchemaTableRow","annotationsHtml","e","EntityModal","isEntityPublic","Tooltip","PublicTwoTone","LockTwoTone","CheckTwoTone","LocalOfferTwoTone","DescriptionTwoTone","ChatBubbleTwoTone","EntityType","WarningDialog","LinkOffTwoTone"],"mappings":"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"}
1
+ {"version":3,"file":"EntityBadgeIcons.js","sources":["../../../src/components/EntityBadgeIcons/EntityBadgeIcons.tsx"],"sourcesContent":["import {\n useDeleteEntity,\n useGetEntityBundle,\n useGetJson,\n useGetSchemaBinding,\n useGetValidationResults,\n} from '@/synapse-queries'\nimport { useGetRealmPrincipals } from '@/synapse-queries/realm/useRealmPrincipals'\nimport { isEntityPublic } from '@/utils/functions/AccessControlListUtils'\nimport {\n ChatBubbleTwoTone,\n CheckTwoTone,\n DescriptionTwoTone,\n LinkOffTwoTone,\n LocalOfferTwoTone,\n LockTwoTone,\n PublicTwoTone,\n} from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport { ALL_ENTITY_BUNDLE_FIELDS } from '@sage-bionetworks/synapse-types'\nimport { isEmpty } from 'lodash-es'\nimport React, { useEffect, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { getDisplayedAnnotation } from '../entity/metadata/AnnotationsTable'\nimport { EntityModal } from '../entity/metadata/EntityModal'\nimport { HoverPopover } from '../styled/HoverPopover'\nimport WarningDialog from '../SynapseForm/WarningDialog'\n\nexport type EntityBadgeIconsProps = {\n entityId: string\n versionNumber?: number\n flexWrap?: // possible settings for flex-wrap\n | 'wrap'\n | 'nowrap'\n | '-moz-initial'\n | 'inherit'\n | 'initial'\n | 'revert'\n | 'unset'\n | 'wrap-reverse'\n justifyContent?: 'flex-start' | 'flex-end' | string\n /** Shows an icon indicating if the entity is 'public' or 'private'. Default true */\n showIsPublicPrivate?: boolean\n /** Shows an icon if the entity has sharing settings set on itself. Default true */\n showHasLocalSharingSettings?: boolean\n /** Shows an icon if the entity has annotations, or if it has a validation schema (in experimental mode only). Default true */\n showHasAnnotations?: boolean\n /** Shows an icon if the entity a wiki. Default true */\n showHasWiki?: boolean\n /** Shows an icon if the entity has been mentioned in discussion threads. Default true */\n showHasDiscussionThread?: boolean\n /* Shows an 'unlink' button if the entity is a link and the user has permission to delete it. Default true */\n showUnlink?: boolean\n /* Invoked after the entity is unlinked/deleted in case there is cleanup to do. Returns the entityId */\n onUnlink?: (entityId: string) => void\n onUnlinkError?: (error: unknown) => void\n /** Whether or not the badges (e.g. Annotations) can trigger opening a modal on click */\n canOpenModal: boolean\n}\n\n/**\n * Stateless component used to show icons that show an entity's status.\n * Adapted from https://github.com/Sage-Bionetworks/SynapseWebClient/blob/46b9b717636cda2421926d96365244bbb72a05b6/src/main/java/org/sagebionetworks/web/client/widget/entity/EntityBadge.java\n */\nexport const EntityBadgeIcons = (\n props: EntityBadgeIconsProps,\n): React.ReactNode => {\n const {\n entityId,\n versionNumber,\n flexWrap = 'nowrap',\n justifyContent = 'flex-start',\n showIsPublicPrivate = true,\n showHasLocalSharingSettings = true,\n showHasAnnotations = true,\n showHasWiki = true,\n showHasDiscussionThread = true,\n showUnlink = true,\n onUnlink = () => {\n /* noop */\n },\n onUnlinkError = () => {\n /* noop */\n },\n canOpenModal,\n } = props\n\n const { data } = useGetRealmPrincipals()\n const realmPrincipals = data || {}\n\n enum SchemaConformanceState {\n NO_SCHEMA = '', // or not in experimental mode\n VALID = 'Valid',\n INVALID = 'Invalid',\n ANNOTATIONS_MISSING = 'Missing',\n }\n\n const { ref, inView } = useInView()\n\n const { data: entityData } = useGetJson(entityId, versionNumber, true, {\n enabled: inView,\n })\n const annotations = entityData?.annotations\n const { data: bundle } = useGetEntityBundle(\n entityId,\n versionNumber,\n ALL_ENTITY_BUNDLE_FIELDS,\n {\n enabled: inView,\n },\n )\n const [showModal, setShowModal] = useState(false)\n const [showUnlinkConfirmModal, setShowUnlinkConfirmModal] = useState(false)\n const [schemaConformance, setSchemaConformance] = useState(\n SchemaConformanceState.NO_SCHEMA,\n )\n\n const { data: boundSchema } = useGetSchemaBinding(entityId, {\n enabled: inView,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const { data: schemaValidationResults } = useGetValidationResults(entityId, {\n enabled: inView && !!boundSchema,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const annotationsCount =\n annotations && !isEmpty(annotations) ? Object.keys(annotations).length : 0\n useEffect(() => {\n if (schemaValidationResults) {\n if (schemaValidationResults.isValid) {\n setSchemaConformance(SchemaConformanceState.VALID)\n } else if (annotationsCount) {\n // If annotations exist, then indicate that they are invalid\n setSchemaConformance(SchemaConformanceState.INVALID)\n } else {\n // If annotations are missing, it's still invalid, but should appear differently\n setSchemaConformance(SchemaConformanceState.ANNOTATIONS_MISSING)\n }\n }\n }, [\n schemaValidationResults,\n annotationsCount,\n annotations,\n SchemaConformanceState.VALID,\n SchemaConformanceState.INVALID,\n SchemaConformanceState.ANNOTATIONS_MISSING,\n ])\n\n const { mutate: unlinkEntity } = useDeleteEntity({\n onSuccess: (_, entityId) => {\n onUnlink(entityId)\n },\n onError: onUnlinkError,\n })\n\n /**\n * Convert the list of annotations to a string of <tr>...anno1</tr><tr>...anno2</tr>...\n * If there are no annotations, this is the empty string ('')\n */\n const annotationsTableRows = (\n <>\n {annotations\n ? Object.entries(annotations ?? []).map(([key, value]) => (\n <tr key={key}>\n <td>\n <b>{key}</b>\n </td>\n <td>\n {Array.isArray(value)\n ? value.map(getDisplayedAnnotation).join(', ')\n : getDisplayedAnnotation(value as string | number | boolean)}\n </td>\n </tr>\n ))\n : ''}\n </>\n )\n // We also show the schema name if there is one (and we're in experimental mode)\n const valiationSchemaTableRow = (\n <>\n {boundSchema ? (\n <tr>\n <td>\n <b>Validation Schema</b>\n </td>\n <td>{boundSchema.jsonSchemaVersionInfo.schemaName}</td>\n </tr>\n ) : (\n ''\n )}\n </>\n )\n const annotationsTitle = schemaValidationResults\n ? `${schemaConformance} Annotations`\n : ''\n const annotationsHtml = (\n <div className=\"EntityBadgeTooltip\">\n <table>\n <tbody>\n {annotationsTableRows ? annotationsTableRows : ''}\n {valiationSchemaTableRow}\n </tbody>\n </table>\n </div>\n )\n\n return (\n <div className=\"EntityBadge\" ref={ref} style={{ flexWrap, justifyContent }}>\n {bundle && (\n <>\n <div onClick={e => e.stopPropagation()}>\n <EntityModal\n entityId={entityId}\n show={showModal}\n showTabs={false}\n onClose={() => setShowModal(false)}\n initialTab={'ANNOTATIONS'}\n />\n </div>\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Public\" enterNextDelay={100} placement=\"right\">\n <PublicTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-public-icon'}\n />\n </Tooltip>\n ) : null}\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n !isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Private\" enterNextDelay={100} placement=\"right\">\n <LockTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-private-icon'}\n />\n </Tooltip>\n ) : null}\n {showHasLocalSharingSettings &&\n bundle.benefactorAcl &&\n entityId === bundle.benefactorAcl.id ? (\n <Tooltip\n title=\"Sharing Settings have been set\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <CheckTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'sharing-settings-icon'}\n />\n </Tooltip>\n ) : null}\n\n {showHasAnnotations &&\n !!(annotationsCount || schemaValidationResults) && (\n <HoverPopover\n title={annotationsTitle}\n popoverContent={annotationsHtml}\n placement=\"right\"\n maxWidth={500}\n actionButton={\n canOpenModal\n ? {\n content: 'Edit Annotations',\n onClick: () => setShowModal(true),\n closeOnClick: true,\n }\n : undefined\n }\n >\n <LocalOfferTwoTone\n aria-hidden={false}\n role={canOpenModal ? 'button' : 'img'}\n className={`EntityBadge__Badge ${schemaConformance}`}\n data-html={true}\n data-testid={'annotations-icon'}\n />\n </HoverPopover>\n )}\n {showHasWiki && bundle.rootWikiId && (\n <Tooltip title=\"Has a wiki\" enterNextDelay={100} placement=\"right\">\n <DescriptionTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'wiki-icon'}\n />\n </Tooltip>\n )}\n {showHasDiscussionThread &&\n !!bundle.threadCount &&\n !!(bundle.threadCount > 0) && (\n <Tooltip\n title=\"Has been mentioned in discussion\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <ChatBubbleTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'discussion-icon'}\n />\n </Tooltip>\n )}\n {showUnlink &&\n bundle.entityType === EntityType.link &&\n bundle.permissions?.canDelete && (\n <>\n <WarningDialog\n open={showUnlinkConfirmModal}\n title=\"Confirm Unlink\"\n content={\n 'Are you sure you want to remove this link? The original object will not be changed.'\n }\n confirmButtonText=\"Unlink\"\n confirmButtonColor=\"error\"\n onConfirm={() => {\n unlinkEntity(entityId)\n setShowUnlinkConfirmModal(false)\n }}\n onCancel={() => {\n setShowUnlinkConfirmModal(false)\n }}\n />\n <Tooltip\n title=\"Remove this link\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <LinkOffTwoTone\n aria-hidden={false}\n role=\"button\"\n onClick={() => setShowUnlinkConfirmModal(true)}\n className=\"EntityBadge__Badge Unlink\"\n data-testid={'unlink-icon'}\n />\n </Tooltip>\n </>\n )}\n </>\n )}\n </div>\n )\n}\n\nexport default EntityBadgeIcons\n"],"names":["EntityBadgeIcons","props","entityId","versionNumber","flexWrap","justifyContent","showIsPublicPrivate","showHasLocalSharingSettings","showHasAnnotations","showHasWiki","showHasDiscussionThread","showUnlink","onUnlink","onUnlinkError","canOpenModal","data","useGetRealmPrincipals","realmPrincipals","SchemaConformanceState","ref","inView","useInView","entityData","useGetJson","annotations","bundle","useGetEntityBundle","ALL_ENTITY_BUNDLE_FIELDS","showModal","setShowModal","useState","showUnlinkConfirmModal","setShowUnlinkConfirmModal","schemaConformance","setSchemaConformance","boundSchema","useGetSchemaBinding","schemaValidationResults","useGetValidationResults","annotationsCount","isEmpty","useEffect","unlinkEntity","useDeleteEntity","_","annotationsTableRows","jsx","Fragment","key","value","getDisplayedAnnotation","valiationSchemaTableRow","jsxs","annotationsTitle","annotationsHtml","e","EntityModal","isEntityPublic","Tooltip","PublicTwoTone","LockTwoTone","CheckTwoTone","HoverPopover","LocalOfferTwoTone","DescriptionTwoTone","ChatBubbleTwoTone","EntityType","WarningDialog","LinkOffTwoTone"],"mappings":"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"}
@@ -15,7 +15,7 @@ import "../../utils/context/SynapseContext.js";
15
15
  import "@tanstack/react-query";
16
16
  import { useState as s, useRef as U } from "react";
17
17
  import "@tanstack/query-core";
18
- import { useGetEntityBundle as k } from "../../synapse-queries/entity/useEntityBundle.js";
18
+ import k from "../../synapse-queries/entity/useEntityBundle.js";
19
19
  import "../../utils/PermissionLevelToAccessType.js";
20
20
  import "use-deep-compare-effect";
21
21
  import "lodash-es/isEmpty";
@@ -1,5 +1,5 @@
1
1
  import { jsx as o, Fragment as l } from "react/jsx-runtime";
2
- import { useGetEntityBundle as a } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import a from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import "../../../../../synapse-client/SynapseClient.js";
4
4
  import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
5
5
  import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
@@ -1,5 +1,5 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { useGetEntityBundle as o } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import o from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { Skeleton as l } from "@mui/material";
4
4
  import { DateCell as a } from "./DateCell.js";
5
5
  function c(t) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as t, Fragment as r } from "react/jsx-runtime";
2
- import { useGetEntityBundle as o } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import o from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { Skeleton as m } from "@mui/material";
4
4
  import { EntityLink as a } from "../../../../EntityLink.js";
5
5
  function u(i) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as o, Fragment as c } from "react/jsx-runtime";
2
- import { useGetEntityBundle as d } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import d from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { Skeleton as s, Tooltip as p } from "@mui/material";
4
4
  import { useMutation as m } from "@tanstack/react-query";
5
5
  import { displayToast as u } from "../../../../ToastMessage/ToastMessage.js";
@@ -1,5 +1,5 @@
1
1
  import { jsx as n } from "react/jsx-runtime";
2
- import { useGetEntityBundle as s } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import s from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { calculateFriendlyFileSize as c } from "../../../../../utils/functions/calculateFriendlyFileSize.js";
4
4
  import { Skeleton as f } from "@mui/material";
5
5
  function S(t) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import { useGetEntityBundle as n } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import n from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { Skeleton as d } from "@mui/material";
4
4
  import { UserBadgeCell as l } from "./UserBadgeCell.js";
5
5
  function s(i) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import { useGetEntityBundle as r } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import r from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { Skeleton as l } from "@mui/material";
4
4
  import { DateCell as d } from "./DateCell.js";
5
5
  function s(t) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as t, Fragment as n } from "react/jsx-runtime";
2
- import { useGetEntityBundle as e } from "../../../../../synapse-queries/entity/useEntityBundle.js";
2
+ import e from "../../../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import "../../../../../synapse-client/SynapseClient.js";
4
4
  import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
5
5
  import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
@@ -29,7 +29,7 @@ import "react-router";
29
29
  import { EntityType as D } from "@sage-bionetworks/synapse-client";
30
30
  import "../../../utils/types/IsType.js";
31
31
  import { useGetEntityPath as Q } from "../../../synapse-queries/entity/useEntity.js";
32
- import { useGetEntityBundle as Z } from "../../../synapse-queries/entity/useEntityBundle.js";
32
+ import Z from "../../../synapse-queries/entity/useEntityBundle.js";
33
33
  import { useGetEntityHeader as ee } from "../../../synapse-queries/entity/useGetEntityHeaders.js";
34
34
  import { convertToEntityType as te } from "../../../utils/functions/EntityTypeUtils.js";
35
35
  import { useGetFavorites as re } from "../../../synapse-queries/user/useFavorites.js";
@@ -1 +1 @@
1
- {"version":3,"file":"EntityHeaderTable.d.ts","sourceRoot":"","sources":["../../../src/components/EntityHeaderTable/EntityHeaderTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAsBzB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAiB7E,OAAO,EAEL,sBAAsB,EACvB,MAAM,mCAAmC,CAAA;AAsB1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,aAAa,CAAA;IACzB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI,CAAA;IAC/C,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElD,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,yBAAyB,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAA;CACpE,CAAA;AAKD,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,sBAAsB,KAC5B,KAAK,CAAC,SAsgBR,CAAA"}
1
+ {"version":3,"file":"EntityHeaderTable.d.ts","sourceRoot":"","sources":["../../../src/components/EntityHeaderTable/EntityHeaderTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAsBzB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAmB7E,OAAO,EAEL,sBAAsB,EACvB,MAAM,mCAAmC,CAAA;AAsB1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,aAAa,CAAA;IACzB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI,CAAA;IAC/C,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElD,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,yBAAyB,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAA;CACpE,CAAA;AAKD,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,sBAAsB,KAC5B,KAAK,CAAC,SAsgBR,CAAA"}