synapse-react-client 4.0.1 → 4.0.3
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/icons/AwardScroll.d.ts +5 -0
- package/dist/assets/icons/AwardScroll.d.ts.map +1 -0
- package/dist/assets/icons/AwardScroll.js +78 -0
- package/dist/assets/icons/AwardScroll.js.map +1 -0
- package/dist/assets/icons/Baseline.d.ts +5 -0
- package/dist/assets/icons/Baseline.d.ts.map +1 -0
- package/dist/assets/icons/Baseline.js +43 -0
- package/dist/assets/icons/Baseline.js.map +1 -0
- package/dist/assets/icons/Challenge.svg +13 -0
- package/dist/assets/icons/Challenge.svg.js +7 -0
- package/dist/assets/icons/Challenge.svg.js.map +1 -0
- package/dist/assets/icons/ClappingHands.d.ts +5 -0
- package/dist/assets/icons/ClappingHands.d.ts.map +1 -0
- package/dist/assets/icons/ClappingHands.js +106 -0
- package/dist/assets/icons/ClappingHands.js.map +1 -0
- package/dist/assets/icons/HandWithMoney.d.ts +5 -0
- package/dist/assets/icons/HandWithMoney.d.ts.map +1 -0
- package/dist/assets/icons/HandWithMoney.js +15 -0
- package/dist/assets/icons/HandWithMoney.js.map +1 -0
- package/dist/assets/icons/MultiFile.d.ts +5 -0
- package/dist/assets/icons/MultiFile.d.ts.map +1 -0
- package/dist/assets/icons/MultiFile.js +8 -0
- package/dist/assets/icons/MultiFile.js.map +1 -0
- package/dist/assets/icons/MultiFile.svg +4 -0
- package/dist/assets/icons/MultiFile.svg.js +7 -0
- package/dist/assets/icons/MultiFile.svg.js.map +1 -0
- package/dist/assets/icons/OpenBook.d.ts +5 -0
- package/dist/assets/icons/OpenBook.d.ts.map +1 -0
- package/dist/assets/icons/OpenBook.js +99 -0
- package/dist/assets/icons/OpenBook.js.map +1 -0
- package/dist/assets/icons/Podium.d.ts +5 -0
- package/dist/assets/icons/Podium.d.ts.map +1 -0
- package/dist/assets/icons/Podium.js +36 -0
- package/dist/assets/icons/Podium.js.map +1 -0
- package/dist/assets/icons/RosetteRibbon.d.ts +5 -0
- package/dist/assets/icons/RosetteRibbon.d.ts.map +1 -0
- package/dist/assets/icons/RosetteRibbon.js +36 -0
- package/dist/assets/icons/RosetteRibbon.js.map +1 -0
- package/dist/assets/icons/StarTrophy.d.ts +5 -0
- package/dist/assets/icons/StarTrophy.d.ts.map +1 -0
- package/dist/assets/icons/StarTrophy.js +99 -0
- package/dist/assets/icons/StarTrophy.js.map +1 -0
- package/dist/assets/icons/ThreeStars.d.ts +5 -0
- package/dist/assets/icons/ThreeStars.d.ts.map +1 -0
- package/dist/assets/icons/ThreeStars.js +71 -0
- package/dist/assets/icons/ThreeStars.js.map +1 -0
- package/dist/assets/icons/UnpackagableFile.d.ts +5 -0
- package/dist/assets/icons/UnpackagableFile.d.ts.map +1 -0
- package/dist/assets/icons/UnpackagableFile.js +8 -0
- package/dist/assets/icons/UnpackagableFile.js.map +1 -0
- package/dist/assets/icons/UnpackagableFile.svg +4 -0
- package/dist/assets/icons/UnpackagableFile.svg.js +7 -0
- package/dist/assets/icons/UnpackagableFile.svg.js.map +1 -0
- package/dist/assets/mui_components/PackagableFile.d.ts.map +1 -1
- package/dist/assets/mui_components/PackagableFile.js +5 -4
- package/dist/assets/mui_components/PackagableFile.js.map +1 -1
- package/dist/assets/mui_components/PackagableFile.svg +3 -0
- package/dist/assets/mui_components/PackagableFile.svg.js +7 -0
- package/dist/assets/mui_components/PackagableFile.svg.js.map +1 -0
- package/dist/assets/themed_icons/index.d.ts +1 -2
- package/dist/assets/themed_icons/index.d.ts.map +1 -1
- package/dist/assets/themed_icons/index.js +8 -10
- package/dist/assets/themed_icons/index.js.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +4 -4
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AddToDownloadListV2.js +10 -10
- package/dist/components/AddToDownloadListV2.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -2
- package/dist/components/BasePortalCard/BasePortalCard.d.ts.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.js +21 -28
- package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss +7 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +11 -11
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +24 -24
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts +5 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.js.map +1 -1
- package/dist/components/CardContainerLogic/index.d.ts +1 -1
- package/dist/components/CardContainerLogic/index.d.ts.map +1 -1
- package/dist/components/CardDeck/TableQueryCardDeck.js +12 -9
- package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
- package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js +33 -33
- package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
- package/dist/components/ChangePassword/useChangePasswordFormState.js +5 -2
- package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
- package/dist/components/ComponentCollapse.d.ts +6 -10
- package/dist/components/ComponentCollapse.d.ts.map +1 -1
- package/dist/components/ComponentCollapse.js +31 -35
- package/dist/components/ComponentCollapse.js.map +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +12 -9
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +8 -3
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +8 -3
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +8 -3
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.d.ts.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.js +23 -23
- package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
- package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts +6 -2
- package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts.map +1 -1
- package/dist/components/DownloadCart/AvailableForDownloadTable.js +10 -8
- package/dist/components/DownloadCart/AvailableForDownloadTable.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.css +1 -0
- package/dist/components/DownloadCart/CreatePackageV2.d.ts.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.js +50 -46
- package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.module.scss +38 -0
- package/dist/components/DownloadCart/CreatePackageV2.module.scss.js +14 -0
- package/dist/components/DownloadCart/CreatePackageV2.module.scss.js.map +1 -0
- package/dist/components/DownloadCart/DownloadCartPage.css +1 -0
- package/dist/components/DownloadCart/DownloadCartPage.d.ts.map +1 -1
- package/dist/components/DownloadCart/DownloadCartPage.js +316 -186
- package/dist/components/DownloadCart/DownloadCartPage.js.map +1 -1
- package/dist/components/DownloadCart/DownloadCartPage.module.scss +217 -0
- package/dist/components/DownloadCart/DownloadCartPage.module.scss.js +48 -0
- package/dist/components/DownloadCart/DownloadCartPage.module.scss.js.map +1 -0
- package/dist/components/DownloadCart/DownloadDetails.js +1 -1
- package/dist/components/DownloadCart/DownloadDetails.js.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js +33 -33
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.d.ts +4 -1
- package/dist/components/DownloadCart/DownloadListTable.d.ts.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.js +156 -236
- package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
- package/dist/components/DownloadCart/ShowDownloadV2.js +5 -5
- package/dist/components/DownloadCart/ShowDownloadV2.js.map +1 -1
- package/dist/components/Ecosystem/EcosystemSkeleton.js +8 -3
- package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.d.ts +3 -0
- package/dist/components/EntityDownloadButton/EntityDownloadButton.d.ts.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js +113 -119
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +3 -3
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FacetPlotsCard.js +6 -2
- package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js +11 -8
- package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js.map +1 -1
- package/dist/components/FullWidthAlert/FullWidthAlert.d.ts +2 -2
- package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
- package/dist/components/GenericCard/GenericCard.d.ts +5 -5
- package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/GenericCard.js +117 -103
- package/dist/components/GenericCard/GenericCard.js.map +1 -1
- package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts +10 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts.map +1 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.js +33 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.js.map +1 -0
- package/dist/components/GenericCard/SynapseCardLabel.d.ts +2 -1
- package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js +86 -81
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts +7 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +239 -202
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/HeaderCard.js +17 -13
- package/dist/components/HeaderCard.js.map +1 -1
- package/dist/components/Icon/Icon.js +52 -52
- package/dist/components/Icon/Icon.js.map +1 -1
- package/dist/components/IconSvg/IconSvg.d.ts +1 -1
- package/dist/components/IconSvg/IconSvg.d.ts.map +1 -1
- package/dist/components/IconSvg/IconSvg.js +215 -171
- package/dist/components/IconSvg/IconSvg.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts +1 -0
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +103 -102
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/StorybookComponentWrapper.js +6 -3
- package/dist/components/StorybookComponentWrapper.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChat.d.ts +7 -1
- package/dist/components/SynapseChat/SynapseChat.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChat.js +76 -67
- package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.d.ts +2 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.js +83 -58
- package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatMessage.d.ts +1 -0
- package/dist/components/SynapseChat/SynapseChatMessage.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChatMessage.js +16 -15
- package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
- package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts +12 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts.map +1 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.js +30 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.js.map +1 -0
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.d.ts.map +1 -1
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.js +22 -16
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
- package/dist/components/SynapseChat/index.d.ts +2 -0
- package/dist/components/SynapseChat/index.d.ts.map +1 -1
- package/dist/components/SynapseChat/index.js +5 -3
- package/dist/components/SynapseChat/index.js.map +1 -1
- package/dist/components/SynapseChat/useChatState.d.ts +1 -1
- package/dist/components/SynapseChat/useChatState.d.ts.map +1 -1
- package/dist/components/SynapseChat/useChatState.js +10 -7
- package/dist/components/SynapseChat/useChatState.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.d.ts.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js +30 -32
- package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.d.ts.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js +27 -30
- package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseSearchChips.d.ts.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseSearchChips.js +14 -17
- package/dist/components/SynapseHomepageV2/SynapseSearchChips.js.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +114 -115
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.d.ts.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +66 -64
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +13 -13
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js +9 -9
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
- package/dist/components/TextToComponentCollapse.d.ts +16 -0
- package/dist/components/TextToComponentCollapse.d.ts.map +1 -0
- package/dist/components/TextToComponentCollapse.js +29 -0
- package/dist/components/TextToComponentCollapse.js.map +1 -0
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +8 -3
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUI.d.ts +1 -1
- package/dist/components/download_list/DownloadConfirmationUI.js +22 -22
- package/dist/components/download_list/DownloadConfirmationUI.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUtils.js +4 -4
- package/dist/components/download_list/DownloadConfirmationUtils.js.map +1 -1
- package/dist/components/index.js +85 -83
- package/dist/components/index.js.map +1 -1
- package/dist/components/row_renderers/ObservationCard.js +12 -11
- package/dist/components/row_renderers/ObservationCard.js.map +1 -1
- package/dist/components/row_renderers/utils/CardFooter.d.ts +1 -3
- package/dist/components/row_renderers/utils/CardFooter.d.ts.map +1 -1
- package/dist/components/row_renderers/utils/CardFooter.js +31 -45
- package/dist/components/row_renderers/utils/CardFooter.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +8 -3
- package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js +8 -3
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
- package/dist/features/curator/GridPage/GridPage.js +8 -3
- package/dist/features/curator/GridPage/GridPage.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.js +8 -3
- package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
- package/dist/index.js +137 -135
- package/dist/index.js.map +1 -1
- package/dist/style/components/_all.scss +0 -1
- package/dist/style/components/_cards.scss +22 -0
- package/dist/style/components/_download-list-v2.scss +1 -1
- package/dist/style/components/_query-wrapper-plot-nav.scss +13 -0
- package/dist/style/main.css +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.d.ts.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.js.map +1 -1
- package/dist/utils/context/FullContextProvider.js +9 -9
- package/dist/utils/context/FullContextProvider.js.map +1 -1
- package/dist/utils/context/SynapseContext.d.ts.map +1 -1
- package/dist/utils/context/SynapseContext.js +1 -0
- package/dist/utils/context/SynapseContext.js.map +1 -1
- package/dist/utils/functions/SqlFunctions.d.ts +4 -0
- package/dist/utils/functions/SqlFunctions.d.ts.map +1 -1
- package/dist/utils/functions/SqlFunctions.js +25 -23
- package/dist/utils/functions/SqlFunctions.js.map +1 -1
- package/package.json +6 -6
- package/dist/assets/themed_icons/Challenge.d.ts +0 -3
- package/dist/assets/themed_icons/Challenge.d.ts.map +0 -1
- package/dist/assets/themed_icons/Challenge.js +0 -25
- package/dist/assets/themed_icons/Challenge.js.map +0 -1
- package/dist/style/components/_download-cart-page.scss +0 -204
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableRowGenericCard.js","sources":["../../../src/components/GenericCard/TableRowGenericCard.tsx"],"sourcesContent":["import { CommonCardProps } from '@/components/CardContainer/CardConfiguration'\nimport {\n getFileHandleAssociation,\n getLinkParams,\n getValueOrMultiValue,\n} from '@/components/GenericCard/CardUtils'\nimport CroissantButton from '@/components/GenericCard/CroissantButton/CroissantButton'\nimport { GenericCardIcon } from '@/components/GenericCard/GenericCardIcon'\nimport PortalDOI from '@/components/GenericCard/PortalDOI/PortalDOI'\nimport {\n getCandidateDoiId,\n useShowDoiCardLabel,\n} from '@/components/GenericCard/PortalDOI/PortalDOIUtils'\nimport { mapRowToRecord } from '@/components/SynapseTable/SynapseTableUtils'\nimport { useGetEntity } from '@/synapse-queries'\nimport * as SynapseConstants from '@/utils/SynapseConstants'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport {\n isDatasetCollection,\n isTableEntity,\n} from '@/utils/functions/EntityTypeUtils'\nimport { PRODUCTION_ENDPOINT_CONFIG } from '@/utils/functions/getEndpoint'\nimport { getColumnIndex } from '@/utils/functions/SqlFunctions'\nimport { parseSynId } from '@/utils/functions/RegularExpressions'\nimport { GetAppTwoTone } from '@mui/icons-material'\nimport { Box, Collapse, Link } from '@mui/material'\nimport {\n ColumnModel,\n ColumnTypeEnum,\n Entity,\n SelectColumn,\n Table,\n} from '@sage-bionetworks/synapse-types'\nimport React, { useCallback, useMemo, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport { TargetEnum } from '@/utils/html/TargetEnum'\nimport CitationPopover from '../CitationPopover'\nimport { EntityDownloadConfirmation } from '../EntityDownloadConfirmation'\nimport { HeaderCardVariant } from '../HeaderCard'\nimport IconList from '../IconList'\nimport { useQueryContext } from '../QueryContext/QueryContext'\nimport { useQueryVisualizationContext } from '../QueryVisualizationWrapper'\nimport GenericCard from './GenericCard'\nimport GenericCardActionButton from './GenericCardActionButton'\nimport { SynapseCardLabel } from './SynapseCardLabel'\nimport { SustainabilityScorecardProps } from '../SustainabilityScorecard/SustainabilityScorecard'\nimport { PortalDOIConfiguration } from './PortalDOI/PortalDOIConfiguration'\nimport ShareThisPage, {\n ShareThisPageProps,\n} from '../ShareThisPage/ShareThisPage'\nimport { useResolvedSynapseEntity } from './useResolvedSynapseEntity'\n\ntype RowSynapseEntityConfig = {\n /** Use the table rowId to resolve the Synapse entity ID. */\n id: {\n source: 'rowId'\n }\n /** Use the table rowVersionNumber to resolve the Synapse entity version (if available). */\n version?: {\n source: 'rowVersionNumber'\n }\n}\n\ntype ColumnSynapseEntityConfig = {\n /** Use a column value to resolve the Synapse entity ID. */\n id: {\n source: 'column'\n columnName: string\n }\n /** Use a column value to resolve the Synapse entity version. */\n version?: {\n source: 'column'\n columnName: string\n }\n}\n\nexport type SynapseEntityConfig =\n | RowSynapseEntityConfig\n | ColumnSynapseEntityConfig\n\n/**\n * Maps a table query result to a GenericCard.\n */\nexport type TableToGenericCardMapping = {\n /** The 'type' of resource a card refers to. Renders a label on the card with this string value.\n * Can be hidden by setting it to '' (empty string)\n */\n type: string\n /** The column name whose data contains the title of the card */\n title: string\n /** The column name whose data contains the subtitle of the card */\n subTitle?: string\n /** The column name whose data contains the description of the card */\n description?: string\n /** If true, a 'Cite As' button will be displayed for those cards with a DOI in the 'doi' column */\n includeCitation?: boolean\n /** If true, a 'Share this page' button will be displayed */\n includeShareButton?: boolean\n /**\n * Configuration for displaying the SustainabilityScorecard component\n */\n sustainabilityScorecard?: SustainabilityScorecardProps\n /** The initial citation format to use in the 'Cite As' UI */\n defaultCitationFormat?: 'bibtex' | 'apa' | 'ieee' | 'nature' | 'science'\n /** Static text displayed in the 'Cite As' UI */\n citationBoilerplateText?: string\n /** The column name whose data contains the value used to map to the icon */\n icon?: string\n /** The column name whose data contains an image file handle to be displayed on the card */\n imageFileHandleColumnName?: string\n /** Static boolean value used if the image displayed using `imageFileHandleColumnName` requires extra padding */\n thumbnailRequiresPadding?: boolean\n /** Array of column names to be used for labels in the Card Footer */\n secondaryLabels?: string[]\n /** Can be used to add a custom secondary label */\n customSecondaryLabelConfig?: {\n /** The displayed label key */\n key: string\n /** The value to display */\n value: React.ReactNode\n /** Callback to determine visibility of the label\n * @param schema the mapping of columnName to data index\n * @param data the row data\n */\n isVisible: (schema: Record<string, number>, data: string[]) => boolean\n }\n /** Column name of the link value if the title should be linked */\n link?: string\n /** Column name of the STRING_LIST column that includes icon names that represent icons that should be displayed on the card */\n dataTypeIconNames?: string\n /** Configuration for resolving the Synapse entity ID/version represented by each card row.\n * The ID and version sources must both reference either row-based values or column-based values.\n */\n synapseEntityConfig?: SynapseEntityConfig\n /** The column name whose data contains a synId that can be used to show a button to add the corresponding entity to the download cart. */\n downloadCartSynId?: string\n /** Configuration to display a DOI, as well as the ability to create one for users with such permission */\n portalDoiConfiguration?: PortalDOIConfiguration\n}\n\nexport type TableRowGenericCardProps = {\n /** The schema that maps a table result to the GenericCard UI */\n genericCardSchema: TableToGenericCardMapping\n /** The table's SelectColumns */\n selectColumns?: SelectColumn[]\n /** The table's ColumnModels */\n columnModels?: ColumnModel[]\n /** If true, the 'type' column will be used as the icon string to choose the icon */\n useTypeColumnForIcon?: boolean\n /** If true, render the card as a HeaderCard */\n isHeader?: boolean\n /** If isHeader is true, use this variant of HeaderCard */\n headerCardVariant?: HeaderCardVariant\n isAlignToLeftNav?: boolean\n /** Mapping of column name to row data index */\n schema: Record<string, number>\n /** The row data */\n data: string[]\n /** The ID of the table row */\n rowId?: number\n /** The versionNumber of the table row */\n versionNumber?: number\n /** Optional props for the ShareThisPage component */\n sharePageLinkButtonProps?: ShareThisPageProps\n /** Optional function that receives schema and data and returns a ReactNode to be rendered next to the card type */\n CardTypeAdornment?: React.ComponentType<{\n schema: Record<string, number>\n data: string[]\n }>\n} & CommonCardProps\n\n// SWC-6115: special rendering of the version column (for Views)\nfunction VersionLabel(props: { synapseId: string; version: string }) {\n const { synapseId, version } = props\n return (\n <span>\n {version} \n <a\n target={TargetEnum.NEW_WINDOW}\n rel=\"noopener noreferrer\"\n href={`${PRODUCTION_ENDPOINT_CONFIG.PORTAL}Synapse:${synapseId}.${version}`}\n >\n (Show Version History on Synapse)\n </a>\n </span>\n )\n}\n\n/**\n * Maps a table row to a GenericCard.\n */\nexport function TableRowGenericCard(props: TableRowGenericCardProps) {\n const [showDownloadConfirmation, setShowDownloadConfirmation] =\n useState(false)\n const [downloadButtonLoading, setDownloadButtonLoading] = useState(false)\n\n const { entityId, versionNumber } = useQueryContext()\n const { getColumnDisplayName } = useQueryVisualizationContext()\n\n const { ref, inView: cardIsInView } = useInView()\n\n const { data: table } = useGetEntity<Table>(entityId, versionNumber)\n\n const {\n schema,\n data,\n rowId,\n versionNumber: rowVersionNumber,\n genericCardSchema,\n secondaryLabelLimit,\n sharePageLinkButtonProps,\n selectColumns,\n columnModels,\n iconOptions,\n useTypeColumnForIcon = false,\n isHeader = false,\n sustainabilityScorecard,\n headerCardVariant,\n titleLinkConfig,\n ctaLinkConfig,\n labelLinkConfig,\n descriptionConfig,\n columnIconOptions,\n CardTypeAdornment,\n charCountCutoff,\n } = props\n\n const {\n link = '',\n type,\n includeCitation,\n includeShareButton,\n defaultCitationFormat,\n citationBoilerplateText,\n downloadCartSynId,\n portalDoiConfiguration,\n } = genericCardSchema\n const title = data[schema[genericCardSchema.title]]\n let subTitle =\n genericCardSchema.subTitle && data[schema[genericCardSchema.subTitle]]\n subTitle =\n genericCardSchema.subTitle &&\n getValueOrMultiValue({\n value: subTitle,\n columnName: genericCardSchema.subTitle,\n selectColumns,\n columnModels,\n }).str\n const description = data[schema[genericCardSchema.description || '']]\n const iconValue = data[schema[genericCardSchema.icon || '']]\n const dataTypeIconNames =\n data[schema[genericCardSchema.dataTypeIconNames || '']]\n const imageFileHandleIdValue =\n data[schema[genericCardSchema.imageFileHandleColumnName || '']]\n const titleColumnModel = columnModels?.find(\n el => genericCardSchema.link === el.name,\n )\n const titleColumnType = titleColumnModel?.columnType\n // wrap link in parens because undefined would throw an error\n const linkValue: string = data[schema[link]] || ''\n const { href, target } = getLinkParams(\n linkValue,\n titleLinkConfig,\n data,\n schema,\n rowId,\n )\n\n const synapseEntityConfig = genericCardSchema.synapseEntityConfig\n\n const getColumnValue = useCallback(\n (columnName?: string) => {\n if (!columnName) {\n return undefined\n }\n const columnIndex = schema[columnName]\n if (columnIndex === undefined) {\n return undefined\n }\n return data[columnIndex]\n },\n [schema, data],\n )\n\n const {\n entityId: resolvedSynapseEntityId,\n entityVersionNumber: resolvedSynapseEntityVersionNumber,\n } = useResolvedSynapseEntity({\n synapseEntityConfig,\n getColumnValue,\n rowId,\n rowVersionNumber,\n })\n\n let resolvedDownloadCartSynIdValue = resolvedSynapseEntityId\n let resolvedDownloadCartVersionNumber = resolvedSynapseEntityVersionNumber\n\n if (downloadCartSynId) {\n const reference = parseSynId(getColumnValue(downloadCartSynId) ?? '')\n resolvedDownloadCartSynIdValue = reference?.targetId\n resolvedDownloadCartVersionNumber = reference?.targetVersionNumber\n }\n\n // Transform the row to a record of (columnName, value) pairs for compatibility with getCandidateDoiId\n const dataAsRecord: Record<string, string | null> = useMemo(\n () => mapRowToRecord(data, schema),\n [data, schema],\n )\n\n const candidateDoiId = getCandidateDoiId({\n data: dataAsRecord,\n portalDoiConfiguration,\n })\n\n const showDoiCardLabel = useShowDoiCardLabel({\n portalId: portalDoiConfiguration?.portalId,\n resourceId: candidateDoiId,\n })\n\n const values: {\n columnDisplayName: string\n value: React.ReactNode\n columnName?: string\n }[] = []\n const { secondaryLabels = [] } = genericCardSchema\n const customLabelConfig = genericCardSchema.customSecondaryLabelConfig\n\n // PORTALS-3549 - if a DOI exists or can be created by the current user, show it\n if (\n showDoiCardLabel &&\n portalDoiConfiguration &&\n candidateDoiId &&\n cardIsInView\n ) {\n values.push({\n columnDisplayName: 'DOI',\n value: (\n <PortalDOI\n portalId={portalDoiConfiguration.portalId}\n resourceId={candidateDoiId}\n />\n ),\n })\n }\n\n // Overwrite the 'HOW TO DOWNLOAD' link if a synapse ID is available\n if (customLabelConfig?.isVisible(schema, data)) {\n const { key, value } = customLabelConfig\n if (resolvedDownloadCartSynIdValue) {\n values.push({\n columnDisplayName: 'HOW TO DOWNLOAD',\n value: (\n <Link onClick={() => setShowDownloadConfirmation(val => !val)}>\n Click here to add to Synapse download cart\n </Link>\n ),\n })\n } else {\n values.push({ columnDisplayName: key, value })\n }\n }\n\n const isView = table && !isTableEntity(table)\n for (let i = 0; i < secondaryLabels.length; i += 1) {\n const columnName = secondaryLabels[i]\n const rawValue: string | undefined = data[schema[columnName]]\n let renderedValue: React.ReactNode = rawValue\n let columnDisplayName\n if (renderedValue) {\n // PORTALS-2750: special rendering of the datasetSizeInBytes (for Dataset Collections)\n if (\n isDatasetCollection(table as Entity) &&\n columnName === 'datasetSizeInBytes'\n ) {\n columnDisplayName = 'Size'\n renderedValue = calculateFriendlyFileSize(parseInt(rawValue))\n } // SWC-6115: special rendering of the version column (for Views)\n else if (isView && columnName === 'currentVersion') {\n const synapseId = data[schema.id]\n renderedValue = (\n <VersionLabel synapseId={synapseId} version={rawValue} />\n )\n columnDisplayName = 'Version'\n } else {\n const labelLink = labelLinkConfig?.find(\n el => el.matchColumnName === columnName,\n )\n renderedValue = (\n <SynapseCardLabel\n value={rawValue}\n columnName={columnName}\n labelLink={labelLink}\n isHeader={isHeader}\n selectColumns={selectColumns}\n columnModels={columnModels}\n rowData={data}\n />\n )\n columnDisplayName = getColumnDisplayName(columnName)\n }\n values.push({ columnDisplayName, value: renderedValue, columnName })\n }\n }\n\n const fileHandleId = imageFileHandleIdValue || linkValue\n\n /**\n * To show a direct download link to a file, we need to determine the association that gives permission to download the file.\n */\n const fileHandleAssociation = getFileHandleAssociation(\n table,\n fileHandleId,\n data[schema.id],\n )\n\n const descriptionSubTitle = getColumnDisplayName(\n genericCardSchema.description || '',\n )\n\n const doiColumnIndex = getColumnIndex('doi', selectColumns, columnModels)\n const doiValue =\n doiColumnIndex !== undefined ? data[doiColumnIndex] : undefined\n\n // Normalize ctaLinkConfig to array and resolve each config\n const ctaLinkConfigs = ctaLinkConfig\n ? Array.isArray(ctaLinkConfig)\n ? ctaLinkConfig\n : [ctaLinkConfig]\n : []\n const resolvedCtaLinkConfigs = ctaLinkConfigs\n .map(config => {\n const ctaLinkValue: string = data[schema[config.link]] || ''\n if (!ctaLinkValue) return null\n const { href, target } = getLinkParams(\n ctaLinkValue,\n undefined, //card link config\n data,\n schema,\n rowId,\n )\n return {\n text: config.text,\n href,\n target,\n }\n })\n .filter(Boolean) as { text: string; href: string; target?: string }[]\n\n let croissantButton = <></>\n if (\n resolvedSynapseEntityId != null &&\n resolvedSynapseEntityVersionNumber != null\n ) {\n croissantButton = (\n <CroissantButton\n datasetId={resolvedSynapseEntityId}\n datasetVersionNumber={resolvedSynapseEntityVersionNumber}\n />\n )\n }\n\n const resolvedCardTypeAdornment = CardTypeAdornment ? (\n <CardTypeAdornment schema={schema} data={data} />\n ) : null\n\n return (\n <GenericCard\n ref={ref}\n icon={\n <GenericCardIcon\n type={\n useTypeColumnForIcon ? data[schema['type']] : genericCardSchema.type\n }\n useTypeForIcon={useTypeColumnForIcon}\n thumbnailRequiresPadding={genericCardSchema.thumbnailRequiresPadding}\n imageFileHandleId={imageFileHandleIdValue}\n fileHandleAssociation={fileHandleAssociation}\n iconOptions={iconOptions}\n iconValue={iconValue}\n />\n }\n isHeader={isHeader}\n sustainabilityScorecard={sustainabilityScorecard}\n headerCardVariant={headerCardVariant}\n type={type}\n title={title}\n subtitle={subTitle}\n titleLinkConfiguration={{ target, href }}\n cardTypeAdornment={resolvedCardTypeAdornment}\n titleAsFileHandleLinkConfiguration={\n !titleLinkConfig &&\n titleColumnType === ColumnTypeEnum.FILEHANDLEID &&\n fileHandleAssociation\n ? {\n fileHandleAssociation: fileHandleAssociation,\n showDownloadIcon: type !== SynapseConstants.EXPERIMENTAL,\n }\n : undefined\n }\n ctaLinkConfig={\n resolvedCtaLinkConfigs.length > 0 ? resolvedCtaLinkConfigs : undefined\n }\n description={description}\n descriptionSubTitle={descriptionSubTitle}\n descriptionConfig={descriptionConfig}\n charCountCutoff={charCountCutoff}\n labels={values}\n secondaryLabelLimit={secondaryLabelLimit}\n columnIconOptions={columnIconOptions}\n useStylesForDisplayedImage={Boolean(imageFileHandleIdValue)}\n cardTopContent={\n resolvedDownloadCartSynIdValue && (\n <Collapse in={showDownloadConfirmation}>\n <EntityDownloadConfirmation\n entityId={resolvedDownloadCartSynIdValue}\n versionNumber={resolvedDownloadCartVersionNumber}\n handleClose={() => setShowDownloadConfirmation(false)}\n onIsLoadingChange={isLoading => {\n setDownloadButtonLoading(isLoading)\n }}\n />\n </Collapse>\n )\n }\n renderedIconList={\n // If the portal configs has columnIconOptions.columns.dataType option\n // and the column value is not null, display the card data type icons\n columnIconOptions?.columns?.dataType &&\n dataTypeIconNames?.length && (\n <div style={{ marginTop: '20px' }}>\n <IconList\n iconConfigs={columnIconOptions.columns.dataType}\n iconNames={JSON.parse(dataTypeIconNames) as string[]}\n commonIconProps={{\n sx: { fontSize: '40px' },\n }}\n useBackground={true}\n useTheme={true}\n />\n </div>\n )\n }\n cardTopButtons={\n <Box sx={{ display: 'flex', gap: 1 }}>\n {croissantButton}\n {/* PORTALS-3386 Use synapseLink in schema to add entity to download cart */}\n {resolvedDownloadCartSynIdValue && (\n <GenericCardActionButton\n onClick={() => setShowDownloadConfirmation(val => !val)}\n variant=\"outlined\"\n startIcon={<GetAppTwoTone sx={{ height: '12px' }} />}\n loading={downloadButtonLoading}\n >\n Download\n </GenericCardActionButton>\n )}\n {includeCitation && doiValue && (\n <CitationPopover\n title={title}\n doi={doiValue}\n boilerplateText={citationBoilerplateText}\n defaultCitationFormat={defaultCitationFormat}\n />\n )}\n {includeShareButton && isHeader && (\n <ShareThisPage {...sharePageLinkButtonProps} />\n )}\n </Box>\n }\n />\n )\n}\n\nexport default TableRowGenericCard\n"],"names":["VersionLabel","props","synapseId","version","jsx","TargetEnum","PRODUCTION_ENDPOINT_CONFIG","TableRowGenericCard","showDownloadConfirmation","setShowDownloadConfirmation","useState","downloadButtonLoading","setDownloadButtonLoading","entityId","versionNumber","useQueryContext","getColumnDisplayName","useQueryVisualizationContext","ref","cardIsInView","useInView","table","useGetEntity","schema","data","rowId","rowVersionNumber","genericCardSchema","secondaryLabelLimit","sharePageLinkButtonProps","selectColumns","columnModels","iconOptions","useTypeColumnForIcon","isHeader","sustainabilityScorecard","headerCardVariant","titleLinkConfig","ctaLinkConfig","labelLinkConfig","descriptionConfig","columnIconOptions","CardTypeAdornment","charCountCutoff","link","type","includeCitation","includeShareButton","defaultCitationFormat","citationBoilerplateText","downloadCartSynId","portalDoiConfiguration","title","subTitle","getValueOrMultiValue","description","iconValue","dataTypeIconNames","imageFileHandleIdValue","titleColumnType","el","linkValue","href","target","getLinkParams","synapseEntityConfig","getColumnValue","useCallback","columnName","columnIndex","resolvedSynapseEntityId","resolvedSynapseEntityVersionNumber","useResolvedSynapseEntity","resolvedDownloadCartSynIdValue","resolvedDownloadCartVersionNumber","reference","parseSynId","dataAsRecord","useMemo","mapRowToRecord","candidateDoiId","getCandidateDoiId","showDoiCardLabel","useShowDoiCardLabel","values","secondaryLabels","customLabelConfig","PortalDOI","key","value","Link","val","isView","isTableEntity","i","rawValue","renderedValue","columnDisplayName","isDatasetCollection","calculateFriendlyFileSize","labelLink","SynapseCardLabel","fileHandleAssociation","getFileHandleAssociation","descriptionSubTitle","doiColumnIndex","getColumnIndex","doiValue","resolvedCtaLinkConfigs","config","ctaLinkValue","croissantButton","Fragment","CroissantButton","resolvedCardTypeAdornment","GenericCard","GenericCardIcon","ColumnTypeEnum","SynapseConstants.EXPERIMENTAL","Collapse","EntityDownloadConfirmation","isLoading","IconList","Box","GenericCardActionButton","GetAppTwoTone","CitationPopover","ShareThisPage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableRowGenericCard.js","sources":["../../../src/components/GenericCard/TableRowGenericCard.tsx"],"sourcesContent":["import { CommonCardProps } from '@/components/CardContainer/CardConfiguration'\nimport {\n getFileHandleAssociation,\n getLinkParams,\n getValueOrMultiValue,\n} from '@/components/GenericCard/CardUtils'\nimport CroissantButton from '@/components/GenericCard/CroissantButton/CroissantButton'\nimport { GenericCardIcon } from '@/components/GenericCard/GenericCardIcon'\nimport PortalDOI from '@/components/GenericCard/PortalDOI/PortalDOI'\nimport {\n getCandidateDoiId,\n useShowDoiCardLabel,\n} from '@/components/GenericCard/PortalDOI/PortalDOIUtils'\nimport { mapRowToRecord } from '@/components/SynapseTable/SynapseTableUtils'\nimport { useGetEntity } from '@/synapse-queries'\nimport { calculateFriendlyFileSize } from '@/utils/functions/calculateFriendlyFileSize'\nimport {\n isDatasetCollection,\n isTableEntity,\n} from '@/utils/functions/EntityTypeUtils'\nimport { PRODUCTION_ENDPOINT_CONFIG } from '@/utils/functions/getEndpoint'\nimport { parseSynId } from '@/utils/functions/RegularExpressions'\nimport { getColumnIndex } from '@/utils/functions/SqlFunctions'\nimport { TargetEnum } from '@/utils/html/TargetEnum'\nimport * as SynapseConstants from '@/utils/SynapseConstants'\nimport { GetAppTwoTone } from '@mui/icons-material'\nimport { Box, Collapse, Link, Stack, Typography } from '@mui/material'\nimport {\n ColumnModel,\n ColumnTypeEnum,\n Entity,\n SelectColumn,\n Table,\n} from '@sage-bionetworks/synapse-types'\nimport React, { useCallback, useMemo, useState } from 'react'\nimport { useInView } from 'react-intersection-observer'\nimport CitationPopover from '../CitationPopover'\nimport { EntityDownloadConfirmation } from '../EntityDownloadConfirmation'\nimport { HeaderCardVariant } from '../HeaderCard'\nimport IconList from '../IconList'\nimport { useQueryContext } from '../QueryContext/QueryContext'\nimport { useQueryVisualizationContext } from '../QueryVisualizationWrapper'\nimport ShareThisPage, {\n ShareThisPageProps,\n} from '../ShareThisPage/ShareThisPage'\nimport { SustainabilityScorecardProps } from '../SustainabilityScorecard/SustainabilityScorecard'\nimport GenericCard from './GenericCard'\nimport GenericCardActionButton from './GenericCardActionButton'\nimport { PortalDOIConfiguration } from './PortalDOI/PortalDOIConfiguration'\nimport { SynapseCardLabel } from './SynapseCardLabel'\nimport { useResolvedSynapseEntity } from './useResolvedSynapseEntity'\n\ntype RowSynapseEntityConfig = {\n /** Use the table rowId to resolve the Synapse entity ID. */\n id: {\n source: 'rowId'\n }\n /** Use the table rowVersionNumber to resolve the Synapse entity version (if available). */\n version?: {\n source: 'rowVersionNumber'\n }\n}\n\ntype ColumnSynapseEntityConfig = {\n /** Use a column value to resolve the Synapse entity ID. */\n id: {\n source: 'column'\n columnName: string\n }\n /** Use a column value to resolve the Synapse entity version. */\n version?: {\n source: 'column'\n columnName: string\n }\n}\n\nexport type SynapseEntityConfig =\n | RowSynapseEntityConfig\n | ColumnSynapseEntityConfig\n\n/**\n * Maps a table query result to a GenericCard.\n */\nexport type TableToGenericCardMapping = {\n /** The 'type' of resource a card refers to. Renders a label on the card with this string value.\n * Can be hidden by setting it to '' (empty string)\n */\n type: string\n /** The column name whose data contains the title of the card */\n title: string\n /** The column name whose data contains the subtitle of the card */\n subTitle?: string\n /** The column name whose data contains the description of the card */\n description?: string\n /** If true, a 'Cite As' button will be displayed for those cards with a DOI in the 'doi' column */\n includeCitation?: boolean\n /** If true, a 'Share this page' button will be displayed */\n includeShareButton?: boolean\n /**\n * Configuration for displaying the SustainabilityScorecard component\n */\n sustainabilityScorecard?: SustainabilityScorecardProps\n /** The initial citation format to use in the 'Cite As' UI */\n defaultCitationFormat?: 'bibtex' | 'apa' | 'ieee' | 'nature' | 'science'\n /** Static text displayed in the 'Cite As' UI */\n citationBoilerplateText?: string\n /** The column name whose data contains the value used to map to the icon */\n icon?: string\n /** The column name whose data contains an image file handle to be displayed on the card */\n imageFileHandleColumnName?: string\n /** Static boolean value used if the image displayed using `imageFileHandleColumnName` requires extra padding */\n thumbnailRequiresPadding?: boolean\n /** Array of column names to be used for labels in the Card Footer */\n secondaryLabels?: string[]\n /** Can be used to add a custom secondary label */\n customSecondaryLabelConfig?: {\n /** The displayed label key */\n key: string\n /** The value to display */\n value: React.ReactNode\n /** Callback to determine visibility of the label\n * @param schema the mapping of columnName to data index\n * @param data the row data\n */\n isVisible: (schema: Record<string, number>, data: string[]) => boolean\n }\n /** Column name of the link value if the title should be linked */\n link?: string\n /** Column name of the STRING_LIST column that includes icon names that represent icons that should be displayed on the card */\n dataTypeIconNames?: string\n /**\n * Ordered list of column names to display to the right of the title area.\n * Each renders as \"Display Name: Value\" on its own line. Rows with empty values are skipped.\n * The display name is derived from getColumnDisplayName (respects column aliases and unCamelCase).\n */\n titleAreaDetails?: string[]\n /** Configuration for resolving the Synapse entity ID/version represented by each card row.\n * The ID and version sources must both reference either row-based values or column-based values.\n */\n synapseEntityConfig?: SynapseEntityConfig\n /** The column name whose data contains a synId that can be used to show a button to add the corresponding entity to the download cart. */\n downloadCartSynId?: string\n /** Configuration to display a DOI, as well as the ability to create one for users with such permission */\n portalDoiConfiguration?: PortalDOIConfiguration\n}\n\nexport type TableRowGenericCardProps = {\n /** The schema that maps a table result to the GenericCard UI */\n genericCardSchema: TableToGenericCardMapping\n /** The table's SelectColumns */\n selectColumns?: SelectColumn[]\n /** The table's ColumnModels */\n columnModels?: ColumnModel[]\n /** If true, the 'type' column will be used as the icon string to choose the icon */\n useTypeColumnForIcon?: boolean\n /** If true, render the card as a HeaderCard */\n isHeader?: boolean\n /** If isHeader is true, use this variant of HeaderCard */\n headerCardVariant?: HeaderCardVariant\n isAlignToLeftNav?: boolean\n /** Mapping of column name to row data index */\n schema: Record<string, number>\n /** The row data */\n data: string[]\n /** The ID of the table row */\n rowId?: number\n /** The versionNumber of the table row */\n versionNumber?: number\n /** Optional props for the ShareThisPage component */\n sharePageLinkButtonProps?: ShareThisPageProps\n /** Optional function that receives schema and data and returns a ReactNode to be rendered next to the card type */\n CardTypeAdornment?: React.ComponentType<{\n schema: Record<string, number>\n data: string[]\n }>\n} & CommonCardProps\n\n// SWC-6115: special rendering of the version column (for Views)\nfunction VersionLabel(props: { synapseId: string; version: string }) {\n const { synapseId, version } = props\n return (\n <span>\n {version} \n <a\n target={TargetEnum.NEW_WINDOW}\n rel=\"noopener noreferrer\"\n href={`${PRODUCTION_ENDPOINT_CONFIG.PORTAL}Synapse:${synapseId}.${version}`}\n >\n (Show Version History on Synapse)\n </a>\n </span>\n )\n}\n\n/**\n * Maps a table row to a GenericCard.\n */\nexport function TableRowGenericCard(props: TableRowGenericCardProps) {\n const [showDownloadConfirmation, setShowDownloadConfirmation] =\n useState(false)\n const [downloadButtonLoading, setDownloadButtonLoading] = useState(false)\n\n const { entityId, versionNumber } = useQueryContext()\n const { getColumnDisplayName } = useQueryVisualizationContext()\n\n const { ref, inView: cardIsInView } = useInView()\n\n const { data: table } = useGetEntity<Table>(entityId, versionNumber)\n\n const {\n schema,\n data,\n rowId,\n versionNumber: rowVersionNumber,\n genericCardSchema,\n secondaryLabelLimit,\n sharePageLinkButtonProps,\n selectColumns,\n columnModels,\n iconOptions,\n useTypeColumnForIcon = false,\n isHeader = false,\n sustainabilityScorecard,\n headerCardVariant,\n titleLinkConfig,\n ctaLinkConfig,\n labelLinkConfig,\n descriptionConfig,\n columnIconOptions,\n CardTypeAdornment,\n charCountCutoff,\n } = props\n\n const {\n link = '',\n type,\n includeCitation,\n includeShareButton,\n defaultCitationFormat,\n citationBoilerplateText,\n downloadCartSynId,\n portalDoiConfiguration,\n } = genericCardSchema\n const title = data[schema[genericCardSchema.title]]\n let subTitle =\n genericCardSchema.subTitle && data[schema[genericCardSchema.subTitle]]\n subTitle =\n genericCardSchema.subTitle &&\n getValueOrMultiValue({\n value: subTitle,\n columnName: genericCardSchema.subTitle,\n selectColumns,\n columnModels,\n }).str\n const description = data[schema[genericCardSchema.description || '']]\n const iconValue = data[schema[genericCardSchema.icon || '']]\n const dataTypeIconNames =\n data[schema[genericCardSchema.dataTypeIconNames || '']]\n const imageFileHandleIdValue =\n data[schema[genericCardSchema.imageFileHandleColumnName || '']]\n const titleColumnModel = columnModels?.find(\n el => genericCardSchema.link === el.name,\n )\n const titleColumnType = titleColumnModel?.columnType\n // wrap link in parens because undefined would throw an error\n const linkValue: string = data[schema[link]] || ''\n const { href, target } = getLinkParams(\n linkValue,\n titleLinkConfig,\n data,\n schema,\n rowId,\n )\n\n const synapseEntityConfig = genericCardSchema.synapseEntityConfig\n\n const getColumnValue = useCallback(\n (columnName?: string) => {\n if (!columnName) {\n return undefined\n }\n const columnIndex = schema[columnName]\n if (columnIndex === undefined) {\n return undefined\n }\n return data[columnIndex]\n },\n [schema, data],\n )\n\n const resolvedTitleAreaRightContent = useMemo(() => {\n const { titleAreaDetails } = genericCardSchema\n if (!titleAreaDetails || titleAreaDetails.length === 0) return undefined\n const rows = titleAreaDetails\n .map(columnName => {\n const rawValue: string | undefined = data[schema[columnName]]\n if (!rawValue) return null\n return { name: getColumnDisplayName(columnName), rawValue, columnName }\n })\n .filter(Boolean) as {\n name: string\n rawValue: string\n columnName: string\n }[]\n if (rows.length === 0) return undefined\n return (\n <Stack direction=\"column\" gap=\"4px\">\n {rows.map(({ name, rawValue, columnName }) => (\n <Stack key={columnName} direction=\"row\" gap=\"4px\" alignItems=\"center\">\n <Typography component=\"span\" variant=\"body1\">\n {name}:\n </Typography>\n <SynapseCardLabel\n value={rawValue}\n columnName={columnName}\n labelLink={undefined}\n isHeader={isHeader}\n selectColumns={selectColumns}\n columnModels={columnModels}\n rowData={data}\n columnIconOptions={columnIconOptions}\n />\n </Stack>\n ))}\n </Stack>\n )\n }, [\n genericCardSchema,\n data,\n schema,\n getColumnDisplayName,\n isHeader,\n selectColumns,\n columnModels,\n columnIconOptions,\n ])\n\n const {\n entityId: resolvedSynapseEntityId,\n entityVersionNumber: resolvedSynapseEntityVersionNumber,\n } = useResolvedSynapseEntity({\n synapseEntityConfig,\n getColumnValue,\n rowId,\n rowVersionNumber,\n })\n\n let resolvedDownloadCartSynIdValue = resolvedSynapseEntityId\n let resolvedDownloadCartVersionNumber = resolvedSynapseEntityVersionNumber\n\n if (downloadCartSynId) {\n const reference = parseSynId(getColumnValue(downloadCartSynId) ?? '')\n resolvedDownloadCartSynIdValue = reference?.targetId\n resolvedDownloadCartVersionNumber = reference?.targetVersionNumber\n }\n\n // Transform the row to a record of (columnName, value) pairs for compatibility with getCandidateDoiId\n const dataAsRecord: Record<string, string | null> = useMemo(\n () => mapRowToRecord(data, schema),\n [data, schema],\n )\n\n const candidateDoiId = getCandidateDoiId({\n data: dataAsRecord,\n portalDoiConfiguration,\n })\n\n const showDoiCardLabel = useShowDoiCardLabel({\n portalId: portalDoiConfiguration?.portalId,\n resourceId: candidateDoiId,\n })\n\n const values: {\n columnDisplayName: string\n value: React.ReactNode\n columnName?: string\n }[] = []\n const { secondaryLabels = [] } = genericCardSchema\n const customLabelConfig = genericCardSchema.customSecondaryLabelConfig\n\n // PORTALS-3549 - if a DOI exists or can be created by the current user, show it\n if (\n showDoiCardLabel &&\n portalDoiConfiguration &&\n candidateDoiId &&\n cardIsInView\n ) {\n values.push({\n columnDisplayName: 'DOI',\n value: (\n <PortalDOI\n portalId={portalDoiConfiguration.portalId}\n resourceId={candidateDoiId}\n />\n ),\n })\n }\n\n // Overwrite the 'HOW TO DOWNLOAD' link if a synapse ID is available\n if (customLabelConfig?.isVisible(schema, data)) {\n const { key, value } = customLabelConfig\n if (resolvedDownloadCartSynIdValue) {\n values.push({\n columnDisplayName: 'HOW TO DOWNLOAD',\n value: (\n <Link onClick={() => setShowDownloadConfirmation(val => !val)}>\n Click here to add to Synapse download list\n </Link>\n ),\n })\n } else {\n values.push({ columnDisplayName: key, value })\n }\n }\n\n const isView = table && !isTableEntity(table)\n for (let i = 0; i < secondaryLabels.length; i += 1) {\n const columnName = secondaryLabels[i]\n const rawValue: string | undefined = data[schema[columnName]]\n let renderedValue: React.ReactNode = rawValue\n let columnDisplayName\n if (renderedValue) {\n // PORTALS-2750: special rendering of the datasetSizeInBytes (for Dataset Collections)\n if (\n isDatasetCollection(table as Entity) &&\n columnName === 'datasetSizeInBytes'\n ) {\n columnDisplayName = 'Size'\n renderedValue = calculateFriendlyFileSize(parseInt(rawValue))\n } // SWC-6115: special rendering of the version column (for Views)\n else if (isView && columnName === 'currentVersion') {\n const synapseId = data[schema.id]\n renderedValue = (\n <VersionLabel synapseId={synapseId} version={rawValue} />\n )\n columnDisplayName = 'Version'\n } else {\n const labelLink = labelLinkConfig?.find(\n el => el.matchColumnName === columnName,\n )\n renderedValue = (\n <SynapseCardLabel\n value={rawValue}\n columnName={columnName}\n labelLink={labelLink}\n isHeader={isHeader}\n selectColumns={selectColumns}\n columnModels={columnModels}\n rowData={data}\n columnIconOptions={columnIconOptions}\n />\n )\n columnDisplayName = getColumnDisplayName(columnName)\n }\n values.push({ columnDisplayName, value: renderedValue, columnName })\n }\n }\n\n const fileHandleId = imageFileHandleIdValue || linkValue\n\n /**\n * To show a direct download link to a file, we need to determine the association that gives permission to download the file.\n */\n const fileHandleAssociation = getFileHandleAssociation(\n table,\n fileHandleId,\n data[schema.id],\n )\n\n const descriptionSubTitle = getColumnDisplayName(\n genericCardSchema.description || '',\n )\n\n const doiColumnIndex = getColumnIndex('doi', selectColumns, columnModels)\n const doiValue =\n doiColumnIndex !== undefined ? data[doiColumnIndex] : undefined\n\n // Normalize ctaLinkConfig to array and resolve each config\n const ctaLinkConfigs = ctaLinkConfig\n ? Array.isArray(ctaLinkConfig)\n ? ctaLinkConfig\n : [ctaLinkConfig]\n : []\n const resolvedCtaLinkConfigs = ctaLinkConfigs\n .map(config => {\n const ctaLinkValue: string = data[schema[config.link]] || ''\n if (!ctaLinkValue) return null\n const { href, target } = getLinkParams(\n ctaLinkValue,\n undefined, //card link config\n data,\n schema,\n rowId,\n )\n return {\n text: config.text,\n href,\n target,\n }\n })\n .filter(Boolean) as { text: string; href: string; target?: string }[]\n\n let croissantButton = <></>\n if (\n resolvedSynapseEntityId != null &&\n resolvedSynapseEntityVersionNumber != null\n ) {\n croissantButton = (\n <CroissantButton\n datasetId={resolvedSynapseEntityId}\n datasetVersionNumber={resolvedSynapseEntityVersionNumber}\n />\n )\n }\n\n const resolvedCardTypeAdornment = CardTypeAdornment ? (\n <CardTypeAdornment schema={schema} data={data} />\n ) : null\n\n return (\n <GenericCard\n ref={ref}\n icon={\n <GenericCardIcon\n type={\n useTypeColumnForIcon ? data[schema['type']] : genericCardSchema.type\n }\n useTypeForIcon={useTypeColumnForIcon}\n thumbnailRequiresPadding={genericCardSchema.thumbnailRequiresPadding}\n imageFileHandleId={imageFileHandleIdValue}\n fileHandleAssociation={fileHandleAssociation}\n iconOptions={iconOptions}\n iconValue={iconValue}\n />\n }\n isHeader={isHeader}\n sustainabilityScorecard={sustainabilityScorecard}\n headerCardVariant={headerCardVariant}\n type={type}\n title={title}\n subtitle={subTitle}\n titleLinkConfiguration={{ target, href }}\n cardTypeAdornment={resolvedCardTypeAdornment}\n titleAsFileHandleLinkConfiguration={\n !titleLinkConfig &&\n titleColumnType === ColumnTypeEnum.FILEHANDLEID &&\n fileHandleAssociation\n ? {\n fileHandleAssociation: fileHandleAssociation,\n showDownloadIcon: type !== SynapseConstants.EXPERIMENTAL,\n }\n : undefined\n }\n ctaLinkConfig={\n resolvedCtaLinkConfigs.length > 0 ? resolvedCtaLinkConfigs : undefined\n }\n titleAreaRightContent={resolvedTitleAreaRightContent}\n description={description}\n descriptionSubTitle={descriptionSubTitle}\n descriptionConfig={descriptionConfig}\n charCountCutoff={charCountCutoff}\n labels={values}\n secondaryLabelLimit={secondaryLabelLimit}\n useStylesForDisplayedImage={Boolean(imageFileHandleIdValue)}\n cardTopContent={\n resolvedDownloadCartSynIdValue && (\n <Collapse in={showDownloadConfirmation}>\n <EntityDownloadConfirmation\n entityId={resolvedDownloadCartSynIdValue}\n versionNumber={resolvedDownloadCartVersionNumber}\n handleClose={() => setShowDownloadConfirmation(false)}\n onIsLoadingChange={isLoading => {\n setDownloadButtonLoading(isLoading)\n }}\n />\n </Collapse>\n )\n }\n renderedIconList={\n // If the portal configs has columnIconOptions.columns.dataType option\n // and the column value is not null, display the card data type icons\n columnIconOptions?.columns?.dataType &&\n dataTypeIconNames?.length && (\n <div style={{ marginTop: '20px' }}>\n <IconList\n iconConfigs={columnIconOptions.columns.dataType}\n iconNames={JSON.parse(dataTypeIconNames) as string[]}\n commonIconProps={{\n sx: { fontSize: '40px' },\n }}\n useBackground={true}\n useTheme={true}\n />\n </div>\n )\n }\n cardTopButtons={\n <Box sx={{ display: 'flex', gap: 1 }}>\n {croissantButton}\n {/* PORTALS-3386 Use synapseLink in schema to add entity to download cart */}\n {resolvedDownloadCartSynIdValue && (\n <GenericCardActionButton\n onClick={() => setShowDownloadConfirmation(val => !val)}\n variant=\"outlined\"\n startIcon={<GetAppTwoTone sx={{ height: '12px' }} />}\n loading={downloadButtonLoading}\n >\n Download\n </GenericCardActionButton>\n )}\n {includeCitation && doiValue && (\n <CitationPopover\n title={title}\n doi={doiValue}\n boilerplateText={citationBoilerplateText}\n defaultCitationFormat={defaultCitationFormat}\n />\n )}\n {includeShareButton && isHeader && (\n <ShareThisPage {...sharePageLinkButtonProps} />\n )}\n </Box>\n }\n />\n )\n}\n\nexport default TableRowGenericCard\n"],"names":["VersionLabel","props","synapseId","version","jsx","TargetEnum","PRODUCTION_ENDPOINT_CONFIG","TableRowGenericCard","showDownloadConfirmation","setShowDownloadConfirmation","useState","downloadButtonLoading","setDownloadButtonLoading","entityId","versionNumber","useQueryContext","getColumnDisplayName","useQueryVisualizationContext","ref","cardIsInView","useInView","table","useGetEntity","schema","data","rowId","rowVersionNumber","genericCardSchema","secondaryLabelLimit","sharePageLinkButtonProps","selectColumns","columnModels","iconOptions","useTypeColumnForIcon","isHeader","sustainabilityScorecard","headerCardVariant","titleLinkConfig","ctaLinkConfig","labelLinkConfig","descriptionConfig","columnIconOptions","CardTypeAdornment","charCountCutoff","link","type","includeCitation","includeShareButton","defaultCitationFormat","citationBoilerplateText","downloadCartSynId","portalDoiConfiguration","title","subTitle","getValueOrMultiValue","description","iconValue","dataTypeIconNames","imageFileHandleIdValue","titleColumnType","el","linkValue","href","target","getLinkParams","synapseEntityConfig","getColumnValue","useCallback","columnName","columnIndex","resolvedTitleAreaRightContent","useMemo","titleAreaDetails","rows","rawValue","Stack","name","jsxs","Typography","SynapseCardLabel","resolvedSynapseEntityId","resolvedSynapseEntityVersionNumber","useResolvedSynapseEntity","resolvedDownloadCartSynIdValue","resolvedDownloadCartVersionNumber","reference","parseSynId","dataAsRecord","mapRowToRecord","candidateDoiId","getCandidateDoiId","showDoiCardLabel","useShowDoiCardLabel","values","secondaryLabels","customLabelConfig","PortalDOI","key","value","Link","val","isView","isTableEntity","i","renderedValue","columnDisplayName","isDatasetCollection","calculateFriendlyFileSize","labelLink","fileHandleAssociation","getFileHandleAssociation","descriptionSubTitle","doiColumnIndex","getColumnIndex","doiValue","resolvedCtaLinkConfigs","config","ctaLinkValue","croissantButton","Fragment","CroissantButton","resolvedCardTypeAdornment","GenericCard","GenericCardIcon","ColumnTypeEnum","SynapseConstants.EXPERIMENTAL","Collapse","EntityDownloadConfirmation","isLoading","IconList","Box","GenericCardActionButton","GetAppTwoTone","CitationPopover","ShareThisPage"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as r, jsxs as t, Fragment as S } from "react/jsx-runtime";
|
|
2
|
-
import { Box as
|
|
2
|
+
import { Box as d } from "@mui/material";
|
|
3
3
|
import { SmartLink as D } from "./SmartLink/SmartLink.js";
|
|
4
4
|
import { forwardRef as C } from "react";
|
|
5
5
|
import T from "./row_renderers/utils/CardFooter.js";
|
|
@@ -16,17 +16,21 @@ import "../assets/icons/study-complete.svg.js";
|
|
|
16
16
|
import "../assets/icons/translational.svg.js";
|
|
17
17
|
import "../assets/icons/tree_horizontal.svg.js";
|
|
18
18
|
import "../assets/icons/standardDataModel.svg.js";
|
|
19
|
+
import "../assets/icons/Challenge.svg.js";
|
|
19
20
|
import "@mui/material/SvgIcon";
|
|
20
21
|
import "../utils/SynapseConstants.js";
|
|
21
22
|
import "../assets/ArcusBioIcon.svg.js";
|
|
22
23
|
import "../assets/icons/AccessPending.svg.js";
|
|
23
24
|
import "../assets/icons/AccessPendingCloud.svg.js";
|
|
24
25
|
import "../assets/icons/FileWithShield.svg.js";
|
|
26
|
+
import "../assets/icons/MultiFile.svg.js";
|
|
27
|
+
import "../assets/icons/UnpackagableFile.svg.js";
|
|
25
28
|
import "../assets/icons/bioChemicalPhysical.svg.js";
|
|
26
29
|
import "../assets/icons/computationalTool.svg.js";
|
|
27
30
|
import "../assets/icons/dataReuse.svg.js";
|
|
28
31
|
import "../assets/icons/inSilicoModel.svg.js";
|
|
29
32
|
import "../assets/icons/modelSystem.svg.js";
|
|
33
|
+
import "../assets/mui_components/PackagableFile.svg.js";
|
|
30
34
|
import "../assets/icons/spatialProfiling.svg.js";
|
|
31
35
|
import "@mui/icons-material";
|
|
32
36
|
import { CollapsibleDescription as H } from "./GenericCard/CollapsibleDescription.js";
|
|
@@ -38,8 +42,8 @@ const B = C(function(e, o) {
|
|
|
38
42
|
type: a,
|
|
39
43
|
title: n,
|
|
40
44
|
subTitle: s = "",
|
|
41
|
-
description:
|
|
42
|
-
values:
|
|
45
|
+
description: l,
|
|
46
|
+
values: m,
|
|
43
47
|
secondaryLabelLimit: g,
|
|
44
48
|
isAlignToLeftNav: x,
|
|
45
49
|
descriptionConfig: c,
|
|
@@ -56,17 +60,17 @@ const B = C(function(e, o) {
|
|
|
56
60
|
};
|
|
57
61
|
return k({
|
|
58
62
|
title: n,
|
|
59
|
-
description:
|
|
63
|
+
description: l || s || void 0,
|
|
60
64
|
priority: 100
|
|
61
65
|
}), /* @__PURE__ */ r(
|
|
62
|
-
|
|
66
|
+
d,
|
|
63
67
|
{
|
|
64
68
|
ref: o,
|
|
65
69
|
className: `SRC-portalCard SRC-portalCardHeader ${x ? "isAlignToLeftNav" : ""}`,
|
|
66
70
|
sx: b,
|
|
67
71
|
children: /* @__PURE__ */ t("div", { className: "container-fluid container-full-width", children: [
|
|
68
72
|
/* @__PURE__ */ r(
|
|
69
|
-
|
|
73
|
+
d,
|
|
70
74
|
{
|
|
71
75
|
sx: {
|
|
72
76
|
display: "flex",
|
|
@@ -79,7 +83,7 @@ const B = C(function(e, o) {
|
|
|
79
83
|
/* @__PURE__ */ r("div", { className: "row", children: /* @__PURE__ */ r("div", { className: "col-md-offset-1 col-md-10", children: /* @__PURE__ */ t("div", { className: "SRC-portalCardMain", children: [
|
|
80
84
|
!u && N,
|
|
81
85
|
/* @__PURE__ */ t(
|
|
82
|
-
|
|
86
|
+
d,
|
|
83
87
|
{
|
|
84
88
|
sx: {
|
|
85
89
|
width: "100%",
|
|
@@ -108,7 +112,7 @@ const B = C(function(e, o) {
|
|
|
108
112
|
/* @__PURE__ */ r(
|
|
109
113
|
H,
|
|
110
114
|
{
|
|
111
|
-
description:
|
|
115
|
+
description: l,
|
|
112
116
|
descriptionSubTitle: "",
|
|
113
117
|
descriptionConfig: R
|
|
114
118
|
}
|
|
@@ -129,7 +133,7 @@ const B = C(function(e, o) {
|
|
|
129
133
|
}
|
|
130
134
|
)
|
|
131
135
|
] }),
|
|
132
|
-
(
|
|
136
|
+
(m || f) && /* @__PURE__ */ t(S, { children: [
|
|
133
137
|
/* @__PURE__ */ r(
|
|
134
138
|
"div",
|
|
135
139
|
{
|
|
@@ -142,12 +146,12 @@ const B = C(function(e, o) {
|
|
|
142
146
|
),
|
|
143
147
|
/* @__PURE__ */ t("div", { className: "SRC-cardContent", children: [
|
|
144
148
|
f,
|
|
145
|
-
|
|
149
|
+
m && /* @__PURE__ */ r(
|
|
146
150
|
T,
|
|
147
151
|
{
|
|
148
152
|
isHeader: !0,
|
|
149
153
|
secondaryLabelLimit: g,
|
|
150
|
-
values:
|
|
154
|
+
values: m
|
|
151
155
|
}
|
|
152
156
|
)
|
|
153
157
|
] })
|
|
@@ -159,11 +163,11 @@ const B = C(function(e, o) {
|
|
|
159
163
|
] })
|
|
160
164
|
}
|
|
161
165
|
);
|
|
162
|
-
}),
|
|
166
|
+
}), xr = C(function(e, o) {
|
|
163
167
|
const { headerCardVariant: a = "HeaderCard" } = e;
|
|
164
168
|
return a === "HeaderCardV2" ? /* @__PURE__ */ r(L, { ...e, ref: o }) : /* @__PURE__ */ r(B, { ...e, ref: o });
|
|
165
169
|
});
|
|
166
170
|
export {
|
|
167
|
-
|
|
171
|
+
xr as default
|
|
168
172
|
};
|
|
169
173
|
//# sourceMappingURL=HeaderCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeaderCard.js","sources":["../../src/components/HeaderCard.tsx"],"sourcesContent":["import { CardLabel } from '@/components/row_renderers/utils/CardFooter'\nimport { Box, SxProps } from '@mui/material'\nimport { SmartLink } from './SmartLink/SmartLink'\nimport { ForwardedRef, forwardRef } from 'react'\nimport { CardFooter } from './row_renderers/utils'\nimport { DescriptionConfig } from './CardContainerLogic'\nimport { CollapsibleDescription } from './GenericCard/CollapsibleDescription'\nimport { GenericCardProps } from '@/components/GenericCard/GenericCard'\nimport HeaderCardV2 from './HeaderCard/HeaderCardV2'\nimport SustainabilityScorecard, {\n SustainabilityScorecardProps,\n} from './SustainabilityScorecard/SustainabilityScorecard'\nimport { useDocumentMetadata } from '@/utils/context/DocumentMetadataContext'\n\nexport type HeaderCardVariant = 'HeaderCard' | 'HeaderCardV2'\n\nexport type HeaderCardProps = {\n type: string\n title: string\n subTitle?: string\n description: string\n secondaryLabelLimit?: number\n values?: CardLabel[]\n isAlignToLeftNav?: boolean\n descriptionConfig?: DescriptionConfig\n charCountCutoff?: number\n href?: string\n target?: string\n icon: React.ReactNode\n headerCardVariant?: HeaderCardVariant\n cardTopContent?: React.ReactNode\n ctaLinkConfig?: GenericCardProps['ctaLinkConfig']\n cardTopButtons?: React.ReactNode\n sustainabilityScorecard?: SustainabilityScorecardProps\n doiUri?: string\n sx?: SxProps\n}\n\nconst HeaderCardClassic = forwardRef(function HeaderCardClassic(\n props: HeaderCardProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {\n type,\n title,\n subTitle = '',\n description,\n values,\n secondaryLabelLimit,\n isAlignToLeftNav,\n descriptionConfig,\n href,\n target,\n icon,\n cardTopContent,\n cardTopButtons,\n sustainabilityScorecard,\n sx,\n } = props\n\n const hideIcon = Boolean(sustainabilityScorecard)\n const descriptionConfiguration: DescriptionConfig = {\n ...descriptionConfig,\n showFullDescriptionByDefault:\n descriptionConfig?.showFullDescriptionByDefault ?? true,\n }\n\n const metadataDescription = description || subTitle || undefined\n useDocumentMetadata({\n title,\n description: metadataDescription,\n priority: 100,\n })\n\n return (\n <Box\n ref={ref}\n className={`SRC-portalCard SRC-portalCardHeader ${\n isAlignToLeftNav ? 'isAlignToLeftNav' : ''\n }`}\n sx={sx}\n >\n <div className=\"container-fluid container-full-width\">\n <Box\n sx={{\n display: 'flex',\n gap: '10px',\n float: 'right',\n }}\n >\n {cardTopButtons}\n </Box>\n <div className=\"row\">\n <div className=\"col-md-offset-1 col-md-10\">\n <div className=\"SRC-portalCardMain\">\n {!hideIcon && icon}\n <Box\n sx={{\n width: '100%',\n ...(hideIcon && {\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n }),\n }}\n >\n <div className=\"SRC-cardContent\" style={{ marginLeft: '15px' }}>\n <div className=\"SRC-type\">{type}</div>\n <div>\n <h3 className=\"SRC-boldText\" style={{ margin: 'none' }}>\n {href ? (\n <SmartLink\n href={href ?? ''}\n className=\"highlight-link\"\n target={target}\n >\n {title}\n </SmartLink>\n ) : (\n <span>{title}</span>\n )}\n </h3>\n </div>\n {subTitle && <div className=\"SRC-author\"> {subTitle} </div>}\n <CollapsibleDescription\n description={description}\n descriptionSubTitle=\"\"\n descriptionConfig={descriptionConfiguration}\n />\n {sustainabilityScorecard && (\n <SustainabilityScorecard\n metricsConfig={sustainabilityScorecard.metricsConfig}\n searchParamKey={sustainabilityScorecard.searchParamKey}\n filterColumn={sustainabilityScorecard.filterColumn}\n scoreDescriptorColumnName={\n sustainabilityScorecard.scoreDescriptorColumnName\n }\n queryRequest={sustainabilityScorecard.queryRequest}\n sustainabilityReportLink={\n sustainabilityScorecard.sustainabilityReportLink\n }\n sx={{\n background: 'rgba(0, 0, 0, 0.10)',\n marginTop: '30px',\n }}\n />\n )}\n </div>\n {(values || cardTopContent) && (\n <>\n <div\n style={{\n borderTop: '1px solid rgba(26, 28, 41, 0.2)',\n marginTop: '15px',\n paddingTop: '5px',\n }}\n />\n <div className=\"SRC-cardContent\">\n {cardTopContent}\n {values && (\n <CardFooter\n isHeader={true}\n secondaryLabelLimit={secondaryLabelLimit}\n values={values}\n />\n )}\n </div>\n </>\n )}\n </Box>\n </div>\n </div>\n </div>\n </div>\n </Box>\n )\n})\n\nconst HeaderCard = forwardRef(function HeaderCard(\n props: HeaderCardProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const { headerCardVariant = 'HeaderCard' } = props\n if (headerCardVariant === 'HeaderCardV2') {\n return <HeaderCardV2 {...props} ref={ref} />\n }\n return <HeaderCardClassic {...props} ref={ref} />\n})\n\nexport default HeaderCard\n"],"names":["HeaderCardClassic","forwardRef","props","ref","type","title","subTitle","description","values","secondaryLabelLimit","isAlignToLeftNav","descriptionConfig","href","target","icon","cardTopContent","cardTopButtons","sustainabilityScorecard","sx","hideIcon","descriptionConfiguration","useDocumentMetadata","jsx","Box","jsxs","SmartLink","CollapsibleDescription","SustainabilityScorecard","Fragment","CardFooter","HeaderCard","headerCardVariant","HeaderCardV2"],"mappings":"
|
|
1
|
+
{"version":3,"file":"HeaderCard.js","sources":["../../src/components/HeaderCard.tsx"],"sourcesContent":["import { CardLabel } from '@/components/row_renderers/utils/CardFooter'\nimport { Box, SxProps } from '@mui/material'\nimport { SmartLink } from './SmartLink/SmartLink'\nimport { ForwardedRef, forwardRef } from 'react'\nimport { CardFooter } from './row_renderers/utils'\nimport { DescriptionConfig } from './CardContainerLogic'\nimport { CollapsibleDescription } from './GenericCard/CollapsibleDescription'\nimport { GenericCardProps } from '@/components/GenericCard/GenericCard'\nimport HeaderCardV2 from './HeaderCard/HeaderCardV2'\nimport SustainabilityScorecard, {\n SustainabilityScorecardProps,\n} from './SustainabilityScorecard/SustainabilityScorecard'\nimport { useDocumentMetadata } from '@/utils/context/DocumentMetadataContext'\n\nexport type HeaderCardVariant = 'HeaderCard' | 'HeaderCardV2'\n\nexport type HeaderCardProps = {\n type: string\n title: string\n subTitle?: string\n description: string\n secondaryLabelLimit?: number\n values?: CardLabel[]\n isAlignToLeftNav?: boolean\n descriptionConfig?: DescriptionConfig\n charCountCutoff?: number\n href?: string\n target?: string\n icon: React.ReactNode\n headerCardVariant?: HeaderCardVariant\n cardTopContent?: React.ReactNode\n ctaLinkConfig?: GenericCardProps['ctaLinkConfig']\n cardTopButtons?: React.ReactNode\n sustainabilityScorecard?: SustainabilityScorecardProps\n doiUri?: string\n sx?: SxProps\n}\n\nconst HeaderCardClassic = forwardRef(function HeaderCardClassic(\n props: HeaderCardProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const {\n type,\n title,\n subTitle = '',\n description,\n values,\n secondaryLabelLimit,\n isAlignToLeftNav,\n descriptionConfig,\n href,\n target,\n icon,\n cardTopContent,\n cardTopButtons,\n sustainabilityScorecard,\n sx,\n } = props\n\n const hideIcon = Boolean(sustainabilityScorecard)\n const descriptionConfiguration: DescriptionConfig = {\n ...descriptionConfig,\n showFullDescriptionByDefault:\n descriptionConfig?.showFullDescriptionByDefault ?? true,\n }\n\n const metadataDescription = description || subTitle || undefined\n useDocumentMetadata({\n title,\n description: metadataDescription,\n priority: 100,\n })\n\n return (\n <Box\n ref={ref}\n className={`SRC-portalCard SRC-portalCardHeader ${\n isAlignToLeftNav ? 'isAlignToLeftNav' : ''\n }`}\n sx={sx}\n >\n <div className=\"container-fluid container-full-width\">\n <Box\n sx={{\n display: 'flex',\n gap: '10px',\n float: 'right',\n }}\n >\n {cardTopButtons}\n </Box>\n <div className=\"row\">\n <div className=\"col-md-offset-1 col-md-10\">\n <div className=\"SRC-portalCardMain\">\n {!hideIcon && icon}\n <Box\n sx={{\n width: '100%',\n ...(hideIcon && {\n display: 'flex',\n flexDirection: { xs: 'column', sm: 'row' },\n }),\n }}\n >\n <div className=\"SRC-cardContent\" style={{ marginLeft: '15px' }}>\n <div className=\"SRC-type\">{type}</div>\n <div>\n <h3 className=\"SRC-boldText\" style={{ margin: 'none' }}>\n {href ? (\n <SmartLink\n href={href ?? ''}\n className=\"highlight-link\"\n target={target}\n >\n {title}\n </SmartLink>\n ) : (\n <span>{title}</span>\n )}\n </h3>\n </div>\n {subTitle && <div className=\"SRC-author\"> {subTitle} </div>}\n <CollapsibleDescription\n description={description}\n descriptionSubTitle=\"\"\n descriptionConfig={descriptionConfiguration}\n />\n {sustainabilityScorecard && (\n <SustainabilityScorecard\n metricsConfig={sustainabilityScorecard.metricsConfig}\n searchParamKey={sustainabilityScorecard.searchParamKey}\n filterColumn={sustainabilityScorecard.filterColumn}\n scoreDescriptorColumnName={\n sustainabilityScorecard.scoreDescriptorColumnName\n }\n queryRequest={sustainabilityScorecard.queryRequest}\n sustainabilityReportLink={\n sustainabilityScorecard.sustainabilityReportLink\n }\n sx={{\n background: 'rgba(0, 0, 0, 0.10)',\n marginTop: '30px',\n }}\n />\n )}\n </div>\n {(values || cardTopContent) && (\n <>\n <div\n style={{\n borderTop: '1px solid rgba(26, 28, 41, 0.2)',\n marginTop: '15px',\n paddingTop: '5px',\n }}\n />\n <div className=\"SRC-cardContent\">\n {cardTopContent}\n {values && (\n <CardFooter\n isHeader={true}\n secondaryLabelLimit={secondaryLabelLimit}\n values={values}\n />\n )}\n </div>\n </>\n )}\n </Box>\n </div>\n </div>\n </div>\n </div>\n </Box>\n )\n})\n\nconst HeaderCard = forwardRef(function HeaderCard(\n props: HeaderCardProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const { headerCardVariant = 'HeaderCard' } = props\n if (headerCardVariant === 'HeaderCardV2') {\n return <HeaderCardV2 {...props} ref={ref} />\n }\n return <HeaderCardClassic {...props} ref={ref} />\n})\n\nexport default HeaderCard\n"],"names":["HeaderCardClassic","forwardRef","props","ref","type","title","subTitle","description","values","secondaryLabelLimit","isAlignToLeftNav","descriptionConfig","href","target","icon","cardTopContent","cardTopButtons","sustainabilityScorecard","sx","hideIcon","descriptionConfiguration","useDocumentMetadata","jsx","Box","jsxs","SmartLink","CollapsibleDescription","SustainabilityScorecard","Fragment","CardFooter","HeaderCard","headerCardVariant","HeaderCardV2"],"mappings":"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"}
|
|
@@ -5,38 +5,38 @@ import { ReactComponent as O } from "../../assets/icons/DNA_Two.svg.js";
|
|
|
5
5
|
import { ReactComponent as I } from "../../assets/icons/file.svg.js";
|
|
6
6
|
import { ReactComponent as L } from "../../assets/icons/institution.svg.js";
|
|
7
7
|
import { ReactComponent as S } from "../../assets/icons/mouse.svg.js";
|
|
8
|
-
import { ReactComponent as
|
|
9
|
-
import { ReactComponent as
|
|
10
|
-
import { ReactComponent as
|
|
11
|
-
import { ReactComponent as
|
|
8
|
+
import { ReactComponent as d } from "../../assets/icons/organizations.svg.js";
|
|
9
|
+
import { ReactComponent as l } from "../../assets/icons/person.svg.js";
|
|
10
|
+
import { ReactComponent as D } from "../../assets/icons/study-active.svg.js";
|
|
11
|
+
import { ReactComponent as N } from "../../assets/icons/study-complete.svg.js";
|
|
12
12
|
import { ReactComponent as F } from "../../assets/icons/translational.svg.js";
|
|
13
13
|
import { ReactComponent as g } from "../../assets/icons/tree_horizontal.svg.js";
|
|
14
14
|
import { ReactComponent as w } from "../../assets/icons/standardDataModel.svg.js";
|
|
15
|
+
import { ReactComponent as U } from "../../assets/icons/Challenge.svg.js";
|
|
15
16
|
import { Project as p } from "../../assets/themed_icons/Project.js";
|
|
16
|
-
import { Program as
|
|
17
|
-
import { Publication as
|
|
18
|
-
import { Study as
|
|
19
|
-
import { ToolClinical as
|
|
17
|
+
import { Program as P } from "../../assets/themed_icons/Program.js";
|
|
18
|
+
import { Publication as u } from "../../assets/themed_icons/Publication.js";
|
|
19
|
+
import { Study as _ } from "../../assets/themed_icons/Study.js";
|
|
20
|
+
import { ToolClinical as M } from "../../assets/themed_icons/ToolClinical.js";
|
|
20
21
|
import { ToolComputational as s } from "../../assets/themed_icons/ToolComputational.js";
|
|
21
22
|
import { ToolExperimental as f } from "../../assets/themed_icons/ToolExperimental.js";
|
|
22
|
-
import { Database as
|
|
23
|
-
import { Explore as
|
|
24
|
-
import { Search as
|
|
25
|
-
import { Chart as
|
|
26
|
-
import { Filter as
|
|
27
|
-
import { SqlEditorIcon as
|
|
28
|
-
import { Download as
|
|
29
|
-
import { Expand as
|
|
30
|
-
import { Collapse as
|
|
31
|
-
import { Close as
|
|
32
|
-
import { SortUp as
|
|
33
|
-
import { SortDown as
|
|
34
|
-
import { Settings as
|
|
35
|
-
import { Columns as
|
|
36
|
-
import { ColumnsDark as
|
|
37
|
-
import { VerticalDots as
|
|
38
|
-
import { ExternalLink as
|
|
39
|
-
import { Challenge as q } from "../../assets/themed_icons/Challenge.js";
|
|
23
|
+
import { Database as $ } from "../../assets/themed_icons/Database.js";
|
|
24
|
+
import { Explore as h } from "../../assets/themed_icons/Explore.js";
|
|
25
|
+
import { Search as v } from "../../assets/themed_icons/Search.js";
|
|
26
|
+
import { Chart as Y } from "../../assets/themed_icons/Chart.js";
|
|
27
|
+
import { Filter as b } from "../../assets/themed_icons/Filter.js";
|
|
28
|
+
import { SqlEditorIcon as x } from "../../assets/themed_icons/SqlEditorIcon.js";
|
|
29
|
+
import { Download as y } from "../../assets/themed_icons/Download.js";
|
|
30
|
+
import { Expand as X } from "../../assets/themed_icons/Expand.js";
|
|
31
|
+
import { Collapse as G } from "../../assets/themed_icons/Collapse.js";
|
|
32
|
+
import { Close as H } from "../../assets/themed_icons/Close.js";
|
|
33
|
+
import { SortUp as z } from "../../assets/themed_icons/SortUp.js";
|
|
34
|
+
import { SortDown as B } from "../../assets/themed_icons/SortDown.js";
|
|
35
|
+
import { Settings as V } from "../../assets/themed_icons/Settings.js";
|
|
36
|
+
import { Columns as k } from "../../assets/themed_icons/Columns.js";
|
|
37
|
+
import { ColumnsDark as W } from "../../assets/themed_icons/ColumnsDark.js";
|
|
38
|
+
import { VerticalDots as j } from "../../assets/themed_icons/VerticalDots.js";
|
|
39
|
+
import { ExternalLink as q } from "../../assets/themed_icons/ExternalLink.js";
|
|
40
40
|
import { EXTERNAL_RESOURCE as K, DATASET as Q, DOWNLOAD_PERMISSION_REQUIRED as Z, VARIABLE_DIFFICULTY as J, MEDIUM_DIFFICULTY as oo, EASY_DIFFICULTY as ro, STANDARD_DATA_MODEL as to, TREE_HORIZONTAL as mo, CONTRIBUTOR as ao, EXTERNALLINK as no, FILE as io, CHART2 as eo, VERTICAL_DOTS as po, CHALLENGE as so, COLUMNSDARK as fo, COLUMNS as Ro, SETTINGS as co, SORTDOWN as Eo, SORTUP as To, CLOSE as Co, COLLAPSE as Ao, EXPAND as Oo, DOWNLOAD as Io, SQL_EDITOR as Lo, FILTER as So, CHART as lo, SEARCH as Do, EXPLORE as No, TRANSLATIONAL as Fo, MOUSE as go, PERSON as wo, ORGANIZATION as Uo, GRANT as Po, PROJECT as uo, PROGRAM as _o, CLINICAL as Mo, COMPUTATIONAL_TOOL as $o, COMPUTATIONAL as ho, EXPERIMENTAL_TOOL as vo, EXPERIMENTAL as Yo, STUDY as bo, PUBLICATION as xo, STUDY_COMPLETE as yo, STUDY_ACTIVE as Xo, TOOL as Go, FUNDER as Ho, DATABASE as zo } from "../../utils/SynapseConstants.js";
|
|
41
41
|
import m from "../IconSvg/IconSvg.js";
|
|
42
42
|
const R = {
|
|
@@ -44,46 +44,46 @@ const R = {
|
|
|
44
44
|
[Q]: /* @__PURE__ */ o(m, { icon: "dataset" }),
|
|
45
45
|
[K]: /* @__PURE__ */ o(m, { icon: "link" })
|
|
46
46
|
}, Bo = {
|
|
47
|
-
[zo]:
|
|
47
|
+
[zo]: $,
|
|
48
48
|
// this returns svg tag
|
|
49
49
|
[Ho]: A,
|
|
50
50
|
[Go]: O,
|
|
51
|
-
[Xo]:
|
|
52
|
-
[yo]:
|
|
51
|
+
[Xo]: D,
|
|
52
|
+
[yo]: N,
|
|
53
53
|
// new icons
|
|
54
|
-
[xo]:
|
|
55
|
-
[bo]:
|
|
54
|
+
[xo]: u,
|
|
55
|
+
[bo]: _,
|
|
56
56
|
[Yo]: f,
|
|
57
57
|
[vo]: f,
|
|
58
58
|
[ho]: s,
|
|
59
59
|
[$o]: s,
|
|
60
|
-
[Mo]:
|
|
61
|
-
[_o]:
|
|
60
|
+
[Mo]: M,
|
|
61
|
+
[_o]: P,
|
|
62
62
|
[uo]: p,
|
|
63
63
|
[Po]: p,
|
|
64
|
-
[Uo]:
|
|
65
|
-
[wo]:
|
|
64
|
+
[Uo]: d,
|
|
65
|
+
[wo]: l,
|
|
66
66
|
[go]: S,
|
|
67
67
|
[Fo]: F,
|
|
68
|
-
[No]:
|
|
69
|
-
[Do]:
|
|
70
|
-
[lo]:
|
|
71
|
-
[So]:
|
|
72
|
-
[Lo]:
|
|
73
|
-
[Io]:
|
|
74
|
-
[Oo]:
|
|
75
|
-
[Ao]:
|
|
76
|
-
[Co]:
|
|
77
|
-
[To]:
|
|
78
|
-
[Eo]:
|
|
79
|
-
[co]:
|
|
80
|
-
[Ro]:
|
|
81
|
-
[fo]:
|
|
82
|
-
[so]:
|
|
83
|
-
[po]:
|
|
68
|
+
[No]: h,
|
|
69
|
+
[Do]: v,
|
|
70
|
+
[lo]: Y,
|
|
71
|
+
[So]: b,
|
|
72
|
+
[Lo]: x,
|
|
73
|
+
[Io]: y,
|
|
74
|
+
[Oo]: X,
|
|
75
|
+
[Ao]: G,
|
|
76
|
+
[Co]: H,
|
|
77
|
+
[To]: z,
|
|
78
|
+
[Eo]: B,
|
|
79
|
+
[co]: V,
|
|
80
|
+
[Ro]: k,
|
|
81
|
+
[fo]: W,
|
|
82
|
+
[so]: U,
|
|
83
|
+
[po]: j,
|
|
84
84
|
[eo]: C,
|
|
85
85
|
[io]: I,
|
|
86
|
-
[no]:
|
|
86
|
+
[no]: q,
|
|
87
87
|
[ao]: L,
|
|
88
88
|
[mo]: g,
|
|
89
89
|
[to]: w,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Icon.js","sources":["../../../src/components/Icon/Icon.tsx"],"sourcesContent":["import { ReactComponent as chart2Svg } from '@/assets/icons/chart2.svg'\nimport { ReactComponent as Data2Svg } from '@/assets/icons/Data2.svg'\nimport { ReactComponent as DNA_TwoSvg } from '@/assets/icons/DNA_Two.svg'\nimport { ReactComponent as fileSvg } from '@/assets/icons/file.svg'\nimport { ReactComponent as institutionSvg } from '@/assets/icons/institution.svg'\nimport { ReactComponent as mouseSvg } from '@/assets/icons/mouse.svg'\nimport { ReactComponent as organizationsSvg } from '@/assets/icons/organizations.svg'\nimport { ReactComponent as personSvg } from '@/assets/icons/person.svg'\nimport { ReactComponent as studyActiveSvg } from '@/assets/icons/study-active.svg'\nimport { ReactComponent as studyCompleteSvg } from '@/assets/icons/study-complete.svg'\nimport { ReactComponent as translationalSvg } from '@/assets/icons/translational.svg'\nimport { ReactComponent as treeHorizontalSvg } from '@/assets/icons/tree_horizontal.svg'\nimport { ReactComponent as standardDataModelSvg } from '@/assets/icons/standardDataModel.svg'\nimport {\n
|
|
1
|
+
{"version":3,"file":"Icon.js","sources":["../../../src/components/Icon/Icon.tsx"],"sourcesContent":["import { ReactComponent as chart2Svg } from '@/assets/icons/chart2.svg'\nimport { ReactComponent as Data2Svg } from '@/assets/icons/Data2.svg'\nimport { ReactComponent as DNA_TwoSvg } from '@/assets/icons/DNA_Two.svg'\nimport { ReactComponent as fileSvg } from '@/assets/icons/file.svg'\nimport { ReactComponent as institutionSvg } from '@/assets/icons/institution.svg'\nimport { ReactComponent as mouseSvg } from '@/assets/icons/mouse.svg'\nimport { ReactComponent as organizationsSvg } from '@/assets/icons/organizations.svg'\nimport { ReactComponent as personSvg } from '@/assets/icons/person.svg'\nimport { ReactComponent as studyActiveSvg } from '@/assets/icons/study-active.svg'\nimport { ReactComponent as studyCompleteSvg } from '@/assets/icons/study-complete.svg'\nimport { ReactComponent as translationalSvg } from '@/assets/icons/translational.svg'\nimport { ReactComponent as treeHorizontalSvg } from '@/assets/icons/tree_horizontal.svg'\nimport { ReactComponent as standardDataModelSvg } from '@/assets/icons/standardDataModel.svg'\nimport { ReactComponent as Challenge } from '@/assets/icons/Challenge.svg'\nimport {\n Chart,\n Close,\n Collapse,\n Columns,\n ColumnsDark,\n Database,\n Download,\n Expand,\n Explore,\n ExternalLink,\n Filter,\n Program,\n Project,\n Publication,\n Search,\n Settings,\n SortDown,\n SortUp,\n SqlEditorIcon,\n Study,\n ToolClinical,\n ToolComputational,\n ToolExperimental,\n VerticalDots,\n} from '@/assets/themed_icons'\nimport {\n CHALLENGE,\n CHART,\n CHART2,\n CLINICAL,\n CLOSE,\n COLLAPSE,\n COLUMNS,\n COLUMNSDARK,\n COMPUTATIONAL,\n COMPUTATIONAL_TOOL,\n CONTRIBUTOR,\n DATABASE,\n DATASET,\n DOWNLOAD,\n DOWNLOAD_PERMISSION_REQUIRED,\n EASY_DIFFICULTY,\n EXPAND,\n EXPERIMENTAL,\n EXPERIMENTAL_TOOL,\n EXPLORE,\n EXTERNAL_RESOURCE,\n EXTERNALLINK,\n FILE,\n FILTER,\n FUNDER,\n GRANT,\n MEDIUM_DIFFICULTY,\n MOUSE,\n ORGANIZATION,\n PERSON,\n PROGRAM,\n PROJECT,\n PUBLICATION,\n SEARCH,\n SETTINGS,\n SORTDOWN,\n SORTUP,\n SQL_EDITOR,\n STANDARD_DATA_MODEL,\n STUDY,\n STUDY_ACTIVE,\n STUDY_COMPLETE,\n TOOL,\n TRANSLATIONAL,\n TREE_HORIZONTAL,\n VARIABLE_DIFFICULTY,\n VERTICAL_DOTS,\n} from '@/utils/SynapseConstants'\nimport { ComponentType } from 'react'\nimport IconSvg from '../IconSvg/IconSvg'\n\nexport type IconOptions = Record<string, string | ComponentType<any>>\n\nexport type IconProps = {\n type: string\n iconOptions?: IconOptions\n value?: string\n isHeader?: boolean\n cssClass?: string\n}\n\nconst iconSvgMapping = {\n clipboard: <IconSvg icon=\"clipboard\" />,\n [DATASET]: <IconSvg icon=\"dataset\" />,\n [EXTERNAL_RESOURCE]: <IconSvg icon=\"link\" />,\n}\n\nconst defaultIcons = {\n [DATABASE]: Database, // this returns svg tag\n [FUNDER]: Data2Svg,\n [TOOL]: DNA_TwoSvg,\n [STUDY_ACTIVE]: studyActiveSvg,\n [STUDY_COMPLETE]: studyCompleteSvg,\n // new icons\n [PUBLICATION]: Publication,\n [STUDY]: Study,\n [EXPERIMENTAL]: ToolExperimental,\n [EXPERIMENTAL_TOOL]: ToolExperimental,\n [COMPUTATIONAL]: ToolComputational,\n [COMPUTATIONAL_TOOL]: ToolComputational,\n [CLINICAL]: ToolClinical,\n [PROGRAM]: Program,\n [PROJECT]: Project,\n [GRANT]: Project,\n [ORGANIZATION]: organizationsSvg,\n [PERSON]: personSvg,\n [MOUSE]: mouseSvg,\n [TRANSLATIONAL]: translationalSvg,\n [EXPLORE]: Explore,\n [SEARCH]: Search,\n [CHART]: Chart,\n [FILTER]: Filter,\n [SQL_EDITOR]: SqlEditorIcon,\n [DOWNLOAD]: Download,\n [EXPAND]: Expand,\n [COLLAPSE]: Collapse,\n [CLOSE]: Close,\n [SORTUP]: SortUp,\n [SORTDOWN]: SortDown,\n [SETTINGS]: Settings,\n [COLUMNS]: Columns,\n [COLUMNSDARK]: ColumnsDark,\n [CHALLENGE]: Challenge,\n [VERTICAL_DOTS]: VerticalDots,\n [CHART2]: chart2Svg,\n [FILE]: fileSvg,\n [EXTERNALLINK]: ExternalLink,\n [CONTRIBUTOR]: institutionSvg,\n [TREE_HORIZONTAL]: treeHorizontalSvg,\n [STANDARD_DATA_MODEL]: standardDataModelSvg,\n [EASY_DIFFICULTY]:\n 'https://s3.amazonaws.com/static.synapse.org/images/easy.svg',\n [MEDIUM_DIFFICULTY]:\n 'https://s3.amazonaws.com/static.synapse.org/images/medium.svg',\n [VARIABLE_DIFFICULTY]:\n 'https://s3.amazonaws.com/static.synapse.org/images/variable.svg',\n [DOWNLOAD_PERMISSION_REQUIRED]:\n 'https://s3.amazonaws.com/static.synapse.org/images/downloadPermissionRequired.svg',\n}\nfunction Icon({ type, value = '', iconOptions, cssClass }: IconProps) {\n const IconSvg = iconSvgMapping[value] || iconSvgMapping[type]\n if (IconSvg) return IconSvg\n\n const iconSet = { ...defaultIcons, ...iconOptions }\n // see if the value has a corresponding icon, e.g. 'Active' in a studies table\n // or if the type of card has a corresponding icon, e.g. 'Publication'\n const IconDefinition = iconSet[value] || iconSet[type]\n const className = `iconImg ${cssClass ?? ''}`\n if (IconDefinition == null) {\n console.warn('Icon type not found:', type)\n return <></>\n }\n if (typeof IconDefinition === 'string') {\n return <img src={IconDefinition} className={className} />\n }\n return (\n <span>\n <IconDefinition className={className} />\n </span>\n )\n}\nexport default Icon\n"],"names":["iconSvgMapping","jsx","IconSvg","DATASET","EXTERNAL_RESOURCE","defaultIcons","DATABASE","Database","FUNDER","Data2Svg","TOOL","DNA_TwoSvg","STUDY_ACTIVE","studyActiveSvg","STUDY_COMPLETE","studyCompleteSvg","PUBLICATION","Publication","STUDY","Study","EXPERIMENTAL","ToolExperimental","EXPERIMENTAL_TOOL","COMPUTATIONAL","ToolComputational","COMPUTATIONAL_TOOL","CLINICAL","ToolClinical","PROGRAM","Program","PROJECT","Project","GRANT","ORGANIZATION","organizationsSvg","PERSON","personSvg","MOUSE","mouseSvg","TRANSLATIONAL","translationalSvg","EXPLORE","Explore","SEARCH","Search","CHART","Chart","FILTER","Filter","SQL_EDITOR","SqlEditorIcon","DOWNLOAD","Download","EXPAND","Expand","COLLAPSE","Collapse","CLOSE","Close","SORTUP","SortUp","SORTDOWN","SortDown","SETTINGS","Settings","COLUMNS","Columns","COLUMNSDARK","ColumnsDark","CHALLENGE","Challenge","VERTICAL_DOTS","VerticalDots","CHART2","chart2Svg","FILE","fileSvg","EXTERNALLINK","ExternalLink","CONTRIBUTOR","institutionSvg","TREE_HORIZONTAL","treeHorizontalSvg","STANDARD_DATA_MODEL","standardDataModelSvg","EASY_DIFFICULTY","MEDIUM_DIFFICULTY","VARIABLE_DIFFICULTY","DOWNLOAD_PERMISSION_REQUIRED","Icon","type","value","iconOptions","cssClass","iconSet","IconDefinition","className","Fragment"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SvgIconProps } from '@mui/material/SvgIcon';
|
|
2
2
|
import { EntityType } from '@sage-bionetworks/synapse-client';
|
|
3
|
-
export declare const IconStrings: readonly ["accessOpen", "accessPending", "accessPendingCloud", "accessClosed", "actionKey", "arrowBack", "arrowForward", "arrowDropUp", "arrowDropDown", "article", "cards", "check", "clear", "cart", "clock", "code", "columns", "openInNewWindow", "dashboard", "delete", "deleteSweep", "filter", "addToCart", "addCircleOutline", "addCircleTwoTone", "reload", "team", "photoCamera", "info", "favTwoTone", "favOutline", "fav", "peopleTwoTone", "challengesTwoTone", "download", "searchOutlined", "search", "history", "time", "login", "helpChatBubble", "helpOutlined", "helpOutlineTwoTone", "expandLess", "expandMore", "rat", "chromatin", "clinical", "contentCopy", "data", "dataLocked", "geneExpression", "geneVariants", "github", "imaging", "inSilicoModel", "modelSystem", "bioChemicalPhysical", "computationalTool", "spatialProfiling", "dataReuse", "lineGraph", "kinomics", "proteomics", "packagableFile", "other", "wiki", "file", "fileOutlined", "folder", "link", "linkOff", "table", "tableRows", "share", "public", "people", "entityview", "submissionview", "challenge", "discussion", "dataset", "datasetcollection", "docker", "accountCertified", "accountRegistered", "accountValidated", "warningOutlined", "removeCircle", "replyTwoTone", "chatTwoTone", "accessManagement", "chevronRight", "chevronLeft", "database", "close", "cross", "verticalEllipsis", "sync", "clipboard", "clipboardCheck", "add", "warning", "circle", "block", "checkCircle", "errorOutlined", "phone", "pushpin", "addBoxOutline", "minusBoxOutline", "italic", "bold", "title", "visibility", "visibilityOff", "strikethrough", "subscript", "superscript", "latex", "image", "edit", "tag", "restore", "label", "upload", "flag", "newFolder", "createVersion", "email", "addConditions", "sortUp", "sortDown", "orcid", "tasks", "google24", "arcusbio", "openInFull", "tableview", "fileWithShield"];
|
|
3
|
+
export declare const IconStrings: readonly ["accessOpen", "accessPending", "accessPendingCloud", "accessClosed", "actionKey", "arrowBack", "arrowForward", "arrowDropUp", "arrowDropDown", "article", "cards", "check", "clear", "cart", "clock", "code", "columns", "openInNewWindow", "dashboard", "delete", "deleteSweep", "filter", "addToCart", "addCircleOutline", "addCircleTwoTone", "reload", "team", "photoCamera", "info", "favTwoTone", "favOutline", "fav", "peopleTwoTone", "challengesTwoTone", "download", "searchOutlined", "search", "history", "time", "login", "helpChatBubble", "helpOutlined", "helpOutlineTwoTone", "expandLess", "expandMore", "rat", "chromatin", "clinical", "contentCopy", "data", "dataLocked", "geneExpression", "geneVariants", "github", "imaging", "inSilicoModel", "modelSystem", "bioChemicalPhysical", "computationalTool", "spatialProfiling", "dataReuse", "lineGraph", "kinomics", "proteomics", "packagableFile", "unpackagableFile", "other", "wiki", "file", "fileOutlined", "folder", "link", "linkOff", "table", "tableRows", "share", "public", "people", "entityview", "submissionview", "challenge", "discussion", "dataset", "datasetcollection", "docker", "accountCertified", "accountRegistered", "accountValidated", "warningOutlined", "removeCircle", "replyTwoTone", "chatTwoTone", "accessManagement", "chevronRight", "chevronLeft", "database", "close", "cross", "verticalEllipsis", "sync", "clipboard", "clipboardCheck", "add", "warning", "circle", "block", "checkCircle", "errorOutlined", "phone", "pushpin", "addBoxOutline", "minusBoxOutline", "italic", "bold", "title", "visibility", "visibilityOff", "strikethrough", "subscript", "superscript", "latex", "image", "edit", "tag", "restore", "label", "upload", "flag", "newFolder", "createVersion", "email", "addConditions", "sortUp", "sortDown", "orcid", "tasks", "google24", "arcusbio", "openInFull", "tableview", "fileWithShield", "baseline", "rosetteRibbon", "starTrophy", "awardScroll", "clappingHands", "podium", "openBook", "handWithMoney", "threeStars", "multiFile"];
|
|
4
4
|
export type IconName = (typeof IconStrings)[number];
|
|
5
5
|
export type IconSvgProps = {
|
|
6
6
|
icon: IconName;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconSvg.d.ts","sourceRoot":"","sources":["../../../src/components/IconSvg/IconSvg.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconSvg.d.ts","sourceRoot":"","sources":["../../../src/components/IconSvg/IconSvg.tsx"],"names":[],"mappings":"AAoJA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAG7D,eAAO,MAAM,WAAW,k+DAwJd,CAAA;AAEV,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnD,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,QAAQ,CAAA;IAEd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,GAAG,YAAY,CAAA;AAuUhB,iBAAS,OAAO,CAAC,KAAK,EAAE,YAAY,2CA2CnC;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,CAczD,CAAA;AAED,eAAe,OAAO,CAAA"}
|