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
@@ -40,7 +40,7 @@ import { formatDate as F } from "../../../utils/functions/DateFormatter.js";
40
40
  import l from "dayjs";
41
41
  import ne from "dayjs/plugin/duration";
42
42
  import { SynapseErrorBoundary as oe } from "../../error/ErrorBanner.js";
43
- import { MarkdownSynapse as de } from "../../Markdown/MarkdownSynapse.js";
43
+ import { Markdown as de } from "../../Markdown/MarkdownSynapse.js";
44
44
  import { UserBadge as S } from "../../UserCard/UserBadge.js";
45
45
  import P from "../../UserOrTeamBadge/UserOrTeamBadge.js";
46
46
  import { FileHandleLink as ce } from "../../widgets/FileHandleLink.js";
@@ -90,9 +90,9 @@ function ue(c, s) {
90
90
  function nt(c) {
91
91
  const { submissionId: s, isReviewer: d } = c, [u, A] = p(!1), { data: f } = se(), { data: t, isLoading: O } = Q(s, {
92
92
  throwOnError: !0
93
- }), E = !!(t && f && ue(f.ownerId, t)), { data: q, isLoading: B } = re(String(s), {
94
- enabled: E && t && t.state === m.APPROVED
95
- }), C = !!(q && l(q.expiredOn).isBefore(l())), k = t && t.submittedBy === f?.ownerId, { data: n } = z(
93
+ }), k = !!(t && f && ue(f.ownerId, t)), { data: q, isLoading: B } = re(String(s), {
94
+ enabled: k && t && t.state === m.APPROVED
95
+ }), C = !!(q && l(q.expiredOn).isBefore(l())), E = t && t.submittedBy === f?.ownerId, { data: n } = z(
96
96
  parseInt(t?.accessRequirementId),
97
97
  { enabled: !!t }
98
98
  ), { data: K, isLoading: v } = Y(
@@ -185,7 +185,7 @@ function nt(c) {
185
185
  }
186
186
  )
187
187
  ] }),
