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.
- package/dist/SWC.index.js +1 -1
- package/dist/assets/DefaultColorfulPortalCardBackground.svg +14 -0
- package/dist/assets/DefaultColorfulPortalCardBackground.svg.js +7 -0
- package/dist/assets/DefaultColorfulPortalCardBackground.svg.js.map +1 -0
- package/dist/assets/homepage/nih-aging.svg +27 -27
- package/dist/assets/homepage/nih-aging.svg.js +1 -1
- package/dist/assets/homepage/nih-aging.svg.js.map +1 -1
- package/dist/assets/homepage/nih-heart.svg +39 -46
- package/dist/assets/homepage/nih-heart.svg.js +3 -3
- package/dist/assets/homepage/nih-heart.svg.js.map +1 -1
- package/dist/assets/homepage/nih-nci.svg +6 -0
- package/dist/assets/homepage/nih-nci.svg.js +7 -0
- package/dist/assets/homepage/nih-nci.svg.js.map +1 -0
- package/dist/assets/homepage/nih-nimh.svg +14 -0
- package/dist/assets/homepage/nih-nimh.svg.js +7 -0
- package/dist/assets/homepage/nih-nimh.svg.js.map +1 -0
- package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementList.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js +8 -7
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js +11 -11
- package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js +9 -9
- package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js +5 -5
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.d.ts.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +33 -32
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.js +8 -8
- package/dist/components/AclEditor/AclEditor.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.test-utils.js +34 -34
- package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.js +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js +6 -5
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.d.ts.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.js +12 -12
- package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss +6 -0
- package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.css +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +24 -23
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss +15 -5
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss.js +1 -1
- package/dist/components/CardContainer/CardLink.d.ts +12 -0
- package/dist/components/CardContainer/CardLink.d.ts.map +1 -1
- package/dist/components/ChallengeSubmission/AvailableEvaluationQueueList.js +12 -12
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.d.ts.map +1 -1
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js +7 -7
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.d.ts.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.js +13 -12
- package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
- package/dist/components/CookiesNotification/CookiesNotification.js +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +3 -4
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +2 -2
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +35 -35
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +2 -2
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.d.ts.map +1 -1
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js +9 -7
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
- package/dist/components/DownloadCart/ActionRequiredCard/ActionRequiredCard.js +1 -1
- package/dist/components/DownloadCart/RequestDownloadCard.js +1 -1
- package/dist/components/Ecosystem/EcosystemSkeleton.js +2 -2
- package/dist/components/Ecosystem/TableQueryEcosystem.js +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditorModal.js +1 -1
- package/dist/components/EntityAclEditor/OpenData.js +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.d.ts.map +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +113 -127
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitation.js +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityNameCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js +1 -1
- package/dist/components/EntityFinder/tree/EntityTree.js +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.d.ts.map +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js +39 -39
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts +8 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts.map +1 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js +46 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -0
- package/dist/components/Evaluation/EvaluationCard.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationCard.js +35 -41
- package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.js +95 -90
- package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.js +133 -124
- package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
- package/dist/components/FilePreview/EntityPreview.js +1 -1
- package/dist/components/Forum/DiscussionReply.js +10 -10
- package/dist/components/Forum/DiscussionThread.js +21 -21
- package/dist/components/GenericCard/CardUtils.d.ts.map +1 -1
- package/dist/components/GenericCard/CardUtils.js +36 -36
- package/dist/components/GenericCard/CardUtils.js.map +1 -1
- package/dist/components/GenericCard/CollapsibleDescription.js +25 -25
- package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js +72 -67
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts +4 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +98 -96
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.d.ts.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.js +14 -15
- package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
- package/dist/components/GoogleAnalytics/GoogleAnalytics.js +1 -1
- package/dist/components/HasAccess/HasAccessV2.js +1 -1
- package/dist/components/HasAccess/useHasAccess.js +1 -1
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js +23 -23
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.d.ts +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.d.ts.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.js +9 -9
- package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
- package/dist/components/Markdown/MarkdownCollapse.js +7 -7
- package/dist/components/Markdown/MarkdownEditor.js +11 -11
- package/dist/components/Markdown/MarkdownGithub.js +1 -1
- package/dist/components/Markdown/MarkdownPopover.js +6 -6
- package/dist/components/Markdown/MarkdownPopover.js.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.js +139 -135
- package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.d.ts +8 -0
- package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.js +139 -65
- package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
- package/dist/components/Markdown/UserMentionModal.js +18 -18
- package/dist/components/Markdown/UserMentionModal.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownButton.js +3 -3
- package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.d.ts.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js +9 -8
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.css +1 -0
- package/dist/components/Plot/SynapsePlot.d.ts +2 -0
- package/dist/components/Plot/SynapsePlot.d.ts.map +1 -1
- package/dist/components/Plot/SynapsePlot.js +43 -39
- package/dist/components/Plot/SynapsePlot.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.scss +8 -0
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +114 -113
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
- package/dist/components/Resources/Resources.Desktop.js +7 -7
- package/dist/components/Resources/Resources.Mobile.js +6 -6
- package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js +3 -3
- package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js +10 -10
- package/dist/components/SynapseChat/SynapseChatInteraction.js +5 -5
- package/dist/components/SynapseForm/WarningDialog.d.ts +1 -0
- package/dist/components/SynapseForm/WarningDialog.d.ts.map +1 -1
- package/dist/components/SynapseForm/WarningDialog.js +18 -16
- package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePartners.d.ts.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePartners.js +17 -12
- package/dist/components/SynapseHomepageV2/SynapsePartners.js.map +1 -1
- package/dist/components/SynapsePortalBanners/SynapsePortalBanners.d.ts.map +1 -1
- package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js +39 -39
- package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/HasAccessChip.js +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.d.ts.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js +21 -22
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +5 -5
- package/dist/components/SynapseTable/ExpandableTableDataCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js +3 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTable.js +4 -4
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js +122 -122
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +5 -5
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +1 -1
- package/dist/components/TableFeedCards/TableFeedCards.js +9 -9
- package/dist/components/TermsAndConditions/TermsAndConditionsItem.js +10 -10
- package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js +9 -9
- package/dist/components/UserSearchBox/UserSearchBox.d.ts +23 -0
- package/dist/components/UserSearchBox/UserSearchBox.d.ts.map +1 -0
- package/dist/components/UserSearchBox/UserSearchBox.js +146 -0
- package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -0
- package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js +13 -13
- package/dist/components/WizardChoiceButton/WizardChoiceButton.js +3 -3
- package/dist/components/dataaccess/AccessHistoryDashboard.js +5 -5
- package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementDashboard.js +4 -4
- package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js +5 -5
- package/dist/components/dataaccess/UseAccessRequirementTable.js +3 -3
- package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.js +1 -1
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +2 -2
- package/dist/components/entity/metadata/EntityModal.js +1 -1
- package/dist/components/entity/metadata/MetadataTable.js +1 -1
- package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +1 -1
- package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js +1 -1
- package/dist/components/entity/page/title_bar/TitleBarProperties.js +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.d.ts.map +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js +27 -26
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
- package/dist/components/index.js +109 -107
- package/dist/components/index.js.map +1 -1
- package/dist/components/layout/InfiniteTableLayout.js +1 -1
- package/dist/components/styled/HoverPopover.css +1 -0
- package/dist/components/styled/HoverPopover.d.ts +28 -0
- package/dist/components/styled/HoverPopover.d.ts.map +1 -0
- package/dist/components/styled/HoverPopover.js +104 -0
- package/dist/components/styled/HoverPopover.js.map +1 -0
- package/dist/components/styled/HoverPopover.module.scss +10 -0
- package/dist/components/styled/HoverPopover.module.scss.js +10 -0
- package/dist/components/styled/HoverPopover.module.scss.js.map +1 -0
- package/dist/components/styled/index.d.ts +2 -0
- package/dist/components/styled/index.d.ts.map +1 -1
- package/dist/components/styled/index.js +11 -9
- package/dist/components/styled/index.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +2 -2
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js +2 -2
- package/dist/components/widgets/Range.js +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.js +35 -32
- package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.js +69 -68
- package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.js +24 -21
- package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterControls.js +3 -3
- package/dist/features/curator/GridPage/GridPage.js +2 -2
- package/dist/features/curator/GridPage/components/GridPageTitle.js +2 -2
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
- package/dist/index.js +157 -155
- package/dist/index.js.map +1 -1
- package/dist/mocks/msw/handlers/accessRequirementHandlers.js +5 -5
- package/dist/mocks/msw/handlers/projectStorageHandlers.js +5 -5
- package/dist/mocks/msw/handlers/wikiHandlers.js +1 -1
- package/dist/mocks/msw/handlers.d.ts.map +1 -1
- package/dist/mocks/msw/handlers.js +67 -59
- package/dist/mocks/msw/handlers.js.map +1 -1
- package/dist/style/base/_core.scss +0 -1
- package/dist/style/components/_all.scss +0 -1
- package/dist/style/components/_entity-badge.scss +0 -2
- package/dist/style/components/_expandable_table_data.scss +3 -3
- package/dist/style/components/facet_nav/_facet-nav-panel.scss +3 -0
- package/dist/style/components/facet_nav/_facet-nav.scss +4 -0
- package/dist/style/main.css +1 -1
- package/dist/synapse-client/SynapseClient.js +118 -118
- package/dist/synapse-client/SynapseClient.js.map +1 -1
- package/dist/synapse-queries/auth/useOIDC.js +1 -1
- package/dist/synapse-queries/auth/useTwoFactorEnrollment.js +1 -1
- package/dist/synapse-queries/entity/index.js +6 -6
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js +1 -1
- package/dist/synapse-queries/index.js +1 -1
- package/dist/synapse-queries/user/usePersonalAccessToken.js +1 -1
- package/dist/testutils/vitest.setup.js +10 -11
- package/dist/testutils/vitest.setup.js.map +1 -1
- package/dist/theme/DefaultTheme.js +1 -1
- package/dist/theme/ThemeProvider.d.ts +2 -1
- package/dist/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/theme/ThemeProvider.js +11 -10
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/mergeTheme.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/AppUtils/AppUtils.js +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.d.ts.map +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.js +34 -40
- package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
- package/dist/utils/functions/deepLinkingUtils.js +10 -10
- package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
- package/dist/utils/hooks/index.js +6 -6
- package/dist/utils/hooks/useDetectSSOCode.js +3 -3
- package/dist/utils/hooks/useGetEntityMetadata.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.d.ts.map +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
- package/dist/utils/hooks/useOneSageURL.d.ts.map +1 -1
- package/dist/utils/hooks/useOneSageURL.js +15 -15
- package/dist/utils/hooks/useOneSageURL.js.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.d.ts +1 -0
- package/dist/utils/hooks/useSourceAppConfigs.d.ts.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.js +79 -77
- package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
- package/dist/utils/index.js +4 -4
- package/package.json +17 -18
- package/dist/_virtual/index.js +0 -6
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/index2.js +0 -5
- package/dist/_virtual/index2.js.map +0 -1
- package/dist/_virtual/index3.js +0 -5
- package/dist/_virtual/index3.js.map +0 -1
- package/dist/_virtual/index4.js +0 -5
- package/dist/_virtual/index4.js.map +0 -1
- package/dist/_virtual/index5.js +0 -5
- package/dist/_virtual/index5.js.map +0 -1
- package/dist/assets/homepage/nci.svg +0 -6
- package/dist/assets/homepage/nci.svg.js +0 -7
- package/dist/assets/homepage/nci.svg.js.map +0 -1
- package/dist/assets/homepage/nih-mental.svg +0 -9
- package/dist/assets/homepage/nih-mental.svg.js +0 -7
- package/dist/assets/homepage/nih-mental.svg.js.map +0 -1
- package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts +0 -21
- package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts.map +0 -1
- package/dist/components/UserSearchBox/UserSearchBoxV2.js +0 -144
- package/dist/components/UserSearchBox/UserSearchBoxV2.js.map +0 -1
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js +0 -53
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js.map +0 -1
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js +0 -948
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js.map +0 -1
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js +0 -30
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js.map +0 -1
- 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
- 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
- package/dist/style/components/_user-search-box.scss +0 -30
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { jsx as
|
|
1
|
+
import { jsx as t, Fragment as d, jsxs as l } from "react/jsx-runtime";
|
|
2
2
|
import "../../synapse-client/SynapseClient.js";
|
|
3
3
|
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
4
4
|
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
5
5
|
import "@sage-bionetworks/synapse-client/util/SynapseClientError";
|
|
6
|
-
import { ALL_ENTITY_BUNDLE_FIELDS as
|
|
6
|
+
import { ALL_ENTITY_BUNDLE_FIELDS as $ } from "@sage-bionetworks/synapse-types";
|
|
7
7
|
import "../../utils/functions/EntityTypeUtils.js";
|
|
8
8
|
import "../../utils/SynapseConstants.js";
|
|
9
|
-
import { isEmpty as
|
|
9
|
+
import { isEmpty as J } from "lodash-es";
|
|
10
10
|
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
|
|
11
11
|
import "@tanstack/react-query";
|
|
12
12
|
import "../../utils/PermissionLevelToAccessType.js";
|
|
13
|
-
import { useState as
|
|
13
|
+
import { useState as u, useEffect as Y } from "react";
|
|
14
14
|
import "../../utils/context/SynapseContext.js";
|
|
15
15
|
import "use-deep-compare-effect";
|
|
16
16
|
import { Tooltip as a } from "@mui/material";
|
|
@@ -26,128 +26,110 @@ import "lodash-es/isEmpty";
|
|
|
26
26
|
import "lodash-es/isEqual";
|
|
27
27
|
import "lodash-es/xorWith";
|
|
28
28
|
import "react-router";
|
|
29
|
-
import { EntityType as
|
|
29
|
+
import { EntityType as q } from "@sage-bionetworks/synapse-client";
|
|
30
30
|
import "../../utils/types/IsType.js";
|
|
31
|
-
import { useGetJson as
|
|
32
|
-
import { useGetSchemaBinding as
|
|
33
|
-
import
|
|
34
|
-
import { useGetRealmPrincipals as
|
|
35
|
-
import { isEntityPublic as
|
|
36
|
-
import { PublicTwoTone as
|
|
37
|
-
import { useInView as
|
|
38
|
-
import { getDisplayedAnnotation as
|
|
39
|
-
import { EntityModal as
|
|
40
|
-
import {
|
|
41
|
-
|
|
31
|
+
import { useGetJson as z, useDeleteEntity as K } from "../../synapse-queries/entity/useEntity.js";
|
|
32
|
+
import { useGetSchemaBinding as Q, useGetValidationResults as X } from "../../synapse-queries/entity/useEntityBoundSchema.js";
|
|
33
|
+
import Z from "../../synapse-queries/entity/useEntityBundle.js";
|
|
34
|
+
import { useGetRealmPrincipals as tt } from "../../synapse-queries/realm/useRealmPrincipals.js";
|
|
35
|
+
import { isEntityPublic as B } from "../../utils/functions/AccessControlListUtils.js";
|
|
36
|
+
import { PublicTwoTone as et, LockTwoTone as it, CheckTwoTone as nt, LocalOfferTwoTone as ot, DescriptionTwoTone as at, ChatBubbleTwoTone as rt, LinkOffTwoTone as st } from "@mui/icons-material";
|
|
37
|
+
import { useInView as lt } from "react-intersection-observer";
|
|
38
|
+
import { getDisplayedAnnotation as A } from "../entity/metadata/AnnotationsTable.js";
|
|
39
|
+
import { EntityModal as ct } from "../entity/metadata/EntityModal.js";
|
|
40
|
+
import { HoverPopover as dt } from "../styled/HoverPopover.js";
|
|
41
|
+
import { WarningDialog as mt } from "../SynapseForm/WarningDialog.js";
|
|
42
|
+
const Zt = (_) => {
|
|
42
43
|
const {
|
|
43
|
-
entityId:
|
|
44
|
-
versionNumber:
|
|
44
|
+
entityId: n,
|
|
45
|
+
versionNumber: g,
|
|
45
46
|
flexWrap: C = "nowrap",
|
|
46
|
-
justifyContent:
|
|
47
|
-
showIsPublicPrivate:
|
|
48
|
-
showHasLocalSharingSettings:
|
|
49
|
-
showHasAnnotations:
|
|
50
|
-
showHasWiki:
|
|
51
|
-
showHasDiscussionThread:
|
|
52
|
-
showUnlink:
|
|
53
|
-
onUnlink:
|
|
47
|
+
justifyContent: I = "flex-start",
|
|
48
|
+
showIsPublicPrivate: b = !0,
|
|
49
|
+
showHasLocalSharingSettings: D = !0,
|
|
50
|
+
showHasAnnotations: v = !0,
|
|
51
|
+
showHasWiki: S = !0,
|
|
52
|
+
showHasDiscussionThread: x = !0,
|
|
53
|
+
showUnlink: V = !0,
|
|
54
|
+
onUnlink: M = () => {
|
|
54
55
|
},
|
|
55
|
-
onUnlinkError:
|
|
56
|
+
onUnlinkError: O = () => {
|
|
56
57
|
},
|
|
57
|
-
canOpenModal:
|
|
58
|
-
} =
|
|
59
|
-
let
|
|
58
|
+
canOpenModal: y
|
|
59
|
+
} = _, { data: L } = tt(), T = L || {};
|
|
60
|
+
let w;
|
|
60
61
|
((i) => {
|
|
61
62
|
i.NO_SCHEMA = "", i.VALID = "Valid", i.INVALID = "Invalid", i.ANNOTATIONS_MISSING = "Missing";
|
|
62
|
-
})(
|
|
63
|
-
const { ref:
|
|
64
|
-
enabled:
|
|
65
|
-
}),
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
63
|
+
})(w || (w = {}));
|
|
64
|
+
const { ref: P, inView: c } = lt(), { data: H } = z(n, g, !0, {
|
|
65
|
+
enabled: c
|
|
66
|
+
}), o = H?.annotations, { data: e } = Z(
|
|
67
|
+
n,
|
|
68
|
+
g,
|
|
69
|
+
$,
|
|
69
70
|
{
|
|
70
|
-
enabled:
|
|
71
|
+
enabled: c
|
|
71
72
|
}
|
|
72
|
-
), [
|
|
73
|
+
), [U, N] = u(!1), [j, m] = u(!1), [E, h] = u(
|
|
73
74
|
""
|
|
74
75
|
/* NO_SCHEMA */
|
|
75
|
-
), { data:
|
|
76
|
-
enabled:
|
|
76
|
+
), { data: p } = Q(n, {
|
|
77
|
+
enabled: c,
|
|
77
78
|
staleTime: 60 * 1e3
|
|
78
79
|
// 60 seconds
|
|
79
|
-
}), { data:
|
|
80
|
-
enabled:
|
|
80
|
+
}), { data: r } = X(n, {
|
|
81
|
+
enabled: c && !!p,
|
|
81
82
|
staleTime: 60 * 1e3
|
|
82
83
|
// 60 seconds
|
|
83
|
-
}),
|
|
84
|
-
|
|
85
|
-
|
|
84
|
+
}), f = o && !J(o) ? Object.keys(o).length : 0;
|
|
85
|
+
Y(() => {
|
|
86
|
+
r && (r.isValid ? h(
|
|
86
87
|
"Valid"
|
|
87
88
|
/* VALID */
|
|
88
|
-
) :
|
|
89
|
-
|
|
89
|
+
) : h(
|
|
90
|
+
f ? "Invalid" : "Missing"
|
|
90
91
|
/* INVALID */
|
|
91
92
|
));
|
|
92
93
|
}, [
|
|
93
|
-
d,
|
|
94
|
-
l,
|
|
95
94
|
r,
|
|
95
|
+
f,
|
|
96
|
+
o,
|
|
96
97
|
"Valid",
|
|
97
98
|
"Invalid",
|
|
98
99
|
"Missing"
|
|
99
100
|
/* ANNOTATIONS_MISSING */
|
|
100
101
|
]);
|
|
101
|
-
const { mutate:
|
|
102
|
+
const { mutate: G } = K({
|
|
102
103
|
onSuccess: (i, s) => {
|
|
103
|
-
|
|
104
|
+
M(s);
|
|
104
105
|
},
|
|
105
|
-
onError:
|
|
106
|
-
}),
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
/* @__PURE__ */ e("td", { children: g.jsonSchemaVersionInfo.schemaName })
|
|
120
|
-
] }) : "" }), J = /* @__PURE__ */ n("div", { className: "EntityBadgeTooltip", children: [
|
|
121
|
-
d ? /* @__PURE__ */ n("p", { children: [
|
|
122
|
-
E,
|
|
123
|
-
" Annotations"
|
|
124
|
-
] }) : "",
|
|
125
|
-
/* @__PURE__ */ n("table", { children: [
|
|
126
|
-
A || "",
|
|
127
|
-
F
|
|
128
|
-
] }),
|
|
129
|
-
l > m ? /* @__PURE__ */ n("p", { children: [
|
|
130
|
-
"and ",
|
|
131
|
-
l - m,
|
|
132
|
-
" more"
|
|
133
|
-
] }) : ""
|
|
134
|
-
] });
|
|
135
|
-
return /* @__PURE__ */ e("div", { className: "EntityBadge", ref: j, style: { flexWrap: C, justifyContent: S }, children: t && /* @__PURE__ */ n(c, { children: [
|
|
136
|
-
/* @__PURE__ */ e("div", { onClick: (i) => i.stopPropagation(), children: /* @__PURE__ */ e(
|
|
137
|
-
de,
|
|
106
|
+
onError: O
|
|
107
|
+
}), k = /* @__PURE__ */ t(d, { children: o ? Object.entries(o ?? []).map(([i, s]) => /* @__PURE__ */ l("tr", { children: [
|
|
108
|
+
/* @__PURE__ */ t("td", { children: /* @__PURE__ */ t("b", { children: i }) }),
|
|
109
|
+
/* @__PURE__ */ t("td", { children: Array.isArray(s) ? s.map(A).join(", ") : A(s) })
|
|
110
|
+
] }, i)) : "" }), R = /* @__PURE__ */ t(d, { children: p ? /* @__PURE__ */ l("tr", { children: [
|
|
111
|
+
/* @__PURE__ */ t("td", { children: /* @__PURE__ */ t("b", { children: "Validation Schema" }) }),
|
|
112
|
+
/* @__PURE__ */ t("td", { children: p.jsonSchemaVersionInfo.schemaName })
|
|
113
|
+
] }) : "" }), W = r ? `${E} Annotations` : "", F = /* @__PURE__ */ t("div", { className: "EntityBadgeTooltip", children: /* @__PURE__ */ t("table", { children: /* @__PURE__ */ l("tbody", { children: [
|
|
114
|
+
k || "",
|
|
115
|
+
R
|
|
116
|
+
] }) }) });
|
|
117
|
+
return /* @__PURE__ */ t("div", { className: "EntityBadge", ref: P, style: { flexWrap: C, justifyContent: I }, children: e && /* @__PURE__ */ l(d, { children: [
|
|
118
|
+
/* @__PURE__ */ t("div", { onClick: (i) => i.stopPropagation(), children: /* @__PURE__ */ t(
|
|
119
|
+
ct,
|
|
138
120
|
{
|
|
139
|
-
entityId:
|
|
140
|
-
show:
|
|
121
|
+
entityId: n,
|
|
122
|
+
show: U,
|
|
141
123
|
showTabs: !1,
|
|
142
|
-
onClose: () =>
|
|
124
|
+
onClose: () => N(!1),
|
|
143
125
|
initialTab: "ANNOTATIONS"
|
|
144
126
|
}
|
|
145
127
|
) }),
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
) ? /* @__PURE__ */
|
|
150
|
-
|
|
128
|
+
b && e.benefactorAcl && B(
|
|
129
|
+
e.benefactorAcl.resourceAccess,
|
|
130
|
+
T
|
|
131
|
+
) ? /* @__PURE__ */ t(a, { title: "Public", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
|
|
132
|
+
et,
|
|
151
133
|
{
|
|
152
134
|
"aria-hidden": !1,
|
|
153
135
|
role: "img",
|
|
@@ -155,11 +137,11 @@ const Xe = (I) => {
|
|
|
155
137
|
"data-testid": "is-public-icon"
|
|
156
138
|
}
|
|
157
139
|
) }) : null,
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
) ? /* @__PURE__ */
|
|
162
|
-
|
|
140
|
+
b && e.benefactorAcl && !B(
|
|
141
|
+
e.benefactorAcl.resourceAccess,
|
|
142
|
+
T
|
|
143
|
+
) ? /* @__PURE__ */ t(a, { title: "Private", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
|
|
144
|
+
it,
|
|
163
145
|
{
|
|
164
146
|
"aria-hidden": !1,
|
|
165
147
|
role: "img",
|
|
@@ -167,14 +149,14 @@ const Xe = (I) => {
|
|
|
167
149
|
"data-testid": "is-private-icon"
|
|
168
150
|
}
|
|
169
151
|
) }) : null,
|
|
170
|
-
|
|
152
|
+
D && e.benefactorAcl && n === e.benefactorAcl.id ? /* @__PURE__ */ t(
|
|
171
153
|
a,
|
|
172
154
|
{
|
|
173
155
|
title: "Sharing Settings have been set",
|
|
174
156
|
enterNextDelay: 100,
|
|
175
157
|
placement: "right",
|
|
176
|
-
children: /* @__PURE__ */
|
|
177
|
-
|
|
158
|
+
children: /* @__PURE__ */ t(
|
|
159
|
+
nt,
|
|
178
160
|
{
|
|
179
161
|
"aria-hidden": !1,
|
|
180
162
|
role: "img",
|
|
@@ -184,28 +166,32 @@ const Xe = (I) => {
|
|
|
184
166
|
)
|
|
185
167
|
}
|
|
186
168
|
) : null,
|
|
187
|
-
|
|
188
|
-
|
|
169
|
+
v && !!(f || r) && /* @__PURE__ */ t(
|
|
170
|
+
dt,
|
|
189
171
|
{
|
|
190
|
-
title:
|
|
191
|
-
|
|
172
|
+
title: W,
|
|
173
|
+
popoverContent: F,
|
|
192
174
|
placement: "right",
|
|
193
|
-
|
|
194
|
-
|
|
175
|
+
maxWidth: 500,
|
|
176
|
+
actionButton: y ? {
|
|
177
|
+
content: "Edit Annotations",
|
|
178
|
+
onClick: () => N(!0),
|
|
179
|
+
closeOnClick: !0
|
|
180
|
+
} : void 0,
|
|
181
|
+
children: /* @__PURE__ */ t(
|
|
182
|
+
ot,
|
|
195
183
|
{
|
|
196
184
|
"aria-hidden": !1,
|
|
197
|
-
role:
|
|
185
|
+
role: y ? "button" : "img",
|
|
198
186
|
className: `EntityBadge__Badge ${E}`,
|
|
199
|
-
style: p ? { cursor: "pointer" } : void 0,
|
|
200
|
-
onClick: p ? () => k(!0) : void 0,
|
|
201
187
|
"data-html": !0,
|
|
202
188
|
"data-testid": "annotations-icon"
|
|
203
189
|
}
|
|
204
190
|
)
|
|
205
191
|
}
|
|
206
192
|
),
|
|
207
|
-
|
|
208
|
-
|
|
193
|
+
S && e.rootWikiId && /* @__PURE__ */ t(a, { title: "Has a wiki", enterNextDelay: 100, placement: "right", children: /* @__PURE__ */ t(
|
|
194
|
+
at,
|
|
209
195
|
{
|
|
210
196
|
"aria-hidden": !1,
|
|
211
197
|
role: "img",
|
|
@@ -213,14 +199,14 @@ const Xe = (I) => {
|
|
|
213
199
|
"data-testid": "wiki-icon"
|
|
214
200
|
}
|
|
215
201
|
) }),
|
|
216
|
-
|
|
202
|
+
x && !!e.threadCount && e.threadCount > 0 && /* @__PURE__ */ t(
|
|
217
203
|
a,
|
|
218
204
|
{
|
|
219
205
|
title: "Has been mentioned in discussion",
|
|
220
206
|
enterNextDelay: 100,
|
|
221
207
|
placement: "right",
|
|
222
|
-
children: /* @__PURE__ */
|
|
223
|
-
|
|
208
|
+
children: /* @__PURE__ */ t(
|
|
209
|
+
rt,
|
|
224
210
|
{
|
|
225
211
|
"aria-hidden": !1,
|
|
226
212
|
role: "img",
|
|
@@ -230,35 +216,35 @@ const Xe = (I) => {
|
|
|
230
216
|
)
|
|
231
217
|
}
|
|
232
218
|
),
|
|
233
|
-
|
|
234
|
-
/* @__PURE__ */
|
|
235
|
-
|
|
219
|
+
V && e.entityType === q.link && e.permissions?.canDelete && /* @__PURE__ */ l(d, { children: [
|
|
220
|
+
/* @__PURE__ */ t(
|
|
221
|
+
mt,
|
|
236
222
|
{
|
|
237
|
-
open:
|
|
223
|
+
open: j,
|
|
238
224
|
title: "Confirm Unlink",
|
|
239
225
|
content: "Are you sure you want to remove this link? The original object will not be changed.",
|
|
240
226
|
confirmButtonText: "Unlink",
|
|
241
227
|
confirmButtonColor: "error",
|
|
242
228
|
onConfirm: () => {
|
|
243
|
-
|
|
229
|
+
G(n), m(!1);
|
|
244
230
|
},
|
|
245
231
|
onCancel: () => {
|
|
246
|
-
|
|
232
|
+
m(!1);
|
|
247
233
|
}
|
|
248
234
|
}
|
|
249
235
|
),
|
|
250
|
-
/* @__PURE__ */
|
|
236
|
+
/* @__PURE__ */ t(
|
|
251
237
|
a,
|
|
252
238
|
{
|
|
253
239
|
title: "Remove this link",
|
|
254
240
|
enterNextDelay: 100,
|
|
255
241
|
placement: "right",
|
|
256
|
-
children: /* @__PURE__ */
|
|
257
|
-
|
|
242
|
+
children: /* @__PURE__ */ t(
|
|
243
|
+
st,
|
|
258
244
|
{
|
|
259
245
|
"aria-hidden": !1,
|
|
260
246
|
role: "button",
|
|
261
|
-
onClick: () =>
|
|
247
|
+
onClick: () => m(!0),
|
|
262
248
|
className: "EntityBadge__Badge Unlink",
|
|
263
249
|
"data-testid": "unlink-icon"
|
|
264
250
|
}
|
|
@@ -269,7 +255,7 @@ const Xe = (I) => {
|
|
|
269
255
|
] }) });
|
|
270
256
|
};
|
|
271
257
|
export {
|
|
272
|
-
|
|
273
|
-
|
|
258
|
+
Zt as EntityBadgeIcons,
|
|
259
|
+
Zt as default
|
|
274
260
|
};
|
|
275
261
|
//# sourceMappingURL=EntityBadgeIcons.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityBadgeIcons.js","sources":["../../../src/components/EntityBadgeIcons/EntityBadgeIcons.tsx"],"sourcesContent":["import {\n useDeleteEntity,\n useGetEntityBundle,\n useGetJson,\n useGetSchemaBinding,\n useGetValidationResults,\n} from '@/synapse-queries'\nimport { useGetRealmPrincipals } from '@/synapse-queries/realm/useRealmPrincipals'\nimport { isEntityPublic } from '@/utils/functions/AccessControlListUtils'\nimport {\n ChatBubbleTwoTone,\n CheckTwoTone,\n DescriptionTwoTone,\n LinkOffTwoTone,\n LocalOfferTwoTone,\n LockTwoTone,\n PublicTwoTone,\n} from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport { ALL_ENTITY_BUNDLE_FIELDS } from '@sage-bionetworks/synapse-types'\nimport { isEmpty } from 'lodash-es'\nimport React, { useEffect, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { getDisplayedAnnotation } from '../entity/metadata/AnnotationsTable'\nimport { EntityModal } from '../entity/metadata/EntityModal'\nimport WarningDialog from '../SynapseForm/WarningDialog'\n\nexport type EntityBadgeIconsProps = {\n entityId: string\n versionNumber?: number\n flexWrap?: // possible settings for flex-wrap\n | 'wrap'\n | 'nowrap'\n | '-moz-initial'\n | 'inherit'\n | 'initial'\n | 'revert'\n | 'unset'\n | 'wrap-reverse'\n justifyContent?: 'flex-start' | 'flex-end' | string\n /** Shows an icon indicating if the entity is 'public' or 'private'. Default true */\n showIsPublicPrivate?: boolean\n /** Shows an icon if the entity has sharing settings set on itself. Default true */\n showHasLocalSharingSettings?: boolean\n /** Shows an icon if the entity has annotations, or if it has a validation schema (in experimental mode only). Default true */\n showHasAnnotations?: boolean\n /** Shows an icon if the entity a wiki. Default true */\n showHasWiki?: boolean\n /** Shows an icon if the entity has been mentioned in discussion threads. Default true */\n showHasDiscussionThread?: boolean\n /* Shows an 'unlink' button if the entity is a link and the user has permission to delete it. Default true */\n showUnlink?: boolean\n /* Invoked after the entity is unlinked/deleted in case there is cleanup to do. Returns the entityId */\n onUnlink?: (entityId: string) => void\n onUnlinkError?: (error: unknown) => void\n /** Whether or not the badges (e.g. Annotations) can trigger opening a modal on click */\n canOpenModal: boolean\n}\n\n/**\n * Stateless component used to show icons that show an entity's status.\n * Adapted from https://github.com/Sage-Bionetworks/SynapseWebClient/blob/46b9b717636cda2421926d96365244bbb72a05b6/src/main/java/org/sagebionetworks/web/client/widget/entity/EntityBadge.java\n */\nexport const EntityBadgeIcons = (\n props: EntityBadgeIconsProps,\n): React.ReactNode => {\n const {\n entityId,\n versionNumber,\n flexWrap = 'nowrap',\n justifyContent = 'flex-start',\n showIsPublicPrivate = true,\n showHasLocalSharingSettings = true,\n showHasAnnotations = true,\n showHasWiki = true,\n showHasDiscussionThread = true,\n showUnlink = true,\n onUnlink = () => {\n /* noop */\n },\n onUnlinkError = () => {\n /* noop */\n },\n canOpenModal,\n } = props\n\n const { data } = useGetRealmPrincipals()\n const realmPrincipals = data || {}\n\n enum SchemaConformanceState {\n NO_SCHEMA = '', // or not in experimental mode\n VALID = 'Valid',\n INVALID = 'Invalid',\n ANNOTATIONS_MISSING = 'Missing',\n }\n\n const { ref, inView } = useInView()\n\n const { data: entityData } = useGetJson(entityId, versionNumber, true, {\n enabled: inView,\n })\n const annotations = entityData?.annotations\n const { data: bundle } = useGetEntityBundle(\n entityId,\n versionNumber,\n ALL_ENTITY_BUNDLE_FIELDS,\n {\n enabled: inView,\n },\n )\n const [showModal, setShowModal] = useState(false)\n const [showUnlinkConfirmModal, setShowUnlinkConfirmModal] = useState(false)\n const [schemaConformance, setSchemaConformance] = useState(\n SchemaConformanceState.NO_SCHEMA,\n )\n\n const { data: boundSchema } = useGetSchemaBinding(entityId, {\n enabled: inView,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const { data: schemaValidationResults } = useGetValidationResults(entityId, {\n enabled: inView && !!boundSchema,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n // The maximum number of annotations to show in the popover\n const maxAnnosToShow = 10\n const annotationsCount =\n annotations && !isEmpty(annotations) ? Object.keys(annotations).length : 0\n useEffect(() => {\n if (schemaValidationResults) {\n if (schemaValidationResults.isValid) {\n setSchemaConformance(SchemaConformanceState.VALID)\n } else if (annotationsCount) {\n // If annotations exist, then indicate that they are invalid\n setSchemaConformance(SchemaConformanceState.INVALID)\n } else {\n // If annotations are missing, it's still invalid, but should appear differently\n setSchemaConformance(SchemaConformanceState.ANNOTATIONS_MISSING)\n }\n }\n }, [\n schemaValidationResults,\n annotationsCount,\n annotations,\n SchemaConformanceState.VALID,\n SchemaConformanceState.INVALID,\n SchemaConformanceState.ANNOTATIONS_MISSING,\n ])\n\n const { mutate: unlinkEntity } = useDeleteEntity({\n onSuccess: (_, entityId) => {\n onUnlink(entityId)\n },\n onError: onUnlinkError,\n })\n\n /**\n * Convert the list of annotations to a string of <tr>...anno1</tr><tr>...anno2</tr>...\n * If there are no annotations, this is the empty string ('')\n */\n const annotationsTableRows = (\n <>\n {annotations\n ? Object.entries(annotations ?? []).reduce(\n (previous, current, index) => {\n if (\n index < maxAnnosToShow ||\n (index === maxAnnosToShow &&\n maxAnnosToShow === annotationsCount)\n ) {\n return (\n <>\n {previous}\n <tr>\n <td>\n <b>{current[0]}</b>\n </td>\n <td>\n {Array.isArray(current[1])\n ? current[1].map(getDisplayedAnnotation).join(', ')\n : getDisplayedAnnotation(\n current[1] as string | number | boolean,\n )}\n </td>\n </tr>\n </>\n )\n } else {\n return previous\n }\n },\n <></>,\n )\n : ''}\n </>\n )\n // We also show the schema name if there is one (and we're in experimental mode)\n const valiationSchemaTableRow = (\n <>\n {boundSchema ? (\n <tr>\n <td>\n <b>Validation Schema</b>\n </td>\n <td>{boundSchema.jsonSchemaVersionInfo.schemaName}</td>\n </tr>\n ) : (\n ''\n )}\n </>\n )\n const annotationsHtml = (\n <div className=\"EntityBadgeTooltip\">\n {schemaValidationResults ? <p>{schemaConformance} Annotations</p> : ''}\n <table>\n {annotationsTableRows ? annotationsTableRows : ''}\n {valiationSchemaTableRow}\n </table>\n {annotationsCount > maxAnnosToShow ? (\n <p>and {annotationsCount - maxAnnosToShow} more</p>\n ) : (\n ''\n )}\n </div>\n )\n\n return (\n <div className=\"EntityBadge\" ref={ref} style={{ flexWrap, justifyContent }}>\n {bundle && (\n <>\n <div onClick={e => e.stopPropagation()}>\n <EntityModal\n entityId={entityId}\n show={showModal}\n showTabs={false}\n onClose={() => setShowModal(false)}\n initialTab={'ANNOTATIONS'}\n />\n </div>\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Public\" enterNextDelay={100} placement=\"right\">\n <PublicTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-public-icon'}\n />\n </Tooltip>\n ) : null}\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n !isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Private\" enterNextDelay={100} placement=\"right\">\n <LockTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-private-icon'}\n />\n </Tooltip>\n ) : null}\n {showHasLocalSharingSettings &&\n bundle.benefactorAcl &&\n entityId === bundle.benefactorAcl.id ? (\n <Tooltip\n title=\"Sharing Settings have been set\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <CheckTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'sharing-settings-icon'}\n />\n </Tooltip>\n ) : null}\n\n {showHasAnnotations &&\n !!(annotationsCount || schemaValidationResults) && (\n <Tooltip\n title={annotationsHtml}\n enterNextDelay={100}\n placement=\"right\"\n >\n <LocalOfferTwoTone\n aria-hidden={false}\n role={canOpenModal ? 'button' : 'img'}\n className={`EntityBadge__Badge ${schemaConformance}`}\n style={canOpenModal ? { cursor: 'pointer' } : undefined}\n onClick={canOpenModal ? () => setShowModal(true) : undefined}\n data-html={true}\n data-testid={'annotations-icon'}\n />\n </Tooltip>\n )}\n {showHasWiki && bundle.rootWikiId && (\n <Tooltip title=\"Has a wiki\" enterNextDelay={100} placement=\"right\">\n <DescriptionTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'wiki-icon'}\n />\n </Tooltip>\n )}\n {showHasDiscussionThread &&\n !!bundle.threadCount &&\n !!(bundle.threadCount > 0) && (\n <Tooltip\n title=\"Has been mentioned in discussion\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <ChatBubbleTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'discussion-icon'}\n />\n </Tooltip>\n )}\n {showUnlink &&\n bundle.entityType === EntityType.link &&\n bundle.permissions?.canDelete && (\n <>\n <WarningDialog\n open={showUnlinkConfirmModal}\n title=\"Confirm Unlink\"\n content={\n 'Are you sure you want to remove this link? The original object will not be changed.'\n }\n confirmButtonText=\"Unlink\"\n confirmButtonColor=\"error\"\n onConfirm={() => {\n unlinkEntity(entityId)\n setShowUnlinkConfirmModal(false)\n }}\n onCancel={() => {\n setShowUnlinkConfirmModal(false)\n }}\n />\n <Tooltip\n title=\"Remove this link\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <LinkOffTwoTone\n aria-hidden={false}\n role=\"button\"\n onClick={() => setShowUnlinkConfirmModal(true)}\n className=\"EntityBadge__Badge Unlink\"\n data-testid={'unlink-icon'}\n />\n </Tooltip>\n </>\n )}\n </>\n )}\n </div>\n )\n}\n\nexport default EntityBadgeIcons\n"],"names":["EntityBadgeIcons","props","entityId","versionNumber","flexWrap","justifyContent","showIsPublicPrivate","showHasLocalSharingSettings","showHasAnnotations","showHasWiki","showHasDiscussionThread","showUnlink","onUnlink","onUnlinkError","canOpenModal","data","useGetRealmPrincipals","realmPrincipals","SchemaConformanceState","ref","inView","useInView","entityData","useGetJson","annotations","bundle","useGetEntityBundle","ALL_ENTITY_BUNDLE_FIELDS","showModal","setShowModal","useState","showUnlinkConfirmModal","setShowUnlinkConfirmModal","schemaConformance","setSchemaConformance","boundSchema","useGetSchemaBinding","schemaValidationResults","useGetValidationResults","maxAnnosToShow","annotationsCount","isEmpty","useEffect","unlinkEntity","useDeleteEntity","_","annotationsTableRows","previous","current","index","jsxs","Fragment","jsx","getDisplayedAnnotation","valiationSchemaTableRow","annotationsHtml","e","EntityModal","isEntityPublic","Tooltip","PublicTwoTone","LockTwoTone","CheckTwoTone","LocalOfferTwoTone","DescriptionTwoTone","ChatBubbleTwoTone","EntityType","WarningDialog","LinkOffTwoTone"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EntityBadgeIcons.js","sources":["../../../src/components/EntityBadgeIcons/EntityBadgeIcons.tsx"],"sourcesContent":["import {\n useDeleteEntity,\n useGetEntityBundle,\n useGetJson,\n useGetSchemaBinding,\n useGetValidationResults,\n} from '@/synapse-queries'\nimport { useGetRealmPrincipals } from '@/synapse-queries/realm/useRealmPrincipals'\nimport { isEntityPublic } from '@/utils/functions/AccessControlListUtils'\nimport {\n ChatBubbleTwoTone,\n CheckTwoTone,\n DescriptionTwoTone,\n LinkOffTwoTone,\n LocalOfferTwoTone,\n LockTwoTone,\n PublicTwoTone,\n} from '@mui/icons-material'\nimport { Tooltip } from '@mui/material'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\nimport { ALL_ENTITY_BUNDLE_FIELDS } from '@sage-bionetworks/synapse-types'\nimport { isEmpty } from 'lodash-es'\nimport React, { useEffect, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { getDisplayedAnnotation } from '../entity/metadata/AnnotationsTable'\nimport { EntityModal } from '../entity/metadata/EntityModal'\nimport { HoverPopover } from '../styled/HoverPopover'\nimport WarningDialog from '../SynapseForm/WarningDialog'\n\nexport type EntityBadgeIconsProps = {\n entityId: string\n versionNumber?: number\n flexWrap?: // possible settings for flex-wrap\n | 'wrap'\n | 'nowrap'\n | '-moz-initial'\n | 'inherit'\n | 'initial'\n | 'revert'\n | 'unset'\n | 'wrap-reverse'\n justifyContent?: 'flex-start' | 'flex-end' | string\n /** Shows an icon indicating if the entity is 'public' or 'private'. Default true */\n showIsPublicPrivate?: boolean\n /** Shows an icon if the entity has sharing settings set on itself. Default true */\n showHasLocalSharingSettings?: boolean\n /** Shows an icon if the entity has annotations, or if it has a validation schema (in experimental mode only). Default true */\n showHasAnnotations?: boolean\n /** Shows an icon if the entity a wiki. Default true */\n showHasWiki?: boolean\n /** Shows an icon if the entity has been mentioned in discussion threads. Default true */\n showHasDiscussionThread?: boolean\n /* Shows an 'unlink' button if the entity is a link and the user has permission to delete it. Default true */\n showUnlink?: boolean\n /* Invoked after the entity is unlinked/deleted in case there is cleanup to do. Returns the entityId */\n onUnlink?: (entityId: string) => void\n onUnlinkError?: (error: unknown) => void\n /** Whether or not the badges (e.g. Annotations) can trigger opening a modal on click */\n canOpenModal: boolean\n}\n\n/**\n * Stateless component used to show icons that show an entity's status.\n * Adapted from https://github.com/Sage-Bionetworks/SynapseWebClient/blob/46b9b717636cda2421926d96365244bbb72a05b6/src/main/java/org/sagebionetworks/web/client/widget/entity/EntityBadge.java\n */\nexport const EntityBadgeIcons = (\n props: EntityBadgeIconsProps,\n): React.ReactNode => {\n const {\n entityId,\n versionNumber,\n flexWrap = 'nowrap',\n justifyContent = 'flex-start',\n showIsPublicPrivate = true,\n showHasLocalSharingSettings = true,\n showHasAnnotations = true,\n showHasWiki = true,\n showHasDiscussionThread = true,\n showUnlink = true,\n onUnlink = () => {\n /* noop */\n },\n onUnlinkError = () => {\n /* noop */\n },\n canOpenModal,\n } = props\n\n const { data } = useGetRealmPrincipals()\n const realmPrincipals = data || {}\n\n enum SchemaConformanceState {\n NO_SCHEMA = '', // or not in experimental mode\n VALID = 'Valid',\n INVALID = 'Invalid',\n ANNOTATIONS_MISSING = 'Missing',\n }\n\n const { ref, inView } = useInView()\n\n const { data: entityData } = useGetJson(entityId, versionNumber, true, {\n enabled: inView,\n })\n const annotations = entityData?.annotations\n const { data: bundle } = useGetEntityBundle(\n entityId,\n versionNumber,\n ALL_ENTITY_BUNDLE_FIELDS,\n {\n enabled: inView,\n },\n )\n const [showModal, setShowModal] = useState(false)\n const [showUnlinkConfirmModal, setShowUnlinkConfirmModal] = useState(false)\n const [schemaConformance, setSchemaConformance] = useState(\n SchemaConformanceState.NO_SCHEMA,\n )\n\n const { data: boundSchema } = useGetSchemaBinding(entityId, {\n enabled: inView,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const { data: schemaValidationResults } = useGetValidationResults(entityId, {\n enabled: inView && !!boundSchema,\n staleTime: 60 * 1000, // 60 seconds\n })\n\n const annotationsCount =\n annotations && !isEmpty(annotations) ? Object.keys(annotations).length : 0\n useEffect(() => {\n if (schemaValidationResults) {\n if (schemaValidationResults.isValid) {\n setSchemaConformance(SchemaConformanceState.VALID)\n } else if (annotationsCount) {\n // If annotations exist, then indicate that they are invalid\n setSchemaConformance(SchemaConformanceState.INVALID)\n } else {\n // If annotations are missing, it's still invalid, but should appear differently\n setSchemaConformance(SchemaConformanceState.ANNOTATIONS_MISSING)\n }\n }\n }, [\n schemaValidationResults,\n annotationsCount,\n annotations,\n SchemaConformanceState.VALID,\n SchemaConformanceState.INVALID,\n SchemaConformanceState.ANNOTATIONS_MISSING,\n ])\n\n const { mutate: unlinkEntity } = useDeleteEntity({\n onSuccess: (_, entityId) => {\n onUnlink(entityId)\n },\n onError: onUnlinkError,\n })\n\n /**\n * Convert the list of annotations to a string of <tr>...anno1</tr><tr>...anno2</tr>...\n * If there are no annotations, this is the empty string ('')\n */\n const annotationsTableRows = (\n <>\n {annotations\n ? Object.entries(annotations ?? []).map(([key, value]) => (\n <tr key={key}>\n <td>\n <b>{key}</b>\n </td>\n <td>\n {Array.isArray(value)\n ? value.map(getDisplayedAnnotation).join(', ')\n : getDisplayedAnnotation(value as string | number | boolean)}\n </td>\n </tr>\n ))\n : ''}\n </>\n )\n // We also show the schema name if there is one (and we're in experimental mode)\n const valiationSchemaTableRow = (\n <>\n {boundSchema ? (\n <tr>\n <td>\n <b>Validation Schema</b>\n </td>\n <td>{boundSchema.jsonSchemaVersionInfo.schemaName}</td>\n </tr>\n ) : (\n ''\n )}\n </>\n )\n const annotationsTitle = schemaValidationResults\n ? `${schemaConformance} Annotations`\n : ''\n const annotationsHtml = (\n <div className=\"EntityBadgeTooltip\">\n <table>\n <tbody>\n {annotationsTableRows ? annotationsTableRows : ''}\n {valiationSchemaTableRow}\n </tbody>\n </table>\n </div>\n )\n\n return (\n <div className=\"EntityBadge\" ref={ref} style={{ flexWrap, justifyContent }}>\n {bundle && (\n <>\n <div onClick={e => e.stopPropagation()}>\n <EntityModal\n entityId={entityId}\n show={showModal}\n showTabs={false}\n onClose={() => setShowModal(false)}\n initialTab={'ANNOTATIONS'}\n />\n </div>\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Public\" enterNextDelay={100} placement=\"right\">\n <PublicTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-public-icon'}\n />\n </Tooltip>\n ) : null}\n {showIsPublicPrivate &&\n bundle.benefactorAcl &&\n !isEntityPublic(\n bundle.benefactorAcl.resourceAccess,\n realmPrincipals,\n ) ? (\n <Tooltip title=\"Private\" enterNextDelay={100} placement=\"right\">\n <LockTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'is-private-icon'}\n />\n </Tooltip>\n ) : null}\n {showHasLocalSharingSettings &&\n bundle.benefactorAcl &&\n entityId === bundle.benefactorAcl.id ? (\n <Tooltip\n title=\"Sharing Settings have been set\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <CheckTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'sharing-settings-icon'}\n />\n </Tooltip>\n ) : null}\n\n {showHasAnnotations &&\n !!(annotationsCount || schemaValidationResults) && (\n <HoverPopover\n title={annotationsTitle}\n popoverContent={annotationsHtml}\n placement=\"right\"\n maxWidth={500}\n actionButton={\n canOpenModal\n ? {\n content: 'Edit Annotations',\n onClick: () => setShowModal(true),\n closeOnClick: true,\n }\n : undefined\n }\n >\n <LocalOfferTwoTone\n aria-hidden={false}\n role={canOpenModal ? 'button' : 'img'}\n className={`EntityBadge__Badge ${schemaConformance}`}\n data-html={true}\n data-testid={'annotations-icon'}\n />\n </HoverPopover>\n )}\n {showHasWiki && bundle.rootWikiId && (\n <Tooltip title=\"Has a wiki\" enterNextDelay={100} placement=\"right\">\n <DescriptionTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'wiki-icon'}\n />\n </Tooltip>\n )}\n {showHasDiscussionThread &&\n !!bundle.threadCount &&\n !!(bundle.threadCount > 0) && (\n <Tooltip\n title=\"Has been mentioned in discussion\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <ChatBubbleTwoTone\n aria-hidden={false}\n role=\"img\"\n className=\"EntityBadge__Badge\"\n data-testid={'discussion-icon'}\n />\n </Tooltip>\n )}\n {showUnlink &&\n bundle.entityType === EntityType.link &&\n bundle.permissions?.canDelete && (\n <>\n <WarningDialog\n open={showUnlinkConfirmModal}\n title=\"Confirm Unlink\"\n content={\n 'Are you sure you want to remove this link? The original object will not be changed.'\n }\n confirmButtonText=\"Unlink\"\n confirmButtonColor=\"error\"\n onConfirm={() => {\n unlinkEntity(entityId)\n setShowUnlinkConfirmModal(false)\n }}\n onCancel={() => {\n setShowUnlinkConfirmModal(false)\n }}\n />\n <Tooltip\n title=\"Remove this link\"\n enterNextDelay={100}\n placement=\"right\"\n >\n <LinkOffTwoTone\n aria-hidden={false}\n role=\"button\"\n onClick={() => setShowUnlinkConfirmModal(true)}\n className=\"EntityBadge__Badge Unlink\"\n data-testid={'unlink-icon'}\n />\n </Tooltip>\n </>\n )}\n </>\n )}\n </div>\n )\n}\n\nexport default EntityBadgeIcons\n"],"names":["EntityBadgeIcons","props","entityId","versionNumber","flexWrap","justifyContent","showIsPublicPrivate","showHasLocalSharingSettings","showHasAnnotations","showHasWiki","showHasDiscussionThread","showUnlink","onUnlink","onUnlinkError","canOpenModal","data","useGetRealmPrincipals","realmPrincipals","SchemaConformanceState","ref","inView","useInView","entityData","useGetJson","annotations","bundle","useGetEntityBundle","ALL_ENTITY_BUNDLE_FIELDS","showModal","setShowModal","useState","showUnlinkConfirmModal","setShowUnlinkConfirmModal","schemaConformance","setSchemaConformance","boundSchema","useGetSchemaBinding","schemaValidationResults","useGetValidationResults","annotationsCount","isEmpty","useEffect","unlinkEntity","useDeleteEntity","_","annotationsTableRows","jsx","Fragment","key","value","getDisplayedAnnotation","valiationSchemaTableRow","jsxs","annotationsTitle","annotationsHtml","e","EntityModal","isEntityPublic","Tooltip","PublicTwoTone","LockTwoTone","CheckTwoTone","HoverPopover","LocalOfferTwoTone","DescriptionTwoTone","ChatBubbleTwoTone","EntityType","WarningDialog","LinkOffTwoTone"],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ import "../../utils/context/SynapseContext.js";
|
|
|
15
15
|
import "@tanstack/react-query";
|
|
16
16
|
import { useState as s, useRef as U } from "react";
|
|
17
17
|
import "@tanstack/query-core";
|
|
18
|
-
import
|
|
18
|
+
import k from "../../synapse-queries/entity/useEntityBundle.js";
|
|
19
19
|
import "../../utils/PermissionLevelToAccessType.js";
|
|
20
20
|
import "use-deep-compare-effect";
|
|
21
21
|
import "lodash-es/isEmpty";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as o, Fragment as l } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import a from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import "../../../../../synapse-client/SynapseClient.js";
|
|
4
4
|
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
5
5
|
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import o from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { Skeleton as l } from "@mui/material";
|
|
4
4
|
import { DateCell as a } from "./DateCell.js";
|
|
5
5
|
function c(t) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as t, Fragment as r } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import o from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { Skeleton as m } from "@mui/material";
|
|
4
4
|
import { EntityLink as a } from "../../../../EntityLink.js";
|
|
5
5
|
function u(i) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as o, Fragment as c } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import d from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { Skeleton as s, Tooltip as p } from "@mui/material";
|
|
4
4
|
import { useMutation as m } from "@tanstack/react-query";
|
|
5
5
|
import { displayToast as u } from "../../../../ToastMessage/ToastMessage.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as n } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import s from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { calculateFriendlyFileSize as c } from "../../../../../utils/functions/calculateFriendlyFileSize.js";
|
|
4
4
|
import { Skeleton as f } from "@mui/material";
|
|
5
5
|
function S(t) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import n from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { Skeleton as d } from "@mui/material";
|
|
4
4
|
import { UserBadgeCell as l } from "./UserBadgeCell.js";
|
|
5
5
|
function s(i) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import r from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import { Skeleton as l } from "@mui/material";
|
|
4
4
|
import { DateCell as d } from "./DateCell.js";
|
|
5
5
|
function s(t) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as t, Fragment as n } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import e from "../../../../../synapse-queries/entity/useEntityBundle.js";
|
|
3
3
|
import "../../../../../synapse-client/SynapseClient.js";
|
|
4
4
|
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
5
5
|
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
@@ -29,7 +29,7 @@ import "react-router";
|
|
|
29
29
|
import { EntityType as D } from "@sage-bionetworks/synapse-client";
|
|
30
30
|
import "../../../utils/types/IsType.js";
|
|
31
31
|
import { useGetEntityPath as Q } from "../../../synapse-queries/entity/useEntity.js";
|
|
32
|
-
import
|
|
32
|
+
import Z from "../../../synapse-queries/entity/useEntityBundle.js";
|
|
33
33
|
import { useGetEntityHeader as ee } from "../../../synapse-queries/entity/useGetEntityHeaders.js";
|
|
34
34
|
import { convertToEntityType as te } from "../../../utils/functions/EntityTypeUtils.js";
|
|
35
35
|
import { useGetFavorites as re } from "../../../synapse-queries/user/useFavorites.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityHeaderTable.d.ts","sourceRoot":"","sources":["../../../src/components/EntityHeaderTable/EntityHeaderTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAsBzB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;
|
|
1
|
+
{"version":3,"file":"EntityHeaderTable.d.ts","sourceRoot":"","sources":["../../../src/components/EntityHeaderTable/EntityHeaderTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAsBzB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAmB7E,OAAO,EAEL,sBAAsB,EACvB,MAAM,mCAAmC,CAAA;AAsB1C,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,aAAa,CAAA;IACzB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,KAAK,IAAI,CAAA;IAC/C,4BAA4B,CAAC,EAAE,MAAM,CAAA;IACrC,wBAAwB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElD,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,yBAAyB,CAAC,EAAE,sBAAsB,CAAC,eAAe,CAAC,CAAA;CACpE,CAAA;AAKD,MAAM,MAAM,mBAAmB,GAAG,YAAY,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,sBAAsB,KAC5B,KAAK,CAAC,SAsgBR,CAAA"}
|