synapse-react-client 4.0.3 → 4.0.5-b

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 +104 -0
  231. package/dist/components/styled/HoverPopover.js.map +1 -0
  232. package/dist/components/styled/HoverPopover.module.scss +10 -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 +17 -18
  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
@@ -23,11 +23,11 @@
23
23
 
24
24
  .ColorfulPortalCardWithChips__titleSection {
25
25
  color: #fff;
26
- max-width: 225px;
26
+ max-width: 310px;
27
27
  top: 0;
28
28
  position: absolute;
29
29
  padding-left: 30px;
30
- padding-top: 50px;
30
+ padding-top: 65px;
31
31
  }
32
32
 
33
33
  .ColorfulPortalCardWithChips__title:global(.MuiTypography-root) {
@@ -37,6 +37,8 @@
37
37
  -webkit-line-clamp: 4;
38
38
  -webkit-box-orient: vertical;
39
39
  overflow-wrap: break-word;
40
+ max-width: 225px;
41
+ font-weight: 600;
40
42
  }
41
43
 
42
44
  .ColorfulPortalCardWithChips__sectionTitle:global(.MuiTypography-root) {
@@ -62,11 +64,12 @@
62
64
  }
63
65
 
64
66
  .ColorfulPortalCardWithChips__sectionContainer {
65
- height: 100%;
67
+ flex: 1;
66
68
  }
67
69
 