188
- t && k && /* @__PURE__ */ r("div", { className: "ButtonContainer", children: [
188
+ t && E && /* @__PURE__ */ r("div", { className: "ButtonContainer", children: [
189
189
  /* @__PURE__ */ e(
190
190
  W,
191
191
  {
@@ -31,7 +31,7 @@ import "@sage-bionetworks/synapse-client";
31
31
  import "../../utils/types/IsType.js";
32
32
  import { useSearchAccessRequirementsInfinite as J } from "../../synapse-queries/dataaccess/useAccessRequirements.js";
33
33
  import { formatDate as f } from "../../utils/functions/DateFormatter.js";
34
- import { useReactTable as W, getCoreRowModel as X, createColumnHelper as Z, getFacetedUniqueValues as ee } from "@tanstack/react-table";
34
+ import { useReactTable as W, getCoreRowModel as X, getFacetedUniqueValues as Z, createColumnHelper as ee } from "@tanstack/react-table";
35
35
  import A from "dayjs";
36
36
  import { EntityLink as te } from "../EntityLink.js";
37
37
  import a from "../TanStackTable/ColumnHeader.js";
@@ -58,7 +58,7 @@ const re = [
58
58
  h,
59
59
  U,
60
60
  O
61
- ], ne = (e) => /^\d+$/.test(e), l = Z(), ie = [
61
+ ], ne = (e) => /^\d+$/.test(e), l = ee(), ie = [
62
62
  l.accessor("id", {
63
63
  header: (e) => /* @__PURE__ */ r(a, { ...e, title: "AR ID" }),
64
64
  cell: ({ getValue: e }) => /* @__PURE__ */ r(
@@ -213,7 +213,7 @@ function Ke(e) {
213
213
  sorting: C,
214
214
  columnFilters: _
215
215
  },
216
- getFacetedUniqueValues: (n, i) => i === "type" ? () => new Map(re.map((o) => [o, 0])) : ee()(
216
+ getFacetedUniqueValues: (n, i) => i === "type" ? () => new Map(re.map((o) => [o, 0])) : Z()(
217
217
  n,
218
218
  i
219
219
  ),
@@ -1 +1 @@
1
- {"version":3,"file":"UseAccessRequirementTable.js","sources":["../../../src/components/dataaccess/UseAccessRequirementTable.tsx"],"sourcesContent":["import { useSearchAccessRequirementsInfinite } from '@/synapse-queries'\nimport { formatDate } from '@/utils/functions/DateFormatter'\nimport { PRODUCTION_ENDPOINT_CONFIG } from '@/utils/functions/getEndpoint'\nimport { ACT_TEAM_ID } from '@/utils/SynapseConstants'\nimport { Link, Typography } from '@mui/material'\nimport {\n ACCESS_REQUIREMENT_CONCRETE_TYPE,\n ACCESS_TYPE,\n AccessRequirementSearchRequest,\n AccessRequirementSearchResult,\n AccessRequirementSearchSort,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SortDirection,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ColumnFiltersState,\n ColumnSort,\n createColumnHelper,\n getCoreRowModel,\n getFacetedUniqueValues as defaultGetFacetedUniqueValues,\n SortingState,\n Table,\n Updater,\n useReactTable,\n} from '@tanstack/react-table'\nimport dayjs from 'dayjs'\nimport { noop } from 'lodash-es'\nimport { Fragment, useCallback, useMemo, useState } from 'react'\nimport { EntityLink } from '../EntityLink'\nimport ColumnHeader from '../TanStackTable/ColumnHeader'\nimport UserOrTeamBadge from '../UserOrTeamBadge/UserOrTeamBadge'\n\nexport function accessRequirementConcreteTypeValueToDisplayValue(\n accessRequirementConcreteTypeValue: ACCESS_REQUIREMENT_CONCRETE_TYPE,\n) {\n switch (accessRequirementConcreteTypeValue) {\n case TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE: {\n return SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n }\n case MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n default:\n return 'Unknown'\n }\n}\n\nconst ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES = [\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n]\n\nconst isIntegerInput = (v: string): boolean => {\n return /^\\d+$/.test(v)\n}\nconst columnHelper = createColumnHelper<AccessRequirementSearchResult>()\nconst columns = [\n columnHelper.accessor('id', {\n header: props => <ColumnHeader {...props} title={'AR ID'} />,\n cell: ({ getValue }) => (\n <Link\n href={`${\n PRODUCTION_ENDPOINT_CONFIG.PORTAL\n }AccessRequirement:AR_ID=${getValue()}`}\n >\n {getValue()}\n </Link>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('name', {\n header: props => (\n <ColumnHeader {...props} title={'Access Requirement Name'} />\n ),\n cell: ({ getValue }) => getValue(),\n enableSorting: true,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('type', {\n header: props => <ColumnHeader {...props} title={'Type'} />,\n cell: ({ getValue }) =>\n accessRequirementConcreteTypeValueToDisplayValue(getValue()),\n enableSorting: false,\n enableColumnFilter: true,\n meta: {\n filterVariant: 'enumeration',\n getDisplayText: accessRequirementConcreteTypeValueToDisplayValue,\n enableMultipleSelect: false,\n },\n }),\n columnHelper.accessor('relatedProjectIds', {\n header: props => <ColumnHeader {...props} title={'Related to Projects'} />,\n cell: ({ getValue }) => (\n <>\n {getValue().map(projectId => (\n <Fragment key={projectId}>\n <EntityLink entity={projectId} />{' '}\n <Typography\n component={'span'}\n variant={'smallText1'}\n sx={{\n color: 'grey.700',\n }}\n >\n ({projectId})\n </Typography>\n <br />\n </Fragment>\n ))}\n </>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('reviewerIds', {\n header: props => <ColumnHeader {...props} title={'Reviewer'} />,\n cell: ({ getValue }) => (\n <>\n {getValue().length === 0 ? (\n <UserOrTeamBadge principalId={ACT_TEAM_ID} />\n ) : (\n getValue().map(reviewerId => (\n <UserOrTeamBadge key={reviewerId} principalId={reviewerId} />\n ))\n )}\n </>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('modifiedOn', {\n header: props => <ColumnHeader {...props} title={'Last Modified'} />,\n cell: ({ getValue }) => formatDate(dayjs(getValue())),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('createdOn', {\n header: props => <ColumnHeader {...props} title={'Created On'} />,\n cell: ({ getValue }) => formatDate(dayjs(getValue())),\n enableSorting: true,\n enableColumnFilter: false,\n }),\n]\nconst DEFAULT_SORTING_STATE: SortingState = [\n {\n desc: true,\n id: 'createdOn',\n },\n]\ntype UseAccessRequirementTableOptions = {\n nameOrID?: string\n relatedProjectId?: string\n reviewerId?: string\n accessType?: ACCESS_TYPE\n typeFilter?: string\n onTypeFilterChange?: (typeFilter: string | undefined) => void\n}\n\nfunction columnSortToAccessRequirementSearchSort(\n columnSort: ColumnSort,\n): AccessRequirementSearchSort {\n const direction: SortDirection = columnSort.desc ? 'DESC' : 'ASC'\n\n if (columnSort.id == 'createdOn') {\n return {\n field: 'CREATED_ON',\n direction,\n }\n } else if (columnSort.id == 'name') {\n return {\n field: 'NAME',\n direction,\n }\n } else {\n throw new Error(\n `Could not map sort field ${columnSort.id} to AccessRequirementSortField`,\n )\n }\n}\n\nfunction getTypeFilterFromColumnFilters(\n columnFilters?: ColumnFiltersState,\n): string | undefined {\n const matchingFilter = (columnFilters || []).find(f => f.id === 'type')\n const filterValues = matchingFilter?.value\n if (filterValues) {\n return (filterValues as string[])[0]\n }\n return undefined\n}\n\nexport function useAccessRequirementTable(\n opts: UseAccessRequirementTableOptions,\n) {\n const {\n nameOrID,\n relatedProjectId,\n reviewerId,\n accessType,\n typeFilter,\n onTypeFilterChange = noop,\n } = opts\n const [sortingState, setSortingState] = useState<SortingState>(\n DEFAULT_SORTING_STATE,\n )\n\n const columnFilters = useMemo(\n () => (typeFilter ? [{ id: 'type', value: [typeFilter] }] : []),\n [typeFilter],\n )\n\n const onColumnFiltersChange = useCallback(\n (updaterOrValue: Updater<ColumnFiltersState>) => {\n const newValue: ColumnFiltersState =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(columnFilters)\n : updaterOrValue\n\n // Unlike the other controls, the type filter control is inside the table. State is still stored in the parent component.\n // When the user updates the filter, this function will fire, so we must propagate changes to the type filter to the parent.\n const typeFilter = getTypeFilterFromColumnFilters(newValue)\n onTypeFilterChange(typeFilter)\n },\n [columnFilters, onTypeFilterChange],\n )\n\n // Map the @tanstack/react-table sort state object to the Synapse API object\n const apiRequestSortState: AccessRequirementSearchRequest['sort'] = useMemo(\n () => sortingState.map(columnSortToAccessRequirementSearchSort),\n [sortingState],\n )\n\n const searchRequest: Omit<AccessRequirementSearchRequest, 'nextPageToken'> =\n useMemo(() => {\n // SWC-6615: If the input string is a single integer, assume it's the AR ID. Otherwise, use as the nameContains field.\n let nameContains: string | undefined = undefined\n let ids: number[] | undefined = undefined\n if (nameOrID !== undefined) {\n const nameOrIDTrimmed = nameOrID.trim()\n if (isIntegerInput(nameOrIDTrimmed)) {\n ids = [Number.parseInt(nameOrIDTrimmed)]\n } else {\n nameContains = nameOrIDTrimmed\n }\n }\n return {\n ids,\n nameContains,\n relatedProjectId,\n reviewerId,\n accessType,\n sort: apiRequestSortState,\n type: typeFilter,\n }\n }, [\n nameOrID,\n relatedProjectId,\n reviewerId,\n accessType,\n apiRequestSortState,\n typeFilter,\n ])\n\n const { data, hasNextPage, fetchNextPage, isLoading, isFetchingNextPage } =\n useSearchAccessRequirementsInfinite(searchRequest)\n\n const accessRequirements = useMemo(\n () => data?.pages.flatMap(page => page.results) ?? [],\n [data],\n )\n\n const table: Table<AccessRequirementSearchResult> =\n useReactTable<AccessRequirementSearchResult>({\n data: accessRequirements,\n columns: columns,\n state: {\n sorting: sortingState,\n columnFilters: columnFilters,\n },\n getFacetedUniqueValues: (\n table: Table<AccessRequirementSearchResult>,\n columnId: string,\n ) => {\n if (columnId === 'type') {\n // Hard-code the set of possible access requirement types with count = 0 to indicate that we don't have facet counts.\n return () =>\n new Map(ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES.map(v => [v, 0]))\n }\n return defaultGetFacetedUniqueValues<AccessRequirementSearchResult>()(\n table,\n columnId,\n )\n },\n onSortingChange: setSortingState,\n onColumnFiltersChange: onColumnFiltersChange,\n getRowId: row => row.id,\n getCoreRowModel: getCoreRowModel(),\n columnResizeMode: 'onChange',\n manualSorting: true,\n enableMultiSort: false,\n // Sort is required for this API call, so prevent the user from removing the sort.\n enableSortingRemoval: false,\n manualFiltering: true,\n })\n\n return { table, isLoading, hasNextPage, fetchNextPage, isFetchingNextPage }\n}\n"],"names":["accessRequirementConcreteTypeValueToDisplayValue","accessRequirementConcreteTypeValue","TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES","isIntegerInput","v","columnHelper","createColumnHelper","columns","props","jsx","ColumnHeader","getValue","Link","PRODUCTION_ENDPOINT_CONFIG","Fragment","projectId","jsxs","EntityLink","Typography","UserOrTeamBadge","ACT_TEAM_ID","reviewerId","formatDate","dayjs","DEFAULT_SORTING_STATE","columnSortToAccessRequirementSearchSort","columnSort","direction","getTypeFilterFromColumnFilters","columnFilters","filterValues","f","useAccessRequirementTable","opts","nameOrID","relatedProjectId","accessType","typeFilter","onTypeFilterChange","noop","sortingState","setSortingState","useState","useMemo","onColumnFiltersChange","useCallback","updaterOrValue","newValue","apiRequestSortState","searchRequest","nameContains","ids","nameOrIDTrimmed","data","hasNextPage","fetchNextPage","isLoading","isFetchingNextPage","useSearchAccessRequirementsInfinite","accessRequirements","page","useReactTable","table","columnId","defaultGetFacetedUniqueValues","row","getCoreRowModel"],"mappings":"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"}
1
+ {"version":3,"file":"UseAccessRequirementTable.js","sources":["../../../src/components/dataaccess/UseAccessRequirementTable.tsx"],"sourcesContent":["import { useSearchAccessRequirementsInfinite } from '@/synapse-queries'\nimport { formatDate } from '@/utils/functions/DateFormatter'\nimport { PRODUCTION_ENDPOINT_CONFIG } from '@/utils/functions/getEndpoint'\nimport { ACT_TEAM_ID } from '@/utils/SynapseConstants'\nimport { Link, Typography } from '@mui/material'\nimport {\n ACCESS_REQUIREMENT_CONCRETE_TYPE,\n ACCESS_TYPE,\n AccessRequirementSearchRequest,\n AccessRequirementSearchResult,\n AccessRequirementSearchSort,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SortDirection,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ColumnFiltersState,\n ColumnSort,\n createColumnHelper,\n getCoreRowModel,\n getFacetedUniqueValues as defaultGetFacetedUniqueValues,\n SortingState,\n Table,\n Updater,\n useReactTable,\n} from '@tanstack/react-table'\nimport dayjs from 'dayjs'\nimport { noop } from 'lodash-es'\nimport { Fragment, useCallback, useMemo, useState } from 'react'\nimport { EntityLink } from '../EntityLink'\nimport ColumnHeader from '../TanStackTable/ColumnHeader'\nimport UserOrTeamBadge from '../UserOrTeamBadge/UserOrTeamBadge'\n\nexport function accessRequirementConcreteTypeValueToDisplayValue(\n accessRequirementConcreteTypeValue: ACCESS_REQUIREMENT_CONCRETE_TYPE,\n) {\n switch (accessRequirementConcreteTypeValue) {\n case TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE: {\n return SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n }\n case MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n case LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE\n default:\n return 'Unknown'\n }\n}\n\nconst ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES = [\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n]\n\nconst isIntegerInput = (v: string): boolean => {\n return /^\\d+$/.test(v)\n}\nconst columnHelper = createColumnHelper<AccessRequirementSearchResult>()\nconst columns = [\n columnHelper.accessor('id', {\n header: props => <ColumnHeader {...props} title={'AR ID'} />,\n cell: ({ getValue }) => (\n <Link\n href={`${\n PRODUCTION_ENDPOINT_CONFIG.PORTAL\n }AccessRequirement:AR_ID=${getValue()}`}\n >\n {getValue()}\n </Link>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('name', {\n header: props => (\n <ColumnHeader {...props} title={'Access Requirement Name'} />\n ),\n cell: ({ getValue }) => getValue(),\n enableSorting: true,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('type', {\n header: props => <ColumnHeader {...props} title={'Type'} />,\n cell: ({ getValue }) =>\n accessRequirementConcreteTypeValueToDisplayValue(getValue()),\n enableSorting: false,\n enableColumnFilter: true,\n meta: {\n filterVariant: 'enumeration',\n getDisplayText: accessRequirementConcreteTypeValueToDisplayValue,\n enableMultipleSelect: false,\n },\n }),\n columnHelper.accessor('relatedProjectIds', {\n header: props => <ColumnHeader {...props} title={'Related to Projects'} />,\n cell: ({ getValue }) => (\n <>\n {getValue().map(projectId => (\n <Fragment key={projectId}>\n <EntityLink entity={projectId} />{' '}\n <Typography\n component={'span'}\n variant={'smallText1'}\n sx={{\n color: 'grey.700',\n }}\n >\n ({projectId})\n </Typography>\n <br />\n </Fragment>\n ))}\n </>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('reviewerIds', {\n header: props => <ColumnHeader {...props} title={'Reviewer'} />,\n cell: ({ getValue }) => (\n <>\n {getValue().length === 0 ? (\n <UserOrTeamBadge principalId={ACT_TEAM_ID} />\n ) : (\n getValue().map(reviewerId => (\n <UserOrTeamBadge key={reviewerId} principalId={reviewerId} />\n ))\n )}\n </>\n ),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('modifiedOn', {\n header: props => <ColumnHeader {...props} title={'Last Modified'} />,\n cell: ({ getValue }) => formatDate(dayjs(getValue())),\n enableSorting: false,\n enableColumnFilter: false,\n }),\n columnHelper.accessor('createdOn', {\n header: props => <ColumnHeader {...props} title={'Created On'} />,\n cell: ({ getValue }) => formatDate(dayjs(getValue())),\n enableSorting: true,\n enableColumnFilter: false,\n }),\n]\nconst DEFAULT_SORTING_STATE: SortingState = [\n {\n desc: true,\n id: 'createdOn',\n },\n]\ntype UseAccessRequirementTableOptions = {\n nameOrID?: string\n relatedProjectId?: string\n reviewerId?: string\n accessType?: ACCESS_TYPE\n typeFilter?: string\n onTypeFilterChange?: (typeFilter: string | undefined) => void\n}\n\nfunction columnSortToAccessRequirementSearchSort(\n columnSort: ColumnSort,\n): AccessRequirementSearchSort {\n const direction: SortDirection = columnSort.desc ? 'DESC' : 'ASC'\n\n if (columnSort.id == 'createdOn') {\n return {\n field: 'CREATED_ON',\n direction,\n }\n } else if (columnSort.id == 'name') {\n return {\n field: 'NAME',\n direction,\n }\n } else {\n throw new Error(\n `Could not map sort field ${columnSort.id} to AccessRequirementSortField`,\n )\n }\n}\n\nfunction getTypeFilterFromColumnFilters(\n columnFilters?: ColumnFiltersState,\n): string | undefined {\n const matchingFilter = (columnFilters || []).find(f => f.id === 'type')\n const filterValues = matchingFilter?.value\n if (filterValues) {\n return (filterValues as string[])[0]\n }\n return undefined\n}\n\nexport function useAccessRequirementTable(\n opts: UseAccessRequirementTableOptions,\n) {\n const {\n nameOrID,\n relatedProjectId,\n reviewerId,\n accessType,\n typeFilter,\n onTypeFilterChange = noop,\n } = opts\n const [sortingState, setSortingState] = useState<SortingState>(\n DEFAULT_SORTING_STATE,\n )\n\n const columnFilters = useMemo(\n () => (typeFilter ? [{ id: 'type', value: [typeFilter] }] : []),\n [typeFilter],\n )\n\n const onColumnFiltersChange = useCallback(\n (updaterOrValue: Updater<ColumnFiltersState>) => {\n const newValue: ColumnFiltersState =\n typeof updaterOrValue === 'function'\n ? updaterOrValue(columnFilters)\n : updaterOrValue\n\n // Unlike the other controls, the type filter control is inside the table. State is still stored in the parent component.\n // When the user updates the filter, this function will fire, so we must propagate changes to the type filter to the parent.\n const typeFilter = getTypeFilterFromColumnFilters(newValue)\n onTypeFilterChange(typeFilter)\n },\n [columnFilters, onTypeFilterChange],\n )\n\n // Map the @tanstack/react-table sort state object to the Synapse API object\n const apiRequestSortState: AccessRequirementSearchRequest['sort'] = useMemo(\n () => sortingState.map(columnSortToAccessRequirementSearchSort),\n [sortingState],\n )\n\n const searchRequest: Omit<AccessRequirementSearchRequest, 'nextPageToken'> =\n useMemo(() => {\n // SWC-6615: If the input string is a single integer, assume it's the AR ID. Otherwise, use as the nameContains field.\n let nameContains: string | undefined = undefined\n let ids: number[] | undefined = undefined\n if (nameOrID !== undefined) {\n const nameOrIDTrimmed = nameOrID.trim()\n if (isIntegerInput(nameOrIDTrimmed)) {\n ids = [Number.parseInt(nameOrIDTrimmed)]\n } else {\n nameContains = nameOrIDTrimmed\n }\n }\n return {\n ids,\n nameContains,\n relatedProjectId,\n reviewerId,\n accessType,\n sort: apiRequestSortState,\n type: typeFilter,\n }\n }, [\n nameOrID,\n relatedProjectId,\n reviewerId,\n accessType,\n apiRequestSortState,\n typeFilter,\n ])\n\n const { data, hasNextPage, fetchNextPage, isLoading, isFetchingNextPage } =\n useSearchAccessRequirementsInfinite(searchRequest)\n\n const accessRequirements = useMemo(\n () => data?.pages.flatMap(page => page.results) ?? [],\n [data],\n )\n\n const table: Table<AccessRequirementSearchResult> =\n useReactTable<AccessRequirementSearchResult>({\n data: accessRequirements,\n columns: columns,\n state: {\n sorting: sortingState,\n columnFilters: columnFilters,\n },\n getFacetedUniqueValues: (\n table: Table<AccessRequirementSearchResult>,\n columnId: string,\n ) => {\n if (columnId === 'type') {\n // Hard-code the set of possible access requirement types with count = 0 to indicate that we don't have facet counts.\n return () =>\n new Map(ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES.map(v => [v, 0]))\n }\n return defaultGetFacetedUniqueValues<AccessRequirementSearchResult>()(\n table,\n columnId,\n )\n },\n onSortingChange: setSortingState,\n onColumnFiltersChange: onColumnFiltersChange,\n getRowId: row => row.id,\n getCoreRowModel: getCoreRowModel(),\n columnResizeMode: 'onChange',\n manualSorting: true,\n enableMultiSort: false,\n // Sort is required for this API call, so prevent the user from removing the sort.\n enableSortingRemoval: false,\n manualFiltering: true,\n })\n\n return { table, isLoading, hasNextPage, fetchNextPage, isFetchingNextPage }\n}\n"],"names":["accessRequirementConcreteTypeValueToDisplayValue","accessRequirementConcreteTypeValue","TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_DISPLAY_VALUE","ALL_ACCESS_REQUIREMENT_CONCRETE_TYPES","isIntegerInput","v","columnHelper","createColumnHelper","columns","props","jsx","ColumnHeader","getValue","Link","PRODUCTION_ENDPOINT_CONFIG","Fragment","projectId","jsxs","EntityLink","Typography","UserOrTeamBadge","ACT_TEAM_ID","reviewerId","formatDate","dayjs","DEFAULT_SORTING_STATE","columnSortToAccessRequirementSearchSort","columnSort","direction","getTypeFilterFromColumnFilters","columnFilters","filterValues","f","useAccessRequirementTable","opts","nameOrID","relatedProjectId","accessType","typeFilter","onTypeFilterChange","noop","sortingState","setSortingState","useState","useMemo","onColumnFiltersChange","useCallback","updaterOrValue","newValue","apiRequestSortState","searchRequest","nameContains","ids","nameOrIDTrimmed","data","hasNextPage","fetchNextPage","isLoading","isFetchingNextPage","useSearchAccessRequirementsInfinite","accessRequirements","page","useReactTable","table","columnId","defaultGetFacetedUniqueValues","row","getCoreRowModel"],"mappings":"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"}
@@ -9,7 +9,7 @@ import { StyledFormControl as ce } from "../styled/StyledFormControl.js";
9
9
  import { displayToast as de } from "../ToastMessage/ToastMessage.js";
10
10
  import { useGetDOI as me, useCreateOrUpdateDOI as ue } from "../../synapse-queries/doi/useDOI.js";
11
11
  import { useGetVersions as pe } from "../../synapse-queries/entity/useEntity.js";
12
- import { useGetEntityBundle as fe } from "../../synapse-queries/entity/useEntityBundle.js";
12
+ import fe from "../../synapse-queries/entity/useEntityBundle.js";
13
13
  import { useGetPortal as he } from "../../synapse-queries/portal/usePortal.js";
14
14
  import { useGetRealmPrincipals as ye } from "../../synapse-queries/realm/useRealmPrincipals.js";
15
15
  import { useGetCurrentUserProfile as ge } from "../../synapse-queries/user/useUserBundle.js";
@@ -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 '../../FullWidthAlert/FullWidthAlert.css';import '../../../style/components/_spinner.css';/* empty css */
33
+ import '../../Plot/SynapsePlot.css';import '../../FullWidthAlert/FullWidthAlert.css';import '../../../style/components/_spinner.css';/* empty css */
34
34
  import "react-router";
35
35
  import "@mui/icons-material/Close";
36
36
  import "../../styled/StyledPopover.js";
@@ -168,7 +168,6 @@ import "@mui/x-date-pickers/AdapterDayjs";
168
168
  import "@mui/x-date-pickers/LocalizationProvider";
169
169
  import "../../FeaturedDataTabs/FacetPlotsCardGrid.js";
170
170
  import "../../Forum/ForumTable.js";
171
- import "@mui/material/IconButton";
172
171
  import "@mui/icons-material/NavigateNext";
173
172
  import "@react-google-maps/api";
174
173
  import "../../Markdown/MarkdownUtils.js";
@@ -182,6 +181,7 @@ import "lodash-es/orderBy";
182
181
  import "../../styled/LargeButton.js";
183
182
  import "../../../assets/illustrations/diagonalLinePattern.svg.js";
184
183
  import "@upsetjs/react";
184
+ /* empty css */
185
185
  import "reactflow";
186
186
  import "../../ProvenanceGraph/ProvenanceUtils.js";
187
187
  import "reactflow/dist/style.css";
@@ -1,5 +1,5 @@
1
1
  import { jsxs as u, Fragment as E, jsx as n } from "react/jsx-runtime";
2
- import { useGetEntityBundle as W } from "../../../synapse-queries/entity/useEntityBundle.js";
2
+ import W from "../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { isVersionableEntityType as j, entityTypeToFriendlyName as _ } from "../../../utils/functions/EntityTypeUtils.js";
4
4
  import { getEndpoint as q, BackendDestinationEnum as G } from "../../../utils/functions/getEndpoint.js";
5
5
  import { Button as l, Tooltip as U } from "@mui/material";
@@ -1,5 +1,5 @@
1
1
  import { jsx as a, jsxs as t } from "react/jsx-runtime";
2
- import { useGetEntityBundle as b } from "../../../synapse-queries/entity/useEntityBundle.js";
2
+ import b from "../../../synapse-queries/entity/useEntityBundle.js";
3
3
  import { useGetUploadDestinationForStorageLocation as T } from "../../../synapse-queries/file/useUploadDestination.js";
4
4
  import { formatDate as s } from "../../../utils/functions/DateFormatter.js";
5
5
  import { isVersionableEntity as N, entityTypeToFriendlyName as M, getVersionDisplay as h } from "../../../utils/functions/EntityTypeUtils.js";
@@ -29,7 +29,7 @@ import "lodash-es/xorWith";
29
29
  import "react-router";
30
30
  import "@sage-bionetworks/synapse-client";
31
31
  import { isDockerRepository as x } from "../../../../utils/types/IsType.js";
32
- import { useGetEntityBundle as h } from "../../../../synapse-queries/entity/useEntityBundle.js";
32
+ import h from "../../../../synapse-queries/entity/useEntityBundle.js";
33
33
  import u from "../../../favorites/FavoriteButton.js";
34
34
  import w, { type2SvgIconName as I } from "../../../IconSvg/IconSvg.js";
35
35
  import v from "../action_menu/EntityActionMenu.js";
@@ -29,7 +29,7 @@ import "lodash-es/xorWith";
29
29
  import "react-router";
30
30
  import "@sage-bionetworks/synapse-client";
31
31
  import "../../../../utils/types/IsType.js";
32
- import { useGetEntityBundle as h } from "../../../../synapse-queries/entity/useEntityBundle.js";
32
+ import h from "../../../../synapse-queries/entity/useEntityBundle.js";
33
33
  const L = 50;
34
34
  function p(t) {
35
35
  return !n(t) || l(t) && t.isLatestVersion ? null : t.versionLabel ?? null;
@@ -28,7 +28,7 @@ import "lodash-es/xorWith";
28
28
  import "react-router";
29
29
  import "@sage-bionetworks/synapse-client";
30
30
  import "../../../../utils/types/IsType.js";
31
- import { useGetEntityBundle as b } from "../../../../synapse-queries/entity/useEntityBundle.js";
31
+ import b from "../../../../synapse-queries/entity/useEntityBundle.js";
32
32
  import { useGetFeatureFlag as k } from "../../../../synapse-queries/featureflags/useGetFeatureFlag.js";
33
33
  import C from "../../../AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js";
34
34
  import { useGetEntityTitleBarProperties as F } from "./useGetEntityTitleBarProperties.js";
@@ -1 +1 @@
1
- {"version":3,"file":"useGetEntityTitleBarProperties.d.ts","sourceRoot":"","sources":["../../../../../src/components/entity/page/title_bar/useGetEntityTitleBarProperties.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAO3C,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,EAAE,CAuLlB"}
1
+ {"version":3,"file":"useGetEntityTitleBarProperties.d.ts","sourceRoot":"","sources":["../../../../../src/components/entity/page/title_bar/useGetEntityTitleBarProperties.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAQ3C,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,EAAE,CAuLlB"}
@@ -1,4 +1,4 @@
1
- import { jsx as i, jsxs as a, Fragment as p } from "react/jsx-runtime";
1
+ import { jsx as e, jsxs as a, Fragment as p } 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";
@@ -10,7 +10,7 @@ import "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 L } from "react";
13
+ import { useState as F } from "react";
14
14
  import "../../../../utils/context/SynapseContext.js";
15
15
  import "use-deep-compare-effect";
16
16
  import { Link as d, Box as j } from "@mui/material";
@@ -37,53 +37,54 @@ import { HasAccessV2 as $ } from "../../../HasAccess/HasAccessV2.js";
37
37
  import { CitationsDialog as E } from "./CitationsDialog.js";
38
38
  import { useDataCiteUsage as q, maxCitationCount as J } from "./useDataCiteUsage.js";
39
39
  import { useGetMentions as Q } from "./useGetMentions.js";
40
- function Bt(o, I) {
40
+ import W from "../../../GenericCard/Linkify.js";
41
+ function Kt(o, I) {
41
42
  const {
42
- entityBundle: e,
43
- fileHandle: s,
43
+ entityBundle: i,
44
+ fileHandle: r,
44
45
  downloadAlias: u,
45
- isContainer: r,
46
+ isContainer: s,
46
47
  fileHandleStorageInfo: t,
47
48
  uploadDestinationString: y
48
- } = _(o, I), [M, f] = L(!1), [U, C] = L(!1), { data: T } = N(
49
+ } = _(o, I), [M, f] = F(!1), [U, C] = F(!1), { data: T } = N(
49
50
  {
50
51
  parentId: o,
51
52
  includeTypes: Object.values(H),
52
53
  includeTotalChildCount: !0
53
54
  },
54
- { enabled: r }
55
- ), k = e && !e.doiAssociation && K(e.entity) && e.entity.isLatestVersion, { data: z } = P(
55
+ { enabled: s }
56
+ ), k = i && !i.doiAssociation && K(i.entity) && i.entity.isLatestVersion, { data: z } = P(
56
57
  { id: o, version: void 0, type: R.ENTITY },
57
58
  {
58
59
  enabled: k
59
60
  }
60
- ), g = s?.contentSize && Y(s.contentSize), v = t && "location" in t && t.location, D = t && "endpoint" in t && t.endpoint, h = t && "bucket" in t && t.bucket, S = t && "fileKey" in t && t.fileKey, b = t && "url" in t && t.url, x = s?.contentMd5, c = k ? z : e?.doiAssociation, { data: n } = q(c?.doiUri), m = c && `https://doi.org/${c?.doiUri}`, w = !!n && n.citationCount > 0, A = T?.totalChildCount, F = e?.entity && V(e.entity) ? ((e?.entity).items ?? []).length : null, { data: l } = Q(o), B = !!l && l.length > 0;
61
+ ), g = r?.contentSize && Y(r.contentSize), v = t && "location" in t && t.location, D = t && "endpoint" in t && t.endpoint, h = t && "bucket" in t && t.bucket, S = t && "fileKey" in t && t.fileKey, b = t && "url" in t && t.url, x = r?.contentMd5, c = k ? z : i?.doiAssociation, { data: n } = q(c?.doiUri), m = c && `https://doi.org/${c?.doiUri}`, w = !!n && n.citationCount > 0, L = T?.totalChildCount, A = i?.entity && V(i.entity) ? ((i?.entity).items ?? []).length : null, { data: l } = Q(o), B = !!l && l.length > 0;
61
62
  return [
62
63
  {
63
64
  key: "id",
64
65
  title: "SynID",
65
- value: /* @__PURE__ */ i(O, { value: o })
66
+ value: /* @__PURE__ */ e(O, { value: o })
66
67
  },
67
68
  {
68
69
  key: "access",
69
70
  title: "Access",
70
- value: /* @__PURE__ */ i($, { entityId: o })
71
+ value: /* @__PURE__ */ e($, { entityId: o })
71
72
  },
72
73
  g && { key: "fileSize", title: "Size", value: g },
73
- A != null && {
74
+ L != null && {
74
75
  key: "containerItems",
75
76
  title: "Items",
76
- value: A.toLocaleString()
77
+ value: L.toLocaleString()
77
78
  },
78
- F != null && {
79
+ A != null && {
79
80
  key: "entityRefCollectionItems",
80
81
  title: "Items",
81
- value: F.toLocaleString()
82
+ value: A.toLocaleString()
82
83
  },
83
84
  m && {
84
85
  key: "doi",
85
86
  title: "DOI",
86
- value: /* @__PURE__ */ i(d, { href: m, rel: "noopener noreferrer", target: "_blank", children: m })
87
+ value: /* @__PURE__ */ e(d, { href: m, rel: "noopener noreferrer", target: "_blank", children: m })
87
88
  },
88
89
  w && {
89
90
  key: "citations",
@@ -93,7 +94,7 @@ function Bt(o, I) {
93
94
  n.citationCount.toLocaleString(),
94
95
  n.citationCount == J && "+"
95
96
  ] }),
96
- /* @__PURE__ */ i(
97
+ /* @__PURE__ */ e(
97
98
  E,
98
99
  {
99
100
  open: M,
@@ -107,8 +108,8 @@ function Bt(o, I) {
107
108
  key: "mentions",
108
109
  title: "Mentions",
109
110
  value: /* @__PURE__ */ a(p, { children: [
110
- /* @__PURE__ */ i(d, { onClick: () => C(!0), children: l.length.toLocaleString() }),
111
- /* @__PURE__ */ i(
111
+ /* @__PURE__ */ e(d, { onClick: () => C(!0), children: l.length.toLocaleString() }),
112
+ /* @__PURE__ */ e(
112
113
  E,
113
114
  {
114
115
  open: U,
@@ -122,14 +123,14 @@ function Bt(o, I) {
122
123
  x && {
123
124
  key: "fileMd5",
124
125
  title: "MD5",
125
- value: /* @__PURE__ */ i(O, { value: x })
126
+ value: /* @__PURE__ */ e(O, { value: x })
126
127
  },
127
- !r && v && {
128
+ !s && v && {
128
129
  key: "fileStorageLocation",
129
130
  title: "Storage Location",
130
131
  value: v
131
132
  },
132
- r && y && {
133
+ s && y && {
133
134
  key: "uploadDestination",
134
135
  title: "Upload Destination",
135
136
  value: y
@@ -142,7 +143,7 @@ function Bt(o, I) {
142
143
  b && {
143
144
  key: "externalUrl",
144
145
  title: "URL",
145
- value: b
146
+ value: /* @__PURE__ */ e(W, { text: b })
146
147
  },
147
148
  h && { key: "externalFileBucket", title: "Bucket", value: h },
148
149
  S && { key: "externalFileKey", title: "File Key", value: S },
@@ -151,12 +152,12 @@ function Bt(o, I) {
151
152
  title: "Alias",
152
153
  value: /* @__PURE__ */ a(p, { children: [
153
154
  "Name when downloaded will be: ",
154
- /* @__PURE__ */ i(j, { sx: { display: "inline", fontFamily: "monospace" }, children: u })
155
+ /* @__PURE__ */ e(j, { sx: { display: "inline", fontFamily: "monospace" }, children: u })
155
156
  ] })
156
157
  }
157
158
  ].filter((G) => !!G);
158
159
  }
159
160
  export {
160
- Bt as useGetEntityTitleBarProperties
161
+ Kt as useGetEntityTitleBarProperties
161
162
  };
162
163
  //# sourceMappingURL=useGetEntityTitleBarProperties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useGetEntityTitleBarProperties.js","sources":["../../../../../src/components/entity/page/title_bar/useGetEntityTitleBarProperties.tsx"],"sourcesContent":["import { useGetEntityChildren } from '@/synapse-queries'\nimport { useGetDOIAssociation } from '@/synapse-queries/doi/useDOI'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport {\n isEntityRefCollectionView,\n isVersionableEntity,\n} from '@/utils/functions/EntityTypeUtils'\nimport useGetEntityMetadata from '@/utils/hooks/useGetEntityMetadata'\nimport { Box, Link } from '@mui/material'\nimport { DoiObjectType, EntityType } from '@sage-bionetworks/synapse-client'\nimport { EntityRefCollectionView } from '@sage-bionetworks/synapse-types'\nimport { ReactNode, useState } from 'react'\nimport CopyToClipboardString from '../../../CopyToClipboardString/CopyToClipboardString'\nimport { HasAccessV2 } from '../../../HasAccess/HasAccessV2'\nimport { CitationsDialog } from './CitationsDialog'\nimport { maxCitationCount, useDataCiteUsage } from './useDataCiteUsage'\nimport { useGetMentions } from './useGetMentions'\n\nexport type EntityProperty = {\n key: string\n title: string\n value: ReactNode\n}\n\n/**\n * This hook fetches all the entity metadata shown on the Entity page, and transforms the data into an ordered list of\n * render-able key-value pairs.\n * @param entityId\n * @param versionNumber\n */\nexport function useGetEntityTitleBarProperties(\n entityId: string,\n versionNumber?: number,\n): EntityProperty[] {\n const {\n entityBundle: bundle,\n fileHandle: dataFileHandle,\n downloadAlias,\n isContainer,\n fileHandleStorageInfo,\n uploadDestinationString,\n } = useGetEntityMetadata(entityId, versionNumber)\n const [dataCiteCitationsDialogOpen, setDataCiteCitationsDialogOpen] =\n useState(false)\n const [mentionsDialogOpen, setMentionsDialogOpen] = useState(false)\n const { data: entityChildrenResponse } = useGetEntityChildren(\n {\n parentId: entityId,\n includeTypes: Object.values(EntityType),\n includeTotalChildCount: true,\n },\n { enabled: isContainer },\n )\n\n // If this is the latest entity version, show the \"versionless\" DOI if it exists.\n const useFallbackVersionlessDOI =\n bundle &&\n !bundle.doiAssociation &&\n isVersionableEntity(bundle.entity) &&\n bundle.entity.isLatestVersion\n const { data: versionlessDOIAssociation } = useGetDOIAssociation(\n { id: entityId, version: undefined, type: DoiObjectType.ENTITY },\n {\n enabled: useFallbackVersionlessDOI,\n },\n )\n\n const size =\n dataFileHandle?.contentSize &&\n calculateFriendlyFileSize(dataFileHandle.contentSize)\n const storageLocation =\n fileHandleStorageInfo &&\n 'location' in fileHandleStorageInfo &&\n fileHandleStorageInfo.location\n const endpoint =\n fileHandleStorageInfo &&\n 'endpoint' in fileHandleStorageInfo &&\n fileHandleStorageInfo.endpoint\n const bucket =\n fileHandleStorageInfo &&\n 'bucket' in fileHandleStorageInfo &&\n fileHandleStorageInfo.bucket\n const fileKey =\n fileHandleStorageInfo &&\n 'fileKey' in fileHandleStorageInfo &&\n fileHandleStorageInfo.fileKey\n const externalUrl =\n fileHandleStorageInfo &&\n 'url' in fileHandleStorageInfo &&\n fileHandleStorageInfo.url\n\n const md5 = dataFileHandle?.contentMd5\n\n // If there is no version-specific DOI, fall back to the versionless DOI\n const doiAssociation = useFallbackVersionlessDOI\n ? versionlessDOIAssociation\n : bundle?.doiAssociation\n const { data: dataCiteUsage } = useDataCiteUsage(doiAssociation?.doiUri)\n const doi = doiAssociation && `https://doi.org/${doiAssociation?.doiUri}`\n const isDoiUsage = !!dataCiteUsage && dataCiteUsage.citationCount > 0\n const containerItems = entityChildrenResponse?.totalChildCount\n\n const datasetItems =\n bundle?.entity && isEntityRefCollectionView(bundle.entity)\n ? ((bundle?.entity as EntityRefCollectionView).items ?? []).length\n : null\n\n const { data: mentions } = useGetMentions(entityId)\n const isMentions = !!mentions && mentions.length > 0\n return [\n {\n key: 'id',\n title: 'SynID',\n value: <CopyToClipboardString value={entityId} />,\n },\n {\n key: 'access',\n title: 'Access',\n value: <HasAccessV2 entityId={entityId} />,\n },\n size && { key: 'fileSize', title: 'Size', value: size },\n containerItems != null && {\n key: 'containerItems',\n title: 'Items',\n value: containerItems.toLocaleString(),\n },\n datasetItems != null && {\n key: 'entityRefCollectionItems',\n title: 'Items',\n value: datasetItems.toLocaleString(),\n },\n doi && {\n key: 'doi',\n title: 'DOI',\n value: (\n <Link href={doi} rel={'noopener noreferrer'} target={'_blank'}>\n {doi}\n </Link>\n ),\n },\n isDoiUsage && {\n key: 'citations',\n title: 'Citations',\n value: (\n <>\n <Link onClick={() => setDataCiteCitationsDialogOpen(true)}>\n {dataCiteUsage.citationCount.toLocaleString()}\n {dataCiteUsage.citationCount == maxCitationCount && '+'}\n </Link>\n <CitationsDialog\n open={dataCiteCitationsDialogOpen}\n onClose={() => setDataCiteCitationsDialogOpen(false)}\n citations={dataCiteUsage.citations}\n />\n </>\n ),\n },\n isMentions && {\n key: 'mentions',\n title: 'Mentions',\n value: (\n <>\n <Link onClick={() => setMentionsDialogOpen(true)}>\n {mentions.length.toLocaleString()}\n </Link>\n <CitationsDialog\n open={mentionsDialogOpen}\n onClose={() => setMentionsDialogOpen(false)}\n citations={mentions}\n title=\"Mentioned in\"\n />\n </>\n ),\n },\n md5 && {\n key: 'fileMd5',\n title: 'MD5',\n value: <CopyToClipboardString value={md5} />,\n },\n !isContainer &&\n storageLocation && {\n key: 'fileStorageLocation',\n title: 'Storage Location',\n value: storageLocation,\n },\n isContainer &&\n uploadDestinationString && {\n key: 'uploadDestination',\n title: 'Upload Destination',\n value: uploadDestinationString,\n },\n endpoint && {\n key: 'externalFileEndpoint',\n title: 'Endpoint',\n value: endpoint,\n },\n externalUrl && {\n key: 'externalUrl',\n title: 'URL',\n value: externalUrl,\n },\n bucket && { key: 'externalFileBucket', title: 'Bucket', value: bucket },\n fileKey && { key: 'externalFileKey', title: 'File Key', value: fileKey },\n downloadAlias && {\n key: 'fileAlias',\n title: 'Alias',\n value: (\n <>\n {'Name when downloaded will be: '}\n <Box sx={{ display: 'inline', fontFamily: 'monospace' }}>\n {downloadAlias}\n </Box>\n </>\n ),\n },\n ].filter(item => !!item) as EntityProperty[]\n}\n"],"names":["useGetEntityTitleBarProperties","entityId","versionNumber","bundle","dataFileHandle","downloadAlias","isContainer","fileHandleStorageInfo","uploadDestinationString","useGetEntityMetadata","dataCiteCitationsDialogOpen","setDataCiteCitationsDialogOpen","useState","mentionsDialogOpen","setMentionsDialogOpen","entityChildrenResponse","useGetEntityChildren","EntityType","useFallbackVersionlessDOI","isVersionableEntity","versionlessDOIAssociation","useGetDOIAssociation","DoiObjectType","size","calculateFriendlyFileSize","storageLocation","endpoint","bucket","fileKey","externalUrl","md5","doiAssociation","dataCiteUsage","useDataCiteUsage","doi","isDoiUsage","containerItems","datasetItems","isEntityRefCollectionView","mentions","useGetMentions","isMentions","jsx","CopyToClipboardString","HasAccessV2","Link","jsxs","Fragment","maxCitationCount","CitationsDialog","Box","item"],"mappings":"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"}
1
+ {"version":3,"file":"useGetEntityTitleBarProperties.js","sources":["../../../../../src/components/entity/page/title_bar/useGetEntityTitleBarProperties.tsx"],"sourcesContent":["import { useGetEntityChildren } from '@/synapse-queries'\nimport { useGetDOIAssociation } from '@/synapse-queries/doi/useDOI'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport {\n isEntityRefCollectionView,\n isVersionableEntity,\n} from '@/utils/functions/EntityTypeUtils'\nimport useGetEntityMetadata from '@/utils/hooks/useGetEntityMetadata'\nimport { Box, Link } from '@mui/material'\nimport { DoiObjectType, EntityType } from '@sage-bionetworks/synapse-client'\nimport { EntityRefCollectionView } from '@sage-bionetworks/synapse-types'\nimport { ReactNode, useState } from 'react'\nimport CopyToClipboardString from '../../../CopyToClipboardString/CopyToClipboardString'\nimport { HasAccessV2 } from '../../../HasAccess/HasAccessV2'\nimport { CitationsDialog } from './CitationsDialog'\nimport { maxCitationCount, useDataCiteUsage } from './useDataCiteUsage'\nimport { useGetMentions } from './useGetMentions'\nimport Linkify from '@/components/GenericCard/Linkify'\n\nexport type EntityProperty = {\n key: string\n title: string\n value: ReactNode\n}\n\n/**\n * This hook fetches all the entity metadata shown on the Entity page, and transforms the data into an ordered list of\n * render-able key-value pairs.\n * @param entityId\n * @param versionNumber\n */\nexport function useGetEntityTitleBarProperties(\n entityId: string,\n versionNumber?: number,\n): EntityProperty[] {\n const {\n entityBundle: bundle,\n fileHandle: dataFileHandle,\n downloadAlias,\n isContainer,\n fileHandleStorageInfo,\n uploadDestinationString,\n } = useGetEntityMetadata(entityId, versionNumber)\n const [dataCiteCitationsDialogOpen, setDataCiteCitationsDialogOpen] =\n useState(false)\n const [mentionsDialogOpen, setMentionsDialogOpen] = useState(false)\n const { data: entityChildrenResponse } = useGetEntityChildren(\n {\n parentId: entityId,\n includeTypes: Object.values(EntityType),\n includeTotalChildCount: true,\n },\n { enabled: isContainer },\n )\n\n // If this is the latest entity version, show the \"versionless\" DOI if it exists.\n const useFallbackVersionlessDOI =\n bundle &&\n !bundle.doiAssociation &&\n isVersionableEntity(bundle.entity) &&\n bundle.entity.isLatestVersion\n const { data: versionlessDOIAssociation } = useGetDOIAssociation(\n { id: entityId, version: undefined, type: DoiObjectType.ENTITY },\n {\n enabled: useFallbackVersionlessDOI,\n },\n )\n\n const size =\n dataFileHandle?.contentSize &&\n calculateFriendlyFileSize(dataFileHandle.contentSize)\n const storageLocation =\n fileHandleStorageInfo &&\n 'location' in fileHandleStorageInfo &&\n fileHandleStorageInfo.location\n const endpoint =\n fileHandleStorageInfo &&\n 'endpoint' in fileHandleStorageInfo &&\n fileHandleStorageInfo.endpoint\n const bucket =\n fileHandleStorageInfo &&\n 'bucket' in fileHandleStorageInfo &&\n fileHandleStorageInfo.bucket\n const fileKey =\n fileHandleStorageInfo &&\n 'fileKey' in fileHandleStorageInfo &&\n fileHandleStorageInfo.fileKey\n const externalUrl =\n fileHandleStorageInfo &&\n 'url' in fileHandleStorageInfo &&\n fileHandleStorageInfo.url\n\n const md5 = dataFileHandle?.contentMd5\n\n // If there is no version-specific DOI, fall back to the versionless DOI\n const doiAssociation = useFallbackVersionlessDOI\n ? versionlessDOIAssociation\n : bundle?.doiAssociation\n const { data: dataCiteUsage } = useDataCiteUsage(doiAssociation?.doiUri)\n const doi = doiAssociation && `https://doi.org/${doiAssociation?.doiUri}`\n const isDoiUsage = !!dataCiteUsage && dataCiteUsage.citationCount > 0\n const containerItems = entityChildrenResponse?.totalChildCount\n\n const datasetItems =\n bundle?.entity && isEntityRefCollectionView(bundle.entity)\n ? ((bundle?.entity as EntityRefCollectionView).items ?? []).length\n : null\n\n const { data: mentions } = useGetMentions(entityId)\n const isMentions = !!mentions && mentions.length > 0\n return [\n {\n key: 'id',\n title: 'SynID',\n value: <CopyToClipboardString value={entityId} />,\n },\n {\n key: 'access',\n title: 'Access',\n value: <HasAccessV2 entityId={entityId} />,\n },\n size && { key: 'fileSize', title: 'Size', value: size },\n containerItems != null && {\n key: 'containerItems',\n title: 'Items',\n value: containerItems.toLocaleString(),\n },\n datasetItems != null && {\n key: 'entityRefCollectionItems',\n title: 'Items',\n value: datasetItems.toLocaleString(),\n },\n doi && {\n key: 'doi',\n title: 'DOI',\n value: (\n <Link href={doi} rel={'noopener noreferrer'} target={'_blank'}>\n {doi}\n </Link>\n ),\n },\n isDoiUsage && {\n key: 'citations',\n title: 'Citations',\n value: (\n <>\n <Link onClick={() => setDataCiteCitationsDialogOpen(true)}>\n {dataCiteUsage.citationCount.toLocaleString()}\n {dataCiteUsage.citationCount == maxCitationCount && '+'}\n </Link>\n <CitationsDialog\n open={dataCiteCitationsDialogOpen}\n onClose={() => setDataCiteCitationsDialogOpen(false)}\n citations={dataCiteUsage.citations}\n />\n </>\n ),\n },\n isMentions && {\n key: 'mentions',\n title: 'Mentions',\n value: (\n <>\n <Link onClick={() => setMentionsDialogOpen(true)}>\n {mentions.length.toLocaleString()}\n </Link>\n <CitationsDialog\n open={mentionsDialogOpen}\n onClose={() => setMentionsDialogOpen(false)}\n citations={mentions}\n title=\"Mentioned in\"\n />\n </>\n ),\n },\n md5 && {\n key: 'fileMd5',\n title: 'MD5',\n value: <CopyToClipboardString value={md5} />,\n },\n !isContainer &&\n storageLocation && {\n key: 'fileStorageLocation',\n title: 'Storage Location',\n value: storageLocation,\n },\n isContainer &&\n uploadDestinationString && {\n key: 'uploadDestination',\n title: 'Upload Destination',\n value: uploadDestinationString,\n },\n endpoint && {\n key: 'externalFileEndpoint',\n title: 'Endpoint',\n value: endpoint,\n },\n externalUrl && {\n key: 'externalUrl',\n title: 'URL',\n value: <Linkify text={externalUrl} />,\n },\n bucket && { key: 'externalFileBucket', title: 'Bucket', value: bucket },\n fileKey && { key: 'externalFileKey', title: 'File Key', value: fileKey },\n downloadAlias && {\n key: 'fileAlias',\n title: 'Alias',\n value: (\n <>\n {'Name when downloaded will be: '}\n <Box sx={{ display: 'inline', fontFamily: 'monospace' }}>\n {downloadAlias}\n </Box>\n </>\n ),\n },\n ].filter(item => !!item) as EntityProperty[]\n}\n"],"names":["useGetEntityTitleBarProperties","entityId","versionNumber","bundle","dataFileHandle","downloadAlias","isContainer","fileHandleStorageInfo","uploadDestinationString","useGetEntityMetadata","dataCiteCitationsDialogOpen","setDataCiteCitationsDialogOpen","useState","mentionsDialogOpen","setMentionsDialogOpen","entityChildrenResponse","useGetEntityChildren","EntityType","useFallbackVersionlessDOI","isVersionableEntity","versionlessDOIAssociation","useGetDOIAssociation","DoiObjectType","size","calculateFriendlyFileSize","storageLocation","endpoint","bucket","fileKey","externalUrl","md5","doiAssociation","dataCiteUsage","useDataCiteUsage","doi","isDoiUsage","containerItems","datasetItems","isEntityRefCollectionView","mentions","useGetMentions","isMentions","jsx","CopyToClipboardString","HasAccessV2","Link","jsxs","Fragment","maxCitationCount","CitationsDialog","Linkify","Box","item"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BO,SAASA,GACdC,GACAC,GACkB;AAClB,QAAM;AAAA,IACJ,cAAcC;AAAA,IACd,YAAYC;AAAA,IACZ,eAAAC;AAAA,IACA,aAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,yBAAAC;AAAA,EAAA,IACEC,EAAqBR,GAAUC,CAAa,GAC1C,CAACQ,GAA6BC,CAA8B,IAChEC,EAAS,EAAK,GACV,CAACC,GAAoBC,CAAqB,IAAIF,EAAS,EAAK,GAC5D,EAAE,MAAMG,EAAA,IAA2BC;AAAA,IACvC;AAAA,MACE,UAAUf;AAAA,MACV,cAAc,OAAO,OAAOgB,CAAU;AAAA,MACtC,wBAAwB;AAAA,IAAA;AAAA,IAE1B,EAAE,SAASX,EAAA;AAAA,EAAY,GAInBY,IACJf,KACA,CAACA,EAAO,kBACRgB,EAAoBhB,EAAO,MAAM,KACjCA,EAAO,OAAO,iBACV,EAAE,MAAMiB,EAAA,IAA8BC;AAAA,IAC1C,EAAE,IAAIpB,GAAU,SAAS,QAAW,MAAMqB,EAAc,OAAA;AAAA,IACxD;AAAA,MACE,SAASJ;AAAA,IAAA;AAAA,EACX,GAGIK,IACJnB,GAAgB,eAChBoB,EAA0BpB,EAAe,WAAW,GAChDqB,IACJlB,KACA,cAAcA,KACdA,EAAsB,UAClBmB,IACJnB,KACA,cAAcA,KACdA,EAAsB,UAClBoB,IACJpB,KACA,YAAYA,KACZA,EAAsB,QAClBqB,IACJrB,KACA,aAAaA,KACbA,EAAsB,SAClBsB,IACJtB,KACA,SAASA,KACTA,EAAsB,KAElBuB,IAAM1B,GAAgB,YAGtB2B,IAAiBb,IACnBE,IACAjB,GAAQ,gBACN,EAAE,MAAM6B,EAAA,IAAkBC,EAAiBF,GAAgB,MAAM,GACjEG,IAAMH,KAAkB,mBAAmBA,GAAgB,MAAM,IACjEI,IAAa,CAAC,CAACH,KAAiBA,EAAc,gBAAgB,GAC9DI,IAAiBrB,GAAwB,iBAEzCsB,IACJlC,GAAQ,UAAUmC,EAA0BnC,EAAO,MAAM,MACnDA,GAAQ,QAAmC,SAAS,CAAA,GAAI,SAC1D,MAEA,EAAE,MAAMoC,MAAaC,EAAevC,CAAQ,GAC5CwC,IAAa,CAAC,CAACF,KAAYA,EAAS,SAAS;AACnD,SAAO;AAAA,IACL;AAAA,MACE,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAO,gBAAAG,EAACC,GAAA,EAAsB,OAAO1C,EAAA,CAAU;AAAA,IAAA;AAAA,IAEjD;AAAA,MACE,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAO,gBAAAyC,EAACE,GAAA,EAAY,UAAA3C,EAAA,CAAoB;AAAA,IAAA;AAAA,IAE1CsB,KAAQ,EAAE,KAAK,YAAY,OAAO,QAAQ,OAAOA,EAAA;AAAA,IACjDa,KAAkB,QAAQ;AAAA,MACxB,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAOA,EAAe,eAAA;AAAA,IAAe;AAAA,IAEvCC,KAAgB,QAAQ;AAAA,MACtB,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAOA,EAAa,eAAA;AAAA,IAAe;AAAA,IAErCH,KAAO;AAAA,MACL,KAAK;AAAA,MACL,OAAO;AAAA,MACP,yBACGW,GAAA,EAAK,MAAMX,GAAK,KAAK,uBAAuB,QAAQ,UAClD,UAAAA,EAAA,CACH;AAAA,IAAA;AAAA,IAGJC,KAAc;AAAA,MACZ,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OACE,gBAAAW,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAD,EAACD,GAAA,EAAK,SAAS,MAAMlC,EAA+B,EAAI,GACrD,UAAA;AAAA,UAAAqB,EAAc,cAAc,eAAA;AAAA,UAC5BA,EAAc,iBAAiBgB,KAAoB;AAAA,QAAA,GACtD;AAAA,QACA,gBAAAN;AAAA,UAACO;AAAA,UAAA;AAAA,YACC,MAAMvC;AAAA,YACN,SAAS,MAAMC,EAA+B,EAAK;AAAA,YACnD,WAAWqB,EAAc;AAAA,UAAA;AAAA,QAAA;AAAA,MAC3B,EAAA,CACF;AAAA,IAAA;AAAA,IAGJS,KAAc;AAAA,MACZ,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OACE,gBAAAK,EAAAC,GAAA,EACE,UAAA;AAAA,QAAA,gBAAAL,EAACG,GAAA,EAAK,SAAS,MAAM/B,EAAsB,EAAI,GAC5C,UAAAyB,EAAS,OAAO,eAAA,EAAe,CAClC;AAAA,QACA,gBAAAG;AAAA,UAACO;AAAA,UAAA;AAAA,YACC,MAAMpC;AAAA,YACN,SAAS,MAAMC,EAAsB,EAAK;AAAA,YAC1C,WAAWyB;AAAA,YACX,OAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MACR,EAAA,CACF;AAAA,IAAA;AAAA,IAGJT,KAAO;AAAA,MACL,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAO,gBAAAY,EAACC,GAAA,EAAsB,OAAOb,EAAA,CAAK;AAAA,IAAA;AAAA,IAE5C,CAACxB,KACCmB,KAAmB;AAAA,MACjB,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAOA;AAAA,IAAA;AAAA,IAEXnB,KACEE,KAA2B;AAAA,MACzB,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAOA;AAAA,IAAA;AAAA,IAEXkB,KAAY;AAAA,MACV,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAOA;AAAA,IAAA;AAAA,IAETG,KAAe;AAAA,MACb,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAO,gBAAAa,EAACQ,GAAA,EAAQ,MAAMrB,EAAA,CAAa;AAAA,IAAA;AAAA,IAErCF,KAAU,EAAE,KAAK,sBAAsB,OAAO,UAAU,OAAOA,EAAA;AAAA,IAC/DC,KAAW,EAAE,KAAK,mBAAmB,OAAO,YAAY,OAAOA,EAAA;AAAA,IAC/DvB,KAAiB;AAAA,MACf,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OACE,gBAAAyC,EAAAC,GAAA,EACG,UAAA;AAAA,QAAA;AAAA,QACD,gBAAAL,EAACS,KAAI,IAAI,EAAE,SAAS,UAAU,YAAY,YAAA,GACvC,UAAA9C,EAAA,CACH;AAAA,MAAA,EAAA,CACF;AAAA,IAAA;AAAA,EAEJ,EACA,OAAO,CAAA+C,MAAQ,CAAC,CAACA,CAAI;AACzB;"}