synapse-react-client 4.0.2 → 4.0.4
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/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementList.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js +8 -7
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js +11 -11
- package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js +9 -9
- package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js +5 -5
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.d.ts.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +36 -35
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.js +8 -8
- package/dist/components/AclEditor/AclEditor.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.test-utils.js +34 -34
- package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
- package/dist/components/AddToDownloadListV2.js +10 -10
- package/dist/components/AddToDownloadListV2.js.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.js +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js +6 -5
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -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 +13 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +11 -11
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.css +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +25 -25
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss +13 -5
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss.js +5 -5
- package/dist/components/CardContainer/CardLink.d.ts +12 -0
- package/dist/components/CardContainer/CardLink.d.ts.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/ChallengeSubmission/AvailableEvaluationQueueList.js +12 -12
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.d.ts.map +1 -1
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js +7 -7
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
- package/dist/components/ChangePassword/useChangePasswordFormState.js +5 -2
- package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.d.ts.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.js +13 -12
- package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
- package/dist/components/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/CookiesNotification/CookiesNotification.js +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +12 -10
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +10 -5
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +43 -38
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +10 -5
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.d.ts.map +1 -1
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js +9 -7
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
- package/dist/components/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/ActionRequiredCard/ActionRequiredCard.js +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/RequestDownloadCard.js +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 +10 -5
- package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
- package/dist/components/Ecosystem/TableQueryEcosystem.js +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditorModal.js +1 -1
- package/dist/components/EntityAclEditor/OpenData.js +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.d.ts.map +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +113 -127
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitation.js +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js +20 -20
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +4 -4
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityNameCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js +1 -1
- package/dist/components/EntityFinder/tree/EntityTree.js +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.d.ts.map +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js +39 -39
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts +8 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts.map +1 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js +46 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -0
- package/dist/components/Evaluation/EvaluationCard.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationCard.js +35 -41
- package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.js +95 -90
- package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.js +133 -124
- package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
- package/dist/components/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/FilePreview/EntityPreview.js +1 -1
- package/dist/components/Forum/DiscussionReply.js +10 -10
- package/dist/components/Forum/DiscussionThread.js +21 -21
- package/dist/components/FullWidthAlert/FullWidthAlert.d.ts +2 -2
- package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
- package/dist/components/GenericCard/CardUtils.d.ts.map +1 -1
- package/dist/components/GenericCard/CardUtils.js +36 -36
- package/dist/components/GenericCard/CardUtils.js.map +1 -1
- package/dist/components/GenericCard/CollapsibleDescription.js +25 -25
- package/dist/components/GenericCard/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 +95 -85
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts +10 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +248 -209
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.d.ts.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.js +14 -15
- package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
- package/dist/components/GoogleAnalytics/GoogleAnalytics.js +1 -1
- package/dist/components/HasAccess/HasAccessV2.js +1 -1
- package/dist/components/HasAccess/useHasAccess.js +1 -1
- package/dist/components/HeaderCard.js +17 -13
- package/dist/components/HeaderCard.js.map +1 -1
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js +23 -23
- package/dist/components/IDUReport/IDUReportSubmissionInfo.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/JSONArrayEditor/useParseCsv.d.ts +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.d.ts.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.js +9 -9
- package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
- package/dist/components/Markdown/MarkdownCollapse.js +7 -7
- package/dist/components/Markdown/MarkdownEditor.js +11 -11
- package/dist/components/Markdown/MarkdownGithub.js +1 -1
- package/dist/components/Markdown/MarkdownPopover.js +6 -6
- package/dist/components/Markdown/MarkdownPopover.js.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.js +139 -135
- package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.d.ts +8 -0
- package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.js +139 -65
- package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
- package/dist/components/Markdown/UserMentionModal.js +18 -18
- package/dist/components/Markdown/UserMentionModal.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownButton.js +3 -3
- package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.d.ts.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js +9 -8
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.css +1 -0
- package/dist/components/Plot/SynapsePlot.d.ts +2 -0
- package/dist/components/Plot/SynapsePlot.d.ts.map +1 -1
- package/dist/components/Plot/SynapsePlot.js +43 -39
- package/dist/components/Plot/SynapsePlot.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.scss +8 -0
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts +1 -0
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +137 -135
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
- package/dist/components/Resources/Resources.Desktop.js +7 -7
- package/dist/components/Resources/Resources.Mobile.js +6 -6
- package/dist/components/StorybookComponentWrapper.js +6 -3
- package/dist/components/StorybookComponentWrapper.js.map +1 -1
- package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js +3 -3
- package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js +10 -10
- 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/SynapseForm/WarningDialog.d.ts +1 -0
- package/dist/components/SynapseForm/WarningDialog.d.ts.map +1 -1
- package/dist/components/SynapseForm/WarningDialog.js +18 -16
- package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +25 -25
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/HasAccessChip.js +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.d.ts.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js +12 -13
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +5 -5
- package/dist/components/SynapseTable/ExpandableTableDataCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js +3 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +13 -13
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTable.js +4 -4
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js +122 -122
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js +9 -9
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +5 -5
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +1 -1
- package/dist/components/TableFeedCards/TableFeedCards.js +9 -9
- package/dist/components/TermsAndConditions/TermsAndConditionsItem.js +10 -10
- package/dist/components/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/TimelinePlot/TimelinePlotSpeciesSelector.js +9 -9
- package/dist/components/UserSearchBox/UserSearchBox.d.ts +23 -0
- package/dist/components/UserSearchBox/UserSearchBox.d.ts.map +1 -0
- package/dist/components/UserSearchBox/UserSearchBox.js +146 -0
- package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -0
- package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js +13 -13
- package/dist/components/WizardChoiceButton/WizardChoiceButton.js +3 -3
- package/dist/components/dataaccess/AccessHistoryDashboard.js +5 -5
- package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementDashboard.js +4 -4
- package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js +5 -5
- package/dist/components/dataaccess/UseAccessRequirementTable.js +3 -3
- package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.js +1 -1
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +10 -5
- 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/entity/metadata/EntityModal.js +1 -1
- package/dist/components/entity/metadata/MetadataTable.js +1 -1
- package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +1 -1
- package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js +1 -1
- package/dist/components/entity/page/title_bar/TitleBarProperties.js +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.d.ts.map +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js +27 -26
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
- package/dist/components/index.js +125 -121
- package/dist/components/index.js.map +1 -1
- package/dist/components/layout/InfiniteTableLayout.js +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/styled/HoverPopover.css +1 -0
- package/dist/components/styled/HoverPopover.d.ts +28 -0
- package/dist/components/styled/HoverPopover.d.ts.map +1 -0
- package/dist/components/styled/HoverPopover.js +103 -0
- package/dist/components/styled/HoverPopover.js.map +1 -0
- package/dist/components/styled/HoverPopover.module.scss +9 -0
- package/dist/components/styled/HoverPopover.module.scss.js +10 -0
- package/dist/components/styled/HoverPopover.module.scss.js.map +1 -0
- package/dist/components/styled/index.d.ts +2 -0
- package/dist/components/styled/index.d.ts.map +1 -1
- package/dist/components/styled/index.js +11 -9
- package/dist/components/styled/index.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +10 -5
- package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js +10 -5
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
- package/dist/components/widgets/Range.js +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.js +35 -32
- package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.js +69 -68
- package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.js +24 -21
- package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterControls.js +3 -3
- package/dist/features/curator/GridPage/GridPage.js +10 -5
- package/dist/features/curator/GridPage/GridPage.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.js +10 -5
- package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
- package/dist/index.js +155 -151
- package/dist/index.js.map +1 -1
- package/dist/mocks/msw/handlers/accessRequirementHandlers.js +5 -5
- package/dist/mocks/msw/handlers/projectStorageHandlers.js +5 -5
- package/dist/mocks/msw/handlers/wikiHandlers.js +1 -1
- package/dist/mocks/msw/handlers.d.ts.map +1 -1
- package/dist/mocks/msw/handlers.js +67 -59
- package/dist/mocks/msw/handlers.js.map +1 -1
- package/dist/style/base/_core.scss +0 -1
- package/dist/style/components/_all.scss +0 -2
- package/dist/style/components/_cards.scss +22 -0
- package/dist/style/components/_download-list-v2.scss +1 -1
- package/dist/style/components/_entity-badge.scss +0 -2
- package/dist/style/components/_expandable_table_data.scss +3 -3
- package/dist/style/components/_query-wrapper-plot-nav.scss +13 -0
- package/dist/style/components/facet_nav/_facet-nav-panel.scss +3 -0
- package/dist/style/components/facet_nav/_facet-nav.scss +4 -0
- package/dist/style/main.css +1 -1
- package/dist/synapse-client/SynapseClient.js +118 -118
- package/dist/synapse-client/SynapseClient.js.map +1 -1
- package/dist/synapse-queries/auth/useOIDC.js +1 -1
- package/dist/synapse-queries/auth/useTwoFactorEnrollment.js +1 -1
- package/dist/synapse-queries/entity/index.js +6 -6
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js +1 -1
- package/dist/synapse-queries/index.js +1 -1
- package/dist/synapse-queries/user/usePersonalAccessToken.js +1 -1
- package/dist/testutils/vitest.setup.js +10 -11
- package/dist/testutils/vitest.setup.js.map +1 -1
- package/dist/theme/DefaultTheme.js +1 -1
- package/dist/theme/ThemeProvider.d.ts +2 -1
- package/dist/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/theme/ThemeProvider.js +11 -10
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/mergeTheme.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/AppUtils/AppUtils.js +1 -1
- package/dist/utils/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/SanitizeHtmlUtils.d.ts.map +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.js +34 -40
- package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
- package/dist/utils/functions/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/dist/utils/functions/deepLinkingUtils.js +10 -10
- package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
- package/dist/utils/hooks/index.js +6 -6
- package/dist/utils/hooks/useDetectSSOCode.js +3 -3
- package/dist/utils/hooks/useGetEntityMetadata.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.d.ts.map +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
- package/dist/utils/hooks/useOneSageURL.d.ts.map +1 -1
- package/dist/utils/hooks/useOneSageURL.js +15 -15
- package/dist/utils/hooks/useOneSageURL.js.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.d.ts +1 -0
- package/dist/utils/hooks/useSourceAppConfigs.d.ts.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.js +79 -77
- package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
- package/dist/utils/index.js +4 -4
- package/package.json +15 -16
- package/dist/_virtual/index.js +0 -6
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/index2.js +0 -5
- package/dist/_virtual/index2.js.map +0 -1
- package/dist/_virtual/index3.js +0 -5
- package/dist/_virtual/index3.js.map +0 -1
- package/dist/_virtual/index4.js +0 -5
- package/dist/_virtual/index4.js.map +0 -1
- package/dist/_virtual/index5.js +0 -5
- package/dist/_virtual/index5.js.map +0 -1
- package/dist/assets/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/components/UserSearchBox/UserSearchBoxV2.d.ts +0 -21
- package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts.map +0 -1
- package/dist/components/UserSearchBox/UserSearchBoxV2.js +0 -144
- package/dist/components/UserSearchBox/UserSearchBoxV2.js.map +0 -1
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js +0 -53
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js.map +0 -1
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js +0 -948
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js.map +0 -1
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js +0 -30
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js.map +0 -1
- package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js +0 -15
- package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js.map +0 -1
- package/dist/style/components/_download-cart-page.scss +0 -204
- package/dist/style/components/_user-search-box.scss +0 -30
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
.BasePortalCard__root:global(.MuiCard-root) {
|
|
5
5
|
position: relative;
|
|
6
|
+
display: flex;
|
|
7
|
+
flex-direction: column;
|
|
6
8
|
}
|
|
7
9
|
|
|
8
10
|
.BasePortalCard__contentBelow {
|
|
@@ -11,14 +13,24 @@
|
|
|
11
13
|
|
|
12
14
|
.BasePortalCard__content:global(.MuiCardContent-root):last-child {
|
|
13
15
|
padding: 0;
|
|
16
|
+
flex: 1;
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
14
19
|
}
|
|
15
20
|
|
|
16
|
-
.BasePortalCard__media
|
|
21
|
+
.BasePortalCard__media {
|
|
17
22
|
height: 50%;
|
|
23
|
+
flex-shrink: 0;
|
|
24
|
+
overflow: hidden;
|
|
25
|
+
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
|
|
18
26
|
|
|
19
27
|
@media (min-width: map.get(SrcVariables.$breakpoints, 'medium')) {
|
|
20
28
|
height: 60%;
|
|
21
29
|
}
|
|
30
|
+
|
|
31
|
+
:global(.MuiCardMedia-root) {
|
|
32
|
+
height: 100%;
|
|
33
|
+
}
|
|
22
34
|
}
|
|
23
35
|
|
|
24
36
|
.small {
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import './BasePortalCard.css';const a = "
|
|
1
|
+
import './BasePortalCard.css';const a = "_BasePortalCard__root_1hm6w_1", _ = "_BasePortalCard__contentBelow_1hm6w_7", t = "_BasePortalCard__content_1hm6w_7", o = "_BasePortalCard__media_1hm6w_18", e = "_small_1hm6w_33", r = "_medium_1hm6w_44", l = "_large_1hm6w_55", s = {
|
|
2
2
|
BasePortalCard__root: a,
|
|
3
|
-
BasePortalCard__contentBelow:
|
|
4
|
-
BasePortalCard__content:
|
|
5
|
-
BasePortalCard__media:
|
|
6
|
-
small:
|
|
7
|
-
medium:
|
|
3
|
+
BasePortalCard__contentBelow: _,
|
|
4
|
+
BasePortalCard__content: t,
|
|
5
|
+
BasePortalCard__media: o,
|
|
6
|
+
small: e,
|
|
7
|
+
medium: r,
|
|
8
8
|
large: l
|
|
9
9
|
};
|
|
10
10
|
export {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
t as BasePortalCard__content,
|
|
12
|
+
_ as BasePortalCard__contentBelow,
|
|
13
|
+
o as BasePortalCard__media,
|
|
14
14
|
a as BasePortalCard__root,
|
|
15
15
|
s as default,
|
|
16
16
|
l as large,
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
r as medium,
|
|
18
|
+
e as small
|
|
19
19
|
};
|
|
20
20
|
//# sourceMappingURL=BasePortalCard.module.scss.js.map
|
package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.
|
|
1
|
+
._ColorfulPortalCardWithChips__root_1uazc_1{position:relative}._ColorfulPortalCardWithChips__container_1uazc_5{height:100%;display:flex;justify-content:center;flex-direction:column;align-items:center;gap:20px;flex-wrap:wrap}@media(min-width:1024px){._ColorfulPortalCardWithChips__container_1uazc_5{flex-direction:row;align-items:flex-start;padding:40px 100px 20px}}._ColorfulPortalCardWithChips__titleSection_1uazc_22{color:#fff;max-width:310px;top:0;position:absolute;padding-left:30px;padding-top:65px}._ColorfulPortalCardWithChips__title_1uazc_22.MuiTypography-root{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow-wrap:break-word}._ColorfulPortalCardWithChips__sectionTitle_1uazc_40.MuiTypography-root{color:var(--synapse-black);margin-bottom:25px;font-size:48px;line-height:80px;text-align:center}._ColorfulPortalCardWithChips__backgroundImage_1uazc_48.MuiCardMedia-root{background-size:contain}._ColorfulPortalCardWithChips__challengeName_1uazc_52.MuiTypography-root{font-weight:300;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:break-word}._ColorfulPortalCardWithChips__sectionContainer_1uazc_62{flex:1}._ColorfulPortalCardWithChips__bottomSection_1uazc_66{min-height:0;flex:1;gap:12px;padding:30px;align-items:flex-start}._ColorfulPortalCardWithChips__descriptionTitle_1uazc_74.MuiTypography-root{color:var(--synapse-black);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}._ColorfulPortalCardWithChips__registrationStatus_1uazc_83.MuiChip-root{color:var(--synapse-gray-900);position:absolute;top:0;right:0;margin:26px 20px 0 0}._ColorfulPortalCardWithChips__chipsContainer_1uazc_92{display:flex;gap:5px;flex-wrap:wrap;max-width:400px}._ColorfulPortalCardWithChips__learnMoreButton_1uazc_99.MuiButton-root{display:flex;margin-top:auto;height:36px;padding:6px 16px;border-radius:8px;color:var(--synapse-black)!important;border:1px solid var(--synapse-black)!important}@media(max-width:768px){._ColorfulPortalCardWithChips__learnMoreButton_1uazc_99.MuiButton-root{width:100%}}._ColorfulPortalCardWithChips__chip_1uazc_92{flex-direction:row-reverse;padding-right:0;gap:5px;margin-bottom:5px}._ColorfulPortalCardWithChips__chip_1uazc_92.MuiChip-root .MuiChip-label{padding-right:0;color:var(--synapse-gray-900)}._ColorfulPortalCardWithChips__chip_1uazc_92.MuiChip-root .MuiChip-icon{margin-left:0;margin-right:5px;padding-right:5px;color:var(--synapse-black)}._ColorfulPortalCardWithChips__triangleImage_1uazc_133{position:absolute;left:10%;bottom:100%;transform:translate(-50%);z-index:1}@media(min-width:1024px){._ColorfulPortalCardWithChips__triangleImage_1uazc_133{left:35%}}._ColorfulPortalCardWithChips__circleImage_1uazc_146{position:absolute;left:10%;top:4%;transform:translate(-50%);z-index:1}@media(min-width:1024px){._ColorfulPortalCardWithChips__circleImage_1uazc_146{left:35%;top:7%}}._ColorfulPortalCardWithChips__doubleLineImage_1uazc_160{display:flex;position:absolute;left:42%;top:5%;transform:translate(-50%);z-index:1}@media(min-width:1024px){._ColorfulPortalCardWithChips__doubleLineImage_1uazc_160{left:45%;top:10%}}._ColorfulPortalCardWithChips__longLineImage_1uazc_175{position:absolute;right:10%;bottom:100%;transform:translate(-50%);z-index:1}@media(min-width:1024px){._ColorfulPortalCardWithChips__longLineImage_1uazc_175{right:5%;left:62%}}._ColorfulPortalCardWithChips__shortLineImage_1uazc_189{position:absolute;right:7%;transform:translate(-50%);z-index:1}@media(min-width:1024px){._ColorfulPortalCardWithChips__shortLineImage_1uazc_189{right:2%;left:63%}}._ColorfulPortalCardWithChips__description_1uazc_74 .markdown{--description-line-height: 20px;--description-max-lines: 3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:var(--description-max-lines);-webkit-box-orient:vertical;min-height:calc(var(--description-max-lines) * var(--description-line-height))}._ColorfulPortalCardWithChips__description_1uazc_74 .markdown p{color:var(--synapse-black)!important;font-size:14px;line-height:var(--description-line-height)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorfulPortalCardWithChips.d.ts","sourceRoot":"","sources":["../../../../src/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ColorfulPortalCardWithChips.d.ts","sourceRoot":"","sources":["../../../../src/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,KAAK,gCAAgC,GAAG;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;CACxC,CAAA;AA6BD,QAAA,MAAM,2BAA2B,GAAI,0KAclC,gCAAgC,KAAG,KAAK,CAAC,SAqE3C,CAAA;AAED,eAAe,2BAA2B,CAAA"}
|
package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { jsx as r, jsxs as n } from "react/jsx-runtime";
|
|
2
|
-
import W from "
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
2
|
+
import { Markdown as W } from "../../Markdown/MarkdownSynapse.js";
|
|
3
|
+
import { hashCode as v } from "../../../utils/functions/StringUtils.js";
|
|
4
|
+
import { useImageUrl as x } from "../../../utils/hooks/useImageUrlUtils.js";
|
|
5
5
|
import b from "@mui/icons-material/ArrowForward";
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
const
|
|
10
|
-
const l =
|
|
11
|
-
return
|
|
6
|
+
import { Stack as s, Chip as u, Typography as i, Button as B, Box as k } from "@mui/material";
|
|
7
|
+
import w from "../BasePortalCard.js";
|
|
8
|
+
import a from "./ColorfulPortalCardWithChips.module.scss.js";
|
|
9
|
+
const C = ["#F8CC7D", "#BFE8F4", "#CEFBDD"], y = (o) => o.map((e) => {
|
|
10
|
+
const l = v(e), t = Math.abs(l) % C.length;
|
|
11
|
+
return C[t];
|
|
12
12
|
}), F = ({ values: o }) => {
|
|
13
|
-
const e =
|
|
14
|
-
return /* @__PURE__ */ r(
|
|
13
|
+
const e = y(o);
|
|
14
|
+
return /* @__PURE__ */ r(k, { className: a.ColorfulPortalCardWithChips__chipsContainer, children: o.map((l, t) => /* @__PURE__ */ r(
|
|
15
15
|
u,
|
|
16
16
|
{
|
|
17
17
|
label: /* @__PURE__ */ r(i, { variant: "smallText1", children: l }),
|
|
@@ -26,35 +26,35 @@ const p = ["#F8CC7D", "#BFE8F4", "#CEFBDD"], w = (o) => o.map((e) => {
|
|
|
26
26
|
subtitle: e,
|
|
27
27
|
description: l,
|
|
28
28
|
descriptionTitle: t,
|
|
29
|
-
learnMoreLink:
|
|
29
|
+
learnMoreLink: c,
|
|
30
30
|
buttonOverrideText: f,
|
|
31
31
|
chips: h,
|
|
32
|
-
backgroundImage:
|
|
33
|
-
backgroundColor:
|
|
34
|
-
tag:
|
|
32
|
+
backgroundImage: d,
|
|
33
|
+
backgroundColor: m,
|
|
34
|
+
tag: p,
|
|
35
35
|
entityId: _,
|
|
36
36
|
borderRadiusPx: g,
|
|
37
37
|
cardSize: P = "medium"
|
|
38
38
|
}) => {
|
|
39
|
-
const N =
|
|
39
|
+
const N = x(d ?? "", _ ?? "") ?? d;
|
|
40
40
|
return /* @__PURE__ */ r(
|
|
41
|
-
|
|
41
|
+
w,
|
|
42
42
|
{
|
|
43
43
|
cardSize: P,
|
|
44
44
|
borderRadiusPx: g,
|
|
45
45
|
backgroundImage: N,
|
|
46
|
-
backgroundColor:
|
|
46
|
+
backgroundColor: m || C[0],
|
|
47
47
|
contentBelowCard: h && h.length > 0 && /* @__PURE__ */ r(F, { values: h }),
|
|
48
48
|
children: /* @__PURE__ */ n(s, { className: a.ColorfulPortalCardWithChips__sectionContainer, children: [
|
|
49
49
|
/* @__PURE__ */ n(s, { children: [
|
|
50
|
-
|
|
50
|
+
p && /* @__PURE__ */ r(
|
|
51
51
|
u,
|
|
52
52
|
{
|
|
53
53
|
color: "secondary",
|
|
54
54
|
variant: "filled",
|
|
55
55
|
className: a.ColorfulPortalCardWithChips__registrationStatus,
|
|
56
|
-
sx: { backgroundColor:
|
|
57
|
-
label:
|
|
56
|
+
sx: { backgroundColor: m },
|
|
57
|
+
label: p
|
|
58
58
|
}
|
|
59
59
|
),
|
|
60
60
|
/* @__PURE__ */ n(s, { className: a.ColorfulPortalCardWithChips__titleSection, children: [
|
|
@@ -90,16 +90,16 @@ const p = ["#F8CC7D", "#BFE8F4", "#CEFBDD"], w = (o) => o.map((e) => {
|
|
|
90
90
|
{
|
|
91
91
|
variant: "smallText1",
|
|
92
92
|
className: a.ColorfulPortalCardWithChips__description,
|
|
93
|
-
children: /* @__PURE__ */ r(
|
|
93
|
+
children: /* @__PURE__ */ r(W, { markdown: l ?? "" })
|
|
94
94
|
}
|
|
95
95
|
),
|
|
96
|
-
|
|
97
|
-
|
|
96
|
+
c && /* @__PURE__ */ r(
|
|
97
|
+
B,
|
|
98
98
|
{
|
|
99
99
|
className: a.ColorfulPortalCardWithChips__learnMoreButton,
|
|
100
100
|
variant: "outlined",
|
|
101
101
|
endIcon: /* @__PURE__ */ r(b, {}),
|
|
102
|
-
href:
|
|
102
|
+
href: c,
|
|
103
103
|
target: "_blank",
|
|
104
104
|
rel: "noopener noreferrer",
|
|
105
105
|
children: f ?? "Learn more"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColorfulPortalCardWithChips.js","sources":["../../../../src/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"ColorfulPortalCardWithChips.js","sources":["../../../../src/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.tsx"],"sourcesContent":["import MarkdownSynapse from '@/components/Markdown/MarkdownSynapse'\nimport { hashCode } from '@/utils/functions/StringUtils'\nimport { useImageUrl } from '@/utils/hooks/useImageUrlUtils'\nimport ArrowForwardIcon from '@mui/icons-material/ArrowForward'\nimport { Box, Button, Chip, Stack, Typography } from '@mui/material'\nimport React from 'react'\nimport BasePortalCard from '../BasePortalCard'\nimport styles from './ColorfulPortalCardWithChips.module.scss'\n\ntype ColorfulPortalCardWithChipsProps = {\n title?: string\n subtitle?: string\n description?: string\n descriptionTitle?: string\n learnMoreLink?: string\n buttonOverrideText?: string\n chips?: string[]\n backgroundImage?: string\n backgroundColor?: string\n tag?: string\n entityId?: string\n borderRadiusPx?: number\n cardSize?: 'small' | 'medium' | 'large'\n}\n\nconst colors = ['#F8CC7D', '#BFE8F4', '#CEFBDD']\n\nconst getChicletColors = (chips: string[]) => {\n return chips.map(chip => {\n const hash = hashCode(chip)\n const index = Math.abs(hash) % colors.length\n return colors[index]\n })\n}\n\nconst Chips = ({ values }: { values: string[] }): React.ReactNode => {\n const chipColors = getChicletColors(values)\n return (\n <Box className={styles.ColorfulPortalCardWithChips__chipsContainer}>\n {values.map((chip, index) => (\n <Chip\n key={chip}\n label={<Typography variant=\"smallText1\">{chip}</Typography>}\n variant=\"filled\"\n style={{ backgroundColor: chipColors[index] }}\n className={styles.ChallengePortalCard__chip}\n />\n ))}\n </Box>\n )\n}\n\nconst ColorfulPortalCardWithChips = ({\n title,\n subtitle,\n description,\n descriptionTitle,\n learnMoreLink,\n buttonOverrideText,\n chips,\n backgroundImage,\n backgroundColor,\n tag,\n entityId,\n borderRadiusPx,\n cardSize = 'medium',\n}: ColorfulPortalCardWithChipsProps): React.ReactNode => {\n const imageUrl = useImageUrl(backgroundImage ?? '', entityId ?? '')\n const backgroundImageValue = imageUrl ?? backgroundImage\n\n return (\n <BasePortalCard\n cardSize={cardSize}\n borderRadiusPx={borderRadiusPx}\n backgroundImage={backgroundImageValue}\n backgroundColor={backgroundColor || colors[0]}\n contentBelowCard={chips && chips.length > 0 && <Chips values={chips} />}\n >\n <Stack className={styles.ColorfulPortalCardWithChips__sectionContainer}>\n <Stack>\n {tag && (\n <Chip\n color=\"secondary\"\n variant=\"filled\"\n className={styles.ColorfulPortalCardWithChips__registrationStatus}\n sx={{ backgroundColor }}\n label={tag}\n />\n )}\n <Stack className={styles.ColorfulPortalCardWithChips__titleSection}>\n <Typography\n variant=\"headline1\"\n className={styles.ColorfulPortalCardWithChips__title}\n >\n {title}\n </Typography>\n <Typography\n variant=\"headline1\"\n className={styles.ColorfulPortalCardWithChips__challengeName}\n >\n {subtitle}\n </Typography>\n </Stack>\n </Stack>\n <Stack className={styles.ColorfulPortalCardWithChips__bottomSection}>\n {descriptionTitle && (\n <Typography\n variant=\"headline1\"\n className={styles.ColorfulPortalCardWithChips__descriptionTitle}\n >\n {descriptionTitle}\n </Typography>\n )}\n <Typography\n variant=\"smallText1\"\n className={styles.ColorfulPortalCardWithChips__description}\n >\n <MarkdownSynapse markdown={description ?? ''} />\n </Typography>\n {learnMoreLink && (\n <Button\n className={styles.ColorfulPortalCardWithChips__learnMoreButton}\n variant=\"outlined\"\n endIcon={<ArrowForwardIcon />}\n href={learnMoreLink}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {buttonOverrideText ?? 'Learn more'}\n </Button>\n )}\n </Stack>\n </Stack>\n </BasePortalCard>\n )\n}\n\nexport default ColorfulPortalCardWithChips\n"],"names":["colors","getChicletColors","chips","chip","hash","hashCode","index","Chips","values","chipColors","jsx","Box","styles","Chip","Typography","ColorfulPortalCardWithChips","title","subtitle","description","descriptionTitle","learnMoreLink","buttonOverrideText","backgroundImage","backgroundColor","tag","entityId","borderRadiusPx","cardSize","backgroundImageValue","useImageUrl","BasePortalCard","jsxs","Stack","MarkdownSynapse","Button","ArrowForwardIcon"],"mappings":"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"}
|
|
@@ -23,11 +23,11 @@
|
|
|
23
23
|
|
|
24
24
|
.ColorfulPortalCardWithChips__titleSection {
|
|
25
25
|
color: #fff;
|
|
26
|
-
max-width:
|
|
26
|
+
max-width: 310px;
|
|
27
27
|
top: 0;
|
|
28
28
|
position: absolute;
|
|
29
29
|
padding-left: 30px;
|
|
30
|
-
padding-top:
|
|
30
|
+
padding-top: 65px;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
.ColorfulPortalCardWithChips__title:global(.MuiTypography-root) {
|
|
@@ -62,11 +62,12 @@
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
.ColorfulPortalCardWithChips__sectionContainer {
|
|
65
|
-
|
|
65
|
+
flex: 1;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
.ColorfulPortalCardWithChips__bottomSection {
|
|
69
69
|
min-height: 0;
|
|
70
|
+
flex: 1;
|
|
70
71
|
gap: 12px;
|
|
71
72
|
padding: 30px;
|
|
72
73
|
align-items: flex-start;
|
|
@@ -99,6 +100,7 @@
|
|
|
99
100
|
|
|
100
101
|
.ColorfulPortalCardWithChips__learnMoreButton:global(.MuiButton-root) {
|
|
101
102
|
display: flex;
|
|
103
|
+
margin-top: auto;
|
|
102
104
|
height: 36px;
|
|
103
105
|
padding: 6px 16px;
|
|
104
106
|
border-radius: 8px;
|
|
@@ -196,15 +198,21 @@
|
|
|
196
198
|
}
|
|
197
199
|
|
|
198
200
|
.ColorfulPortalCardWithChips__description :global(.markdown) {
|
|
201
|
+
--description-line-height: 20px;
|
|
202
|
+
--description-max-lines: 3;
|
|
203
|
+
|
|
199
204
|
overflow: hidden;
|
|
200
205
|
text-overflow: ellipsis;
|
|
201
206
|
display: -webkit-box;
|
|
202
|
-
-webkit-line-clamp:
|
|
207
|
+
-webkit-line-clamp: var(--description-max-lines);
|
|
203
208
|
-webkit-box-orient: vertical;
|
|
209
|
+
min-height: calc(
|
|
210
|
+
var(--description-max-lines) * var(--description-line-height)
|
|
211
|
+
);
|
|
204
212
|
}
|
|
205
213
|
|
|
206
214
|
.ColorfulPortalCardWithChips__description :global(.markdown) p {
|
|
207
215
|
color: var(--synapse-black) !important;
|
|
208
216
|
font-size: 14px;
|
|
209
|
-
line-height:
|
|
217
|
+
line-height: var(--description-line-height);
|
|
210
218
|
}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import './ColorfulPortalCardWithChips.css';const o = "
|
|
1
|
+
import './ColorfulPortalCardWithChips.css';const o = "_ColorfulPortalCardWithChips__titleSection_1uazc_22", t = "_ColorfulPortalCardWithChips__title_1uazc_22", r = "_ColorfulPortalCardWithChips__challengeName_1uazc_52", l = "_ColorfulPortalCardWithChips__sectionContainer_1uazc_62", i = "_ColorfulPortalCardWithChips__bottomSection_1uazc_66", C = "_ColorfulPortalCardWithChips__descriptionTitle_1uazc_74", a = "_ColorfulPortalCardWithChips__registrationStatus_1uazc_83", _ = "_ColorfulPortalCardWithChips__chipsContainer_1uazc_92", h = "_ColorfulPortalCardWithChips__learnMoreButton_1uazc_99", s = "_ColorfulPortalCardWithChips__description_1uazc_74", e = {
|
|
2
2
|
ColorfulPortalCardWithChips__titleSection: o,
|
|
3
3
|
ColorfulPortalCardWithChips__title: t,
|
|
4
4
|
ColorfulPortalCardWithChips__challengeName: r,
|
|
5
5
|
ColorfulPortalCardWithChips__sectionContainer: l,
|
|
6
6
|
ColorfulPortalCardWithChips__bottomSection: i,
|
|
7
7
|
ColorfulPortalCardWithChips__descriptionTitle: C,
|
|
8
|
-
ColorfulPortalCardWithChips__registrationStatus:
|
|
9
|
-
ColorfulPortalCardWithChips__chipsContainer:
|
|
8
|
+
ColorfulPortalCardWithChips__registrationStatus: a,
|
|
9
|
+
ColorfulPortalCardWithChips__chipsContainer: _,
|
|
10
10
|
ColorfulPortalCardWithChips__learnMoreButton: h,
|
|
11
11
|
ColorfulPortalCardWithChips__description: s
|
|
12
12
|
};
|
|
13
13
|
export {
|
|
14
14
|
i as ColorfulPortalCardWithChips__bottomSection,
|
|
15
15
|
r as ColorfulPortalCardWithChips__challengeName,
|
|
16
|
-
|
|
16
|
+
_ as ColorfulPortalCardWithChips__chipsContainer,
|
|
17
17
|
s as ColorfulPortalCardWithChips__description,
|
|
18
18
|
C as ColorfulPortalCardWithChips__descriptionTitle,
|
|
19
19
|
h as ColorfulPortalCardWithChips__learnMoreButton,
|
|
20
|
-
|
|
20
|
+
a as ColorfulPortalCardWithChips__registrationStatus,
|
|
21
21
|
l as ColorfulPortalCardWithChips__sectionContainer,
|
|
22
22
|
t as ColorfulPortalCardWithChips__title,
|
|
23
23
|
o as ColorfulPortalCardWithChips__titleSection,
|
|
@@ -11,6 +11,18 @@ export type CardLink = ({
|
|
|
11
11
|
} & ({
|
|
12
12
|
baseURL: string;
|
|
13
13
|
URLColumnName: string;
|
|
14
|
+
/**
|
|
15
|
+
* Controls how the record identifier is appended to baseURL.
|
|
16
|
+
*
|
|
17
|
+
* - `'query-param'` (default): appends as a query string parameter, e.g.
|
|
18
|
+
* `/<baseURL>?<URLColumnName>=<value>`
|
|
19
|
+
* - `'path-segment'`: appends as a path segment, e.g.
|
|
20
|
+
* `/<baseURL>/<value>`
|
|
21
|
+
*
|
|
22
|
+
* Use `'path-segment'` for clean-URL detail pages that use React Router
|
|
23
|
+
* dynamic segments (`:param`) rather than `?param=` query strings.
|
|
24
|
+
*/
|
|
25
|
+
urlParamStyle?: 'query-param' | 'path-segment';
|
|
14
26
|
wrapValueWithParens?: boolean;
|
|
15
27
|
resolveEntityName?: boolean;
|
|
16
28
|
} | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardLink.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainer/CardLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAClB,CAAE;IAEE,eAAe,EAAE,MAAM,CAAA;IAEvB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC,UAAU,EAAE,KAAK,CAAA;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;IAEf,aAAa,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"CardLink.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainer/CardLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAClB,CAAE;IAEE,eAAe,EAAE,MAAM,CAAA;IAEvB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAEhC,UAAU,EAAE,KAAK,CAAA;IAEjB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,MAAM,CAAC,EAAE,UAAU,CAAA;CACpB,GAAG,CACA;IACE,OAAO,EAAE,MAAM,CAAA;IAEf,aAAa,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,aAAa,GAAG,cAAc,CAAA;IAG9C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,GACD;IAEE,yBAAyB,EAAE,MAAM,CAAA;IAEjC,8BAA8B,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAA;CACjE,CACJ,CAAA,CAAA"}
|
|
@@ -4,6 +4,7 @@ import { LockedColumn, UniqueFacetIdentifier } from '@/utils';
|
|
|
4
4
|
import { SQLOperator } from '@/utils/functions/SqlFunctions';
|
|
5
5
|
import { Query, SelectColumn, SortDirection } from '@sage-bionetworks/synapse-types';
|
|
6
6
|
import React from 'react';
|
|
7
|
+
import { SxProps } from '@mui/material';
|
|
7
8
|
import { IconSvgProps } from '../IconSvg';
|
|
8
9
|
import { QueryVisualizationWrapperProps } from '../QueryVisualizationWrapper';
|
|
9
10
|
/**
|
|
@@ -51,10 +52,13 @@ export type MapValueToReactComponentConfig = {
|
|
|
51
52
|
isMapValueToReactNodeConfig: true;
|
|
52
53
|
};
|
|
53
54
|
export type LabelLinkConfig = (MarkdownLink | CardLink | ColumnSpecifiedLink | EntityImage | MapValueToReactComponentConfig)[];
|
|
55
|
+
export type ColumnIconConfig = IconSvgProps & {
|
|
56
|
+
containerSx?: SxProps;
|
|
57
|
+
};
|
|
54
58
|
export type ColumnIconConfigs = {
|
|
55
59
|
columns: {
|
|
56
60
|
[index: string]: {
|
|
57
|
-
[index: string]:
|
|
61
|
+
[index: string]: ColumnIconConfig;
|
|
58
62
|
};
|
|
59
63
|
};
|
|
60
64
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContainerLogic.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainerLogic/CardContainerLogic.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAoB,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAC/E,OAAO,EAGL,WAAW,EACZ,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EACL,KAAK,EAEL,YAAY,EACZ,aAAa,EACd,MAAM,iCAAiC,CAAA;AACxC,OAAO,KAAkB,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAEL,8BAA8B,EAC/B,MAAM,8BAA8B,CAAA;AAMrC;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,KAAK,CAAA;IAEjB,eAAe,EAAE,MAAM,CAAA;IAEvB,cAAc,EAAE,MAAM,CAAA;IAEtB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAE1B,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,OAAO,CAAA;CACvB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,EAAE,IAAI,CAAA;IAEhB,eAAe,EAAE,MAAM,CAAA;IAEvB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAE9B,aAAa,EAAE,MAAM,CAAA;IAErB,gBAAgB,EAAE,aAAa,CAAA;IAE/B,eAAe,EAAE,MAAM,EAAE,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IAExB,IAAI,EAAE,MAAM,CAAA;IAEZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,4BAA4B,CAAC,EAAE,OAAO,CAAA;CACvC,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IAE3C,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC;QAE7B,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAA;QAC/B,YAAY,EAAE,YAAY,CAAA;KAC3B,CAAC,CAAA;IAEF,2BAA2B,EAAE,IAAI,CAAA;CAClC,CAAA;AAGD,MAAM,MAAM,eAAe,GAAG,CAC1B,YAAY,GACZ,QAAQ,GACR,mBAAmB,GACnB,WAAW,GACX,8BAA8B,CACjC,EAAE,CAAA;AAEH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE;QACP,CAAC,KAAK,EAAE,MAAM,GAAG;YACf,CAAC,KAAK,EAAE,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"CardContainerLogic.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainerLogic/CardContainerLogic.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardContainerLogic.js","sources":["../../../src/components/CardContainerLogic/CardContainerLogic.tsx"],"sourcesContent":["import { CardConfiguration } from '@/components/CardContainer/CardConfiguration'\nimport { CardLink } from '@/components/CardContainer/CardLink'\nimport { LockedColumn, SynapseConstants, UniqueFacetIdentifier } from '@/utils'\nimport {\n getAdditionalFilters,\n parseEntityIdFromSqlStatement,\n SQLOperator,\n} from '@/utils/functions/SqlFunctions'\nimport { DEFAULT_PAGE_SIZE } from '@/utils/SynapseConstants'\nimport {\n Query,\n QueryBundleRequest,\n SelectColumn,\n SortDirection,\n} from '@sage-bionetworks/synapse-types'\nimport React, { useMemo } from 'react'\nimport ColumnFilter from '../ColumnFilter/ColumnFilter'\nimport { IconSvgProps } from '../IconSvg'\nimport QuerySortSelector from '../QuerySortSelector'\nimport {\n QueryVisualizationWrapper,\n QueryVisualizationWrapperProps,\n} from '../QueryVisualizationWrapper'\nimport { QueryWrapper } from '../QueryWrapper'\nimport { QueryWrapperErrorBoundary } from '../QueryWrapperErrorBoundary'\nimport { RowSetView } from '../QueryWrapperPlotNav/RowSetView'\nimport { NoContentPlaceholderType } from '../SynapseTable/NoContentPlaceholderType'\n\n/**\n * Used when a column value should link to an external URL defined by a value in another column.\n * Currently only works in SynapseTable (not cards!)\n */\nexport interface ColumnSpecifiedLink {\n isMarkdown: false\n /* The column which should have the displayed value */\n matchColumnName: string\n /* The column which has the link. If the link is empty, the value will be displayed without a link. */\n linkColumnName: string\n // If set, also show a tooltip\n tooltipText?: string\n}\n\n/**\n * Used when a column value should be previewed\n * Currently only works in SynapseTable (not cards!)\n */\nexport interface EntityImage {\n // the columns whos value will be used for the markdown\n matchColumnName: string\n isEntityImage: boolean\n}\n\nexport type MarkdownLink = {\n isMarkdown: true\n // the columns whos value will be used for the markdown\n matchColumnName: string\n // If set, also show a tooltip\n tooltipText?: string\n}\n\nexport type SortConfiguration = {\n // the column that the query should be sorted on by default\n defaultColumn: string\n // the direction that the defaultColumn should be sorted on by default\n defaultDirection: SortDirection\n // the columns that the UI should surface as sortable\n sortableColumns: string[]\n}\n\nexport type CTACardLink = {\n // link text\n text: string\n // column name to use for href\n link: string\n}\n\nexport type DescriptionConfig = {\n isMarkdown?: boolean\n showFullDescriptionByDefault?: boolean\n}\n\nexport type MapValueToReactComponentConfig = {\n // The column to apply the mapping to\n matchColumnName: string\n Component: React.ComponentType<{\n /* The value of the table cell. If the column is a _LIST type, then the LIST will be parsed and this will be a string array. */\n value: string | string[] | null\n selectColumn: SelectColumn\n }>\n // discriminator\n isMapValueToReactNodeConfig: true\n}\n\n// Specify the indices in the values [] that should be rendered specially\nexport type LabelLinkConfig = (\n | MarkdownLink\n | CardLink\n | ColumnSpecifiedLink\n | EntityImage\n | MapValueToReactComponentConfig\n)[]\n\nexport type ColumnIconConfigs = {\n columns: {\n [index: string]: {\n [index: string]: IconSvgProps\n }\n }\n}\n\nexport type QueryOrDeprecatedSearchParams = {\n /** The initial SQL query which will be used to populate the data in the component */\n query?: Query\n /** @deprecated use `query` */\n sql?: string\n /** Optional limit for the number of cards shown per page\n * @deprecated use `query */\n limit?: number\n /** Applies filters to the query where the key is the column name and the value is the value to filter on.\n * The filter function is controlled by sqlOperator.\n * @deprecated use `query` */\n searchParams?: Record<string, string>\n /** Operator used in the filter created using the searchParams prop\n * @deprecated use `query` */\n sqlOperator?: SQLOperator\n}\n\nexport type CardContainerLogicProps = QueryOrDeprecatedSearchParams & {\n /** Optional title to display above the component */\n title?: string\n isAlignToLeftNav?: boolean\n /** Provide a `SortConfiguration` that can be used to render UI to toggle the sorting of the cards. */\n sortConfig?: SortConfiguration\n /** Configuration used to render UI that can be used to alter a filter against a column with enumerated facets. */\n topLevelEnumeratedFacetToFilter?: UniqueFacetIdentifier\n /** Optional column to 'lock'; Values and filter controls for a locked column will not be displayed in the UI. */\n lockedColumn?: LockedColumn\n /** Optionally limit the initial number of cards shown on the first page */\n initialLimit?: number\n multiCardList?: boolean\n cardConfiguration: CardConfiguration\n} & Pick<\n QueryVisualizationWrapperProps,\n | 'rgbIndex'\n | 'unitDescription'\n | 'columnAliases'\n | 'noContentPlaceholderType'\n | 'additionalFiltersSessionStorageKey'\n >\n\n/**\n * Class wraps around CardContainer and serves as a standalone logic container for rendering cards.\n */\nexport function CardContainerLogic(props: CardContainerLogicProps) {\n const { sql: deprecatedSql } = props\n const sql = props.query?.sql ?? deprecatedSql ?? ''\n const entityId = parseEntityIdFromSqlStatement(sql)\n\n const { sortConfig, columnAliases, topLevelEnumeratedFacetToFilter } = props\n const defaultSortItems = useMemo(\n () =>\n sortConfig\n ? [\n {\n column: sortConfig.defaultColumn,\n direction: sortConfig.defaultDirection,\n },\n ]\n : undefined,\n [sortConfig],\n )\n\n const initQueryRequest: QueryBundleRequest = useMemo(() => {\n let query: Query\n if (props.query) {\n query = {\n sort: defaultSortItems,\n limit: DEFAULT_PAGE_SIZE,\n ...props.query,\n }\n } else {\n // Deprecated props were used\n const queryFilters = getAdditionalFilters(\n props.searchParams,\n props.sqlOperator,\n props.additionalFiltersSessionStorageKey,\n )\n query = {\n sql: props.sql!,\n limit: props.limit ?? DEFAULT_PAGE_SIZE,\n sort: defaultSortItems,\n additionalFilters: queryFilters,\n }\n }\n\n return {\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n entityId: entityId,\n query: query,\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS |\n SynapseConstants.BUNDLE_MASK_QUERY_COUNT |\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_MAX_ROWS_PER_PAGE |\n SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS |\n SynapseConstants.BUNDLE_MASK_QUERY_FACETS |\n SynapseConstants.BUNDLE_MASK_SUM_FILES_SIZE_BYTES |\n SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON,\n }\n }, [\n defaultSortItems,\n entityId,\n props.additionalFiltersSessionStorageKey,\n props.limit,\n props.query,\n props.searchParams,\n props.sql,\n props.sqlOperator,\n ])\n\n /**\n * Fully re-render the uncontrolled QueryWrapper component when the initial query changes. This eliminates a class of\n * bugs where our 'derived' state (the current query), which should be reset, is out of sync with props.\n *\n * See https://legacy.reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html#recommendation-fully-uncontrolled-component-with-a-key\n */\n const queryWrapperKey = JSON.stringify(initQueryRequest)\n\n return (\n <QueryWrapper\n {...props}\n initQueryRequest={initQueryRequest}\n isInfinite\n key={queryWrapperKey}\n >\n <QueryVisualizationWrapper\n rgbIndex={props.rgbIndex}\n unitDescription={props.unitDescription}\n columnAliases={columnAliases}\n noContentPlaceholderType={\n props.noContentPlaceholderType ?? NoContentPlaceholderType.STATIC\n }\n >\n <QueryWrapperErrorBoundary>\n {sortConfig && <QuerySortSelector sortConfig={sortConfig} />}\n {topLevelEnumeratedFacetToFilter && (\n <ColumnFilter\n topLevelEnumeratedFacetToFilter={topLevelEnumeratedFacetToFilter}\n />\n )}\n <RowSetView\n cardConfiguration={props.cardConfiguration}\n initialLimit={props.initialLimit}\n multiCardList={props.multiCardList}\n />\n </QueryWrapperErrorBoundary>\n </QueryVisualizationWrapper>\n </QueryWrapper>\n )\n}\n\nexport default CardContainerLogic\n"],"names":["CardContainerLogic","props","deprecatedSql","sql","entityId","parseEntityIdFromSqlStatement","sortConfig","columnAliases","topLevelEnumeratedFacetToFilter","defaultSortItems","useMemo","initQueryRequest","query","DEFAULT_PAGE_SIZE","queryFilters","getAdditionalFilters","SynapseConstants.BUNDLE_MASK_QUERY_RESULTS","SynapseConstants.BUNDLE_MASK_QUERY_COUNT","SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS","SynapseConstants.BUNDLE_MASK_QUERY_MAX_ROWS_PER_PAGE","SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS","SynapseConstants.BUNDLE_MASK_QUERY_FACETS","SynapseConstants.BUNDLE_MASK_SUM_FILES_SIZE_BYTES","SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON","queryWrapperKey","createElement","QueryWrapper","jsx","QueryVisualizationWrapper","NoContentPlaceholderType","QueryWrapperErrorBoundary","QuerySortSelector","ColumnFilter","RowSetView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyJO,SAASA,GAAmBC,GAAgC;AACjE,QAAM,EAAE,KAAKC,EAAA,IAAkBD,GACzBE,IAAMF,EAAM,OAAO,OAAOC,KAAiB,IAC3CE,IAAWC,EAA8BF,CAAG,GAE5C,EAAE,YAAAG,GAAY,eAAAC,GAAe,iCAAAC,EAAA,IAAoCP,GACjEQ,IAAmBC;AAAA,IACvB,MACEJ,IACI;AAAA,MACE;AAAA,QACE,QAAQA,EAAW;AAAA,QACnB,WAAWA,EAAW;AAAA,MAAA;AAAA,IACxB,IAEF;AAAA,IACN,CAACA,CAAU;AAAA,EAAA,GAGPK,IAAuCD,EAAQ,MAAM;AACzD,QAAIE;AACJ,QAAIX,EAAM;AACR,MAAAW,IAAQ;AAAA,QACN,MAAMH;AAAA,QACN,OAAOI;AAAA,QACP,GAAGZ,EAAM;AAAA,MAAA;AAAA,SAEN;AAEL,YAAMa,IAAeC;AAAA,QACnBd,EAAM;AAAA,QACNA,EAAM;AAAA,QACNA,EAAM;AAAA,MAAA;AAER,MAAAW,IAAQ;AAAA,QACN,KAAKX,EAAM;AAAA,QACX,OAAOA,EAAM,SAASY;AAAA,QACtB,MAAMJ;AAAA,QACN,mBAAmBK;AAAA,MAAA;AAAA,IAEvB;AAEA,WAAO;AAAA,MACL,cAAc;AAAA,MACd,UAAAV;AAAA,MACA,OAAAQ;AAAA,MACA,UACEI,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC;AAAAA,IAAiB;AAAA,EAEvB,GAAG;AAAA,IACDd;AAAA,IACAL;AAAA,IACAH,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,EAAA,CACP,GAQKuB,IAAkB,KAAK,UAAUb,CAAgB;AAEvD,SACE,gBAAAc;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGzB;AAAA,MACJ,kBAAAU;AAAA,MACA,YAAU;AAAA,MACV,KAAKa;AAAA,IAAA;AAAA,IAEL,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAU3B,EAAM;AAAA,QAChB,iBAAiBA,EAAM;AAAA,QACvB,eAAAM;AAAA,QACA,0BACEN,EAAM,4BAA4B4B,EAAyB;AAAA,QAG7D,4BAACC,GAAA,EACE,UAAA;AAAA,UAAAxB,KAAc,gBAAAqB,EAACI,KAAkB,YAAAzB,EAAA,CAAwB;AAAA,UACzDE,KACC,gBAAAmB;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,iCAAAxB;AAAA,YAAA;AAAA,UAAA;AAAA,UAGJ,gBAAAmB;AAAA,YAACM;AAAA,YAAA;AAAA,cACC,mBAAmBhC,EAAM;AAAA,cACzB,cAAcA,EAAM;AAAA,cACpB,eAAeA,EAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QACvB,EAAA,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAGN;"}
|
|
1
|
+
{"version":3,"file":"CardContainerLogic.js","sources":["../../../src/components/CardContainerLogic/CardContainerLogic.tsx"],"sourcesContent":["import { CardConfiguration } from '@/components/CardContainer/CardConfiguration'\nimport { CardLink } from '@/components/CardContainer/CardLink'\nimport { LockedColumn, SynapseConstants, UniqueFacetIdentifier } from '@/utils'\nimport {\n getAdditionalFilters,\n parseEntityIdFromSqlStatement,\n SQLOperator,\n} from '@/utils/functions/SqlFunctions'\nimport { DEFAULT_PAGE_SIZE } from '@/utils/SynapseConstants'\nimport {\n Query,\n QueryBundleRequest,\n SelectColumn,\n SortDirection,\n} from '@sage-bionetworks/synapse-types'\nimport React, { useMemo } from 'react'\nimport ColumnFilter from '../ColumnFilter/ColumnFilter'\nimport { SxProps } from '@mui/material'\nimport { IconSvgProps } from '../IconSvg'\nimport QuerySortSelector from '../QuerySortSelector'\nimport {\n QueryVisualizationWrapper,\n QueryVisualizationWrapperProps,\n} from '../QueryVisualizationWrapper'\nimport { QueryWrapper } from '../QueryWrapper'\nimport { QueryWrapperErrorBoundary } from '../QueryWrapperErrorBoundary'\nimport { RowSetView } from '../QueryWrapperPlotNav/RowSetView'\nimport { NoContentPlaceholderType } from '../SynapseTable/NoContentPlaceholderType'\n\n/**\n * Used when a column value should link to an external URL defined by a value in another column.\n * Currently only works in SynapseTable (not cards!)\n */\nexport interface ColumnSpecifiedLink {\n isMarkdown: false\n /* The column which should have the displayed value */\n matchColumnName: string\n /* The column which has the link. If the link is empty, the value will be displayed without a link. */\n linkColumnName: string\n // If set, also show a tooltip\n tooltipText?: string\n}\n\n/**\n * Used when a column value should be previewed\n * Currently only works in SynapseTable (not cards!)\n */\nexport interface EntityImage {\n // the columns whos value will be used for the markdown\n matchColumnName: string\n isEntityImage: boolean\n}\n\nexport type MarkdownLink = {\n isMarkdown: true\n // the columns whos value will be used for the markdown\n matchColumnName: string\n // If set, also show a tooltip\n tooltipText?: string\n}\n\nexport type SortConfiguration = {\n // the column that the query should be sorted on by default\n defaultColumn: string\n // the direction that the defaultColumn should be sorted on by default\n defaultDirection: SortDirection\n // the columns that the UI should surface as sortable\n sortableColumns: string[]\n}\n\nexport type CTACardLink = {\n // link text\n text: string\n // column name to use for href\n link: string\n}\n\nexport type DescriptionConfig = {\n isMarkdown?: boolean\n showFullDescriptionByDefault?: boolean\n}\n\nexport type MapValueToReactComponentConfig = {\n // The column to apply the mapping to\n matchColumnName: string\n Component: React.ComponentType<{\n /* The value of the table cell. If the column is a _LIST type, then the LIST will be parsed and this will be a string array. */\n value: string | string[] | null\n selectColumn: SelectColumn\n }>\n // discriminator\n isMapValueToReactNodeConfig: true\n}\n\n// Specify the indices in the values [] that should be rendered specially\nexport type LabelLinkConfig = (\n | MarkdownLink\n | CardLink\n | ColumnSpecifiedLink\n | EntityImage\n | MapValueToReactComponentConfig\n)[]\n\nexport type ColumnIconConfig = IconSvgProps & {\n containerSx?: SxProps\n}\n\nexport type ColumnIconConfigs = {\n columns: {\n [index: string]: {\n [index: string]: ColumnIconConfig\n }\n }\n}\n\nexport type QueryOrDeprecatedSearchParams = {\n /** The initial SQL query which will be used to populate the data in the component */\n query?: Query\n /** @deprecated use `query` */\n sql?: string\n /** Optional limit for the number of cards shown per page\n * @deprecated use `query */\n limit?: number\n /** Applies filters to the query where the key is the column name and the value is the value to filter on.\n * The filter function is controlled by sqlOperator.\n * @deprecated use `query` */\n searchParams?: Record<string, string>\n /** Operator used in the filter created using the searchParams prop\n * @deprecated use `query` */\n sqlOperator?: SQLOperator\n}\n\nexport type CardContainerLogicProps = QueryOrDeprecatedSearchParams & {\n /** Optional title to display above the component */\n title?: string\n isAlignToLeftNav?: boolean\n /** Provide a `SortConfiguration` that can be used to render UI to toggle the sorting of the cards. */\n sortConfig?: SortConfiguration\n /** Configuration used to render UI that can be used to alter a filter against a column with enumerated facets. */\n topLevelEnumeratedFacetToFilter?: UniqueFacetIdentifier\n /** Optional column to 'lock'; Values and filter controls for a locked column will not be displayed in the UI. */\n lockedColumn?: LockedColumn\n /** Optionally limit the initial number of cards shown on the first page */\n initialLimit?: number\n multiCardList?: boolean\n cardConfiguration: CardConfiguration\n} & Pick<\n QueryVisualizationWrapperProps,\n | 'rgbIndex'\n | 'unitDescription'\n | 'columnAliases'\n | 'noContentPlaceholderType'\n | 'additionalFiltersSessionStorageKey'\n >\n\n/**\n * Class wraps around CardContainer and serves as a standalone logic container for rendering cards.\n */\nexport function CardContainerLogic(props: CardContainerLogicProps) {\n const { sql: deprecatedSql } = props\n const sql = props.query?.sql ?? deprecatedSql ?? ''\n const entityId = parseEntityIdFromSqlStatement(sql)\n\n const { sortConfig, columnAliases, topLevelEnumeratedFacetToFilter } = props\n const defaultSortItems = useMemo(\n () =>\n sortConfig\n ? [\n {\n column: sortConfig.defaultColumn,\n direction: sortConfig.defaultDirection,\n },\n ]\n : undefined,\n [sortConfig],\n )\n\n const initQueryRequest: QueryBundleRequest = useMemo(() => {\n let query: Query\n if (props.query) {\n query = {\n sort: defaultSortItems,\n limit: DEFAULT_PAGE_SIZE,\n ...props.query,\n }\n } else {\n // Deprecated props were used\n const queryFilters = getAdditionalFilters(\n props.searchParams,\n props.sqlOperator,\n props.additionalFiltersSessionStorageKey,\n )\n query = {\n sql: props.sql!,\n limit: props.limit ?? DEFAULT_PAGE_SIZE,\n sort: defaultSortItems,\n additionalFilters: queryFilters,\n }\n }\n\n return {\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n entityId: entityId,\n query: query,\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS |\n SynapseConstants.BUNDLE_MASK_QUERY_COUNT |\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_MAX_ROWS_PER_PAGE |\n SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS |\n SynapseConstants.BUNDLE_MASK_QUERY_FACETS |\n SynapseConstants.BUNDLE_MASK_SUM_FILES_SIZE_BYTES |\n SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON,\n }\n }, [\n defaultSortItems,\n entityId,\n props.additionalFiltersSessionStorageKey,\n props.limit,\n props.query,\n props.searchParams,\n props.sql,\n props.sqlOperator,\n ])\n\n /**\n * Fully re-render the uncontrolled QueryWrapper component when the initial query changes. This eliminates a class of\n * bugs where our 'derived' state (the current query), which should be reset, is out of sync with props.\n *\n * See https://legacy.reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html#recommendation-fully-uncontrolled-component-with-a-key\n */\n const queryWrapperKey = JSON.stringify(initQueryRequest)\n\n return (\n <QueryWrapper\n {...props}\n initQueryRequest={initQueryRequest}\n isInfinite\n key={queryWrapperKey}\n >\n <QueryVisualizationWrapper\n rgbIndex={props.rgbIndex}\n unitDescription={props.unitDescription}\n columnAliases={columnAliases}\n noContentPlaceholderType={\n props.noContentPlaceholderType ?? NoContentPlaceholderType.STATIC\n }\n >\n <QueryWrapperErrorBoundary>\n {sortConfig && <QuerySortSelector sortConfig={sortConfig} />}\n {topLevelEnumeratedFacetToFilter && (\n <ColumnFilter\n topLevelEnumeratedFacetToFilter={topLevelEnumeratedFacetToFilter}\n />\n )}\n <RowSetView\n cardConfiguration={props.cardConfiguration}\n initialLimit={props.initialLimit}\n multiCardList={props.multiCardList}\n />\n </QueryWrapperErrorBoundary>\n </QueryVisualizationWrapper>\n </QueryWrapper>\n )\n}\n\nexport default CardContainerLogic\n"],"names":["CardContainerLogic","props","deprecatedSql","sql","entityId","parseEntityIdFromSqlStatement","sortConfig","columnAliases","topLevelEnumeratedFacetToFilter","defaultSortItems","useMemo","initQueryRequest","query","DEFAULT_PAGE_SIZE","queryFilters","getAdditionalFilters","SynapseConstants.BUNDLE_MASK_QUERY_RESULTS","SynapseConstants.BUNDLE_MASK_QUERY_COUNT","SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS","SynapseConstants.BUNDLE_MASK_QUERY_MAX_ROWS_PER_PAGE","SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS","SynapseConstants.BUNDLE_MASK_QUERY_FACETS","SynapseConstants.BUNDLE_MASK_SUM_FILES_SIZE_BYTES","SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON","queryWrapperKey","createElement","QueryWrapper","jsx","QueryVisualizationWrapper","NoContentPlaceholderType","QueryWrapperErrorBoundary","QuerySortSelector","ColumnFilter","RowSetView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8JO,SAASA,GAAmBC,GAAgC;AACjE,QAAM,EAAE,KAAKC,EAAA,IAAkBD,GACzBE,IAAMF,EAAM,OAAO,OAAOC,KAAiB,IAC3CE,IAAWC,EAA8BF,CAAG,GAE5C,EAAE,YAAAG,GAAY,eAAAC,GAAe,iCAAAC,EAAA,IAAoCP,GACjEQ,IAAmBC;AAAA,IACvB,MACEJ,IACI;AAAA,MACE;AAAA,QACE,QAAQA,EAAW;AAAA,QACnB,WAAWA,EAAW;AAAA,MAAA;AAAA,IACxB,IAEF;AAAA,IACN,CAACA,CAAU;AAAA,EAAA,GAGPK,IAAuCD,EAAQ,MAAM;AACzD,QAAIE;AACJ,QAAIX,EAAM;AACR,MAAAW,IAAQ;AAAA,QACN,MAAMH;AAAA,QACN,OAAOI;AAAA,QACP,GAAGZ,EAAM;AAAA,MAAA;AAAA,SAEN;AAEL,YAAMa,IAAeC;AAAA,QACnBd,EAAM;AAAA,QACNA,EAAM;AAAA,QACNA,EAAM;AAAA,MAAA;AAER,MAAAW,IAAQ;AAAA,QACN,KAAKX,EAAM;AAAA,QACX,OAAOA,EAAM,SAASY;AAAA,QACtB,MAAMJ;AAAA,QACN,mBAAmBK;AAAA,MAAA;AAAA,IAEvB;AAEA,WAAO;AAAA,MACL,cAAc;AAAA,MACd,UAAAV;AAAA,MACA,OAAAQ;AAAA,MACA,UACEI,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC;AAAAA,IAAiB;AAAA,EAEvB,GAAG;AAAA,IACDd;AAAA,IACAL;AAAA,IACAH,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,IACNA,EAAM;AAAA,EAAA,CACP,GAQKuB,IAAkB,KAAK,UAAUb,CAAgB;AAEvD,SACE,gBAAAc;AAAA,IAACC;AAAA,IAAA;AAAA,MACE,GAAGzB;AAAA,MACJ,kBAAAU;AAAA,MACA,YAAU;AAAA,MACV,KAAKa;AAAA,IAAA;AAAA,IAEL,gBAAAG;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAU3B,EAAM;AAAA,QAChB,iBAAiBA,EAAM;AAAA,QACvB,eAAAM;AAAA,QACA,0BACEN,EAAM,4BAA4B4B,EAAyB;AAAA,QAG7D,4BAACC,GAAA,EACE,UAAA;AAAA,UAAAxB,KAAc,gBAAAqB,EAACI,KAAkB,YAAAzB,EAAA,CAAwB;AAAA,UACzDE,KACC,gBAAAmB;AAAA,YAACK;AAAA,YAAA;AAAA,cACC,iCAAAxB;AAAA,YAAA;AAAA,UAAA;AAAA,UAGJ,gBAAAmB;AAAA,YAACM;AAAA,YAAA;AAAA,cACC,mBAAmBhC,EAAM;AAAA,cACzB,cAAcA,EAAM;AAAA,cACpB,eAAeA,EAAM;AAAA,YAAA;AAAA,UAAA;AAAA,QACvB,EAAA,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EACF;AAGN;"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export type { SortConfiguration, ColumnIconConfigs, MarkdownLink, LabelLinkConfig, DescriptionConfig, ColumnSpecifiedLink, CardContainerLogicProps, } from './CardContainerLogic';
|
|
1
|
+
export type { SortConfiguration, ColumnIconConfig, ColumnIconConfigs, MarkdownLink, LabelLinkConfig, DescriptionConfig, ColumnSpecifiedLink, CardContainerLogicProps, } from './CardContainerLogic';
|
|
2
2
|
export { default, CardContainerLogic } from './CardContainerLogic';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainerLogic/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/CardContainerLogic/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA"}
|
|
@@ -41,11 +41,14 @@ import "@mui/material/SvgIcon";
|
|
|
41
41
|
import "../../assets/icons/AccessPending.svg.js";
|
|
42
42
|
import "../../assets/icons/AccessPendingCloud.svg.js";
|
|
43
43
|
import "../../assets/icons/FileWithShield.svg.js";
|
|
44
|
+
import "../../assets/icons/MultiFile.svg.js";
|
|
45
|
+
import "../../assets/icons/UnpackagableFile.svg.js";
|
|
44
46
|
import "../../assets/icons/bioChemicalPhysical.svg.js";
|
|
45
47
|
import "../../assets/icons/computationalTool.svg.js";
|
|
46
48
|
import "../../assets/icons/dataReuse.svg.js";
|
|
47
49
|
import "../../assets/icons/inSilicoModel.svg.js";
|
|
48
50
|
import "../../assets/icons/modelSystem.svg.js";
|
|
51
|
+
import "../../assets/mui_components/PackagableFile.svg.js";
|
|
49
52
|
import "../../assets/icons/spatialProfiling.svg.js";
|
|
50
53
|
import "@mui/icons-material";
|
|
51
54
|
import "react-error-boundary";
|
|
@@ -57,7 +60,7 @@ import "react-transition-group";
|
|
|
57
60
|
import "@mui/system";
|
|
58
61
|
import "../GenericCard/Linkify.js";
|
|
59
62
|
import "../GenericCard/GenericCard.js";
|
|
60
|
-
function
|
|
63
|
+
function to(I) {
|
|
61
64
|
const {
|
|
62
65
|
entityId: r,
|
|
63
66
|
titleColumnName: f,
|
|
@@ -68,7 +71,7 @@ function Wt(I) {
|
|
|
68
71
|
headerImageFileHandleColumnName: x,
|
|
69
72
|
cardDeckType: a,
|
|
70
73
|
linkConfig: B
|
|
71
|
-
} = I,
|
|
74
|
+
} = I, p = b(r), h = {
|
|
72
75
|
concreteType: "org.sagebionetworks.repo.model.table.QueryBundleRequest",
|
|
73
76
|
entityId: r,
|
|
74
77
|
partMask: G | K,
|
|
@@ -94,14 +97,14 @@ function Wt(I) {
|
|
|
94
97
|
(i) => {
|
|
95
98
|
const o = i.values;
|
|
96
99
|
o.some((m) => m === null) && console.warn("Row has null value(s) when no nulls expected");
|
|
97
|
-
const T = o[q], k = o[H], w = o[L], A = o[U] ?? "", _ = o[E] ?? "", S = o[F] ?? "",
|
|
100
|
+
const T = o[q], k = o[H], w = o[L], A = o[U] ?? "", _ = o[E] ?? "", S = o[F] ?? "", s = {};
|
|
98
101
|
t?.queryResult.queryResults.headers.forEach(
|
|
99
102
|
(m, Q) => {
|
|
100
|
-
|
|
103
|
+
s[m.name] = Q;
|
|
101
104
|
}
|
|
102
105
|
);
|
|
103
|
-
const { href: v } = V(A, B, o,
|
|
104
|
-
|
|
106
|
+
const { href: v } = V(A, B, o, s), l = d(
|
|
107
|
+
p.data,
|
|
105
108
|
_,
|
|
106
109
|
`syn${i.rowId}`
|
|
107
110
|
), D = l ? /* @__PURE__ */ n(
|
|
@@ -110,7 +113,7 @@ function Wt(I) {
|
|
|
110
113
|
fileHandleAssociation: l
|
|
111
114
|
}
|
|
112
115
|
) : void 0, c = d(
|
|
113
|
-
|
|
116
|
+
p.data,
|
|
114
117
|
S,
|
|
115
118
|
`syn${i.rowId}`
|
|
116
119
|
);
|
|
@@ -133,7 +136,7 @@ function Wt(I) {
|
|
|
133
136
|
return /* @__PURE__ */ n(M, { cards: N || [], cardDeckType: a });
|
|
134
137
|
}
|
|
135
138
|
export {
|
|
136
|
-
|
|
137
|
-
|
|
139
|
+
to as TableQueryCardDeck,
|
|
140
|
+
to as default
|
|
138
141
|
};
|
|
139
142
|
//# sourceMappingURL=TableQueryCardDeck.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableQueryCardDeck.js","sources":["../../../src/components/CardDeck/TableQueryCardDeck.tsx"],"sourcesContent":["import { CardDeck } from '@/components/CardDeck/CardDeck'\nimport { CardDeckCardProps } from '@/components/CardDeck/CardDeckCardProps'\nimport { ImageFileHandle } from '@/components/widgets/ImageFileHandle'\nimport { useGetEntity } from '@/synapse-queries/entity/useEntity'\nimport useGetQueryResultBundle from '@/synapse-queries/entity/useGetQueryResultBundle'\nimport { SynapseConstants } from '@/utils'\nimport { getFieldIndex } from '@/utils/functions/queryUtils'\nimport { QueryBundleRequest } from '@sage-bionetworks/synapse-types'\nimport { CardLink } from '../CardContainer/CardLink'\nimport { getFileHandleAssociation, getLinkParams } from '../GenericCard'\n\nexport type TableQueryCardDeckProps = {\n entityId: string /* The table entity which should be queried */\n titleColumnName: string /* The column name for the title */\n descriptionColumnName: string /* The column name for the description */\n ctaButtonTextColumnName: string /* The column name for the call to action button text */\n ctaButtonURLColumnName: string /* The column name for the call to action button URL */\n titleIconFileHandleColumnName?: string /* The column name for the title icon image file */\n headerImageFileHandleColumnName?: string /* The column name for the header image file */\n cardDeckType?: 'cckp' | 'b2ai' /* The type of card deck (cckp or b2ai)*/\n linkConfig: CardLink /* The link configuration */\n}\n\n/**\n * Transforms a Synapse table into a card deck.\n */\nexport function TableQueryCardDeck(props: TableQueryCardDeckProps) {\n const {\n entityId,\n titleColumnName,\n descriptionColumnName,\n ctaButtonTextColumnName,\n ctaButtonURLColumnName,\n titleIconFileHandleColumnName,\n headerImageFileHandleColumnName,\n cardDeckType,\n linkConfig,\n } = props\n const entity = useGetEntity(entityId)\n const queryBundleRequest: QueryBundleRequest = {\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n entityId,\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS,\n query: {\n sql: `select * from ${entityId}`,\n },\n }\n const { data: queryResultBundle } =\n useGetQueryResultBundle(queryBundleRequest)\n\n const titleColumnIndex = getFieldIndex(titleColumnName, queryResultBundle)\n const descriptionColumnIndex = getFieldIndex(\n descriptionColumnName,\n queryResultBundle,\n )\n const ctaButtonTextColumnIndex = getFieldIndex(\n ctaButtonTextColumnName,\n queryResultBundle,\n )\n const ctaButtonURLColumnIndex = getFieldIndex(\n ctaButtonURLColumnName,\n queryResultBundle,\n )\n const titleIconColumnIndex = getFieldIndex(\n titleIconFileHandleColumnName,\n queryResultBundle,\n )\n const headerImageColumnIndex = getFieldIndex(\n headerImageFileHandleColumnName,\n queryResultBundle,\n )\n\n const cards = queryResultBundle?.queryResult!.queryResults.rows.map(\n (el): CardDeckCardProps => {\n const values = el.values as string[]\n if (values.some(value => value === null)) {\n // We cast values above assuming there are no null values, emit a warning just in case.\n console.warn('Row has null value(s) when no nulls expected')\n }\n\n const title = values[titleColumnIndex]\n const description = values[descriptionColumnIndex]\n const ctaButtonText = values[ctaButtonTextColumnIndex]\n const ctaButtonURL = values[ctaButtonURLColumnIndex] ?? ''\n const titleIconFileHandleIdValue = values[titleIconColumnIndex] ?? ''\n const headerImageFileHandleIdValue = values[headerImageColumnIndex] ?? ''\n\n const schema: Record<string, number> = {}\n queryResultBundle?.queryResult!.queryResults.headers.forEach(\n (header, colIndex) => {\n schema[header.name] = colIndex\n },\n )\n const { href } = getLinkParams(ctaButtonURL, linkConfig, values, schema)\n\n const titleIconFileHandleAssociation = getFileHandleAssociation(\n entity.data,\n titleIconFileHandleIdValue,\n `syn${el.rowId}`,\n )\n\n const titleIcon = titleIconFileHandleAssociation ? (\n <ImageFileHandle\n fileHandleAssociation={titleIconFileHandleAssociation}\n />\n ) : undefined\n\n const headerImageFileHandleAssociation = getFileHandleAssociation(\n entity.data,\n headerImageFileHandleIdValue,\n `syn${el.rowId}`,\n )\n\n const headerImage = headerImageFileHandleAssociation ? (\n <ImageFileHandle\n fileHandleAssociation={headerImageFileHandleAssociation}\n />\n ) : undefined\n\n return {\n title,\n description,\n ctaButtonText,\n ctaButtonURL: href,\n titleIcon,\n headerImage,\n cardDeckType,\n } satisfies CardDeckCardProps\n },\n )\n\n return <CardDeck cards={cards || []} cardDeckType={cardDeckType} />\n}\n\nexport default TableQueryCardDeck\n"],"names":["TableQueryCardDeck","props","entityId","titleColumnName","descriptionColumnName","ctaButtonTextColumnName","ctaButtonURLColumnName","titleIconFileHandleColumnName","headerImageFileHandleColumnName","cardDeckType","linkConfig","entity","useGetEntity","queryBundleRequest","SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS","SynapseConstants.BUNDLE_MASK_QUERY_RESULTS","queryResultBundle","useGetQueryResultBundle","titleColumnIndex","getFieldIndex","descriptionColumnIndex","ctaButtonTextColumnIndex","ctaButtonURLColumnIndex","titleIconColumnIndex","headerImageColumnIndex","cards","el","values","value","title","description","ctaButtonText","ctaButtonURL","titleIconFileHandleIdValue","headerImageFileHandleIdValue","schema","header","colIndex","href","getLinkParams","titleIconFileHandleAssociation","getFileHandleAssociation","titleIcon","jsx","ImageFileHandle","headerImageFileHandleAssociation","CardDeck"],"mappings":"
|
|
1
|
+
{"version":3,"file":"TableQueryCardDeck.js","sources":["../../../src/components/CardDeck/TableQueryCardDeck.tsx"],"sourcesContent":["import { CardDeck } from '@/components/CardDeck/CardDeck'\nimport { CardDeckCardProps } from '@/components/CardDeck/CardDeckCardProps'\nimport { ImageFileHandle } from '@/components/widgets/ImageFileHandle'\nimport { useGetEntity } from '@/synapse-queries/entity/useEntity'\nimport useGetQueryResultBundle from '@/synapse-queries/entity/useGetQueryResultBundle'\nimport { SynapseConstants } from '@/utils'\nimport { getFieldIndex } from '@/utils/functions/queryUtils'\nimport { QueryBundleRequest } from '@sage-bionetworks/synapse-types'\nimport { CardLink } from '../CardContainer/CardLink'\nimport { getFileHandleAssociation, getLinkParams } from '../GenericCard'\n\nexport type TableQueryCardDeckProps = {\n entityId: string /* The table entity which should be queried */\n titleColumnName: string /* The column name for the title */\n descriptionColumnName: string /* The column name for the description */\n ctaButtonTextColumnName: string /* The column name for the call to action button text */\n ctaButtonURLColumnName: string /* The column name for the call to action button URL */\n titleIconFileHandleColumnName?: string /* The column name for the title icon image file */\n headerImageFileHandleColumnName?: string /* The column name for the header image file */\n cardDeckType?: 'cckp' | 'b2ai' /* The type of card deck (cckp or b2ai)*/\n linkConfig: CardLink /* The link configuration */\n}\n\n/**\n * Transforms a Synapse table into a card deck.\n */\nexport function TableQueryCardDeck(props: TableQueryCardDeckProps) {\n const {\n entityId,\n titleColumnName,\n descriptionColumnName,\n ctaButtonTextColumnName,\n ctaButtonURLColumnName,\n titleIconFileHandleColumnName,\n headerImageFileHandleColumnName,\n cardDeckType,\n linkConfig,\n } = props\n const entity = useGetEntity(entityId)\n const queryBundleRequest: QueryBundleRequest = {\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n entityId,\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS,\n query: {\n sql: `select * from ${entityId}`,\n },\n }\n const { data: queryResultBundle } =\n useGetQueryResultBundle(queryBundleRequest)\n\n const titleColumnIndex = getFieldIndex(titleColumnName, queryResultBundle)\n const descriptionColumnIndex = getFieldIndex(\n descriptionColumnName,\n queryResultBundle,\n )\n const ctaButtonTextColumnIndex = getFieldIndex(\n ctaButtonTextColumnName,\n queryResultBundle,\n )\n const ctaButtonURLColumnIndex = getFieldIndex(\n ctaButtonURLColumnName,\n queryResultBundle,\n )\n const titleIconColumnIndex = getFieldIndex(\n titleIconFileHandleColumnName,\n queryResultBundle,\n )\n const headerImageColumnIndex = getFieldIndex(\n headerImageFileHandleColumnName,\n queryResultBundle,\n )\n\n const cards = queryResultBundle?.queryResult!.queryResults.rows.map(\n (el): CardDeckCardProps => {\n const values = el.values as string[]\n if (values.some(value => value === null)) {\n // We cast values above assuming there are no null values, emit a warning just in case.\n console.warn('Row has null value(s) when no nulls expected')\n }\n\n const title = values[titleColumnIndex]\n const description = values[descriptionColumnIndex]\n const ctaButtonText = values[ctaButtonTextColumnIndex]\n const ctaButtonURL = values[ctaButtonURLColumnIndex] ?? ''\n const titleIconFileHandleIdValue = values[titleIconColumnIndex] ?? ''\n const headerImageFileHandleIdValue = values[headerImageColumnIndex] ?? ''\n\n const schema: Record<string, number> = {}\n queryResultBundle?.queryResult!.queryResults.headers.forEach(\n (header, colIndex) => {\n schema[header.name] = colIndex\n },\n )\n const { href } = getLinkParams(ctaButtonURL, linkConfig, values, schema)\n\n const titleIconFileHandleAssociation = getFileHandleAssociation(\n entity.data,\n titleIconFileHandleIdValue,\n `syn${el.rowId}`,\n )\n\n const titleIcon = titleIconFileHandleAssociation ? (\n <ImageFileHandle\n fileHandleAssociation={titleIconFileHandleAssociation}\n />\n ) : undefined\n\n const headerImageFileHandleAssociation = getFileHandleAssociation(\n entity.data,\n headerImageFileHandleIdValue,\n `syn${el.rowId}`,\n )\n\n const headerImage = headerImageFileHandleAssociation ? (\n <ImageFileHandle\n fileHandleAssociation={headerImageFileHandleAssociation}\n />\n ) : undefined\n\n return {\n title,\n description,\n ctaButtonText,\n ctaButtonURL: href,\n titleIcon,\n headerImage,\n cardDeckType,\n } satisfies CardDeckCardProps\n },\n )\n\n return <CardDeck cards={cards || []} cardDeckType={cardDeckType} />\n}\n\nexport default TableQueryCardDeck\n"],"names":["TableQueryCardDeck","props","entityId","titleColumnName","descriptionColumnName","ctaButtonTextColumnName","ctaButtonURLColumnName","titleIconFileHandleColumnName","headerImageFileHandleColumnName","cardDeckType","linkConfig","entity","useGetEntity","queryBundleRequest","SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS","SynapseConstants.BUNDLE_MASK_QUERY_RESULTS","queryResultBundle","useGetQueryResultBundle","titleColumnIndex","getFieldIndex","descriptionColumnIndex","ctaButtonTextColumnIndex","ctaButtonURLColumnIndex","titleIconColumnIndex","headerImageColumnIndex","cards","el","values","value","title","description","ctaButtonText","ctaButtonURL","titleIconFileHandleIdValue","headerImageFileHandleIdValue","schema","header","colIndex","href","getLinkParams","titleIconFileHandleAssociation","getFileHandleAssociation","titleIcon","jsx","ImageFileHandle","headerImageFileHandleAssociation","CardDeck"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BO,SAASA,GAAmBC,GAAgC;AACjE,QAAM;AAAA,IACJ,UAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,wBAAAC;AAAA,IACA,+BAAAC;AAAA,IACA,iCAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,EAAA,IACET,GACEU,IAASC,EAAaV,CAAQ,GAC9BW,IAAyC;AAAA,IAC7C,cAAc;AAAA,IACd,UAAAX;AAAA,IACA,UACEY,IACAC;AAAAA,IACF,OAAO;AAAA,MACL,KAAK,iBAAiBb,CAAQ;AAAA,IAAA;AAAA,EAChC,GAEI,EAAE,MAAMc,MACZC,EAAwBJ,CAAkB,GAEtCK,IAAmBC,EAAchB,GAAiBa,CAAiB,GACnEI,IAAyBD;AAAA,IAC7Bf;AAAA,IACAY;AAAA,EAAA,GAEIK,IAA2BF;AAAA,IAC/Bd;AAAA,IACAW;AAAA,EAAA,GAEIM,IAA0BH;AAAA,IAC9Bb;AAAA,IACAU;AAAA,EAAA,GAEIO,IAAuBJ;AAAA,IAC3BZ;AAAA,IACAS;AAAA,EAAA,GAEIQ,IAAyBL;AAAA,IAC7BX;AAAA,IACAQ;AAAA,EAAA,GAGIS,IAAQT,GAAmB,YAAa,aAAa,KAAK;AAAA,IAC9D,CAACU,MAA0B;AACzB,YAAMC,IAASD,EAAG;AAClB,MAAIC,EAAO,KAAK,CAAAC,MAASA,MAAU,IAAI,KAErC,QAAQ,KAAK,8CAA8C;AAG7D,YAAMC,IAAQF,EAAOT,CAAgB,GAC/BY,IAAcH,EAAOP,CAAsB,GAC3CW,IAAgBJ,EAAON,CAAwB,GAC/CW,IAAeL,EAAOL,CAAuB,KAAK,IAClDW,IAA6BN,EAAOJ,CAAoB,KAAK,IAC7DW,IAA+BP,EAAOH,CAAsB,KAAK,IAEjEW,IAAiC,CAAA;AACvC,MAAAnB,GAAmB,YAAa,aAAa,QAAQ;AAAA,QACnD,CAACoB,GAAQC,MAAa;AACpB,UAAAF,EAAOC,EAAO,IAAI,IAAIC;AAAA,QACxB;AAAA,MAAA;AAEF,YAAM,EAAE,MAAAC,EAAA,IAASC,EAAcP,GAActB,GAAYiB,GAAQQ,CAAM,GAEjEK,IAAiCC;AAAA,QACrC9B,EAAO;AAAA,QACPsB;AAAA,QACA,MAAMP,EAAG,KAAK;AAAA,MAAA,GAGVgB,IAAYF,IAChB,gBAAAG;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,uBAAuBJ;AAAA,QAAA;AAAA,MAAA,IAEvB,QAEEK,IAAmCJ;AAAA,QACvC9B,EAAO;AAAA,QACPuB;AAAA,QACA,MAAMR,EAAG,KAAK;AAAA,MAAA;AAShB,aAAO;AAAA,QACL,OAAAG;AAAA,QACA,aAAAC;AAAA,QACA,eAAAC;AAAA,QACA,cAAcO;AAAA,QACd,WAAAI;AAAA,QACA,aAZkBG,IAClB,gBAAAF;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,uBAAuBC;AAAA,UAAA;AAAA,QAAA,IAEvB;AAAA,QASF,cAAApC;AAAA,MAAA;AAAA,IAEJ;AAAA,EAAA;AAGF,2BAAQqC,GAAA,EAAS,OAAOrB,KAAS,CAAA,GAAI,cAAAhB,GAA4B;AACnE;"}
|