68
70
  .ColorfulPortalCardWithChips__bottomSection {
69
71
  min-height: 0;
72
+ flex: 1;
70
73
  gap: 12px;
71
74
  padding: 30px;
72
75
  align-items: flex-start;
@@ -99,6 +102,7 @@
99
102
 
100
103
  .ColorfulPortalCardWithChips__learnMoreButton:global(.MuiButton-root) {
101
104
  display: flex;
105
+ margin-top: auto;
102
106
  height: 36px;
103
107
  padding: 6px 16px;
104
108
  border-radius: 8px;
@@ -196,15 +200,21 @@
196
200
  }
197
201
 
198
202
  .ColorfulPortalCardWithChips__description :global(.markdown) {
203
+ --description-line-height: 20px;
204
+ --description-max-lines: 3;
205
+
199
206
  overflow: hidden;
200
207
  text-overflow: ellipsis;
201
208
  display: -webkit-box;
202
- -webkit-line-clamp: 3;
209
+ -webkit-line-clamp: var(--description-max-lines);
203
210
  -webkit-box-orient: vertical;
211
+ min-height: calc(
212
+ var(--description-max-lines) * var(--description-line-height)
213
+ );
204
214
  }
205
215
 
206
216
  .ColorfulPortalCardWithChips__description :global(.markdown) p {
207
217
  color: var(--synapse-black) !important;
208
218
  font-size: 14px;
209
- line-height: 20px;
219
+ line-height: var(--description-line-height);
210
220
  }
@@ -1,4 +1,4 @@
1
- import './ColorfulPortalCardWithChips.css';const o = "_ColorfulPortalCardWithChips__titleSection_fcyoh_22", t = "_ColorfulPortalCardWithChips__title_fcyoh_22", r = "_ColorfulPortalCardWithChips__challengeName_fcyoh_52", l = "_ColorfulPortalCardWithChips__sectionContainer_fcyoh_62", i = "_ColorfulPortalCardWithChips__bottomSection_fcyoh_66", C = "_ColorfulPortalCardWithChips__descriptionTitle_fcyoh_73", _ = "_ColorfulPortalCardWithChips__registrationStatus_fcyoh_82", a = "_ColorfulPortalCardWithChips__chipsContainer_fcyoh_91", h = "_ColorfulPortalCardWithChips__learnMoreButton_fcyoh_98", s = "_ColorfulPortalCardWithChips__description_fcyoh_73", e = {
1
+ import './ColorfulPortalCardWithChips.css';const o = "_ColorfulPortalCardWithChips__titleSection_1mhpo_22", t = "_ColorfulPortalCardWithChips__title_1mhpo_22", r = "_ColorfulPortalCardWithChips__challengeName_1mhpo_54", l = "_ColorfulPortalCardWithChips__sectionContainer_1mhpo_64", i = "_ColorfulPortalCardWithChips__bottomSection_1mhpo_68", C = "_ColorfulPortalCardWithChips__descriptionTitle_1mhpo_76", _ = "_ColorfulPortalCardWithChips__registrationStatus_1mhpo_85", a = "_ColorfulPortalCardWithChips__chipsContainer_1mhpo_94", h = "_ColorfulPortalCardWithChips__learnMoreButton_1mhpo_101", s = "_ColorfulPortalCardWithChips__description_1mhpo_76", e = {
2
2
  ColorfulPortalCardWithChips__titleSection: o,
3
3
  ColorfulPortalCardWithChips__title: t,
4
4
  ColorfulPortalCardWithChips__challengeName: r,
@@ -11,6 +11,18 @@ export type CardLink = ({
11
11
  } & ({
12
12
  baseURL: string;
13
13
  URLColumnName: string;
14
+ /**
15
+ * Controls how the record identifier is appended to baseURL.
16
+ *
17
+ * - `'query-param'` (default): appends as a query string parameter, e.g.
18
+ * `/<baseURL>?<URLColumnName>=<value>`
19
+ * - `'path-segment'`: appends as a path segment, e.g.
20
+ * `/<baseURL>/<value>`
21
+ *
22
+ * Use `'path-segment'` for clean-URL detail pages that use React Router
23
+ * dynamic segments (`:param`) rather than `?param=` query strings.
24
+ */
25
+ urlParamStyle?: 'query-param' | 'path-segment';
14
26
  wrapValueWithParens?: boolean;
15
27
  resolveEntityName?: boolean;
16
28
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"CardLink.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainer/CardLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAClB,CAAE;IAEE,eAAe,EAAE,MAAM,CAAA;IAEvB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC,UAAU,EAAE,KAAK,CAAA;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;IAEf,aAAa,EAAE,MAAM,CAAA;IAGrB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,GACD;IAEE,yBAAyB,EAAE,MAAM,CAAA;IAEjC,8BAA8B,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAA;CACjE,CACJ,CAAA,CAAA"}
1
+ {"version":3,"file":"CardLink.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainer/CardLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAClB,CAAE;IAEE,eAAe,EAAE,MAAM,CAAA;IAEvB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC,UAAU,EAAE,KAAK,CAAA;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;IAEf,aAAa,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,cAAc,CAAA;IAG9C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,GACD;IAEE,yBAAyB,EAAE,MAAM,CAAA;IAEjC,8BAA8B,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAA;CACjE,CACJ,CAAA,CAAA"}
@@ -1,10 +1,10 @@
1
1
  import { jsx as e, jsxs as u, Fragment as r } from "react/jsx-runtime";
2
2
  import { LightTooltip as b } from "../styled/LightTooltip.js";
3
3
  import { HelpOutlineTwoTone as x } from "@mui/icons-material";
4
- import { Typography as d, Box as c, Autocomplete as g, TextField as E, MenuItem as L, Button as S, Collapse as A, List as T, ListItem as w } from "@mui/material";
4
+ import { Typography as d, Box as c, Autocomplete as g, TextField as E, MenuItem as L, Button as S, Collapse as w, List as A, ListItem as M } from "@mui/material";
5
5
  import { noop as h } from "lodash-es";
6
- import { useEffect as M, useState as p } from "react";
7
- import { MarkdownSynapse as y } from "../Markdown/MarkdownSynapse.js";
6
+ import { useEffect as T, useState as p } from "react";
7
+ import { Markdown as k } from "../Markdown/MarkdownSynapse.js";
8
8
  function m(t) {
9
9
  const { text: i, tooltipMarkdownText: n } = t;
10
10
  return /* @__PURE__ */ u(r, { children: [
@@ -19,7 +19,7 @@ function m(t) {
19
19
  sx: {
20
20
  mb: 0
21
21
  },
22
- children: /* @__PURE__ */ e(y, { markdown: n })
22
+ children: /* @__PURE__ */ e(k, { markdown: n })
23
23
  }
24
24
  ),
25
25
  children: /* @__PURE__ */ e(
@@ -40,7 +40,7 @@ function v(t) {
40
40
  const { evaluations: i } = t;
41
41
  return /* @__PURE__ */ u(r, { children: [
42
42
  /* @__PURE__ */ e(d, { variant: "body1", children: "Available Evaluation Queues:" }),
43
- /* @__PURE__ */ e(T, { dense: !0, children: i.map((n) => /* @__PURE__ */ e(w, { children: /* @__PURE__ */ e(
43
+ /* @__PURE__ */ e(A, { dense: !0, children: i.map((n) => /* @__PURE__ */ e(M, { children: /* @__PURE__ */ e(
44
44
  m,
45
45
  {
46
46
  text: n.name,
@@ -49,7 +49,7 @@ function v(t) {
49
49
  ) }, n.id)) })
50
50
  ] });
51
51
  }
52
- function C(t) {
52
+ function y(t) {
53
53
  const { evaluations: i, isSelectable: n } = t, [a, l] = p(!1), o = n ? 2 : 8, s = i.length >= o;
54
54
  return /* @__PURE__ */ e(
55
55
  c,
@@ -67,12 +67,12 @@ function C(t) {
67
67
  children: `${a ? "Hide" : "Show"} All Available Evaluation Queues`
68
68
  }
69
69
  ),
70
- /* @__PURE__ */ e(A, { in: a, children: /* @__PURE__ */ e(v, { ...t }) })
70
+ /* @__PURE__ */ e(w, { in: a, children: /* @__PURE__ */ e(v, { ...t }) })
71
71
  ] }) : /* @__PURE__ */ e(r, { children: /* @__PURE__ */ e(v, { ...t }) })
72
72
  }
73
73
  );
74
74
  }
75
- function I(t) {
75
+ function C(t) {
76
76
  const { evaluations: i, onChangeSelectedEvaluation: n = h } = t, [a, l] = p(null);
77
77
  return /* @__PURE__ */ e(
78
78
  g,
@@ -84,7 +84,7 @@ function I(t) {
84
84
  },
85
85
  options: i,
86
86
  getOptionLabel: (o) => o.name,
87
- renderOption: (o, s, Q, f) => /* @__PURE__ */ e(L, { ...o, children: /* @__PURE__ */ e(
87
+ renderOption: (o, s, I, f) => /* @__PURE__ */ e(L, { ...o, children: /* @__PURE__ */ e(
88
88
  m,
89
89
  {
90
90
  text: f.getOptionLabel(s),
@@ -101,7 +101,7 @@ function z(t) {
101
101
  onChangeSelectedEvaluation: n = h,
102
102
  evaluations: a
103
103
  } = t, l = a.length;
104
- if (M(() => {
104
+ if (T(() => {
105
105
  l === 1 && i && n(a[0]);
106
106
  }, [a, i, l, n]), l === 0)
107
107
  return /* @__PURE__ */ e(d, { variant: "body1", children: "No evaluations found" });
@@ -129,8 +129,8 @@ function z(t) {
129
129
  {
130
130
  className: "AvailableEvaluationQueueList",
131
131
  children: [
132
- i && /* @__PURE__ */ e(I, { ...t }),
133
- /* @__PURE__ */ e(C, { ...t })
132
+ i && /* @__PURE__ */ e(C, { ...t }),
133
+ /* @__PURE__ */ e(y, { ...t })
134
134
  ]
135
135
  }
136
136
  );
@@ -1 +1 @@
1
- {"version":3,"file":"CreateChallengeTeam.d.ts","sourceRoot":"","sources":["../../../src/components/ChallengeTeamWizard/CreateChallengeTeam.tsx"],"names":[],"mappings":"AAeA,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACtC,CAAA;AAGD,eAAO,MAAM,uBAAuB,iIAC4F,CAAA;AAEhI,MAAM,MAAM,yBAAyB,GAAG;IAEtC,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,mBAAmB,gIAmL9B,CAAA"}
1
+ {"version":3,"file":"CreateChallengeTeam.d.ts","sourceRoot":"","sources":["../../../src/components/ChallengeTeamWizard/CreateChallengeTeam.tsx"],"names":[],"mappings":"AAiBA,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;IAChD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACtC,CAAA;AAGD,eAAO,MAAM,uBAAuB,iIAC4F,CAAA;AAEhI,MAAM,MAAM,yBAAyB,GAAG;IAEtC,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,mBAAmB,gIAmL9B,CAAA"}
@@ -4,8 +4,8 @@ import { Box as n, Typography as l, Alert as _ } from "@mui/material";
4
4
  import o from "../TextField/TextField.js";
5
5
  import F from "./useCreateAndRegisterChallengeTeam.js";
6
6
  import { noop as T, isEmpty as S } from "lodash-es";
7
- import { parse as V } from "papaparse";
8
- const j = 3, B = "Please limit the initial number of invited members to three. You may add additional members after the team has been created.", J = P(function(C, R) {
7
+ import V from "papaparse";
8
+ const { parse: j } = V, B = 3, D = "Please limit the initial number of invited members to three. You may add additional members after the team has been created.", K = P(function(C, R) {
9
9
  const { challengeId: v, onCanSubmitChange: f = T, onFinished: g = T } = C, [a, w] = p({
10
10
  name: "",
11
11
  description: ""
@@ -13,14 +13,14 @@ const j = 3, B = "Please limit the initial number of invited members to three. Y
13
13
  const i = { ...a, ...e };
14
14
  w(i);
15
15
  }, { inviteesParseResult: I, parsedInvitees: u } = N(() => {
16
- const e = V(m, {
16
+ const e = j(m, {
17
17
  delimiter: ",",
18
18
  transform(A) {
19
19
  return A.trim();
20
20
  }
21
21
  }), i = e.data[0] || [];
22
22
  return { inviteesParseResult: e, parsedInvitees: i };
23
- }, [m]), c = u.length > j, r = !!(a && a.name && a.name.length > 1 && !c);
23
+ }, [m]), c = u.length > B, r = !!(a && a.name && a.name.length > 1 && !c);
24
24
  O(() => {
25
25
  f(r);
26
26
  }, [r, f]);
@@ -147,14 +147,14 @@ const j = 3, B = "Please limit the initial number of invited members to three. Y
147
147
  }
148
148
  ),
149
149
  (c || !S(I.errors) || h) && /* @__PURE__ */ y(_, { severity: "error", children: [
150
- c && /* @__PURE__ */ t(l, { variant: "body1", children: B }),
150
+ c && /* @__PURE__ */ t(l, { variant: "body1", children: D }),
151
151
  I.errors.map((e, i) => /* @__PURE__ */ t(l, { variant: "body1", children: e.message }, i)),
152
152
  h && h.map((e) => /* @__PURE__ */ t(l, { variant: "body1", children: e.reason }, e.reason))
153
153
  ] })
154
154
  ] });
155
155
  });
156
156
  export {
157
- J as CreateChallengeTeam,
158
- B as TOO_MANY_INVITEES_ERROR
157
+ K as CreateChallengeTeam,
158
+ D as TOO_MANY_INVITEES_ERROR
159
159
  };
160
160
  //# sourceMappingURL=CreateChallengeTeam.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateChallengeTeam.js","sources":["../../../src/components/ChallengeTeamWizard/CreateChallengeTeam.tsx"],"sourcesContent":["import {\n ForwardedRef,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\nimport { Alert, Box, Typography } from '@mui/material'\nimport TextField from '../TextField'\nimport { CreateTeamRequest, Team } from '@sage-bionetworks/synapse-types'\nimport useCreateAndRegisterChallengeTeam from './useCreateAndRegisterChallengeTeam'\nimport { isEmpty, noop } from 'lodash-es'\nimport { parse } from 'papaparse'\n\nexport type CreateChallengeTeamProps = {\n challengeId: string\n onCanSubmitChange?: (canSubmit: boolean) => void\n onFinished?: (teamId: string) => void\n}\n\nconst INVITEE_LIMIT = 3\nexport const TOO_MANY_INVITEES_ERROR =\n 'Please limit the initial number of invited members to three. You may add additional members after the team has been created.'\n\nexport type CreateChallengeTeamHandle = {\n // Allow the parent component to trigger a submit of the form, so this may be embedded in an arbitrary modal.\n submit: () => void\n}\n\nexport const CreateChallengeTeam = forwardRef(function CreateChallengeTeam(\n props: CreateChallengeTeamProps,\n ref: ForwardedRef<CreateChallengeTeamHandle>,\n) {\n const { challengeId, onCanSubmitChange = noop, onFinished = noop } = props\n const [team, setTeam] = useState<CreateTeamRequest>({\n name: '',\n description: '',\n })\n const [invitationMessage, setInvitationMessage] = useState('')\n const [rawInvitees, setRawInvitees] = useState('')\n\n const handleTeamUpdate = (update: Partial<Team>) => {\n const updatedTeam: CreateTeamRequest = { ...team, ...update }\n setTeam(updatedTeam)\n }\n\n const { inviteesParseResult, parsedInvitees } = useMemo(() => {\n const inviteesParseResult = parse<string[]>(rawInvitees, {\n delimiter: ',',\n transform(value) {\n return value.trim()\n },\n })\n const parsedInvitees: string[] = inviteesParseResult.data[0] || []\n\n return { inviteesParseResult, parsedInvitees }\n }, [rawInvitees])\n\n const numberOfInvitees = parsedInvitees.length\n const tooManyInvitees = numberOfInvitees > INVITEE_LIMIT\n\n const formDataIsValid = Boolean(\n team && team.name && team.name.length > 1 && !tooManyInvitees,\n )\n\n useEffect(() => {\n onCanSubmitChange(formDataIsValid)\n }, [formDataIsValid, onCanSubmitChange])\n\n const {\n createAndRegisterTeam,\n isPending: mutationIsPending,\n errors,\n } = useCreateAndRegisterChallengeTeam()\n\n useImperativeHandle(\n ref,\n () => {\n return {\n submit() {\n if (!formDataIsValid) {\n console.warn(\n 'Attempted to submit when form data was not valid. Nothing will happen.',\n )\n return\n }\n createAndRegisterTeam(\n team,\n challengeId,\n parsedInvitees,\n invitationMessage,\n )\n .then(([newTeam]) => {\n onFinished(newTeam.id)\n })\n .catch(() => {\n // The hook will return errors, so no need to handle them here\n })\n },\n }\n },\n [\n formDataIsValid,\n parsedInvitees,\n createAndRegisterTeam,\n team,\n challengeId,\n invitationMessage,\n onFinished,\n ],\n )\n\n return (\n <Box>\n <Typography variant=\"body1\" sx={{ lineHeight: '20px' }}>\n Create a new team for this Challenge!\n </Typography>\n <TextField\n id=\"name\"\n label=\"Team Name\"\n value={team.name}\n fullWidth\n autoFocus\n required\n onChange={event => handleTeamUpdate({ name: event.target.value })}\n disabled={mutationIsPending}\n />\n <Box\n sx={{\n display: 'flex',\n }}\n >\n <TextField\n id=\"description\"\n label={\n <Box\n sx={{\n display: 'flex',\n gap: 2,\n }}\n >\n <Box>Team Description</Box>\n </Box>\n }\n value={team.description}\n fullWidth\n multiline\n rows={4}\n onChange={event =>\n handleTeamUpdate({ description: event.target.value })\n }\n disabled={mutationIsPending}\n />\n </Box>\n <Box\n sx={{\n display: 'flex',\n }}\n >\n <TextField\n id=\"message\"\n label={\n <Box\n sx={{\n display: 'flex',\n gap: 2,\n }}\n >\n <Box>Recruitment Message</Box>\n </Box>\n }\n value={invitationMessage}\n fullWidth\n multiline\n rows={4}\n onChange={event => setInvitationMessage(event.target.value)}\n disabled={mutationIsPending}\n />\n </Box>\n <TextField\n id=\"invitees\"\n label=\"Emails of Additional Members to Invite (max 3)\"\n placeholder=\"Enter emails separated by comma\"\n value={rawInvitees}\n fullWidth\n onChange={event => setRawInvitees(event.target.value)}\n disabled={mutationIsPending}\n />\n {(tooManyInvitees || !isEmpty(inviteesParseResult.errors) || errors) && (\n <Alert severity=\"error\">\n {tooManyInvitees && (\n <Typography variant={'body1'}>{TOO_MANY_INVITEES_ERROR}</Typography>\n )}\n {inviteesParseResult.errors.map((error, index) => (\n <Typography key={index} variant={'body1'}>\n {error.message}\n </Typography>\n ))}\n {errors &&\n errors.map(error => (\n <Typography key={error.reason} variant={'body1'}>\n {error.reason}\n </Typography>\n ))}\n </Alert>\n )}\n </Box>\n )\n})\n"],"names":["INVITEE_LIMIT","TOO_MANY_INVITEES_ERROR","CreateChallengeTeam","forwardRef","props","ref","challengeId","onCanSubmitChange","noop","onFinished","team","setTeam","useState","invitationMessage","setInvitationMessage","rawInvitees","setRawInvitees","handleTeamUpdate","update","updatedTeam","inviteesParseResult","parsedInvitees","useMemo","parse","value","tooManyInvitees","formDataIsValid","useEffect","createAndRegisterTeam","mutationIsPending","errors","useCreateAndRegisterChallengeTeam","useImperativeHandle","newTeam","Box","jsx","Typography","TextField","event","isEmpty","jsxs","Alert","error","index"],"mappings":"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"}
1
+ {"version":3,"file":"CreateChallengeTeam.js","sources":["../../../src/components/ChallengeTeamWizard/CreateChallengeTeam.tsx"],"sourcesContent":["import {\n ForwardedRef,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\nimport { Alert, Box, Typography } from '@mui/material'\nimport TextField from '../TextField'\nimport { CreateTeamRequest, Team } from '@sage-bionetworks/synapse-types'\nimport useCreateAndRegisterChallengeTeam from './useCreateAndRegisterChallengeTeam'\nimport { isEmpty, noop } from 'lodash-es'\nimport papaparseLib from 'papaparse'\n// papaparse is CJS-only; pull named values from the default export.\nconst { parse } = papaparseLib\n\nexport type CreateChallengeTeamProps = {\n challengeId: string\n onCanSubmitChange?: (canSubmit: boolean) => void\n onFinished?: (teamId: string) => void\n}\n\nconst INVITEE_LIMIT = 3\nexport const TOO_MANY_INVITEES_ERROR =\n 'Please limit the initial number of invited members to three. You may add additional members after the team has been created.'\n\nexport type CreateChallengeTeamHandle = {\n // Allow the parent component to trigger a submit of the form, so this may be embedded in an arbitrary modal.\n submit: () => void\n}\n\nexport const CreateChallengeTeam = forwardRef(function CreateChallengeTeam(\n props: CreateChallengeTeamProps,\n ref: ForwardedRef<CreateChallengeTeamHandle>,\n) {\n const { challengeId, onCanSubmitChange = noop, onFinished = noop } = props\n const [team, setTeam] = useState<CreateTeamRequest>({\n name: '',\n description: '',\n })\n const [invitationMessage, setInvitationMessage] = useState('')\n const [rawInvitees, setRawInvitees] = useState('')\n\n const handleTeamUpdate = (update: Partial<Team>) => {\n const updatedTeam: CreateTeamRequest = { ...team, ...update }\n setTeam(updatedTeam)\n }\n\n const { inviteesParseResult, parsedInvitees } = useMemo(() => {\n const inviteesParseResult = parse<string[]>(rawInvitees, {\n delimiter: ',',\n transform(value) {\n return value.trim()\n },\n })\n const parsedInvitees: string[] = inviteesParseResult.data[0] || []\n\n return { inviteesParseResult, parsedInvitees }\n }, [rawInvitees])\n\n const numberOfInvitees = parsedInvitees.length\n const tooManyInvitees = numberOfInvitees > INVITEE_LIMIT\n\n const formDataIsValid = Boolean(\n team && team.name && team.name.length > 1 && !tooManyInvitees,\n )\n\n useEffect(() => {\n onCanSubmitChange(formDataIsValid)\n }, [formDataIsValid, onCanSubmitChange])\n\n const {\n createAndRegisterTeam,\n isPending: mutationIsPending,\n errors,\n } = useCreateAndRegisterChallengeTeam()\n\n useImperativeHandle(\n ref,\n () => {\n return {\n submit() {\n if (!formDataIsValid) {\n console.warn(\n 'Attempted to submit when form data was not valid. Nothing will happen.',\n )\n return\n }\n createAndRegisterTeam(\n team,\n challengeId,\n parsedInvitees,\n invitationMessage,\n )\n .then(([newTeam]) => {\n onFinished(newTeam.id)\n })\n .catch(() => {\n // The hook will return errors, so no need to handle them here\n })\n },\n }\n },\n [\n formDataIsValid,\n parsedInvitees,\n createAndRegisterTeam,\n team,\n challengeId,\n invitationMessage,\n onFinished,\n ],\n )\n\n return (\n <Box>\n <Typography variant=\"body1\" sx={{ lineHeight: '20px' }}>\n Create a new team for this Challenge!\n </Typography>\n <TextField\n id=\"name\"\n label=\"Team Name\"\n value={team.name}\n fullWidth\n autoFocus\n required\n onChange={event => handleTeamUpdate({ name: event.target.value })}\n disabled={mutationIsPending}\n />\n <Box\n sx={{\n display: 'flex',\n }}\n >\n <TextField\n id=\"description\"\n label={\n <Box\n sx={{\n display: 'flex',\n gap: 2,\n }}\n >\n <Box>Team Description</Box>\n </Box>\n }\n value={team.description}\n fullWidth\n multiline\n rows={4}\n onChange={event =>\n handleTeamUpdate({ description: event.target.value })\n }\n disabled={mutationIsPending}\n />\n </Box>\n <Box\n sx={{\n display: 'flex',\n }}\n >\n <TextField\n id=\"message\"\n label={\n <Box\n sx={{\n display: 'flex',\n gap: 2,\n }}\n >\n <Box>Recruitment Message</Box>\n </Box>\n }\n value={invitationMessage}\n fullWidth\n multiline\n rows={4}\n onChange={event => setInvitationMessage(event.target.value)}\n disabled={mutationIsPending}\n />\n </Box>\n <TextField\n id=\"invitees\"\n label=\"Emails of Additional Members to Invite (max 3)\"\n placeholder=\"Enter emails separated by comma\"\n value={rawInvitees}\n fullWidth\n onChange={event => setRawInvitees(event.target.value)}\n disabled={mutationIsPending}\n />\n {(tooManyInvitees || !isEmpty(inviteesParseResult.errors) || errors) && (\n <Alert severity=\"error\">\n {tooManyInvitees && (\n <Typography variant={'body1'}>{TOO_MANY_INVITEES_ERROR}</Typography>\n )}\n {inviteesParseResult.errors.map((error, index) => (\n <Typography key={index} variant={'body1'}>\n {error.message}\n </Typography>\n ))}\n {errors &&\n errors.map(error => (\n <Typography key={error.reason} variant={'body1'}>\n {error.reason}\n </Typography>\n ))}\n </Alert>\n )}\n </Box>\n )\n})\n"],"names":["parse","papaparseLib","INVITEE_LIMIT","TOO_MANY_INVITEES_ERROR","CreateChallengeTeam","forwardRef","props","ref","challengeId","onCanSubmitChange","noop","onFinished","team","setTeam","useState","invitationMessage","setInvitationMessage","rawInvitees","setRawInvitees","handleTeamUpdate","update","updatedTeam","inviteesParseResult","parsedInvitees","useMemo","value","tooManyInvitees","formDataIsValid","useEffect","createAndRegisterTeam","mutationIsPending","errors","useCreateAndRegisterChallengeTeam","useImperativeHandle","newTeam","Box","jsx","Typography","TextField","event","isEmpty","jsxs","Alert","error","index"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CitationPopoverContent.d.ts","sourceRoot":"","sources":["../../../src/components/CitationPopover/CitationPopoverContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAYL,YAAY,EACb,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAA;AA2B/D,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAC9C,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;AAE5D,eAAO,MAAM,sBAAsB,GACjC,OAAO,oBAAoB,KAC1B,KAAK,CAAC,SA2LR,CAAA;AAED,eAAe,sBAAsB,CAAA"}
1
+ {"version":3,"file":"CitationPopoverContent.d.ts","sourceRoot":"","sources":["../../../src/components/CitationPopover/CitationPopoverContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAYL,YAAY,EACb,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAA;AA2B/D,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAC9C,IAAI,CAAC,YAAY,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAA;AAE5D,eAAO,MAAM,sBAAsB,GACjC,OAAO,oBAAoB,KAC1B,KAAK,CAAC,SA4LR,CAAA;AAED,eAAe,sBAAsB,CAAA"}
@@ -1,12 +1,12 @@
1
1
  import { jsx as e, jsxs as t, Fragment as k } from "react/jsx-runtime";
2
- import { Popover as O, Stack as S, Box as n, Typography as d, Alert as B, FormControl as D, Select as H, MenuItem as i, Button as L } from "@mui/material";
2
+ import { Popover as O, Stack as S, Box as n, Typography as p, Alert as B, FormControl as D, Select as H, MenuItem as i, Button as L } from "@mui/material";
3
3
  import { useCitation as F } from "./useCitation.js";
4
4
  import { createLinkAndDownload as R } from "./CitationPopoverUtils.js";
5
5
  import { KeyboardArrowDown as A } from "@mui/icons-material";
6
6
  import E from "@mui/icons-material/Close";
7
7
  import { useState as T } from "react";
8
8
  import { CopyToClipboardIcon as W } from "../CopyToClipboardIcon.js";
9
- import { MarkdownSynapse as j } from "../Markdown/MarkdownSynapse.js";
9
+ import { Markdown as j } from "../Markdown/MarkdownSynapse.js";
10
10
  const z = {
11
11
  width: "100%",
12
12
  ".MuiInputBase-root": {
@@ -44,8 +44,8 @@ const z = {
44
44
  ), {
45
45
  data: a,
46
46
  isLoading: v,
47
- error: p
48
- } = F(x || "", r, !0), C = (o) => {
47
+ error: d
48
+ } = F(x || "", r, !0), w = (o) => {
49
49
  if (!o)
50
50
  return;
51
51
  const y = {
@@ -54,9 +54,9 @@ const z = {
54
54
  ieee: "ris",
55
55
  nature: "ris",
56
56
  science: "ris"
57
- }[r] || "txt", I = new Blob([o], { type: "text/plain" }), M = URL.createObjectURL(I);
58
- R(m || "citation", y, M);
59
- }, w = (o) => {
57
+ }[r] || "txt", M = new Blob([o], { type: "text/plain" }), I = URL.createObjectURL(M);
58
+ R(m || "citation", y, I);
59
+ }, C = (o) => {
60
60
  g(o.target.value);
61
61
  };
62
62
  return /* @__PURE__ */ e(
@@ -103,7 +103,7 @@ const z = {
103
103
  children: [
104
104
  /* @__PURE__ */ t(n, { sx: { display: "flex", alignItems: "center" }, children: [
105
105
  /* @__PURE__ */ e(
106
- d,
106
+ p,
107
107
  {
108
108
  sx: { fontSize: "20px", fontWeight: 700, lineHeight: "normal" },
109
109
  children: "Cite As:"
@@ -124,11 +124,12 @@ const z = {
124
124
  }
125
125
  )
126
126
  ] }),
127
- p && /* @__PURE__ */ e(B, { severity: "error", sx: { my: 2 }, icon: !1, children: p.message }),
127
+ d && /* @__PURE__ */ e(B, { severity: "error", sx: { my: 2 }, icon: !1, children: d.message }),
128
128
  /* @__PURE__ */ t(
129
- d,
129
+ p,
130
130
  {
131
131
  variant: "smallText1",
132
+ component: "div",
132
133
  sx: {
133
134
  lineHeight: "normal",
134
135
  maxHeight: "300px",
@@ -171,7 +172,7 @@ const z = {
171
172
  }
172
173
  },
173
174
  value: r,
174
- onChange: w,
175
+ onChange: C,
175
176
  IconComponent: A,
176
177
  children: [
177
178
  /* @__PURE__ */ e(i, { value: "bibtex", children: "bibtex" }),
@@ -185,7 +186,7 @@ const z = {
185
186
  /* @__PURE__ */ e(
186
187
  L,
187
188
  {
188
- onClick: () => C(a || ""),
189
+ onClick: () => w(a || ""),
189
190
  variant: "contained",
190
191
  sx: {
191
192
  padding: "6px 16px",
@@ -1 +1 @@
1
- {"version":3,"file":"CitationPopoverContent.js","sources":["../../../src/components/CitationPopover/CitationPopoverContent.tsx"],"sourcesContent":["import {\n Alert,\n Box,\n Button,\n FormControl,\n MenuItem,\n Popover,\n Select,\n SelectChangeEvent,\n Stack,\n SxProps,\n Typography,\n PopoverProps,\n} from '@mui/material'\nimport React from 'react'\nimport { useCitation } from './useCitation'\nimport { createLinkAndDownload } from './CitationPopoverUtils'\nimport { KeyboardArrowDown } from '@mui/icons-material'\nimport CloseIcon from '@mui/icons-material/Close'\nimport { useState } from 'react'\nimport CopyToClipboardIcon from '../CopyToClipboardIcon'\nimport { CitationProps, CitationFormat } from './CitationTypes'\nimport MarkdownSynapse from '../Markdown/MarkdownSynapse'\n\nconst selectSx: SxProps = {\n width: '100%',\n '.MuiInputBase-root': {\n minHeight: '38px',\n borderRadius: 0,\n '&:before, &:after': {\n borderBottom: 'none !important',\n },\n },\n '& .MuiOutlinedInput-notchedOutline': {\n border: 0,\n },\n '&.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline': {\n border: 'none',\n },\n '.MuiSelect-select': {\n display: 'flex',\n alignItems: 'center',\n },\n '.MuiInputBase-input': {\n padding: '7px 10px',\n },\n}\n\nexport type CitationPopoverProps = CitationProps &\n Pick<PopoverProps, 'anchorEl' | 'open' | 'id' | 'onClose'>\n\nexport const CitationPopoverContent = (\n props: CitationPopoverProps,\n): React.ReactNode => {\n const {\n doi,\n title,\n boilerplateText,\n defaultCitationFormat,\n onClose,\n anchorEl,\n open,\n id,\n } = props\n\n const [citationFormat, setCitationFormat] = useState<CitationFormat>(\n defaultCitationFormat || 'bibtex',\n )\n const {\n data: citation,\n isLoading,\n error,\n } = useCitation(doi || '', citationFormat, true)\n\n const handleDownload = (citation: string) => {\n if (!citation) {\n return\n }\n const extensionMap: Record<string, string> = {\n apa: 'ris',\n bibtex: 'bib',\n ieee: 'ris',\n nature: 'ris',\n science: 'ris',\n }\n const fileExtension = extensionMap[citationFormat] || 'txt'\n\n const blob = new Blob([citation], { type: 'text/plain' })\n const url = URL.createObjectURL(blob)\n\n createLinkAndDownload(title || 'citation', fileExtension, url)\n }\n\n const handleChange = (event: SelectChangeEvent<CitationFormat>) => {\n setCitationFormat(event.target.value as CitationFormat)\n }\n\n return (\n <Popover\n aria-label=\"Citation options\"\n role=\"dialog\"\n id={id}\n elevation={9}\n open={open}\n anchorEl={anchorEl}\n onClose={onClose}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left',\n }}\n slotProps={{\n paper: {\n square: true,\n sx: theme => ({\n width: '500px',\n position: 'relative',\n [theme.breakpoints.down('sm')]: {\n maxWidth: '100%',\n maxHeight: '100%',\n top: '0 !important',\n left: '0 !important',\n bottom: '0 !important',\n },\n }),\n },\n }}\n >\n <Stack\n sx={{\n gap: '20px',\n padding: '20px',\n }}\n >\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n <Typography\n sx={{ fontSize: '20px', fontWeight: 700, lineHeight: 'normal' }}\n >\n Cite As:\n </Typography>\n <CloseIcon\n sx={{\n cursor: 'pointer',\n display: { xs: 'block', sm: 'none' },\n marginLeft: 'auto',\n color: '#878E95',\n }}\n onClick={() => {\n onClose?.({}, 'escapeKeyDown')\n }}\n />\n </Box>\n {error && (\n <Alert severity={'error'} sx={{ my: 2 }} icon={false}>\n {error.message}\n </Alert>\n )}\n <Typography\n variant=\"smallText1\"\n sx={{\n lineHeight: 'normal',\n maxHeight: '300px',\n overflowY: 'scroll',\n wordWrap: 'break-word',\n }}\n >\n {boilerplateText && (\n <>\n <MarkdownSynapse markdown={boilerplateText} />\n <br />\n </>\n )}\n {isLoading ? (\n <Box sx={{ fontWeight: 700 }}>\n <br />\n Loading citation...\n </Box>\n ) : (\n citation\n )}\n </Typography>\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n gap: { xs: '10px', sm: '8px' },\n width: '100%',\n maxHeight: '38px',\n }}\n >\n <Box sx={{ flex: 1 }}>\n <FormControl sx={selectSx}>\n <Select\n variant=\"standard\"\n sx={{\n svg: {\n color: '#878E95',\n width: '24px',\n height: '24px',\n right: '10px',\n },\n }}\n value={citationFormat}\n onChange={handleChange}\n IconComponent={KeyboardArrowDown}\n >\n <MenuItem value={'bibtex'}>bibtex</MenuItem>\n <MenuItem value={'apa'}>apa</MenuItem>\n <MenuItem value={'ieee'}>ieee</MenuItem>\n <MenuItem value={'nature'}>nature</MenuItem>\n <MenuItem value={'science'}>science</MenuItem>\n </Select>\n </FormControl>\n </Box>\n <Button\n onClick={() => handleDownload(citation || '')}\n variant=\"contained\"\n sx={{\n padding: '6px 16px',\n borderRadius: 0,\n }}\n >\n Download Citation\n </Button>\n <CopyToClipboardIcon\n value={citation || ''}\n sx={{\n borderRadius: 0,\n padding: '6px 16px',\n border: '1px solid',\n borderColor: 'primary.main',\n }}\n />\n </Box>\n </Stack>\n </Popover>\n )\n}\n\nexport default CitationPopoverContent\n"],"names":["selectSx","CitationPopoverContent","props","doi","title","boilerplateText","defaultCitationFormat","onClose","anchorEl","open","id","citationFormat","setCitationFormat","useState","citation","isLoading","error","useCitation","handleDownload","fileExtension","blob","url","createLinkAndDownload","handleChange","event","jsx","Popover","theme","jsxs","Stack","Box","Typography","CloseIcon","Alert","Fragment","MarkdownSynapse","FormControl","Select","KeyboardArrowDown","MenuItem","Button","CopyToClipboardIcon"],"mappings":"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"}
1
+ {"version":3,"file":"CitationPopoverContent.js","sources":["../../../src/components/CitationPopover/CitationPopoverContent.tsx"],"sourcesContent":["import {\n Alert,\n Box,\n Button,\n FormControl,\n MenuItem,\n Popover,\n Select,\n SelectChangeEvent,\n Stack,\n SxProps,\n Typography,\n PopoverProps,\n} from '@mui/material'\nimport React from 'react'\nimport { useCitation } from './useCitation'\nimport { createLinkAndDownload } from './CitationPopoverUtils'\nimport { KeyboardArrowDown } from '@mui/icons-material'\nimport CloseIcon from '@mui/icons-material/Close'\nimport { useState } from 'react'\nimport CopyToClipboardIcon from '../CopyToClipboardIcon'\nimport { CitationProps, CitationFormat } from './CitationTypes'\nimport MarkdownSynapse from '../Markdown/MarkdownSynapse'\n\nconst selectSx: SxProps = {\n width: '100%',\n '.MuiInputBase-root': {\n minHeight: '38px',\n borderRadius: 0,\n '&:before, &:after': {\n borderBottom: 'none !important',\n },\n },\n '& .MuiOutlinedInput-notchedOutline': {\n border: 0,\n },\n '&.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline': {\n border: 'none',\n },\n '.MuiSelect-select': {\n display: 'flex',\n alignItems: 'center',\n },\n '.MuiInputBase-input': {\n padding: '7px 10px',\n },\n}\n\nexport type CitationPopoverProps = CitationProps &\n Pick<PopoverProps, 'anchorEl' | 'open' | 'id' | 'onClose'>\n\nexport const CitationPopoverContent = (\n props: CitationPopoverProps,\n): React.ReactNode => {\n const {\n doi,\n title,\n boilerplateText,\n defaultCitationFormat,\n onClose,\n anchorEl,\n open,\n id,\n } = props\n\n const [citationFormat, setCitationFormat] = useState<CitationFormat>(\n defaultCitationFormat || 'bibtex',\n )\n const {\n data: citation,\n isLoading,\n error,\n } = useCitation(doi || '', citationFormat, true)\n\n const handleDownload = (citation: string) => {\n if (!citation) {\n return\n }\n const extensionMap: Record<string, string> = {\n apa: 'ris',\n bibtex: 'bib',\n ieee: 'ris',\n nature: 'ris',\n science: 'ris',\n }\n const fileExtension = extensionMap[citationFormat] || 'txt'\n\n const blob = new Blob([citation], { type: 'text/plain' })\n const url = URL.createObjectURL(blob)\n\n createLinkAndDownload(title || 'citation', fileExtension, url)\n }\n\n const handleChange = (event: SelectChangeEvent<CitationFormat>) => {\n setCitationFormat(event.target.value as CitationFormat)\n }\n\n return (\n <Popover\n aria-label=\"Citation options\"\n role=\"dialog\"\n id={id}\n elevation={9}\n open={open}\n anchorEl={anchorEl}\n onClose={onClose}\n anchorOrigin={{\n vertical: 'bottom',\n horizontal: 'left',\n }}\n transformOrigin={{\n vertical: 'top',\n horizontal: 'left',\n }}\n slotProps={{\n paper: {\n square: true,\n sx: theme => ({\n width: '500px',\n position: 'relative',\n [theme.breakpoints.down('sm')]: {\n maxWidth: '100%',\n maxHeight: '100%',\n top: '0 !important',\n left: '0 !important',\n bottom: '0 !important',\n },\n }),\n },\n }}\n >\n <Stack\n sx={{\n gap: '20px',\n padding: '20px',\n }}\n >\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n <Typography\n sx={{ fontSize: '20px', fontWeight: 700, lineHeight: 'normal' }}\n >\n Cite As:\n </Typography>\n <CloseIcon\n sx={{\n cursor: 'pointer',\n display: { xs: 'block', sm: 'none' },\n marginLeft: 'auto',\n color: '#878E95',\n }}\n onClick={() => {\n onClose?.({}, 'escapeKeyDown')\n }}\n />\n </Box>\n {error && (\n <Alert severity={'error'} sx={{ my: 2 }} icon={false}>\n {error.message}\n </Alert>\n )}\n <Typography\n variant=\"smallText1\"\n component={'div'}\n sx={{\n lineHeight: 'normal',\n maxHeight: '300px',\n overflowY: 'scroll',\n wordWrap: 'break-word',\n }}\n >\n {boilerplateText && (\n <>\n <MarkdownSynapse markdown={boilerplateText} />\n <br />\n </>\n )}\n {isLoading ? (\n <Box sx={{ fontWeight: 700 }}>\n <br />\n Loading citation...\n </Box>\n ) : (\n citation\n )}\n </Typography>\n <Box\n sx={{\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n gap: { xs: '10px', sm: '8px' },\n width: '100%',\n maxHeight: '38px',\n }}\n >\n <Box sx={{ flex: 1 }}>\n <FormControl sx={selectSx}>\n <Select\n variant=\"standard\"\n sx={{\n svg: {\n color: '#878E95',\n width: '24px',\n height: '24px',\n right: '10px',\n },\n }}\n value={citationFormat}\n onChange={handleChange}\n IconComponent={KeyboardArrowDown}\n >\n <MenuItem value={'bibtex'}>bibtex</MenuItem>\n <MenuItem value={'apa'}>apa</MenuItem>\n <MenuItem value={'ieee'}>ieee</MenuItem>\n <MenuItem value={'nature'}>nature</MenuItem>\n <MenuItem value={'science'}>science</MenuItem>\n </Select>\n </FormControl>\n </Box>\n <Button\n onClick={() => handleDownload(citation || '')}\n variant=\"contained\"\n sx={{\n padding: '6px 16px',\n borderRadius: 0,\n }}\n >\n Download Citation\n </Button>\n <CopyToClipboardIcon\n value={citation || ''}\n sx={{\n borderRadius: 0,\n padding: '6px 16px',\n border: '1px solid',\n borderColor: 'primary.main',\n }}\n />\n </Box>\n </Stack>\n </Popover>\n )\n}\n\nexport default CitationPopoverContent\n"],"names":["selectSx","CitationPopoverContent","props","doi","title","boilerplateText","defaultCitationFormat","onClose","anchorEl","open","id","citationFormat","setCitationFormat","useState","citation","isLoading","error","useCitation","handleDownload","fileExtension","blob","url","createLinkAndDownload","handleChange","event","jsx","Popover","theme","jsxs","Stack","Box","Typography","CloseIcon","Alert","Fragment","MarkdownSynapse","FormControl","Select","KeyboardArrowDown","MenuItem","Button","CopyToClipboardIcon"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { jsx as o, jsxs as r, Fragment as l } from "react/jsx-runtime";
1
+ import { jsx as o, Fragment as l, jsxs as r } from "react/jsx-runtime";
2
2
  import { useCookiePreferences as k, COOKIES_AGREEMENT_COOKIE_KEY as x, allowNone as u, allowAll as f } from "../../utils/hooks/useCookiePreferences.js";
3
3
  import { PRIVACY_POLICY_LINK as g, URL_TERMS_CONDITIONS_AGREEMENT as h, CHILD_MINOR_ADDENDUM_LINK as A } from "../../utils/SynapseConstants.js";
4
4
  import { Typography as m, Link as a } from "@mui/material";
@@ -49,7 +49,6 @@ import "../../assets/icons/inSilicoModel.svg.js";
49
49
  import "../../assets/icons/modelSystem.svg.js";
50
50
  import "../../assets/mui_components/PackagableFile.svg.js";
51
51
  import "../../assets/icons/spatialProfiling.svg.js";
52
- import "react-select";
53
52
  import "@mui/material/Skeleton";
54
53
  import "react-hot-toast";
55
54
  import "react-transition-group";
@@ -57,7 +56,7 @@ import "react-transition-group";
57
56
  import { SetBasicAccessRequirementFields as F } from "../SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.js";
58
57
  import { SetManagedAccessRequirementFields as N } from "../SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js";
59
58
  import { getDialogTitle as q, isLastStep as v } from "./CreateOrUpdateAccessRequirementWizardUtils.js";
60
- function he(t) {
59
+ function be(t) {
61
60
  const { open: E, onCancel: u, onComplete: n } = t, [o, p] = c(
62
61
  "SET_AR_COMMON_FIELDS"
63
62
  ), [l, e] = c(!1), [r, R] = c(t.accessRequirementId), a = s(null), S = s(null), A = s(null), _ = s(null), f = !!t.accessRequirementId, d = M(() => {
@@ -151,7 +150,7 @@ function he(t) {
151
150
  );
152
151
  }
153
152
  export {
154
- he as CreateOrUpdateAccessRequirementWizard,
155
- he as default
153
+ be as CreateOrUpdateAccessRequirementWizard,
154
+ be as default
156
155
  };
157
156
  //# sourceMappingURL=CreateOrUpdateAccessRequirementWizard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateOrUpdateAccessRequirementWizard.js","sources":["../../../src/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.tsx"],"sourcesContent":["import { MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE } from '@sage-bionetworks/synapse-types'\nimport { MouseEventHandler, useMemo, useRef, useState } from 'react'\nimport {\n AccessRequirementAclEditor,\n AccessRequirementAclEditorHandle,\n} from '../AccessRequirementAclEditor/AccessRequirementAclEditor'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport {\n SetAccessRequirementCommonFields,\n SetAccessRequirementCommonFieldsHandle,\n SetAccessRequirementCommonFieldsProps,\n} from '../SetAccessRequirementCommonFields'\nimport SetBasicAccessRequirementFields, {\n SetBasicAccessRequirementFieldsHandle,\n} from '../SetBasicAccessRequirementFields'\nimport SetManagedAccessRequirementFields, {\n SetManagedAccessRequirementFieldsHandle,\n} from '../SetManagedAccessRequirementFields'\nimport {\n CreateOrUpdateAccessRequirementWizardStep,\n getDialogTitle,\n isLastStep,\n} from './CreateOrUpdateAccessRequirementWizardUtils'\n\nexport type CreateOrUpdateAccessRequirementWizardProps = {\n open: boolean\n onCancel: () => void\n onComplete: (accessRequirementID?: string) => void // return the (possibly new) Access Requirement ID\n} & Pick<\n SetAccessRequirementCommonFieldsProps,\n 'subject' | 'accessRequirementId'\n>\n\nexport function CreateOrUpdateAccessRequirementWizard(\n props: CreateOrUpdateAccessRequirementWizardProps,\n) {\n const { open, onCancel, onComplete } = props\n\n const [step, setStep] = useState<CreateOrUpdateAccessRequirementWizardStep>(\n 'SET_AR_COMMON_FIELDS',\n )\n const [isLoading, setIsLoading] = useState<boolean>(false)\n const [accessRequirementId, setAccessRequirementId] = useState<\n string | undefined\n >(props.accessRequirementId)\n\n const setArCommonFieldsRef =\n useRef<SetAccessRequirementCommonFieldsHandle>(null)\n const setManagedArFieldsRef =\n useRef<SetManagedAccessRequirementFieldsHandle>(null)\n const editArAclRef = useRef<AccessRequirementAclEditorHandle>(null)\n const setBasicArFieldsRef =\n useRef<SetBasicAccessRequirementFieldsHandle>(null)\n\n const isEditing = Boolean(props['accessRequirementId'])\n\n const stepContent = useMemo(() => {\n switch (step) {\n case 'SET_AR_COMMON_FIELDS':\n return (\n <SetAccessRequirementCommonFields\n ref={setArCommonFieldsRef}\n onSave={(accessRequirementId, accessRequirementConcreteType) => {\n setAccessRequirementId(accessRequirementId)\n const nextStep: CreateOrUpdateAccessRequirementWizardStep =\n accessRequirementConcreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ? 'SET_MANAGED_AR_FIELDS'\n : 'SET_BASIC_AR_FIELDS'\n setStep(nextStep)\n setIsLoading(false)\n }}\n onError={() => setIsLoading(false)}\n subject={props.subject}\n accessRequirementId={props.accessRequirementId}\n />\n )\n case 'SET_MANAGED_AR_FIELDS':\n return (\n <SetManagedAccessRequirementFields\n ref={setManagedArFieldsRef}\n accessRequirementId={accessRequirementId!}\n onSave={() => {\n setStep('SET_MANAGED_AR_ACL_PERMISSIONS')\n setIsLoading(false)\n }}\n onError={() => {\n setIsLoading(false)\n }}\n />\n )\n case 'SET_MANAGED_AR_ACL_PERMISSIONS':\n return (\n <AccessRequirementAclEditor\n ref={editArAclRef}\n accessRequirementId={accessRequirementId!}\n onSaveComplete={saveSuccessful => {\n if (saveSuccessful) {\n onComplete(accessRequirementId)\n }\n setIsLoading(false)\n }}\n />\n )\n case 'SET_BASIC_AR_FIELDS':\n return (\n <SetBasicAccessRequirementFields\n ref={setBasicArFieldsRef}\n accessRequirementId={accessRequirementId!}\n onSave={() => {\n onComplete(accessRequirementId)\n setIsLoading(false)\n }}\n onError={() => setIsLoading(false)}\n />\n )\n }\n }, [\n step,\n props.subject,\n props.accessRequirementId,\n accessRequirementId,\n onComplete,\n ])\n\n const onClickPrimary: MouseEventHandler<HTMLButtonElement> = e => {\n // SWC-7055 - The default action may trigger `beforeunload` and erroneously warn the user about leaving the page.\n e.preventDefault()\n setIsLoading(true)\n switch (step) {\n case 'SET_AR_COMMON_FIELDS':\n setArCommonFieldsRef?.current?.save()\n return\n case 'SET_MANAGED_AR_FIELDS':\n setManagedArFieldsRef?.current?.save()\n return\n case 'SET_MANAGED_AR_ACL_PERMISSIONS':\n editArAclRef?.current?.save()\n return\n case 'SET_BASIC_AR_FIELDS':\n setBasicArFieldsRef?.current?.save()\n }\n }\n\n return (\n <ConfirmationDialog\n open={open}\n onCancel={onCancel}\n onConfirm={onClickPrimary}\n confirmButtonProps={{\n children: isLastStep(step) ? 'Save' : 'Save & Continue',\n disabled: isLoading,\n }}\n maxWidth={'md'}\n title={getDialogTitle(step, isEditing)}\n content={stepContent}\n />\n )\n}\n\nexport default CreateOrUpdateAccessRequirementWizard\n"],"names":["CreateOrUpdateAccessRequirementWizard","props","open","onCancel","onComplete","step","setStep","useState","isLoading","setIsLoading","accessRequirementId","setAccessRequirementId","setArCommonFieldsRef","useRef","setManagedArFieldsRef","editArAclRef","setBasicArFieldsRef","isEditing","stepContent","useMemo","jsx","SetAccessRequirementCommonFields","accessRequirementConcreteType","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","SetManagedAccessRequirementFields","AccessRequirementAclEditor","saveSuccessful","SetBasicAccessRequirementFields","ConfirmationDialog","e","isLastStep","getDialogTitle"],"mappings":"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"}
1
+ {"version":3,"file":"CreateOrUpdateAccessRequirementWizard.js","sources":["../../../src/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.tsx"],"sourcesContent":["import { MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE } from '@sage-bionetworks/synapse-types'\nimport { MouseEventHandler, useMemo, useRef, useState } from 'react'\nimport {\n AccessRequirementAclEditor,\n AccessRequirementAclEditorHandle,\n} from '../AccessRequirementAclEditor/AccessRequirementAclEditor'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport {\n SetAccessRequirementCommonFields,\n SetAccessRequirementCommonFieldsHandle,\n SetAccessRequirementCommonFieldsProps,\n} from '../SetAccessRequirementCommonFields'\nimport SetBasicAccessRequirementFields, {\n SetBasicAccessRequirementFieldsHandle,\n} from '../SetBasicAccessRequirementFields'\nimport SetManagedAccessRequirementFields, {\n SetManagedAccessRequirementFieldsHandle,\n} from '../SetManagedAccessRequirementFields'\nimport {\n CreateOrUpdateAccessRequirementWizardStep,\n getDialogTitle,\n isLastStep,\n} from './CreateOrUpdateAccessRequirementWizardUtils'\n\nexport type CreateOrUpdateAccessRequirementWizardProps = {\n open: boolean\n onCancel: () => void\n onComplete: (accessRequirementID?: string) => void // return the (possibly new) Access Requirement ID\n} & Pick<\n SetAccessRequirementCommonFieldsProps,\n 'subject' | 'accessRequirementId'\n>\n\nexport function CreateOrUpdateAccessRequirementWizard(\n props: CreateOrUpdateAccessRequirementWizardProps,\n) {\n const { open, onCancel, onComplete } = props\n\n const [step, setStep] = useState<CreateOrUpdateAccessRequirementWizardStep>(\n 'SET_AR_COMMON_FIELDS',\n )\n const [isLoading, setIsLoading] = useState<boolean>(false)\n const [accessRequirementId, setAccessRequirementId] = useState<\n string | undefined\n >(props.accessRequirementId)\n\n const setArCommonFieldsRef =\n useRef<SetAccessRequirementCommonFieldsHandle>(null)\n const setManagedArFieldsRef =\n useRef<SetManagedAccessRequirementFieldsHandle>(null)\n const editArAclRef = useRef<AccessRequirementAclEditorHandle>(null)\n const setBasicArFieldsRef =\n useRef<SetBasicAccessRequirementFieldsHandle>(null)\n\n const isEditing = Boolean(props['accessRequirementId'])\n\n const stepContent = useMemo(() => {\n switch (step) {\n case 'SET_AR_COMMON_FIELDS':\n return (\n <SetAccessRequirementCommonFields\n ref={setArCommonFieldsRef}\n onSave={(accessRequirementId, accessRequirementConcreteType) => {\n setAccessRequirementId(accessRequirementId)\n const nextStep: CreateOrUpdateAccessRequirementWizardStep =\n accessRequirementConcreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ? 'SET_MANAGED_AR_FIELDS'\n : 'SET_BASIC_AR_FIELDS'\n setStep(nextStep)\n setIsLoading(false)\n }}\n onError={() => setIsLoading(false)}\n subject={props.subject}\n accessRequirementId={props.accessRequirementId}\n />\n )\n case 'SET_MANAGED_AR_FIELDS':\n return (\n <SetManagedAccessRequirementFields\n ref={setManagedArFieldsRef}\n accessRequirementId={accessRequirementId!}\n onSave={() => {\n setStep('SET_MANAGED_AR_ACL_PERMISSIONS')\n setIsLoading(false)\n }}\n onError={() => {\n setIsLoading(false)\n }}\n />\n )\n case 'SET_MANAGED_AR_ACL_PERMISSIONS':\n return (\n <AccessRequirementAclEditor\n ref={editArAclRef}\n accessRequirementId={accessRequirementId!}\n onSaveComplete={saveSuccessful => {\n if (saveSuccessful) {\n onComplete(accessRequirementId)\n }\n setIsLoading(false)\n }}\n />\n )\n case 'SET_BASIC_AR_FIELDS':\n return (\n <SetBasicAccessRequirementFields\n ref={setBasicArFieldsRef}\n accessRequirementId={accessRequirementId!}\n onSave={() => {\n onComplete(accessRequirementId)\n setIsLoading(false)\n }}\n onError={() => setIsLoading(false)}\n />\n )\n }\n }, [\n step,\n props.subject,\n props.accessRequirementId,\n accessRequirementId,\n onComplete,\n ])\n\n const onClickPrimary: MouseEventHandler<HTMLButtonElement> = e => {\n // SWC-7055 - The default action may trigger `beforeunload` and erroneously warn the user about leaving the page.\n e.preventDefault()\n setIsLoading(true)\n switch (step) {\n case 'SET_AR_COMMON_FIELDS':\n setArCommonFieldsRef?.current?.save()\n return\n case 'SET_MANAGED_AR_FIELDS':\n setManagedArFieldsRef?.current?.save()\n return\n case 'SET_MANAGED_AR_ACL_PERMISSIONS':\n editArAclRef?.current?.save()\n return\n case 'SET_BASIC_AR_FIELDS':\n setBasicArFieldsRef?.current?.save()\n }\n }\n\n return (\n <ConfirmationDialog\n open={open}\n onCancel={onCancel}\n onConfirm={onClickPrimary}\n confirmButtonProps={{\n children: isLastStep(step) ? 'Save' : 'Save & Continue',\n disabled: isLoading,\n }}\n maxWidth={'md'}\n title={getDialogTitle(step, isEditing)}\n content={stepContent}\n />\n )\n}\n\nexport default CreateOrUpdateAccessRequirementWizard\n"],"names":["CreateOrUpdateAccessRequirementWizard","props","open","onCancel","onComplete","step","setStep","useState","isLoading","setIsLoading","accessRequirementId","setAccessRequirementId","setArCommonFieldsRef","useRef","setManagedArFieldsRef","editArAclRef","setBasicArFieldsRef","isEditing","stepContent","useMemo","jsx","SetAccessRequirementCommonFields","accessRequirementConcreteType","MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE","SetManagedAccessRequirementFields","AccessRequirementAclEditor","saveSuccessful","SetBasicAccessRequirementFields","ConfirmationDialog","e","isLastStep","getDialogTitle"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCO,SAASA,GACdC,GACA;AACA,QAAM,EAAE,MAAAC,GAAM,UAAAC,GAAU,YAAAC,EAAA,IAAeH,GAEjC,CAACI,GAAMC,CAAO,IAAIC;AAAA,IACtB;AAAA,EAAA,GAEI,CAACC,GAAWC,CAAY,IAAIF,EAAkB,EAAK,GACnD,CAACG,GAAqBC,CAAsB,IAAIJ,EAEpDN,EAAM,mBAAmB,GAErBW,IACJC,EAA+C,IAAI,GAC/CC,IACJD,EAAgD,IAAI,GAChDE,IAAeF,EAAyC,IAAI,GAC5DG,IACJH,EAA8C,IAAI,GAE9CI,IAAY,EAAQhB,EAAM,qBAE1BiB,IAAcC,EAAQ,MAAM;AAChC,YAAQd,GAAA;AAAA,MACN,KAAK;AACH,eACE,gBAAAe;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,KAAKT;AAAA,YACL,QAAQ,CAACF,GAAqBY,MAAkC;AAC9D,cAAAX,EAAuBD,CAAmB,GAM1CJ,EAJEgB,MACAC,IACI,0BACA,qBACU,GAChBd,EAAa,EAAK;AAAA,YACpB;AAAA,YACA,SAAS,MAAMA,EAAa,EAAK;AAAA,YACjC,SAASR,EAAM;AAAA,YACf,qBAAqBA,EAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MAGjC,KAAK;AACH,eACE,gBAAAmB;AAAA,UAACI;AAAA,UAAA;AAAA,YACC,KAAKV;AAAA,YACL,qBAAAJ;AAAA,YACA,QAAQ,MAAM;AACZ,cAAAJ,EAAQ,gCAAgC,GACxCG,EAAa,EAAK;AAAA,YACpB;AAAA,YACA,SAAS,MAAM;AACb,cAAAA,EAAa,EAAK;AAAA,YACpB;AAAA,UAAA;AAAA,QAAA;AAAA,MAGN,KAAK;AACH,eACE,gBAAAW;AAAA,UAACK;AAAA,UAAA;AAAA,YACC,KAAKV;AAAA,YACL,qBAAAL;AAAA,YACA,gBAAgB,CAAAgB,MAAkB;AAChC,cAAIA,KACFtB,EAAWM,CAAmB,GAEhCD,EAAa,EAAK;AAAA,YACpB;AAAA,UAAA;AAAA,QAAA;AAAA,MAGN,KAAK;AACH,eACE,gBAAAW;AAAA,UAACO;AAAA,UAAA;AAAA,YACC,KAAKX;AAAA,YACL,qBAAAN;AAAA,YACA,QAAQ,MAAM;AACZ,cAAAN,EAAWM,CAAmB,GAC9BD,EAAa,EAAK;AAAA,YACpB;AAAA,YACA,SAAS,MAAMA,EAAa,EAAK;AAAA,UAAA;AAAA,QAAA;AAAA,IACnC;AAAA,EAGR,GAAG;AAAA,IACDJ;AAAA,IACAJ,EAAM;AAAA,IACNA,EAAM;AAAA,IACNS;AAAA,IACAN;AAAA,EAAA,CACD;AAqBD,SACE,gBAAAgB;AAAA,IAACQ;AAAA,IAAA;AAAA,MACC,MAAA1B;AAAA,MACA,UAAAC;AAAA,MACA,WAvByD,CAAA0B,MAAK;AAIhE,gBAFAA,EAAE,eAAA,GACFpB,EAAa,EAAI,GACTJ,GAAA;AAAA,UACN,KAAK;AACH,YAAAO,GAAsB,SAAS,KAAA;AAC/B;AAAA,UACF,KAAK;AACH,YAAAE,GAAuB,SAAS,KAAA;AAChC;AAAA,UACF,KAAK;AACH,YAAAC,GAAc,SAAS,KAAA;AACvB;AAAA,UACF,KAAK;AACH,YAAAC,GAAqB,SAAS,KAAA;AAAA,QAAK;AAAA,MAEzC;AAAA,MAOI,oBAAoB;AAAA,QAClB,UAAUc,EAAWzB,CAAI,IAAI,SAAS;AAAA,QACtC,UAAUG;AAAA,MAAA;AAAA,MAEZ,UAAU;AAAA,MACV,OAAOuB,EAAe1B,GAAMY,CAAS;AAAA,MACrC,SAASC;AAAA,IAAA;AAAA,EAAA;AAGf;"}
@@ -32,7 +32,7 @@ import "universal-cookie";
32
32
  import "../../utils/AppUtils/session/ApplicationSessionContext.js";
33
33
  import "../../utils/context/FullContextProvider.js";
34
34
  import "../../utils/context/DocumentMetadataContext.js";
35
- import '../FullWidthAlert/FullWidthAlert.css';import '../../style/components/_spinner.css';/* empty css */
35
+ import '../Plot/SynapsePlot.css';import '../FullWidthAlert/FullWidthAlert.css';import '../../style/components/_spinner.css';/* empty css */
36
36
  import "react-router";
37
37
  import "@mui/icons-material/Close";
38
38
  import "../styled/StyledPopover.js";
@@ -169,7 +169,6 @@ import "@mui/x-date-pickers/AdapterDayjs";
169
169
  import "@mui/x-date-pickers/LocalizationProvider";
170
170
  import "../FeaturedDataTabs/FacetPlotsCardGrid.js";
171
171
  import "../Forum/ForumTable.js";
172
- import "@mui/material/IconButton";
173
172
  import "@mui/icons-material/NavigateNext";
174
173
  import "@react-google-maps/api";
175
174
  import "../Markdown/MarkdownUtils.js";
@@ -183,6 +182,7 @@ import "lodash-es/orderBy";
183
182
  import "../styled/LargeButton.js";
184
183
  import "../../assets/illustrations/diagonalLinePattern.svg.js";
185
184
  import "@upsetjs/react";
185
+ /* empty css */
186
186
  import "reactflow";
187
187
  import "../ProvenanceGraph/ProvenanceUtils.js";
188
188
  import "reactflow/dist/style.css";
@@ -1 +1 @@
1
- {"version":3,"file":"SynapseGrid.d.ts","sourceRoot":"","sources":["../../../src/components/DataGrid/SynapseGrid.tsx"],"names":[],"mappings":"AAaA,OAAO,EACL,iBAAiB,EAElB,MAAM,kCAAkC,CAAA;AA0BzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,cAAc,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACpD,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CACjD,CAAA;AAED,QAAA,MAAM,WAAW,gHA6ZhB,CAAA;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"SynapseGrid.d.ts","sourceRoot":"","sources":["../../../src/components/DataGrid/SynapseGrid.tsx"],"names":[],"mappings":"AAaA,OAAO,EACL,iBAAiB,EAElB,MAAM,kCAAkC,CAAA;AA0BzC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,cAAc,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACpD,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CACjD,CAAA;AAED,QAAA,MAAM,WAAW,gHAiahB,CAAA;AAED,eAAe,WAAW,CAAA"}