synapse-react-client 4.0.19 → 4.0.21
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.d.ts +1 -1
- package/dist/SWC.index.js +1 -1
- package/dist/SWC.index.js.map +1 -1
- package/dist/aridhia-queries/aridhiaTokenExchange.js.map +1 -1
- package/dist/aridhia-queries/useGetAridhiaRequests.js.map +1 -1
- package/dist/assets/DefaultColorfulPortalCardBackground.js.map +1 -1
- package/dist/assets/GoogleIcon.js.map +1 -1
- package/dist/assets/GoogleIcon24.js.map +1 -1
- package/dist/assets/homepage/BlinkingLiveIcon.d.ts +1 -1
- package/dist/assets/homepage/BlinkingLiveIcon.js.map +1 -1
- package/dist/assets/homepage/aacr.js.map +1 -1
- package/dist/assets/homepage/cri.js.map +1 -1
- package/dist/assets/homepage/ctf.js.map +1 -1
- package/dist/assets/homepage/egress.js.map +1 -1
- package/dist/assets/homepage/facebook.js.map +1 -1
- package/dist/assets/homepage/fisma.js.map +1 -1
- package/dist/assets/homepage/gff.js.map +1 -1
- package/dist/assets/homepage/github.js.map +1 -1
- package/dist/assets/homepage/gray.js.map +1 -1
- package/dist/assets/homepage/hipaa-compliant.js.map +1 -1
- package/dist/assets/homepage/instagram.js.map +1 -1
- package/dist/assets/homepage/linkedin.js.map +1 -1
- package/dist/assets/homepage/ml-commons.js.map +1 -1
- package/dist/assets/homepage/nih-aging.js.map +1 -1
- package/dist/assets/homepage/nih-heart.js.map +1 -1
- package/dist/assets/homepage/nih-nci.js.map +1 -1
- package/dist/assets/homepage/nih-nimh.js.map +1 -1
- package/dist/assets/homepage/ntap.js.map +1 -1
- package/dist/assets/homepage/plan-item.js.map +1 -1
- package/dist/assets/homepage/powered-by-synapse-feature.js.map +1 -1
- package/dist/assets/homepage/precision-governance-feature.js.map +1 -1
- package/dist/assets/homepage/python.js.map +1 -1
- package/dist/assets/homepage/r.js.map +1 -1
- package/dist/assets/homepage/research-credit-feature.js.map +1 -1
- package/dist/assets/homepage/seamless-integration-feature.js.map +1 -1
- package/dist/assets/homepage/sloan.js.map +1 -1
- package/dist/assets/homepage/twitter.js.map +1 -1
- package/dist/assets/homepage/users.js.map +1 -1
- package/dist/assets/homepage/youtube.js.map +1 -1
- package/dist/assets/icons/AccessDataAnywhere.js.map +1 -1
- package/dist/assets/icons/AccessPending.js.map +1 -1
- package/dist/assets/icons/AccessPendingCloud.js.map +1 -1
- package/dist/assets/icons/AddAd.js.map +1 -1
- package/dist/assets/icons/AddToList.js.map +1 -1
- package/dist/assets/icons/Alert.js.map +1 -1
- package/dist/assets/icons/Arrow.js.map +1 -1
- package/dist/assets/icons/AwardScroll.js.map +1 -1
- package/dist/assets/icons/Baseline.js.map +1 -1
- package/dist/assets/icons/Cavatica.js.map +1 -1
- package/dist/assets/icons/CertifiedUser.js.map +1 -1
- package/dist/assets/icons/Challenge.js.map +1 -1
- package/dist/assets/icons/Checkbox/Checked.js.map +1 -1
- package/dist/assets/icons/Checkbox/Checked2.js.map +1 -1
- package/dist/assets/icons/Checkbox/Indeterminate.js.map +1 -1
- package/dist/assets/icons/Checkbox/Indeterminate2.js.map +1 -1
- package/dist/assets/icons/Checkbox/Unchecked.js.map +1 -1
- package/dist/assets/icons/Checkbox/Unchecked2.js.map +1 -1
- package/dist/assets/icons/ClappingHands.js.map +1 -1
- package/dist/assets/icons/CloudWarning.js.map +1 -1
- package/dist/assets/icons/CommunicateFindings.js.map +1 -1
- package/dist/assets/icons/CreateVersion.js.map +1 -1
- package/dist/assets/icons/DNA_Two.js.map +1 -1
- package/dist/assets/icons/Data2.js.map +1 -1
- package/dist/assets/icons/DoubleQuotes.js.map +1 -1
- package/dist/assets/icons/EmailAddressAdornment.js.map +1 -1
- package/dist/assets/icons/FileWithShield.js.map +1 -1
- package/dist/assets/icons/FileWithShield2.js.map +1 -1
- package/dist/assets/icons/FrontHand.js.map +1 -1
- package/dist/assets/icons/HandWithMoney.js.map +1 -1
- package/dist/assets/icons/IconCopy.js.map +1 -1
- package/dist/assets/icons/IconMinus.js.map +1 -1
- package/dist/assets/icons/IconPlus.js.map +1 -1
- package/dist/assets/icons/Java.js.map +1 -1
- package/dist/assets/icons/MintDoi.js.map +1 -1
- package/dist/assets/icons/MultiFile.js.map +1 -1
- package/dist/assets/icons/MultiFile2.js.map +1 -1
- package/dist/assets/icons/NoData.js.map +1 -1
- package/dist/assets/icons/NoSearchResults.js.map +1 -1
- package/dist/assets/icons/ORCIDIcon.js.map +1 -1
- package/dist/assets/icons/OpenBook.js.map +1 -1
- package/dist/assets/icons/Podium.js.map +1 -1
- package/dist/assets/icons/Python.js.map +1 -1
- package/dist/assets/icons/QueryStructuredData.js.map +1 -1
- package/dist/assets/icons/RLogo.js.map +1 -1
- package/dist/assets/icons/RecordProvenance.js.map +1 -1
- package/dist/assets/icons/RosetteRibbon.js.map +1 -1
- package/dist/assets/icons/SageFullLogo.js.map +1 -1
- package/dist/assets/icons/SearchImage.js.map +1 -1
- package/dist/assets/icons/ShareYourResearch.js.map +1 -1
- package/dist/assets/icons/Sort.js.map +1 -1
- package/dist/assets/icons/StarTrophy.js.map +1 -1
- package/dist/assets/icons/SynapseFullLogo.js.map +1 -1
- package/dist/assets/icons/SynapseIconWhite.js.map +1 -1
- package/dist/assets/icons/SynapseLogoName.js.map +1 -1
- package/dist/assets/icons/TasksIcon.js.map +1 -1
- package/dist/assets/icons/Terminal.js.map +1 -1
- package/dist/assets/icons/ThreeStars.js.map +1 -1
- package/dist/assets/icons/UnpackagableFile.js.map +1 -1
- package/dist/assets/icons/UnpackagableFile2.js.map +1 -1
- package/dist/assets/icons/ValidatedProfile.js.map +1 -1
- package/dist/assets/icons/account-certified.js.map +1 -1
- package/dist/assets/icons/account-enabled-mfa.js.map +1 -1
- package/dist/assets/icons/account-validated.js.map +1 -1
- package/dist/assets/icons/bioChemicalPhysical.js.map +1 -1
- package/dist/assets/icons/chart2.js.map +1 -1
- package/dist/assets/icons/columns.js.map +1 -1
- package/dist/assets/icons/columnsDarkTheme.js.map +1 -1
- package/dist/assets/icons/computationalTool.js.map +1 -1
- package/dist/assets/icons/dataReuse.js.map +1 -1
- package/dist/assets/icons/emailAddressAdornment2.js.map +1 -1
- package/dist/assets/icons/emailWithNotification.js.map +1 -1
- package/dist/assets/icons/error_page/maintenance.js.map +1 -1
- package/dist/assets/icons/error_page/no-access.js.map +1 -1
- package/dist/assets/icons/error_page/unavailable.js.map +1 -1
- package/dist/assets/icons/file.js.map +1 -1
- package/dist/assets/icons/inSilicoModel.js.map +1 -1
- package/dist/assets/icons/institution.js.map +1 -1
- package/dist/assets/icons/json-form-tool-no-submissions.js.map +1 -1
- package/dist/assets/icons/modelSystem.js.map +1 -1
- package/dist/assets/icons/mouse.js.map +1 -1
- package/dist/assets/icons/organizations.js.map +1 -1
- package/dist/assets/icons/person.js.map +1 -1
- package/dist/assets/icons/spatialProfiling.js.map +1 -1
- package/dist/assets/icons/standardDataModel.js.map +1 -1
- package/dist/assets/icons/study-active.js.map +1 -1
- package/dist/assets/icons/study-complete.js.map +1 -1
- package/dist/assets/icons/subscribe_plus.js.map +1 -1
- package/dist/assets/icons/synapse-logo.js.map +1 -1
- package/dist/assets/icons/terms/CheckIcon.js.map +1 -1
- package/dist/assets/icons/translational.js.map +1 -1
- package/dist/assets/icons/tree_horizontal.js.map +1 -1
- package/dist/assets/illustrations/acknowledgement_statements_illustration.js.map +1 -1
- package/dist/assets/illustrations/challenges_illustration.js.map +1 -1
- package/dist/assets/illustrations/cohort_builder_illustration.js.map +1 -1
- package/dist/assets/illustrations/data_access_management_illustration.js.map +1 -1
- package/dist/assets/illustrations/datasets_illustration.js.map +1 -1
- package/dist/assets/illustrations/diagonalLinePattern.js.map +1 -1
- package/dist/assets/illustrations/discussions_illustration.js.map +1 -1
- package/dist/assets/illustrations/docker_illustration.js.map +1 -1
- package/dist/assets/illustrations/donation_illustration.js.map +1 -1
- package/dist/assets/illustrations/favorites_illustration.js.map +1 -1
- package/dist/assets/illustrations/files_illustration.js.map +1 -1
- package/dist/assets/illustrations/following_illustration.js.map +1 -1
- package/dist/assets/illustrations/index.js.map +1 -1
- package/dist/assets/illustrations/left_dot_blob_dark_illustration.js.map +1 -1
- package/dist/assets/illustrations/left_dot_blob_illustration.js.map +1 -1
- package/dist/assets/illustrations/projects_illustration.js.map +1 -1
- package/dist/assets/illustrations/right_dot_blob_dark_illustration.js.map +1 -1
- package/dist/assets/illustrations/right_dot_blob_illustration.js.map +1 -1
- package/dist/assets/illustrations/tables_illustration.js.map +1 -1
- package/dist/assets/illustrations/teams_illustration.js.map +1 -1
- package/dist/assets/illustrations/trash_can_illustration.js.map +1 -1
- package/dist/assets/illustrations/underconstruction_illustration.js.map +1 -1
- package/dist/assets/illustrations/wikis_illustration.js.map +1 -1
- package/dist/assets/logos/other/ad-workbench-logo.js.map +1 -1
- package/dist/assets/logos/other/cavatica-logo.js.map +1 -1
- package/dist/assets/logos/other/pluto-logo.js.map +1 -1
- package/dist/assets/logos/other/terra-logo.js.map +1 -1
- package/dist/assets/mui_components/AccessManagement.js.map +1 -1
- package/dist/assets/mui_components/AccountCertified.js.map +1 -1
- package/dist/assets/mui_components/AccountRegistered.js.map +1 -1
- package/dist/assets/mui_components/AccountValidated.js.map +1 -1
- package/dist/assets/mui_components/ActionKey.js.map +1 -1
- package/dist/assets/mui_components/BioChemicalPhysical.js.map +1 -1
- package/dist/assets/mui_components/Chromatin.js.map +1 -1
- package/dist/assets/mui_components/Clinical.js.map +1 -1
- package/dist/assets/mui_components/ComputationalTool.js.map +1 -1
- package/dist/assets/mui_components/Data.js.map +1 -1
- package/dist/assets/mui_components/DataLocked.js.map +1 -1
- package/dist/assets/mui_components/DataReuse.js.map +1 -1
- package/dist/assets/mui_components/Dataset.js.map +1 -1
- package/dist/assets/mui_components/DatasetCollection.js.map +1 -1
- package/dist/assets/mui_components/Docker.js.map +1 -1
- package/dist/assets/mui_components/GeneExpression.js.map +1 -1
- package/dist/assets/mui_components/GeneVariants.js.map +1 -1
- package/dist/assets/mui_components/HelpChatBubble.js.map +1 -1
- package/dist/assets/mui_components/Imaging.js.map +1 -1
- package/dist/assets/mui_components/InSilicoModel.js.map +1 -1
- package/dist/assets/mui_components/Kinomics.js.map +1 -1
- package/dist/assets/mui_components/LineGraph.js.map +1 -1
- package/dist/assets/mui_components/ModelSystem.js.map +1 -1
- package/dist/assets/mui_components/Other.js.map +1 -1
- package/dist/assets/mui_components/PackagableFile.js.map +1 -1
- package/dist/assets/mui_components/PackagableFile2.js.map +1 -1
- package/dist/assets/mui_components/Proteomics.js.map +1 -1
- package/dist/assets/mui_components/Rat.js.map +1 -1
- package/dist/assets/mui_components/SpatialProfiling.js.map +1 -1
- package/dist/assets/sustainability/darkDialPosition1.js.map +1 -1
- package/dist/assets/sustainability/darkDialPosition2.js.map +1 -1
- package/dist/assets/sustainability/darkDialPosition3.js.map +1 -1
- package/dist/assets/sustainability/darkDialPosition4.js.map +1 -1
- package/dist/assets/sustainability/dialPosition1.js.map +1 -1
- package/dist/assets/sustainability/dialPosition2.js.map +1 -1
- package/dist/assets/sustainability/dialPosition3.js.map +1 -1
- package/dist/assets/sustainability/dialPosition4.js.map +1 -1
- package/dist/assets/themed_icons/Active.js.map +1 -1
- package/dist/assets/themed_icons/Chart.js.map +1 -1
- package/dist/assets/themed_icons/Close.js.map +1 -1
- package/dist/assets/themed_icons/Collapse.js.map +1 -1
- package/dist/assets/themed_icons/Columns.js.map +1 -1
- package/dist/assets/themed_icons/ColumnsDark.js.map +1 -1
- package/dist/assets/themed_icons/Database.js.map +1 -1
- package/dist/assets/themed_icons/Download.js.map +1 -1
- package/dist/assets/themed_icons/Expand.js.map +1 -1
- package/dist/assets/themed_icons/Explore.js.map +1 -1
- package/dist/assets/themed_icons/ExternalLink.js.map +1 -1
- package/dist/assets/themed_icons/Filter.js.map +1 -1
- package/dist/assets/themed_icons/Program.js.map +1 -1
- package/dist/assets/themed_icons/Project.js.map +1 -1
- package/dist/assets/themed_icons/Publication.js.map +1 -1
- package/dist/assets/themed_icons/Search.js.map +1 -1
- package/dist/assets/themed_icons/Settings.js.map +1 -1
- package/dist/assets/themed_icons/SortDown.js.map +1 -1
- package/dist/assets/themed_icons/SortUp.js.map +1 -1
- package/dist/assets/themed_icons/SqlEditorIcon.js.map +1 -1
- package/dist/assets/themed_icons/Study.js.map +1 -1
- package/dist/assets/themed_icons/ToolClinical.js.map +1 -1
- package/dist/assets/themed_icons/ToolComputational.js.map +1 -1
- package/dist/assets/themed_icons/ToolExperimental.js.map +1 -1
- package/dist/assets/themed_icons/VerticalDots.js.map +1 -1
- package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js.map +1 -1
- package/dist/components/AccessRequirement/EntityActionsRequired.js.map +1 -1
- package/dist/components/AccessRequirement/ImposeRestrictionDialog/ImposeRestrictionDialog.js.map +1 -1
- package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js +10 -11
- package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementList.js +73 -76
- package/dist/components/AccessRequirementList/AccessRequirementList.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementListItem.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementListUtils.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/CancelRequestDataAccess.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsFilesForm/DataAccessRequestAccessorsFilesForm.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DocumentTemplate.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItemView.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/RequestDataAccessSuccess.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ResearchProjectForm/ResearchProjectForm.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/AuthenticatedRequirement.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/CertificationRequirement.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/LockAccessRequirementItem.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/TwoFactorAuthEnabledRequirement.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/ValidationRequirement.js.map +1 -1
- package/dist/components/AccessRequirementRelatedProjectsList/AccessRequirementRelatedProjectsList.js.map +1 -1
- package/dist/components/AccessTokenPage/AccessTokenCard/AccessTokenCard.js.map +1 -1
- package/dist/components/AccessTokenPage/AccessTokenPage.js.map +1 -1
- package/dist/components/AccessTokenPage/CreateAccessTokenModal.js.map +1 -1
- package/dist/components/AccountLevelBadge/AccountLevelBadge.js.map +1 -1
- package/dist/components/AccountLevelBadges/AccountLevelBadges.js.map +1 -1
- package/dist/components/AccountLevelBadges/useRevokeCertificationUI.js.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsDialog.js.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AcknowledgementsPage/StudyAcknowledgement.js.map +1 -1
- package/dist/components/AcknowledgementsPage/StudyAcknowledgements.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
- package/dist/components/AclEditor/AclEditorSkeleton.js.map +1 -1
- package/dist/components/AclEditor/PermissionLevelMenu.js.map +1 -1
- package/dist/components/AclEditor/ReadOnlyPermissionLevel.js.map +1 -1
- package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.js +2 -4
- package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.js.map +1 -1
- package/dist/components/AclEditor/ResourceAccessItem.js.map +1 -1
- package/dist/components/AclEditor/useSortResourceAccessList.js.map +1 -1
- package/dist/components/AclEditor/useUpdateAcl.js.map +1 -1
- package/dist/components/AdaptiveTwoColumnLayout/AdaptiveTwoColumnLayout.js.map +1 -1
- package/dist/components/AddToDownloadListV2.js.map +1 -1
- package/dist/components/Aridhia/AridhiaAccessStatus.js.map +1 -1
- package/dist/components/Aridhia/aridhiaAccessStatusUtils.js.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.js.map +1 -1
- package/dist/components/Authentication/LastLoginInfo.js.map +1 -1
- package/dist/components/Authentication/LoginFlowBackButton.js.map +1 -1
- package/dist/components/Authentication/LoginForm.js.map +1 -1
- package/dist/components/Authentication/LoginMethod.js.map +1 -1
- package/dist/components/Authentication/LoginMethodButton.js.map +1 -1
- package/dist/components/Authentication/Logout.js.map +1 -1
- package/dist/components/Authentication/OneTimePasswordForm.js.map +1 -1
- package/dist/components/Authentication/PasswordField.js.map +1 -1
- package/dist/components/Authentication/RecoveryCodeForm.js.map +1 -1
- package/dist/components/Authentication/RecoveryCodeGrid.js.map +1 -1
- package/dist/components/Authentication/RegenerateBackupCodesWarning.js.map +1 -1
- package/dist/components/Authentication/Reset2FAWarning.js.map +1 -1
- package/dist/components/Authentication/StandaloneLoginForm.js.map +1 -1
- package/dist/components/Authentication/TOTPForm.js.map +1 -1
- package/dist/components/Authentication/TwoFactorAuthSettingsPanel.js.map +1 -1
- package/dist/components/Authentication/TwoFactorBackupCodes.js.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
- package/dist/components/Authentication/TwoFactorSecretDialog.js.map +1 -1
- package/dist/components/Authentication/UsernamePasswordForm.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/dist/components/CTASectionWrapper/CTASectionWrapper.js.map +1 -1
- package/dist/components/CannedRejectionDialog/CannedRejectionDialog.js.map +1 -1
- package/dist/components/CardContainer/CardConfiguration.d.ts +2 -0
- package/dist/components/CardContainer/CardConfiguration.d.ts.map +1 -1
- package/dist/components/CardContainer/CardContainer.d.ts.map +1 -1
- package/dist/components/CardContainer/CardContainer.js +3 -3
- package/dist/components/CardContainer/CardContainer.js.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts +1 -0
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.js.map +1 -1
- package/dist/components/CardDeck/CardDeck.Desktop.js.map +1 -1
- package/dist/components/CardDeck/CardDeck.Mobile.js.map +1 -1
- package/dist/components/CardDeck/CardDeck.js.map +1 -1
- package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
- package/dist/components/CardGridWithLinks/CardGridWithLinks.js.map +1 -1
- package/dist/components/CertificationQuiz/CertificationAnswer.js.map +1 -1
- package/dist/components/CertificationQuiz/CertificationQuiz.js.map +1 -1
- package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
- package/dist/components/ChallengeDetailPage/ChallengeDetailPage.js.map +1 -1
- package/dist/components/ChallengeRegisterButton/ChallengeRegisterButton.js.map +1 -1
- package/dist/components/ChallengeRequirementsModal/ChallengeRequirementsModal.js.map +1 -1
- package/dist/components/ChallengeSubmission/AddExternalRepo.js.map +1 -1
- package/dist/components/ChallengeSubmission/AvailableEvaluationQueueList.js.map +1 -1
- package/dist/components/ChallengeSubmission/ChallengeSubmission.js.map +1 -1
- package/dist/components/ChallengeSubmission/ChallengeSubmissionStepper.js +62 -64
- package/dist/components/ChallengeSubmission/ChallengeSubmissionStepper.js.map +1 -1
- package/dist/components/ChallengeSubmission/EvaluationQueueCurrentRoundInfo.js.map +1 -1
- package/dist/components/ChallengeSubmission/EvaluationQueueList.js.map +1 -1
- package/dist/components/ChallengeSubmission/SubmissionCommitList.js.map +1 -1
- package/dist/components/ChallengeSubmission/SubmissionDirectoryList.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/ChallengeTeamSearch.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/ChallengeTeamTable.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js +96 -102
- package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/MembershipRequestForm.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/OpenMembershipInvitation.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/RegistrationSuccessful.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/SelectChallengeTeam.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/useCreateAndRegisterChallengeTeam.js.map +1 -1
- package/dist/components/ChangePassword/ChangePassword.js.map +1 -1
- package/dist/components/ChangePassword/ChangePasswordWithToken.js.map +1 -1
- package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopover.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverUtils.js.map +1 -1
- package/dist/components/CitationPopover/useCitation.js.map +1 -1
- package/dist/components/ColorGradient/ColorGradient.js.map +1 -1
- package/dist/components/ColoredBulletListItem/ColoredBulletListItem.js.map +1 -1
- package/dist/components/ColumnFilter/ColumnFilter.js.map +1 -1
- package/dist/components/ComponentCollapse.js.map +1 -1
- package/dist/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
- package/dist/components/CookiesNotification/CookiePreferencesDialog.js.map +1 -1
- package/dist/components/CookiesNotification/CookiesNotification.d.ts.map +1 -1
- package/dist/components/CookiesNotification/CookiesNotification.js +9 -9
- package/dist/components/CookiesNotification/CookiesNotification.js.map +1 -1
- package/dist/components/CopyToClipboardIcon.js.map +1 -1
- package/dist/components/CopyToClipboardInput/CopyToClipboardInput.js.map +1 -1
- package/dist/components/CopyToClipboardString/CopyToClipboardString.js.map +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizardUtils.js.map +1 -1
- package/dist/components/CreateProjectModal/CreateProjectModal.js.map +1 -1
- package/dist/components/CreateProjectModal/ProjectVisibilityRadioGroup.js.map +1 -1
- package/dist/components/CreateTableViewWizard/CreateTableViewWizard.js.map +1 -1
- package/dist/components/CreateTableViewWizard/CreateTableViewWizardUtils.js.map +1 -1
- package/dist/components/CreateTableViewWizard/TableNameForm.js.map +1 -1
- package/dist/components/CreateTableViewWizard/TableTypeSelection.js.map +1 -1
- package/dist/components/CreateTableViewWizard/ViewTypeSelection.js.map +1 -1
- package/dist/components/CrispChat/CrispChat.js.map +1 -1
- package/dist/components/DataExplorer/DataExplorer.css +1 -1
- package/dist/components/DataExplorer/DataExplorer.js +28 -31
- package/dist/components/DataExplorer/DataExplorer.js.map +1 -1
- package/dist/components/DataExplorer/DataExplorer.module.js +16 -16
- package/dist/components/DataExplorer/DataExplorer.module.js.map +1 -1
- package/dist/components/DataExplorer/DataExplorer.module.scss +26 -6
- package/dist/components/DataGrid/DataGrid.js +72 -72
- package/dist/components/DataGrid/DataGrid.js.map +1 -1
- package/dist/components/DataGrid/DataGridTypes.js.map +1 -1
- package/dist/components/DataGrid/DataGridWebSocket.d.ts +2 -0
- package/dist/components/DataGrid/DataGridWebSocket.d.ts.map +1 -1
- package/dist/components/DataGrid/DataGridWebSocket.js +9 -10
- package/dist/components/DataGrid/DataGridWebSocket.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
- package/dist/components/DataGrid/StartGridSession.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.d.ts +3 -1
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +219 -211
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteColumn.js.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js.map +1 -1
- package/dist/components/DataGrid/columns/DateTimeColumn.js.map +1 -1
- package/dist/components/DataGrid/columns/GridAutocompleteChip.js.map +1 -1
- package/dist/components/DataGrid/columns/useGridAutocompleteState.js.map +1 -1
- package/dist/components/DataGrid/components/ColumnHeaderWithTooltip.d.ts +5 -3
- package/dist/components/DataGrid/components/ColumnHeaderWithTooltip.d.ts.map +1 -1
- package/dist/components/DataGrid/components/ColumnHeaderWithTooltip.js +46 -47
- package/dist/components/DataGrid/components/ColumnHeaderWithTooltip.js.map +1 -1
- package/dist/components/DataGrid/components/ExportCsvFromGridButton.js.map +1 -1
- package/dist/components/DataGrid/components/GridMenuButton/GridMenuButton.js.map +1 -1
- package/dist/components/DataGrid/components/GridSessionSelectionField.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridButton.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
- package/dist/components/DataGrid/components/ValidationAlert.js.map +1 -1
- package/dist/components/DataGrid/components/contextMenu.js.map +1 -1
- package/dist/components/DataGrid/hooks/useColumnResizeHandles.d.ts.map +1 -1
- package/dist/components/DataGrid/hooks/useColumnResizeHandles.js +3 -1
- package/dist/components/DataGrid/hooks/useColumnResizeHandles.js.map +1 -1
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGridReplicaUsers.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGridUndoRedo.js.map +1 -1
- package/dist/components/DataGrid/hooks/useRemoteSelections.js.map +1 -1
- package/dist/components/DataGrid/hooks/useStack.js.map +1 -1
- package/dist/components/DataGrid/useCRDTModelView.js.map +1 -1
- package/dist/components/DataGrid/useDataGridWebsocket.d.ts +2 -0
- package/dist/components/DataGrid/useDataGridWebsocket.d.ts.map +1 -1
- package/dist/components/DataGrid/useDataGridWebsocket.js +12 -2
- package/dist/components/DataGrid/useDataGridWebsocket.js.map +1 -1
- package/dist/components/DataGrid/useInitializeGridConnection.js.map +1 -1
- package/dist/components/DataGrid/useMergeGridWithRecordSet.js.map +1 -1
- package/dist/components/DataGrid/useMergeGridWithSource.js.map +1 -1
- package/dist/components/DataGrid/useMergeGridWithTable.js.map +1 -1
- package/dist/components/DataGrid/utils/DataGridUtils.js.map +1 -1
- package/dist/components/DataGrid/utils/MessageCounter.js.map +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
- package/dist/components/DataGrid/utils/calculateColumnWidth.js.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.js +1 -0
- package/dist/components/DataGrid/utils/columnFactory.js.map +1 -1
- package/dist/components/DataGrid/utils/computeReplicaSelectionModel.js.map +1 -1
- package/dist/components/DataGrid/utils/convertActionToModelChange.js.map +1 -1
- package/dist/components/DataGrid/utils/createTestModel.js.map +1 -1
- package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.js.map +1 -1
- package/dist/components/DataGrid/utils/extractColumnValidationMessages.js.map +1 -1
- package/dist/components/DataGrid/utils/getCellAuthorSid.js.map +1 -1
- package/dist/components/DataGrid/utils/getCellClassName.js.map +1 -1
- package/dist/components/DataGrid/utils/getChangeTooltipText.js.map +1 -1
- package/dist/components/DataGrid/utils/getEmptyValue.js.map +1 -1
- package/dist/components/DataGrid/utils/getReplicaCategory.js.map +1 -1
- package/dist/components/DataGrid/utils/isValidationUpToDateForRow.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRx.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxMessage.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxNotification.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxRequest.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxRequestComplete.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxResponse.js.map +1 -1
- package/dist/components/DataGrid/utils/json-rx/JsonRxResponseComplete.js.map +1 -1
- package/dist/components/DataGrid/utils/logicalTimestampToString.js.map +1 -1
- package/dist/components/DataGrid/utils/mapOperationsToModelChanges.js.map +1 -1
- package/dist/components/DataGrid/utils/modelColsToGrid.js.map +1 -1
- package/dist/components/DataGrid/utils/modelRowsToGrid.js.map +1 -1
- package/dist/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType.js.map +1 -1
- package/dist/components/DataGrid/utils/replicaSelectionToGridSelection.js.map +1 -1
- package/dist/components/DataGrid/utils/schemaAwarePasteValue.js.map +1 -1
- package/dist/components/DataGrid/utils/splitPatch.js.map +1 -1
- package/dist/components/DatasetJsonLdScript.js.map +1 -1
- package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
- package/dist/components/Dialog/ConfirmCloseWithoutSavingDialog.js.map +1 -1
- package/dist/components/DialogBase.js.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
- package/dist/components/DirectDownload/FileEntityDirectDownload.js.map +1 -1
- package/dist/components/DirectDownloadButton.js.map +1 -1
- package/dist/components/DownloadCart/ActionRequiredCard/ActionRequiredCard.js.map +1 -1
- package/dist/components/DownloadCart/ActionRequiredListItem.js.map +1 -1
- package/dist/components/DownloadCart/AvailableForDownloadTable.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
- package/dist/components/DownloadCart/DirectProgrammaticDownload.js.map +1 -1
- package/dist/components/DownloadCart/DownloadCartPage.js.map +1 -1
- package/dist/components/DownloadCart/DownloadDetails.js.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListActionsRequired.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListStats.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
- package/dist/components/DownloadCart/EnableTwoFaRequirementCard.js.map +1 -1
- package/dist/components/DownloadCart/MeetAccessRequirementCard.js.map +1 -1
- package/dist/components/DownloadCart/RequestDownloadCard.js.map +1 -1
- package/dist/components/DownloadCart/ShowDownloadV2.js.map +1 -1
- package/dist/components/DownloadCart/TableQueryActionsRequired.js.map +1 -1
- package/dist/components/DownloadCart/fileNameUtils.js.map +1 -1
- package/dist/components/DraggableDialog/DraggableDialog.js.map +1 -1
- package/dist/components/DropdownSelect/DropdownSelect.js.map +1 -1
- package/dist/components/DynamicForm/DynamicForm.js.map +1 -1
- package/dist/components/DynamicForm/DynamicFormModal.js.map +1 -1
- package/dist/components/Ecosystem/EcosystemCard.js.map +1 -1
- package/dist/components/Ecosystem/EcosystemLayout.js.map +1 -1
- package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
- package/dist/components/Ecosystem/TableQueryEcosystem.js.map +1 -1
- package/dist/components/EntityAclEditor/CreateOrDeleteLocalSharingSettingsButton.js.map +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditor.js.map +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditorModal.js.map +1 -1
- package/dist/components/EntityAclEditor/InheritanceMessage.js.map +1 -1
- package/dist/components/EntityAclEditor/OpenData.js.map +1 -1
- package/dist/components/EntityAclEditor/useNotifyNewACLUsers.js.map +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +68 -70
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitation.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitationUtils.js.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js +32 -35
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
- package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js.map +1 -1
- package/dist/components/EntityFinder/Breadcrumbs.js.map +1 -1
- package/dist/components/EntityFinder/EntityFinder.js +134 -136
- package/dist/components/EntityFinder/EntityFinder.js.map +1 -1
- package/dist/components/EntityFinder/EntityFinderModal.js.map +1 -1
- package/dist/components/EntityFinder/EntityIdTextField.js.map +1 -1
- package/dist/components/EntityFinder/VersionSelectionType.js.map +1 -1
- package/dist/components/EntityFinder/details/EntityDetailsList.js +20 -20
- package/dist/components/EntityFinder/details/EntityDetailsList.js.map +1 -1
- package/dist/components/EntityFinder/details/configurations/EntityChildrenDetails.js.map +1 -1
- package/dist/components/EntityFinder/details/configurations/FavoritesDetails.js.map +1 -1
- package/dist/components/EntityFinder/details/configurations/ProjectListDetails.js.map +1 -1
- package/dist/components/EntityFinder/details/configurations/ReferenceDetails.js.map +1 -1
- package/dist/components/EntityFinder/details/configurations/SearchDetails.js.map +1 -1
- package/dist/components/EntityFinder/details/view/DetailsView.js +67 -67
- package/dist/components/EntityFinder/details/view/DetailsView.js.map +1 -1
- package/dist/components/EntityFinder/details/view/VersionColumnHeader.js +1 -1
- package/dist/components/EntityFinder/details/view/VersionColumnHeader.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/DateCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityBadgeIconsCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityFinderCheckboxCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityFinderVersionCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityNameCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityTypeCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntityDirectDownloadCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/UserBadgeCell.js.map +1 -1
- package/dist/components/EntityFinder/tree/EntityTree.js +80 -80
- package/dist/components/EntityFinder/tree/EntityTree.js.map +1 -1
- package/dist/components/EntityFinder/tree/VirtualizedTree.js +31 -31
- package/dist/components/EntityFinder/tree/VirtualizedTree.js.map +1 -1
- package/dist/components/EntityFinder/useEntitySelection.js.map +1 -1
- package/dist/components/EntityForm/EntityForm.js.map +1 -1
- package/dist/components/EntityHeaderTable/DebouncedInput.js.map +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTableCellRenderers.js.map +1 -1
- package/dist/components/EntityHeaderTable/Filter.js.map +1 -1
- package/dist/components/EntityHeaderTable/useEntityHeaderTableState.js.map +1 -1
- package/dist/components/EntityIcon.js.map +1 -1
- package/dist/components/EntityLink.js.map +1 -1
- package/dist/components/EntitySubjectsSelector/EntitySubjectsSelector.js.map +1 -1
- package/dist/components/EntityTreeTable/EntityTreeTable.js.map +1 -1
- package/dist/components/EntityTreeTable/components/AutoLoadMore.js.map +1 -1
- package/dist/components/EntityTreeTable/components/ColumnHeaders.js.map +1 -1
- package/dist/components/EntityTreeTable/components/EntityBadgeIconsCell.js.map +1 -1
- package/dist/components/EntityTreeTable/components/EntityNameCell.js.map +1 -1
- package/dist/components/EntityTreeTable/components/EntityTreeTableContext.js.map +1 -1
- package/dist/components/EntityTreeTable/components/EntityTreeTableRow.js.map +1 -1
- package/dist/components/EntityTreeTable/components/EntityTreeTableView.js.map +1 -1
- package/dist/components/EntityTreeTable/components/IdCell.js.map +1 -1
- package/dist/components/EntityTreeTable/components/IdColumnHeader.js.map +1 -1
- package/dist/components/EntityTreeTable/hooks/useEntityTreeState.js.map +1 -1
- package/dist/components/EntityTreeTable/hooks/useTableColumns.js.map +1 -1
- package/dist/components/EntityTreeTable/hooks/useTableData.js.map +1 -1
- package/dist/components/EntityTreeTable/hooks/useTreeOperationsWithDirectFetch.js.map +1 -1
- package/dist/components/EntityUpload/EntityUpload.js.map +1 -1
- package/dist/components/EntityUpload/EntityUploadModal.js +29 -31
- package/dist/components/EntityUpload/EntityUploadModal.js.map +1 -1
- package/dist/components/EntityUpload/EntityUploadPromptDialog.js.map +1 -1
- package/dist/components/EntityUpload/ExternalObjectStoreCredentialsForm.js.map +1 -1
- package/dist/components/EntityUpload/FileUploadProgress.js.map +1 -1
- package/dist/components/EntityUpload/LinkToURL.js.map +1 -1
- package/dist/components/EntityUpload/ProjectStorageLimitAlert.js.map +1 -1
- package/dist/components/EntityViewScopeEditor/EntityViewMaskEditor.js.map +1 -1
- package/dist/components/EntityViewScopeEditor/EntityViewScopeEditor.js.map +1 -1
- package/dist/components/EntityViewScopeEditor/EntityViewScopeEditorModal.js.map +1 -1
- package/dist/components/Evaluation/CreatedOnByUserDiv.js.map +1 -1
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -1
- package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
- package/dist/components/Evaluation/EvaluationEditorPage.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditorDropdown.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditorList.js.map +1 -1
- package/dist/components/Evaluation/input_models/models.js.map +1 -1
- package/dist/components/Evaluation/round_limits/EvaluationRoundLimitOptions.js.map +1 -1
- package/dist/components/Evaluation/round_limits/EvaluationRoundLimitOptionsList.js.map +1 -1
- package/dist/components/EvaluationFinder/EvaluationFinder.js.map +1 -1
- package/dist/components/ExperimentalMode/ExperimentalMode.d.ts.map +1 -1
- package/dist/components/ExperimentalMode/ExperimentalMode.js +24 -30
- package/dist/components/ExperimentalMode/ExperimentalMode.js.map +1 -1
- package/dist/components/ExternalFileHandleLink/ExternalFileHandleLink.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FacetPlotsCardGrid.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FeaturedDataPlots.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js.map +1 -1
- package/dist/components/FeaturedDataTabs/QueryPerFacetPlotsCard.js.map +1 -1
- package/dist/components/FeaturedDataTabs/SingleQueryFacetPlotsCards.js.map +1 -1
- package/dist/components/FeaturedResearch/FeaturedResearch.js +16 -18
- package/dist/components/FeaturedResearch/FeaturedResearch.js.map +1 -1
- package/dist/components/FeaturedToolsList/FeaturedToolCard.js.map +1 -1
- package/dist/components/FeaturedToolsList/FeaturedToolsList.js.map +1 -1
- package/dist/components/FilePreview/EntityPreview.js.map +1 -1
- package/dist/components/FilePreview/FileEntityPreview.js.map +1 -1
- package/dist/components/FilePreview/FileHandleContentRenderer.js.map +1 -1
- package/dist/components/FilePreview/HtmlPreview/HtmlPreview.js.map +1 -1
- package/dist/components/FilePreview/PdfPreview.js.map +1 -1
- package/dist/components/FilePreview/PreviewRendererType.js.map +1 -1
- package/dist/components/FilePreview/PreviewUtils.js.map +1 -1
- package/dist/components/FileUpload/FileUpload.js.map +1 -1
- package/dist/components/Forum/DiscussionReply.js.map +1 -1
- package/dist/components/Forum/DiscussionSearchResult.js.map +1 -1
- package/dist/components/Forum/DiscussionThread.js.map +1 -1
- package/dist/components/Forum/ForumPage.js.map +1 -1
- package/dist/components/Forum/ForumTable.js.map +1 -1
- package/dist/components/Forum/ForumThreadEditor.js.map +1 -1
- package/dist/components/Forum/SubscribersModal.js.map +1 -1
- package/dist/components/ForumSearch/ForumSearch.js.map +1 -1
- package/dist/components/FullTextSearch/FullTextSearch.js.map +1 -1
- package/dist/components/FullTextSearch/FullTextSearchUtils.js.map +1 -1
- package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
- package/dist/components/GenericCard/BioregistryRules.js.map +1 -1
- package/dist/components/GenericCard/CardUtils.js.map +1 -1
- package/dist/components/GenericCard/CollapsibleDescription.js.map +1 -1
- package/dist/components/GenericCard/CroissantButton/CroissantButton.js.map +1 -1
- package/dist/components/GenericCard/GenericCard.d.ts +2 -0
- package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/GenericCard.js +76 -64
- package/dist/components/GenericCard/GenericCard.js.map +1 -1
- package/dist/components/GenericCard/GenericCardActionButton.js.map +1 -1
- package/dist/components/GenericCard/GenericCardIcon.js.map +1 -1
- package/dist/components/GenericCard/GenericCardTitle.js.map +1 -1
- package/dist/components/GenericCard/LabelMaybeWithIcon.js.map +1 -1
- package/dist/components/GenericCard/Linkify.js.map +1 -1
- package/dist/components/GenericCard/PortalDOI/PortalDOI.js.map +1 -1
- package/dist/components/GenericCard/PortalDOI/PortalDOIUtils.js.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +33 -25
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/GenericCard/useResolvedSynapseEntity.js.map +1 -1
- package/dist/components/Goals/Goals.Desktop.js.map +1 -1
- package/dist/components/Goals/Goals.Mobile.js.map +1 -1
- package/dist/components/Goals/Goals.js +25 -27
- package/dist/components/Goals/Goals.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Mobile.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.js +14 -16
- package/dist/components/GoalsV2/GoalsV2.js.map +1 -1
- package/dist/components/GoalsV3/GoalsV3.Desktop.js.map +1 -1
- package/dist/components/GoalsV3/GoalsV3.Mobile.js.map +1 -1
- package/dist/components/GoalsV3/GoalsV3.js +14 -16
- package/dist/components/GoalsV3/GoalsV3.js.map +1 -1
- package/dist/components/GoogleAnalytics/GoogleAnalytics.js.map +1 -1
- package/dist/components/GoogleMap/GoogleMap.js.map +1 -1
- package/dist/components/GoogleMap/SynapseUserMarker.js.map +1 -1
- package/dist/components/HasAccess/AccessIcon.js +10 -10
- package/dist/components/HasAccess/AccessIcon.js.map +1 -1
- package/dist/components/HasAccess/HasAccessV2.js.map +1 -1
- package/dist/components/HasAccess/useHasAccess.js.map +1 -1
- package/dist/components/HeaderCard/HeaderCardV2.js.map +1 -1
- package/dist/components/HeaderCard.js.map +1 -1
- package/dist/components/HelpPopover/HelpPopover.js.map +1 -1
- package/dist/components/HexGrid/HexGrid.js.map +1 -1
- package/dist/components/IDUReport/IDUReport.js.map +1 -1
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js.map +1 -1
- package/dist/components/Icon/Icon.js.map +1 -1
- package/dist/components/IconList.js.map +1 -1
- package/dist/components/IconSvg/IconSvg.js.map +1 -1
- package/dist/components/IconSvgButton.js.map +1 -1
- package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js +7 -9
- package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js.map +1 -1
- package/dist/components/ImageFromSynapseTable.js.map +1 -1
- package/dist/components/InteractiveCopyIdsIcon.js.map +1 -1
- package/dist/components/JSONArrayEditor/JSONArrayEditor.js.map +1 -1
- package/dist/components/JSONArrayEditor/JSONArrayEditorModal.js.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
- package/dist/components/JsonLdScript.js.map +1 -1
- package/dist/components/JsonSchemaForm/JsonSchemaForm.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldDescriptionTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldItemButtonTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldItemTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldTitleTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/BaseInputTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ButtonTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/DescriptionFieldTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ErrorListTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/FieldDescriptionTable.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/FieldErrorTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/FieldTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/RJSFInputLabel.js.map +1 -1
- package/dist/components/JsonSchemaForm/widgets/BooleanWidget.js.map +1 -1
- package/dist/components/JsonSchemaForm/widgets/DateTimeWidget.js.map +1 -1
- package/dist/components/JsonSchemaForm/widgets/SelectWidget.js.map +1 -1
- package/dist/components/LoadingScreen/LoadingScreen.js.map +1 -1
- package/dist/components/MailchimpSubscribeSection/MailchimpSubscribeSection.js.map +1 -1
- package/dist/components/Markdown/GovernanceMarkdownGithub.js.map +1 -1
- package/dist/components/Markdown/MarkdownCollapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownEditor.js.map +1 -1
- package/dist/components/Markdown/MarkdownGithub.js.map +1 -1
- 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 +75 -106
- package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.d.ts +14 -4
- package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.js +38 -37
- package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
- package/dist/components/Markdown/MarkdownWidget.js.map +1 -1
- package/dist/components/Markdown/SynapseWikiContext.js.map +1 -1
- package/dist/components/Markdown/UserMentionModal.js.map +1 -1
- package/dist/components/Markdown/widget/Bookmarks.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownEntityPreview.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownIDUReport.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownProvenanceGraph.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownSynapseImage.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownSynapsePlot.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownSynapseTable.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownTableOfContents.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownUserOrTeamBadge.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownVideo.js.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
- package/dist/components/ModalDownload/ModalDownload.FormSchema.js.map +1 -1
- package/dist/components/ModalDownload/ModalDownload.js.map +1 -1
- package/dist/components/MuiContainer.js.map +1 -1
- package/dist/components/OAuthClientAclEditor/OAuthAclEditorModal.js.map +1 -1
- package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js.map +1 -1
- package/dist/components/OAuthClientManagement/CreateOAuthClient.js.map +1 -1
- package/dist/components/OAuthClientManagement/OAuthManagement.js.map +1 -1
- package/dist/components/OrientationBanner/OrientationBanner.js.map +1 -1
- package/dist/components/PageProgress/PageProgress.js.map +1 -1
- package/dist/components/Plot/BarPlot.js.map +1 -1
- package/dist/components/Plot/DotPlot.js.map +1 -1
- package/dist/components/Plot/Plot.d.ts +12 -1
- package/dist/components/Plot/Plot.d.ts.map +1 -1
- package/dist/components/Plot/Plot.js +5 -1
- package/dist/components/Plot/Plot.js.map +1 -1
- package/dist/components/Plot/PlotPanelHeader.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.js.map +1 -1
- package/dist/components/Plot/SynapseSankeyPlot.css +1 -0
- package/dist/components/Plot/SynapseSankeyPlot.d.ts +54 -0
- package/dist/components/Plot/SynapseSankeyPlot.d.ts.map +1 -0
- package/dist/components/Plot/SynapseSankeyPlot.js +359 -0
- package/dist/components/Plot/SynapseSankeyPlot.js.map +1 -0
- package/dist/components/Plot/SynapseSankeyPlot.module.js +15 -0
- package/dist/components/Plot/SynapseSankeyPlot.module.js.map +1 -0
- package/dist/components/Plot/SynapseSankeyPlot.module.scss +63 -0
- package/dist/components/Plot/ThemesPlot.js.map +1 -1
- package/dist/components/Plot/UpsetPlot.js.map +1 -1
- package/dist/components/Plot/index.d.ts +3 -1
- package/dist/components/Plot/index.d.ts.map +1 -1
- package/dist/components/Plot/index.js +2 -1
- package/dist/components/Plot/safe-react-plotly-factory.js.map +1 -1
- package/dist/components/PortalAclEditor/PortalAclEditor.js.map +1 -1
- package/dist/components/PortalAclEditor/PortalAclEditorModal.js.map +1 -1
- package/dist/components/PortalFeatureHighlights/PortalFeatureHighlights.js.map +1 -1
- package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js +4 -6
- package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js.map +1 -1
- package/dist/components/PortalHomePageHeader/PortalHomePageHeader.js.map +1 -1
- package/dist/components/PortalList/CreatePortalModal.js.map +1 -1
- package/dist/components/PortalList/PortalCard.js.map +1 -1
- package/dist/components/PortalList/PortalList.js.map +1 -1
- package/dist/components/PortalSectionHeader/PortalSectionHeader.js.map +1 -1
- package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js +69 -69
- package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js.map +1 -1
- package/dist/components/ProgrammaticTableDownload/ProgrammaticTableDownload.js.map +1 -1
- package/dist/components/Programs/Programs.Desktop.js.map +1 -1
- package/dist/components/Programs/Programs.Mobile.js.map +1 -1
- package/dist/components/Programs/Programs.js.map +1 -1
- package/dist/components/ProjectStorage/ProjectDataAvailability.js.map +1 -1
- package/dist/components/ProvenanceGraph/ActivityNodeLabel.js.map +1 -1
- package/dist/components/ProvenanceGraph/EntityNodeLabel.js.map +1 -1
- package/dist/components/ProvenanceGraph/EntityPlaceholderNodeLabel.js.map +1 -1
- package/dist/components/ProvenanceGraph/ExpandGraphNodeLabel.js.map +1 -1
- package/dist/components/ProvenanceGraph/ExternalGraphNodeLabel.js.map +1 -1
- package/dist/components/ProvenanceGraph/ProvenanceEntityIcon.js.map +1 -1
- package/dist/components/ProvenanceGraph/ProvenanceExternalIcon.js.map +1 -1
- package/dist/components/ProvenanceGraph/ProvenanceGraph.js.map +1 -1
- package/dist/components/ProvenanceGraph/ProvenanceGraphUtils.js.map +1 -1
- package/dist/components/ProvenanceGraph/ProvenanceUtils.js +13 -13
- package/dist/components/ProvenanceGraph/ProvenanceUtils.js.map +1 -1
- package/dist/components/ProvenanceGraph/UndefinedNodeLabel.js.map +1 -1
- package/dist/components/QueryContext/QueryContext.js.map +1 -1
- package/dist/components/QueryCount/QueryCount.js.map +1 -1
- package/dist/components/QueryCountButton/QueryCountButton.js.map +1 -1
- package/dist/components/QuerySortSelector.js.map +1 -1
- package/dist/components/QueryVisualizationWrapper/NoContentPlaceholder.js.map +1 -1
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationContext.js.map +1 -1
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js.map +1 -1
- package/dist/components/QueryWrapper/QueryWrapper.js +27 -27
- package/dist/components/QueryWrapper/QueryWrapper.js.map +1 -1
- package/dist/components/QueryWrapper/QueryWrapperLoadingScreen.js.map +1 -1
- package/dist/components/QueryWrapper/TableQueryUseQueryOptions.js.map +1 -1
- package/dist/components/QueryWrapper/TableRowSelectionState.js.map +1 -1
- package/dist/components/QueryWrapper/ViewMoreQueryResultsButton.js.map +1 -1
- package/dist/components/QueryWrapper/generateEncodedPathAndQueryForSelectedFacetURL.js.map +1 -1
- package/dist/components/QueryWrapper/useComputeRowSelectionPrimaryKey.js.map +1 -1
- package/dist/components/QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery.js.map +1 -1
- package/dist/components/QueryWrapper/useGetQueryMetadata.js.map +1 -1
- package/dist/components/QueryWrapper/useHasFacetedSelectColumn.js.map +1 -1
- package/dist/components/QueryWrapper/useOnQueryDataChange.js.map +1 -1
- package/dist/components/QueryWrapperErrorBoundary.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/LastUpdatedOn.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/RowSetView.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/UseRowSet.js.map +1 -1
- package/dist/components/RORInstitutionField/RORInstitutionField.js.map +1 -1
- package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js +6 -8
- package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js.map +1 -1
- package/dist/components/RegisterPageLogoutPrompt/RegisterPageLogoutPrompt.js.map +1 -1
- package/dist/components/ReleaseCard/ReleaseCard.js.map +1 -1
- package/dist/components/ReleaseCard/ReleaseCardLarge.js.map +1 -1
- package/dist/components/ReleaseCard/ReleaseCardMedium.js.map +1 -1
- package/dist/components/ReleaseCard/ReleaseCardUtils.js.map +1 -1
- package/dist/components/RenderIfInView/RenderIfInView.js.map +1 -1
- package/dist/components/ResizableContainer/ResizableContainer.js.map +1 -1
- package/dist/components/ResizableContainer/hooks/useResizable.js.map +1 -1
- package/dist/components/Resources/Resources.Desktop.js.map +1 -1
- package/dist/components/Resources/Resources.Mobile.js.map +1 -1
- package/dist/components/Resources/Resources.js +8 -11
- package/dist/components/Resources/Resources.js.map +1 -1
- package/dist/components/RowDataTable/RowDataTable.js.map +1 -1
- package/dist/components/RowDataTable/RowDataTableWithQuery.js.map +1 -1
- package/dist/components/RssFeedCards/RssFeedCards.js.map +1 -1
- package/dist/components/SageResourcesPopover/SageResourcesPopover.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/AnnotationEditorUtils.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/SchemaDrivenAnnotationEditor.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/field/AdditionalPropertiesSchemaField.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/field/SynapseAnnotationsRJSFObjectField.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/template/AdditionalPropertyContext.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/template/ObjectFieldTemplate.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/template/SynapseAnnotationsWrapIfAdditionalTemplate.js.map +1 -1
- package/dist/components/SchemaDrivenAnnotationEditor/widget/TextWidget.js.map +1 -1
- package/dist/components/SearchQueryWrapper/SearchQueryUseQueryOptions.d.ts +13 -12
- package/dist/components/SearchQueryWrapper/SearchQueryUseQueryOptions.d.ts.map +1 -1
- package/dist/components/SearchQueryWrapper/SearchQueryUseQueryOptions.js +88 -77
- package/dist/components/SearchQueryWrapper/SearchQueryUseQueryOptions.js.map +1 -1
- package/dist/components/SearchQueryWrapper/SearchQueryWrapper.js.map +1 -1
- package/dist/components/SearchQueryWrapperPlotNav/SearchQueryWrapperPlotNav.js.map +1 -1
- package/dist/components/SetAccessRequirementCommonFields/SetAccessRequirementCommonFields.js.map +1 -1
- package/dist/components/SetBasicAccessRequirementFields/AccessRequirementTextInstructions.js.map +1 -1
- package/dist/components/SetBasicAccessRequirementFields/AccessRequirementWikiInstructions.js.map +1 -1
- package/dist/components/SetBasicAccessRequirementFields/AccessorRequirements.js.map +1 -1
- package/dist/components/SetBasicAccessRequirementFields/GovernanceUtils.js.map +1 -1
- package/dist/components/SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.js.map +1 -1
- package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js.map +1 -1
- package/dist/components/ShareThisPage/ShareThisPage.js.map +1 -1
- package/dist/components/ShowMore/ShowMore.js.map +1 -1
- package/dist/components/SignInButton.js.map +1 -1
- package/dist/components/SignInRequiredModal/SignInRequiredModal.js.map +1 -1
- package/dist/components/Skeleton/SkeletonButton.js.map +1 -1
- package/dist/components/Skeleton/SkeletonInlineBlock.js.map +1 -1
- package/dist/components/Skeleton/SkeletonParagraph.js.map +1 -1
- package/dist/components/Skeleton/SkeletonTable.js.map +1 -1
- package/dist/components/SmartLink/SmartButton.js.map +1 -1
- package/dist/components/SmartLink/SmartLink.js.map +1 -1
- package/dist/components/SmartLink/useSmartLink.js.map +1 -1
- package/dist/components/SourceAppImage.js.map +1 -1
- package/dist/components/SpinnerButton/SpinnerButton.js.map +1 -1
- package/dist/components/SqlDefinedTableEditor/SqlDefinedTableEditor.js.map +1 -1
- package/dist/components/SqlDefinedTableEditor/SqlDefinedTableEditorModal.js.map +1 -1
- package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.js.map +1 -1
- package/dist/components/StatisticsPlot.js.map +1 -1
- package/dist/components/StepperDialog/StepperDialog.js.map +1 -1
- package/dist/components/StorybookComponentWrapper.js.map +1 -1
- package/dist/components/SubmissionViewScopeEditor/SubmissionViewScopeEditor.js.map +1 -1
- package/dist/components/SubmissionViewScopeEditor/SubmissionViewScopeEditorModal.js.map +1 -1
- package/dist/components/SubscriptionPage/ForumTopic.js.map +1 -1
- package/dist/components/SubscriptionPage/SubscriptionItem.js.map +1 -1
- package/dist/components/SubscriptionPage/SubscriptionPage.js.map +1 -1
- package/dist/components/SubscriptionPage/ThreadTopic.js.map +1 -1
- package/dist/components/SubscriptionPage/Topic.js.map +1 -1
- package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js.map +1 -1
- package/dist/components/SustainabilityScorecard/Dial.js.map +1 -1
- package/dist/components/SustainabilityScorecard/DialLayout.js.map +1 -1
- package/dist/components/SustainabilityScorecard/SustainabilityScorecard.js.map +1 -1
- package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js.map +1 -1
- package/dist/components/SustainabilityScorecard/SustainabilityScorecardUtils.js.map +1 -1
- package/dist/components/SynapseChat/AccessLevelMenu.js.map +1 -1
- package/dist/components/SynapseChat/GridAgentChat.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatDialog.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
- package/dist/components/SynapseChat/SynapsePortalChatDialog.js.map +1 -1
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
- package/dist/components/SynapseChat/useChatState.js.map +1 -1
- package/dist/components/SynapseFooter/SynapseFooter.js.map +1 -1
- package/dist/components/SynapseFooter/SynapseLinksColumn.js.map +1 -1
- package/dist/components/SynapseForm/DataDebug.js.map +1 -1
- package/dist/components/SynapseForm/Header.js.map +1 -1
- package/dist/components/SynapseForm/NavButtons.js.map +1 -1
- package/dist/components/SynapseForm/StepsSideNav.js.map +1 -1
- package/dist/components/SynapseForm/SummaryTable.js.map +1 -1
- package/dist/components/SynapseForm/SynapseForm.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormCheckboxWidget.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormCheckboxesWidget.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormRadioWidget.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormSubmissionGrid.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormUtils.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormWrapper.js.map +1 -1
- package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
- package/dist/components/SynapseForm/types.js.map +1 -1
- package/dist/components/SynapseForm/useGetFormPropsFromSearchParams.js.map +1 -1
- package/dist/components/SynapseHomepageV2/FloatingBlobsBackground.js.map +1 -1
- package/dist/components/SynapseHomepageV2/HomepageStyles.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseByTheNumbers.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseByTheNumbersItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseFeatureItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseFeaturedDatasetItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseFeaturedDatasets.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseFeatures.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js +18 -21
- package/dist/components/SynapseHomepageV2/SynapseHomepageChatSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageV2.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHotdrops.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHotdropsItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseInAction.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseInActionItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePartners.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePlan.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePlanContent.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePlans.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePlansPage.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseSearchChips.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseTrendingProjects.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseTrendingProjectsItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/WordPressNews.js.map +1 -1
- package/dist/components/SynapseHomepageV2/WordPressNewsItem.js.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +78 -78
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
- package/dist/components/SynapsePortalBanners/SynapsePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/HasAccessChip.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/HighlightedTypography.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanel.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchFacetPanel/SearchFacetPanelUtils.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchPage.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchPageResults.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchPageRouter.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/chipStyles.js.map +1 -1
- package/dist/components/SynapseTable/CustomControls/CustomControlButton.js.map +1 -1
- package/dist/components/SynapseTable/CustomControls/CustomControlPanel.js.map +1 -1
- package/dist/components/SynapseTable/CustomControls/CustomControls.js.map +1 -1
- package/dist/components/SynapseTable/EntityIDColumnCopyIcon.js.map +1 -1
- package/dist/components/SynapseTable/ExpandCollapseButton.js.map +1 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
- package/dist/components/SynapseTable/NoContentAvailable.js.map +1 -1
- package/dist/components/SynapseTable/NoContentPlaceholderType.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +4 -4
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionUI.js.map +1 -1
- package/dist/components/SynapseTable/SearchResultsNotFound.js.map +1 -1
- package/dist/components/SynapseTable/SearchV2.js.map +1 -1
- package/dist/components/SynapseTable/SqlEditor.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTable.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/EntityIdList.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/EvaluationIdRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/ComplexJSONRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONArrayRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONObjectRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONPrimitiveRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONRendererUtils.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/JSON/JSONTableCellRenderer.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/UserIdList.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableConstants.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableContext.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableRenderers.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableUtils.js.map +1 -1
- package/dist/components/SynapseTable/TableIsEmpty.js.map +1 -1
- package/dist/components/SynapseTable/TablePagination.js.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControls.d.ts.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControls.js +63 -74
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControls.js.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetEditorCheckboxCell.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetEditorUtils.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetEditorVersionCell.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +131 -133
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js.map +1 -1
- package/dist/components/SynapseTable/datasets/EntityFetchErrorCell.js.map +1 -1
- package/dist/components/SynapseTable/export/ADDiscoveryPortalInstructions.js.map +1 -1
- package/dist/components/SynapseTable/export/ExportToAnalysisPlatformDialog.js +48 -51
- package/dist/components/SynapseTable/export/ExportToAnalysisPlatformDialog.js.map +1 -1
- package/dist/components/SynapseTable/export/ExternalAnalysisPlatformInstructions.js.map +1 -1
- package/dist/components/SynapseTable/export/ExternalAnalysisPlatformsConstants.js.map +1 -1
- package/dist/components/SynapseTable/export/ExternalPlatformActionsRequiredPrecheck.js.map +1 -1
- package/dist/components/SynapseTable/export/ExternalPlatformDisclaimer.js.map +1 -1
- package/dist/components/SynapseTable/table-top/ColumnSelection.js.map +1 -1
- package/dist/components/SynapseTable/table-top/DownloadLoginModal.js.map +1 -1
- package/dist/components/SynapseTable/table-top/DownloadOptions.js.map +1 -1
- package/dist/components/SynapseTable/usePrefetchTableData.js.map +1 -1
- package/dist/components/SynapseTable/useTableSort.js.map +1 -1
- package/dist/components/SystemUseNotification/SystemUseNotification.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +72 -68
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/DefaultValueField.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/FieldWithRecommendedMinimum.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/MultiValueField.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ImportTableColumnsButton.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorTestUtils.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts +27 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.js +47 -36
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +10 -10
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormActions.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.d.ts +12 -12
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/BooleanSchema.d.ts +4 -1
- package/dist/components/TableColumnSchemaEditor/Validators/BooleanSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/BooleanSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.d.ts +167 -517
- package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.js +65 -65
- package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DatetimeSchema.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DatetimeSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DatetimeSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DefaultValueValidator.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DoubleSchema.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DoubleSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/DoubleSchema.js +6 -13
- package/dist/components/TableColumnSchemaEditor/Validators/DoubleSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/EntityIdSchema.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/EntityIdSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/EntityIdSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/EnumValuesValidator.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/IntegerSchema.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/IntegerSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/IntegerSchema.js +2 -2
- package/dist/components/TableColumnSchemaEditor/Validators/IntegerSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/OptionalStringSchema.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/OptionalStringSchema.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/OptionalStringSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/getZodSchemaForColumnType.d.ts +2 -2
- package/dist/components/TableColumnSchemaEditor/Validators/getZodSchemaForColumnType.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/getZodSchemaForColumnType.js +15 -16
- package/dist/components/TableColumnSchemaEditor/Validators/getZodSchemaForColumnType.js.map +1 -1
- package/dist/components/TableFeedCards/TableFeedCards.js.map +1 -1
- package/dist/components/TanStackTable/ColumnHeader.js.map +1 -1
- package/dist/components/TanStackTable/ColumnHeaderEnumFilter.js.map +1 -1
- package/dist/components/TanStackTable/StyledTanStackTable.js.map +1 -1
- package/dist/components/TanStackTable/StyledVirtualTanStackTable.js.map +1 -1
- package/dist/components/TanStackTable/TableBody.js.map +1 -1
- package/dist/components/TanStackTable/TableCellRenderer.js.map +1 -1
- package/dist/components/TanStackTable/TanStackTableUtils.js.map +1 -1
- package/dist/components/TeamBadge.js.map +1 -1
- package/dist/components/TeamSubjectsSelector/TeamBadgeOrError.js.map +1 -1
- package/dist/components/TeamSubjectsSelector/TeamSubjectsSelector.js.map +1 -1
- package/dist/components/TemplateComponent.js.map +1 -1
- package/dist/components/TemporaryBanner/TemporaryBanner.js.map +1 -1
- package/dist/components/TermsAndConditions/TermsAndConditions.js.map +1 -1
- package/dist/components/TermsAndConditions/TermsAndConditionsItem.js.map +1 -1
- package/dist/components/TextField/TextField.js.map +1 -1
- package/dist/components/TextField/TextFieldWithWordLimit.js.map +1 -1
- package/dist/components/TextToComponentCollapse.js.map +1 -1
- package/dist/components/ThemeGallery/ThemeGallery.js.map +1 -1
- package/dist/components/TimelinePlot/TimelineLegendItem.js.map +1 -1
- package/dist/components/TimelinePlot/TimelinePhase.js.map +1 -1
- package/dist/components/TimelinePlot/TimelinePlot.js.map +1 -1
- package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js.map +1 -1
- package/dist/components/TimelinePlot/phasesQueryResponseData.js.map +1 -1
- package/dist/components/ToastMessage/ToastMessage.js.map +1 -1
- package/dist/components/TotalQueryResults.js.map +1 -1
- package/dist/components/UserCard/Avatar.js.map +1 -1
- package/dist/components/UserCard/UserBadge.js.map +1 -1
- package/dist/components/UserCard/UserCard.js.map +1 -1
- package/dist/components/UserCard/UserCardContextMenu.js.map +1 -1
- package/dist/components/UserCard/UserCardLarge.js.map +1 -1
- package/dist/components/UserCard/UserCardMedium.js.map +1 -1
- package/dist/components/UserCardList/UserCardList.js.map +1 -1
- package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Desktop.js.map +1 -1
- package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Mobile.js.map +1 -1
- package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.js.map +1 -1
- package/dist/components/UserCardList/UserCardListRotate.js.map +1 -1
- package/dist/components/UserOrTeamBadge/UserOrTeamBadge.js.map +1 -1
- package/dist/components/UserOrTeamBadge/useUserOrTeam.js.map +1 -1
- package/dist/components/UserProfileLinks/UserChallenges.js.map +1 -1
- package/dist/components/UserProfileLinks/UserProfileLinks.js.map +1 -1
- package/dist/components/UserProfileLinks/UserProjects.js.map +1 -1
- package/dist/components/UserProfileLinks/UserTeams.js.map +1 -1
- package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -1
- package/dist/components/Webhook/CreateWebhookModal.js.map +1 -1
- package/dist/components/Webhook/WebhookDashboard.js.map +1 -1
- package/dist/components/Webhook/WebhookVerificationDialog.js.map +1 -1
- package/dist/components/WikiMarkdownEditor/WikiMarkdownEditor.js.map +1 -1
- package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js.map +1 -1
- package/dist/components/WizardChoiceButton/WizardChoiceButton.js.map +1 -1
- package/dist/components/WizardChoiceButton/WizardChoiceButtonDescription.js.map +1 -1
- package/dist/components/WizardChoiceButton/WizardChoiceButtonGroup.js.map +1 -1
- package/dist/components/WordPress/WordPressLatestPostChip.js.map +1 -1
- package/dist/components/WordPress/useWordPressCategories.js.map +1 -1
- package/dist/components/WordPress/useWordPressPosts.js.map +1 -1
- package/dist/components/dataaccess/AccessApprovalsTable.js.map +1 -1
- package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessRequestSubmissionTable.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementSearchBox/AccessRequirementSearchBox.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementTable.js.map +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
- package/dist/components/dataaccess/RejectDataAccessRequestModal.js.map +1 -1
- package/dist/components/dataaccess/RejectProfileValidationRequestModal.js.map +1 -1
- package/dist/components/dataaccess/ReviewerDashboard.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/ApproveSubmissionConfirmationModal.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/CancelDataAccessRequestConfirmationModal.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js.map +1 -1
- package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
- package/dist/components/dataaccess/UserAccessRequestHistory/SubmissionSortStateTranslator.js.map +1 -1
- package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryPage.js.map +1 -1
- package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryPlace.js.map +1 -1
- package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryTable.js.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.js.map +1 -1
- package/dist/components/doi/DoiFormSchemas.js.map +1 -1
- package/dist/components/doi/PrivateEntityDoiWarning.js.map +1 -1
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUI.js +30 -32
- package/dist/components/download_list/DownloadConfirmationUI.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUtils.js.map +1 -1
- package/dist/components/download_list/DownloadDetails.js.map +1 -1
- package/dist/components/download_list/index.js.map +1 -1
- package/dist/components/entity/metadata/AnnotationsTable.js.map +1 -1
- package/dist/components/entity/metadata/EntityAnnotationKey.js.map +1 -1
- package/dist/components/entity/metadata/EntityModal.js.map +1 -1
- package/dist/components/entity/metadata/MetadataTable.js.map +1 -1
- package/dist/components/entity/page/CreatedByModifiedBy.js.map +1 -1
- package/dist/components/entity/page/action_menu/EntityActionMenu.js.map +1 -1
- package/dist/components/entity/page/breadcrumbs/EntityPageBreadcrumbs.js.map +1 -1
- package/dist/components/entity/page/title_bar/CitationsDialog.js.map +1 -1
- package/dist/components/entity/page/title_bar/EntityPageTitleBar.js.map +1 -1
- package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js.map +1 -1
- package/dist/components/entity/page/title_bar/TitleBarProperties.js.map +1 -1
- package/dist/components/entity/page/title_bar/useDataCiteUsage.js.map +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
- package/dist/components/entity/page/title_bar/useGetMentions.js.map +1 -1
- package/dist/components/error/ErrorBanner.js.map +1 -1
- package/dist/components/error/ErrorChip.js.map +1 -1
- package/dist/components/error/ErrorPage.js +24 -24
- package/dist/components/error/ErrorPage.js.map +1 -1
- package/dist/components/error/RouteErrorBoundary.js.map +1 -1
- package/dist/components/error/SendMessageToEntityOwnerDialog.js.map +1 -1
- package/dist/components/error/SynapseObjectDOIInfo.js.map +1 -1
- package/dist/components/favorites/FavoriteButton.js.map +1 -1
- package/dist/components/favorites/FavoritesPage.js.map +1 -1
- package/dist/components/file/upload/BasicFileHandleUpload.js.map +1 -1
- package/dist/components/file/upload/MultiFileUploadProgress.js.map +1 -1
- package/dist/components/file/upload/UploadFilePanel.js.map +1 -1
- package/dist/components/form/RadioGroupWithOtherString.js.map +1 -1
- package/dist/components/home_page/ExpandableContent.js.map +1 -1
- package/dist/components/index.js +48 -47
- package/dist/components/layout/InfiniteTableLayout.js.map +1 -1
- package/dist/components/layout/SWCHeader.js.map +1 -1
- package/dist/components/layout/SWCPageLayout.js.map +1 -1
- package/dist/components/menu/ComplexMenu.js.map +1 -1
- package/dist/components/menu/DropdownMenu.js.map +1 -1
- package/dist/components/row_renderers/Dataset.js.map +1 -1
- package/dist/components/row_renderers/Funder.js.map +1 -1
- package/dist/components/row_renderers/ObservationCard.js.map +1 -1
- package/dist/components/row_renderers/utils/CardFooter.js.map +1 -1
- package/dist/components/row_renderers/utils/ChipContainer.js.map +1 -1
- package/dist/components/styled/HoverPopover.js.map +1 -1
- package/dist/components/styled/InlineBadge.js.map +1 -1
- package/dist/components/styled/InputSizedButton.js.map +1 -1
- package/dist/components/styled/LargeButton.js.map +1 -1
- package/dist/components/styled/LeftRightPanel.js.map +1 -1
- package/dist/components/styled/LightTooltip.js.map +1 -1
- package/dist/components/styled/StyledFormControl.js.map +1 -1
- package/dist/components/styled/StyledPopover.js.map +1 -1
- package/dist/components/styled/StyledTableContainer.js.map +1 -1
- package/dist/components/styled/WideButton.js.map +1 -1
- package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.js +39 -42
- package/dist/components/table/CsvPreview/CreateTableFromCsvDialog.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewWithOptions.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvUploadPreviewContent.js.map +1 -1
- package/dist/components/table/CsvPreview/UpdateTableWithCsvDialog.js.map +1 -1
- package/dist/components/table/CsvPreview/useCreateTableFromCsv.js.map +1 -1
- package/dist/components/table/CsvPreview/useCsvUploadPreview.js +11 -11
- package/dist/components/table/CsvPreview/useCsvUploadPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/useUploadCsvToExistingTable.js.map +1 -1
- package/dist/components/table/CsvTableDescriptorForm/CsvTableDescriptorForm.js.map +1 -1
- package/dist/components/trash/TrashCanList.js.map +1 -1
- package/dist/components/utils/Blocker.js.map +1 -1
- package/dist/components/utils/ConditionalWrapper.js.map +1 -1
- package/dist/components/utils/VisibilityObserver.js.map +1 -1
- package/dist/components/widgets/ElementWithTooltip.js.map +1 -1
- package/dist/components/widgets/EntityColumnImage.js.map +1 -1
- package/dist/components/widgets/FileHandleLink.js.map +1 -1
- package/dist/components/widgets/ImageFileHandle.js.map +1 -1
- package/dist/components/widgets/LoginAwareButton.js.map +1 -1
- package/dist/components/widgets/Range.js.map +1 -1
- package/dist/components/widgets/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/components/widgets/SynapseImage.js.map +1 -1
- package/dist/components/widgets/SynapseVideo.js.map +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
- package/dist/components/widgets/facet-nav/FacetPlotLegendList.js.map +1 -1
- package/dist/components/widgets/facet-nav/FacetPlotLegendTable.js.map +1 -1
- package/dist/components/widgets/facet-nav/FacetPlotLegendUtils.js.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainerSkeleton.js.map +1 -1
- package/dist/components/widgets/facet-nav/SelectionCriteriaPill.js.map +1 -1
- package/dist/components/widgets/facet-nav/SelectionCriteriaPills.js.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
- package/dist/components/widgets/query-filter/CombinedRangeFacetFilter.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilter.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterDropdown.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterOption.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterSkeleton.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterUI.js.map +1 -1
- package/dist/components/widgets/query-filter/EnumFacetFilter/EnumFacetFilterUtils.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetChip.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterControls.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterHeader.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterSkeleton.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterUtils.js.map +1 -1
- package/dist/components/widgets/query-filter/JsonColumnFacetFilters.js.map +1 -1
- package/dist/components/widgets/query-filter/RangeFacetFilter.js +3 -3
- package/dist/components/widgets/query-filter/RangeFacetFilter.js.map +1 -1
- package/dist/components/widgets/query-filter/RangeFacetFilterUI.js +41 -41
- package/dist/components/widgets/query-filter/RangeFacetFilterUI.js.map +1 -1
- package/dist/features/curator/GridPage/GridPage.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageRouter.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
- package/dist/features/curator/GridPage/components/UpdateGridPageSearchParamsForm.js.map +1 -1
- package/dist/features/curator/dashboard/CuratorDashboard.js.map +1 -1
- package/dist/features/curator/dashboard/components/CurationTaskCard.js.map +1 -1
- package/dist/features/curator/dashboard/components/NextStepButton.js.map +1 -1
- package/dist/features/curator/dashboard/components/UserOrTeamChip.js.map +1 -1
- package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.d.ts +5 -0
- package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.js +227 -181
- package/dist/features/entity/metadata-task/components/CreateOrUpdateCurationTaskDialog.js.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js +3 -0
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTasksPage.js.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTasksTableAssigneeCell.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useGetOrCreateGridSessionForSource.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useGridSessionForCurationTask_legacy.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js.map +1 -1
- package/dist/features/entity/metadata-task/utils/constants.d.ts +5 -0
- package/dist/features/entity/metadata-task/utils/constants.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/utils/constants.js +2 -2
- package/dist/features/entity/metadata-task/utils/constants.js.map +1 -1
- package/dist/features/entity/metadata-task/utils/getCreateGridRequestForMetadataTask.js.map +1 -1
- package/dist/features/entity/metadata-task/utils/getGridSourceIdForTask.js.map +1 -1
- package/dist/features/entity/metadata-task/utils/getLatestGridSessionForSource.js.map +1 -1
- package/dist/features/entity/metadata-task/utils/taskHasAssignee.js.map +1 -1
- package/dist/features/team/invitation/components/OpenInvitationsToUserCard.js.map +1 -1
- package/dist/index.js +54 -53
- package/dist/index.js.map +1 -1
- package/dist/mocks/MockAccessApprovals.js.map +1 -1
- package/dist/mocks/MockSynapseContext.js.map +1 -1
- package/dist/mocks/accessRequirement/mockAccessRequirementAcls.js.map +1 -1
- package/dist/mocks/accessRequirement/mockAccessRequirements.js.map +1 -1
- package/dist/mocks/applicationSessionContext/MockApplicationSessionContext.js.map +1 -1
- package/dist/mocks/challenge/mockChallenge.js.map +1 -1
- package/dist/mocks/chat/mockChat.js.map +1 -1
- package/dist/mocks/curation/mockCurationTask.js.map +1 -1
- package/dist/mocks/dataaccess/MockDataAccessRequest.js.map +1 -1
- package/dist/mocks/dataaccess/MockResearchProject.js.map +1 -1
- package/dist/mocks/dataaccess/MockSubmission.js.map +1 -1
- package/dist/mocks/dataaccess/mockAccessRequest.js.map +1 -1
- package/dist/mocks/discussion/mock_discussion.js.map +1 -1
- package/dist/mocks/doi/MockDoi.js.map +1 -1
- package/dist/mocks/entity/index.js.map +1 -1
- package/dist/mocks/entity/mockDataset.js.map +1 -1
- package/dist/mocks/entity/mockDatasetCollection.js.map +1 -1
- package/dist/mocks/entity/mockEntity.js.map +1 -1
- package/dist/mocks/entity/mockEvaluationQueue.js.map +1 -1
- package/dist/mocks/entity/mockFileEntity.js.map +1 -1
- package/dist/mocks/entity/mockFileEntityACLVariants.js.map +1 -1
- package/dist/mocks/entity/mockFileView.js.map +1 -1
- package/dist/mocks/entity/mockGeneratedEntityData.js.map +1 -1
- package/dist/mocks/entity/mockProject.js.map +1 -1
- package/dist/mocks/entity/mockProjectView.js.map +1 -1
- package/dist/mocks/entity/mockReleaseCardsTable.js.map +1 -1
- package/dist/mocks/entity/mockRootEntity.js.map +1 -1
- package/dist/mocks/entity/mockTableEntity.js.map +1 -1
- package/dist/mocks/faker/fakerUtils.js.map +1 -1
- package/dist/mocks/faker/generateDiscussion.js.map +1 -1
- package/dist/mocks/faker/generateEvaluation.js.map +1 -1
- package/dist/mocks/faker/generateFakeEntity.js.map +1 -1
- package/dist/mocks/faker/generateSubscription.js.map +1 -1
- package/dist/mocks/mockAnnotationColumns.js.map +1 -1
- package/dist/mocks/mockCertificationQuiz.js.map +1 -1
- package/dist/mocks/mockDataCatalogQuery.js.map +1 -1
- package/dist/mocks/mockFileViewQuery.js.map +1 -1
- package/dist/mocks/mockOAuthClientAcls.js.map +1 -1
- package/dist/mocks/mockQueryResponseData.js.map +1 -1
- package/dist/mocks/mockQueryResponseDataWithManyEnumFacets.js.map +1 -1
- package/dist/mocks/mockSchema.js.map +1 -1
- package/dist/mocks/mockSearchQueryData.js +2 -2
- package/dist/mocks/mockSearchQueryData.js.map +1 -1
- package/dist/mocks/mockShortIo.js.map +1 -1
- package/dist/mocks/mockSourceAppConfigQuery.js.map +1 -1
- package/dist/mocks/mockSubscription.js.map +1 -1
- package/dist/mocks/mockWiki.js.map +1 -1
- package/dist/mocks/mockWikiPageKey.js.map +1 -1
- package/dist/mocks/mock_drug_tool_data.js.map +1 -1
- package/dist/mocks/mock_file_handle.js.map +1 -1
- package/dist/mocks/mock_file_statistics.js.map +1 -1
- package/dist/mocks/mock_has_access_data.js.map +1 -1
- package/dist/mocks/mock_upload_destination.js.map +1 -1
- package/dist/mocks/msw/handlers/accessRequirementAclHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/accessRequirementHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/asyncJobHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/authHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/challengeHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/changePasswordHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/chatHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/dataAccessRequestHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/dataciteHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/discussionHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/doiHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/entityHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/evaluationHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/featureFlagHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/fileHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/gridHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/messageHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/oauthClientAclHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/personalAccessTokenHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/projectStorageHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/realmHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/researchProjectHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/resetTwoFactorAuthHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/schemaHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/searchQueryHandlers.d.ts +1 -1
- package/dist/mocks/msw/handlers/searchQueryHandlers.d.ts.map +1 -1
- package/dist/mocks/msw/handlers/searchQueryHandlers.js +6 -3
- package/dist/mocks/msw/handlers/searchQueryHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/shortIoHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/subscriptionHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/tableQueryHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/tableQueryService.js.map +1 -1
- package/dist/mocks/msw/handlers/teamHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/termsOfServiceHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/userProfileHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/webhookHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/wikiHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers.js.map +1 -1
- package/dist/mocks/msw/server.d.ts +1 -1
- package/dist/mocks/msw/server.d.ts.map +1 -1
- package/dist/mocks/msw/server.js.map +1 -1
- package/dist/mocks/msw/util/BasicMockedCrudService.js.map +1 -1
- package/dist/mocks/oauth/MockClient.js.map +1 -1
- package/dist/mocks/personalAccessToken/mockPersonalAccessToken.js.map +1 -1
- package/dist/mocks/projectStorage/mockProjectStorageLimits.js.map +1 -1
- package/dist/mocks/provenance/mockActivity.js.map +1 -1
- package/dist/mocks/query/defaultFileViewColumnModels.js.map +1 -1
- package/dist/mocks/query/mockFeaturedDataTabsQueryData.js.map +1 -1
- package/dist/mocks/query/mockHomepageQueryResultData.js.map +1 -1
- package/dist/mocks/query/mockProjectViewQueryResults.js.map +1 -1
- package/dist/mocks/query/mockRejectionReasonsTableQueryResultBundle.js.map +1 -1
- package/dist/mocks/query/mockReleaseCardsTableQueryResultBundle.js.map +1 -1
- package/dist/mocks/query/mockUserCardTableQueryResultBundle.d.ts +13 -0
- package/dist/mocks/query/mockUserCardTableQueryResultBundle.d.ts.map +1 -1
- package/dist/mocks/query/mockUserCardTableQueryResultBundle.js +27 -0
- package/dist/mocks/query/mockUserCardTableQueryResultBundle.js.map +1 -1
- package/dist/mocks/query/mock_query_data.js.map +1 -1
- package/dist/mocks/query/syn16787123.js.map +1 -1
- package/dist/mocks/query/syn17328596.js.map +1 -1
- package/dist/mocks/query/syn51735464.js.map +1 -1
- package/dist/mocks/query/syn51735464GroupBySpecies.js.map +1 -1
- package/dist/mocks/realm/mockRealmPrincipal.js.map +1 -1
- package/dist/mocks/team/mockTeam.js.map +1 -1
- package/dist/mocks/termsOfService/mockTermsOfService.js.map +1 -1
- package/dist/mocks/user/mock_user_profile.js.map +1 -1
- package/dist/mocks/usergroup/mockUserGroup.js.map +1 -1
- package/dist/ror-client/index.js.map +1 -1
- package/dist/stories/ColorPaletteInspector.js.map +1 -1
- package/dist/stories/ToastDemo.js.map +1 -1
- package/dist/stories/stubs/Alert/MuiAlert.js.map +1 -1
- package/dist/stories/stubs/Button/MuiButton.js.map +1 -1
- package/dist/stories/stubs/Dialog/MuiDialog.js.map +1 -1
- package/dist/stories/stubs/TextField/MuiTextField.js.map +1 -1
- package/dist/stories/stubs/Tooltip/MuiTooltip.js.map +1 -1
- package/dist/style/components/_cards.scss +10 -0
- package/dist/style/components/_data-grid-extra.css +1 -1
- package/dist/style/components/_data-grid-extra.scss +7 -1
- package/dist/style/main.css +1 -1
- package/dist/synapse-client/HttpClient.js.map +1 -1
- package/dist/synapse-client/SynapseClient.d.ts.map +1 -1
- package/dist/synapse-client/SynapseClient.js +499 -505
- package/dist/synapse-client/SynapseClient.js.map +1 -1
- package/dist/synapse-client/SynapseClientUtils.js.map +1 -1
- package/dist/synapse-queries/InfiniteQueryUtils.js.map +1 -1
- package/dist/synapse-queries/KeyFactory.js.map +1 -1
- package/dist/synapse-queries/QueryFilterUtils.js.map +1 -1
- package/dist/synapse-queries/QueryMatching.test-utils.js.map +1 -1
- package/dist/synapse-queries/asynchronous/usePollAsynchronousJob.js.map +1 -1
- package/dist/synapse-queries/auth/useChangePassword.js.map +1 -1
- package/dist/synapse-queries/auth/useOIDC.js.map +1 -1
- package/dist/synapse-queries/auth/useResetPassword.js.map +1 -1
- package/dist/synapse-queries/auth/useTwoFactorEnrollment.js.map +1 -1
- package/dist/synapse-queries/challenge/useChallenge.js.map +1 -1
- package/dist/synapse-queries/chat/useChat.js.map +1 -1
- package/dist/synapse-queries/croissant/useGetCroissantUrl.js.map +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.d.ts +1 -0
- package/dist/synapse-queries/curation/task/useCurationTask.d.ts.map +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.js +12 -2
- package/dist/synapse-queries/curation/task/useCurationTask.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useAccessApprovals.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useAccessRequirements.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useDataAccessSubmission.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useGetApprovedSubmissionInfo.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useRestrictionInformation.js.map +1 -1
- package/dist/synapse-queries/docker/useGetDockerTag.js.map +1 -1
- package/dist/synapse-queries/doi/useDOI.js.map +1 -1
- package/dist/synapse-queries/download/useDownloadList.js.map +1 -1
- package/dist/synapse-queries/entity/useActionsRequiredForTableQuery.js.map +1 -1
- package/dist/synapse-queries/entity/useEntity.js.map +1 -1
- package/dist/synapse-queries/entity/useEntityBoundSchema.js.map +1 -1
- package/dist/synapse-queries/entity/useEntityBundle.js.map +1 -1
- package/dist/synapse-queries/entity/useExportTableQueryToAnalysisPlatform.js.map +1 -1
- package/dist/synapse-queries/entity/useExportToADWorkbench.js.map +1 -1
- package/dist/synapse-queries/entity/useExportToCavatica.js.map +1 -1
- package/dist/synapse-queries/entity/useExportToPluto.js.map +1 -1
- package/dist/synapse-queries/entity/useExportToTerra.js.map +1 -1
- package/dist/synapse-queries/entity/useGetEntityActionsRequired.js.map +1 -1
- package/dist/synapse-queries/entity/useGetEntityChallenge.js.map +1 -1
- package/dist/synapse-queries/entity/useGetEntityChildren.js.map +1 -1
- package/dist/synapse-queries/entity/useGetEntityForum.js.map +1 -1
- package/dist/synapse-queries/entity/useGetEntityHeaders.js.map +1 -1
- package/dist/synapse-queries/entity/useGetQueryResultBundle.js.map +1 -1
- package/dist/synapse-queries/entity/useProjectStorage.js.map +1 -1
- package/dist/synapse-queries/entity/useSchema.js.map +1 -1
- package/dist/synapse-queries/evaluation/useEvaluation.js.map +1 -1
- package/dist/synapse-queries/featureflags/useGetFeatureFlag.js.map +1 -1
- package/dist/synapse-queries/file/UploadToS3.js.map +1 -1
- package/dist/synapse-queries/file/useDirectUploadToS3.js.map +1 -1
- package/dist/synapse-queries/file/useFileHandle.js.map +1 -1
- package/dist/synapse-queries/file/useFiles.js.map +1 -1
- package/dist/synapse-queries/file/useSynapseMultipartUpload.js.map +1 -1
- package/dist/synapse-queries/file/useUploadDestination.js.map +1 -1
- package/dist/synapse-queries/forum/useForum.js.map +1 -1
- package/dist/synapse-queries/forum/useReply.js.map +1 -1
- package/dist/synapse-queries/forum/useThread.js.map +1 -1
- package/dist/synapse-queries/github/useGithub.js.map +1 -1
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js.map +1 -1
- package/dist/synapse-queries/grid/useExportGrid.js.map +1 -1
- package/dist/synapse-queries/grid/useGridPresignedUrl.js.map +1 -1
- package/dist/synapse-queries/grid/useGridSession.js.map +1 -1
- package/dist/synapse-queries/grid/useImportCsvIntoGrid.js.map +1 -1
- package/dist/synapse-queries/message/useMessage.js.map +1 -1
- package/dist/synapse-queries/oauth/useOAuthClient.js.map +1 -1
- package/dist/synapse-queries/portal/useListPortals.js.map +1 -1
- package/dist/synapse-queries/portal/usePortal.js.map +1 -1
- package/dist/synapse-queries/provenance/useGetActivityForEntity.js.map +1 -1
- package/dist/synapse-queries/realm/useRealmPrincipals.js.map +1 -1
- package/dist/synapse-queries/ror/index.js.map +1 -1
- package/dist/synapse-queries/search/useSearch.js.map +1 -1
- package/dist/synapse-queries/search/useSuggestion.js.map +1 -1
- package/dist/synapse-queries/subscription/useSubscription.js.map +1 -1
- package/dist/synapse-queries/table/useColumnModel.js.map +1 -1
- package/dist/synapse-queries/table/useDefiningSql.js.map +1 -1
- package/dist/synapse-queries/table/useDownloadTable.js.map +1 -1
- package/dist/synapse-queries/table/useGetCsvPreview.js.map +1 -1
- package/dist/synapse-queries/table/useTableUpdateTransaction.js.map +1 -1
- package/dist/synapse-queries/team/useTeam.js.map +1 -1
- package/dist/synapse-queries/team/useTeamList.js.map +1 -1
- package/dist/synapse-queries/team/useTeamMembers.js.map +1 -1
- package/dist/synapse-queries/termsOfService/useTermsOfService.js.map +1 -1
- package/dist/synapse-queries/trash/useTrashCan.js.map +1 -1
- package/dist/synapse-queries/user/useCertificationQuiz.js.map +1 -1
- package/dist/synapse-queries/user/useFavorites.js.map +1 -1
- package/dist/synapse-queries/user/useGetUserChallenges.js.map +1 -1
- package/dist/synapse-queries/user/useGetUserProjects.js.map +1 -1
- package/dist/synapse-queries/user/useGetUserTeams.js.map +1 -1
- package/dist/synapse-queries/user/usePersonalAccessToken.js.map +1 -1
- package/dist/synapse-queries/user/useProjects.js.map +1 -1
- package/dist/synapse-queries/user/useRevokeCertification.js.map +1 -1
- package/dist/synapse-queries/user/useUserBundle.js.map +1 -1
- package/dist/synapse-queries/user/useUserGroupHeader.js.map +1 -1
- package/dist/synapse-queries/verificationSubmission/useVerificationSubmission.js.map +1 -1
- package/dist/synapse-queries/webhook/useWebhook.js.map +1 -1
- package/dist/synapse-queries/wiki/useWiki.js.map +1 -1
- package/dist/testutils/ComponentToBePassedPropsCustomMatcher.js.map +1 -1
- package/dist/testutils/IsEditingStoreTestUtils.js +17 -0
- package/dist/testutils/IsEditingStoreTestUtils.js.map +1 -0
- package/dist/testutils/LocationTracker.js.map +1 -1
- package/dist/testutils/MarkdownSynapseUtils.js.map +1 -1
- package/dist/testutils/ReactQueryMockUtils.js.map +1 -1
- package/dist/testutils/TestingLibraryUtils.js +18 -16
- package/dist/testutils/TestingLibraryUtils.js.map +1 -1
- package/dist/testutils/muiDatePickerMock.js.map +1 -1
- package/dist/testutils/vitest.setup.js.map +1 -1
- package/dist/theme/DefaultTheme.js.map +1 -1
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/theme/mergeTheme.js.map +1 -1
- package/dist/theme/palette/Palettes.js.map +1 -1
- package/dist/theme/spreadSx.js.map +1 -1
- package/dist/theme/typography/Link.js.map +1 -1
- package/dist/theme/typography/Typography.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/APIConstants.js.map +1 -1
- package/dist/utils/AppUtils/AppUtils.d.ts.map +1 -1
- package/dist/utils/AppUtils/AppUtils.js +11 -11
- package/dist/utils/AppUtils/AppUtils.js.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionContext.js.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.js.map +1 -1
- package/dist/utils/AppUtils/session/AuthenticationGuard.js.map +1 -1
- package/dist/utils/AppUtils/session/SessionInitializedGuard.js.map +1 -1
- package/dist/utils/AppUtils/session/SynapseSessionManager.js.map +1 -1
- package/dist/utils/AppUtils/session/useSessionManager.js.map +1 -1
- package/dist/utils/ContentTypeUtils.js.map +1 -1
- package/dist/utils/OrientationBannerConstants.js.map +1 -1
- package/dist/utils/PermissionLevelToAccessType.js.map +1 -1
- package/dist/utils/SynapseConstants.js.map +1 -1
- package/dist/utils/analytics/sendAnalyticsEvent.js.map +1 -1
- package/dist/utils/analytics/sendSearchEvent.js.map +1 -1
- package/dist/utils/analytics/useGoogleAnalytics.js.map +1 -1
- package/dist/utils/appendFinalQueryParamKey.js.map +1 -1
- package/dist/utils/challenge/evaluation/EvaluationUtils.js.map +1 -1
- package/dist/utils/context/AridhiaContext.js.map +1 -1
- package/dist/utils/context/DocumentMetadataContext.js.map +1 -1
- package/dist/utils/context/FullContextProvider.js.map +1 -1
- package/dist/utils/context/GlobalIsEditingContext.js.map +1 -1
- package/dist/utils/context/SynapseContext.js.map +1 -1
- package/dist/utils/featureflag/FeatureFlags.js.map +1 -1
- package/dist/utils/functions/AccessControlListUtils.js.map +1 -1
- package/dist/utils/functions/ArrayUtils.js.map +1 -1
- package/dist/utils/functions/DateFormatter.js.map +1 -1
- package/dist/utils/functions/DateTimeUtils.js.map +1 -1
- package/dist/utils/functions/EntityTypeUtils.js.map +1 -1
- package/dist/utils/functions/FileHandleUtils.js.map +1 -1
- package/dist/utils/functions/GridApiUtils.js.map +1 -1
- package/dist/utils/functions/IsEqualTreatUndefinedAsMissing.js.map +1 -1
- package/dist/utils/functions/IsExternalLink.js.map +1 -1
- package/dist/utils/functions/ObjectUtils.js.map +1 -1
- package/dist/utils/functions/QueryFilterUtils.js.map +1 -1
- package/dist/utils/functions/RealmUtils.js.map +1 -1
- package/dist/utils/functions/RegularExpressions.js.map +1 -1
- package/dist/utils/functions/ResolveLinkEntity.js.map +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.test-utils.js.map +1 -1
- package/dist/utils/functions/SqlFunctions.js.map +1 -1
- package/dist/utils/functions/StringUtils.js.map +1 -1
- package/dist/utils/functions/TableColumnSchemaUtils.js.map +1 -1
- package/dist/utils/functions/calculateFriendlyFileSize.js.map +1 -1
- package/dist/utils/functions/colorPalette.js.map +1 -1
- package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
- package/dist/utils/functions/dispatchDownloadListChangeEvent.js.map +1 -1
- package/dist/utils/functions/generateCsrfToken.js.map +1 -1
- package/dist/utils/functions/getDataFromFromStorage.js.map +1 -1
- package/dist/utils/functions/getEndpoint.js +3 -3
- package/dist/utils/functions/getEndpoint.js.map +1 -1
- package/dist/utils/functions/getPrincipalDisplayName.js.map +1 -1
- package/dist/utils/functions/getSynapseEntityUrl.js.map +1 -1
- package/dist/utils/functions/getSynapseWebClientLink.js.map +1 -1
- package/dist/utils/functions/getUserData.js.map +1 -1
- package/dist/utils/functions/queryUtils.js.map +1 -1
- package/dist/utils/functions/testDownloadSpeed.js.map +1 -1
- package/dist/utils/functions/unCamelCase.js.map +1 -1
- package/dist/utils/hooks/useConfirmItems.js.map +1 -1
- package/dist/utils/hooks/useCookiePreferences.d.ts.map +1 -1
- package/dist/utils/hooks/useCookiePreferences.js +24 -23
- package/dist/utils/hooks/useCookiePreferences.js.map +1 -1
- package/dist/utils/hooks/useCreateShortUrl.js.map +1 -1
- package/dist/utils/hooks/useDebouncedEffect.js.map +1 -1
- package/dist/utils/hooks/useDetectSSOCode.js.map +1 -1
- package/dist/utils/hooks/useDirectDownloadHandler.js.map +1 -1
- package/dist/utils/hooks/useGetEntityMetadata.js.map +1 -1
- package/dist/utils/hooks/useGetGoalData.js +2 -4
- package/dist/utils/hooks/useGetGoalData.js.map +1 -1
- package/dist/utils/hooks/useGetInfoFromIds.js.map +1 -1
- package/dist/utils/hooks/useGetIsAllSelectedInfiniteList.js.map +1 -1
- package/dist/utils/hooks/useImageUrlUtils.js.map +1 -1
- package/dist/utils/hooks/useImmutableTableQuery/TableQueryReducerActions.js.map +1 -1
- package/dist/utils/hooks/useImmutableTableQuery/useImmutableTableQuery.js.map +1 -1
- package/dist/utils/hooks/useImmutableTableQuery/useTableQueryReducer.js.map +1 -1
- package/dist/utils/hooks/useIsBot.js.map +1 -1
- package/dist/utils/hooks/useJsonLdScriptElement.js.map +1 -1
- package/dist/utils/hooks/useListState.js.map +1 -1
- package/dist/utils/hooks/useLogin.js.map +1 -1
- package/dist/utils/hooks/useMediaPrintOnly.js.map +1 -1
- package/dist/utils/hooks/useMutuallyExclusiveState.js.map +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
- package/dist/utils/hooks/useOneSageURL.js.map +1 -1
- package/dist/utils/hooks/useOverlay.js.map +1 -1
- package/dist/utils/hooks/usePreFetchResource.js.map +1 -1
- package/dist/utils/hooks/useQuerySearchParam.js.map +1 -1
- package/dist/utils/hooks/useScrollFadeTransition.js.map +1 -1
- package/dist/utils/hooks/useSet.js.map +1 -1
- package/dist/utils/hooks/useShowDesktop.js.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
- package/dist/utils/hooks/useTableImageUrl.js.map +1 -1
- package/dist/utils/hooks/useTraceUpdate.js.map +1 -1
- package/dist/utils/hooks/useTrackTransientListItems.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/getActiveUploadCount.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/getFileEntityIdWithSameName.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useCreateFolderPath.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useCreatePathsAndGetParentId.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useLinkFileEntityToURL.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/usePrepareFileEntityUpload.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useTrackFileUploads.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useUploadFileEntities.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/useUploadFiles.js.map +1 -1
- package/dist/utils/hooks/useUploadFileEntity/willUploadsExceedStorageLimit.js.map +1 -1
- package/dist/utils/html/TargetEnum.js.map +1 -1
- package/dist/utils/jsonschema/SchemaAnnotationUtils.js.map +1 -1
- package/dist/utils/jsonschema/getEnumeratedValues.js.map +1 -1
- package/dist/utils/jsonschema/getOnlyNonNullOneOfOption.js.map +1 -1
- package/dist/utils/jsonschema/getRequiredAttributes.js.map +1 -1
- package/dist/utils/jsonschema/getSchemaForProperty.js.map +1 -1
- package/dist/utils/jsonschema/getSchemaPropertyInfo.js.map +1 -1
- package/dist/utils/jsonschema/getType.js.map +1 -1
- package/dist/utils/searchDefaults.js.map +1 -1
- package/dist/utils/slots/SlotUtils.js.map +1 -1
- package/dist/utils/types/IsType.js.map +1 -1
- package/package.json +68 -65
package/dist/components/SetBasicAccessRequirementFields/AccessRequirementTextInstructions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessRequirementTextInstructions.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessRequirementTextInstructions.tsx"],"sourcesContent":["import { Box, Button, Typography } from '@mui/material'\nimport {\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n AccessRequirement,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport { getOldAccessRequirementInstructions } from './GovernanceUtils'\n\ntype AccessRequirementTextInstructionsProps = {\n accessRequirement: AccessRequirement\n onConfirmDelete: (updatedAr: AccessRequirement) => void\n allowDelete?: boolean\n}\n\nexport function AccessRequirementTextInstructions(\n props: AccessRequirementTextInstructionsProps,\n) {\n const { accessRequirement, onConfirmDelete, allowDelete = false } = props\n\n const [open, setOpen] = useState<boolean>(false)\n const oldInstructions = getOldAccessRequirementInstructions(accessRequirement)\n\n return (\n <>\n {Boolean(oldInstructions) && (\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n mb: 1,\n }}\n >\n Legacy text-only instructions\n </Typography>\n <Typography\n variant=\"body1\"\n sx={{\n mb: 1,\n }}\n >\n {oldInstructions}\n </Typography>\n {allowDelete && (\n <>\n <Button\n variant=\"contained\"\n color=\"error\"\n onClick={() => setOpen(true)}\n >\n Delete old instructions\n </Button>\n <ConfirmationDialog\n open={open}\n title=\"Are you sure?\"\n content=\"Deleting the old instructions cannot be undone. Continue?\"\n onCancel={() => setOpen(false)}\n onConfirm={() => {\n const clearedInstructionsAr = { ...accessRequirement }\n if (\n clearedInstructionsAr.concreteType ===\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ) {\n clearedInstructionsAr.termsOfUse = undefined\n } else if (\n clearedInstructionsAr.concreteType ===\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ) {\n clearedInstructionsAr.actContactInfo = undefined\n }\n onConfirmDelete(clearedInstructionsAr)\n setOpen(false)\n }}\n />\n </>\n )}\n </Box>\n )}\n </>\n )\n}\n"],"mappings":";;;;;;;AAgBA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,sBAAmB,oBAAiB,iBAAc,OAAU,GAE9D,CAAC,GAAM,KAAW,EAAkB,
|
|
1
|
+
{"version":3,"file":"AccessRequirementTextInstructions.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessRequirementTextInstructions.tsx"],"sourcesContent":["import { Box, Button, Typography } from '@mui/material'\nimport {\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n AccessRequirement,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport { getOldAccessRequirementInstructions } from './GovernanceUtils'\n\ntype AccessRequirementTextInstructionsProps = {\n accessRequirement: AccessRequirement\n onConfirmDelete: (updatedAr: AccessRequirement) => void\n allowDelete?: boolean\n}\n\nexport function AccessRequirementTextInstructions(\n props: AccessRequirementTextInstructionsProps,\n) {\n const { accessRequirement, onConfirmDelete, allowDelete = false } = props\n\n const [open, setOpen] = useState<boolean>(false)\n const oldInstructions = getOldAccessRequirementInstructions(accessRequirement)\n\n return (\n <>\n {Boolean(oldInstructions) && (\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n mb: 1,\n }}\n >\n Legacy text-only instructions\n </Typography>\n <Typography\n variant=\"body1\"\n sx={{\n mb: 1,\n }}\n >\n {oldInstructions}\n </Typography>\n {allowDelete && (\n <>\n <Button\n variant=\"contained\"\n color=\"error\"\n onClick={() => setOpen(true)}\n >\n Delete old instructions\n </Button>\n <ConfirmationDialog\n open={open}\n title=\"Are you sure?\"\n content=\"Deleting the old instructions cannot be undone. Continue?\"\n onCancel={() => setOpen(false)}\n onConfirm={() => {\n const clearedInstructionsAr = { ...accessRequirement }\n if (\n clearedInstructionsAr.concreteType ===\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ) {\n clearedInstructionsAr.termsOfUse = undefined\n } else if (\n clearedInstructionsAr.concreteType ===\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n ) {\n clearedInstructionsAr.actContactInfo = undefined\n }\n onConfirmDelete(clearedInstructionsAr)\n setOpen(false)\n }}\n />\n </>\n )}\n </Box>\n )}\n </>\n )\n}\n"],"mappings":";;;;;;;AAgBA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,sBAAmB,oBAAiB,iBAAc,OAAU,GAE9D,CAAC,GAAM,KAAW,EAAkB,EAAK,GACzC,IAAkB,EAAoC,CAAiB;CAE7E,OACE,kBAAA,GAAA,EAAA,UACG,EAAQ,KACP,kBAAC,GAAD;EACE,IAAI,EACF,IAAI,EACN;YAHF;GAKE,kBAAC,GAAD;IACE,SAAQ;IACR,IAAI;KACF,YAAY;KACZ,IAAI;IACN;cACD;GAEW,CAAA;GACZ,kBAAC,GAAD;IACE,SAAQ;IACR,IAAI,EACF,IAAI,EACN;cAEC;GACS,CAAA;GACX,KACC,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;IACE,SAAQ;IACR,OAAM;IACN,eAAe,EAAQ,EAAI;cAC5B;GAEO,CAAA,GACR,kBAAC,GAAD;IACQ;IACN,OAAM;IACN,SAAQ;IACR,gBAAgB,EAAQ,EAAK;IAC7B,iBAAiB;KACf,IAAM,IAAwB,EAAE,GAAG,EAAkB;KAarD,AAXE,EAAsB,iBACtB,IAEA,EAAsB,aAAa,KAAA,IAEnC,EAAsB,iBACtB,MAEA,EAAsB,iBAAiB,KAAA,IAEzC,EAAgB,CAAqB,GACrC,EAAQ,EAAK;IACf;GACD,CAAA,CACD,EAAA,CAAA;EAED;IAEP,CAAA;AAEN"}
|
package/dist/components/SetBasicAccessRequirementFields/AccessRequirementWikiInstructions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessRequirementWikiInstructions.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessRequirementWikiInstructions.tsx"],"sourcesContent":["import { Box, Typography } from '@mui/material'\nimport { AccessRequirement, ObjectType } from '@sage-bionetworks/synapse-types'\nimport WikiMarkdownEditorButton from '../WikiMarkdownEditorButton'\n\nexport type AccessRequirementWikiInstructionsProps = {\n accessRequirement: AccessRequirement\n}\n\nexport function AccessRequirementWikiInstructions(\n props: AccessRequirementWikiInstructionsProps,\n) {\n const { accessRequirement } = props\n\n return (\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n {'Instructions (wiki)'}\n </Typography>\n <WikiMarkdownEditorButton\n ownerObjectType={ObjectType.ACCESS_REQUIREMENT}\n ownerObjectId={accessRequirement.id.toString()}\n displayWikiMarkdown={true}\n buttonProps={{ children: 'Edit Instructions' }}\n />\n </Box>\n )\n}\n"],"mappings":";;;;;AAQA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,yBAAsB;
|
|
1
|
+
{"version":3,"file":"AccessRequirementWikiInstructions.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessRequirementWikiInstructions.tsx"],"sourcesContent":["import { Box, Typography } from '@mui/material'\nimport { AccessRequirement, ObjectType } from '@sage-bionetworks/synapse-types'\nimport WikiMarkdownEditorButton from '../WikiMarkdownEditorButton'\n\nexport type AccessRequirementWikiInstructionsProps = {\n accessRequirement: AccessRequirement\n}\n\nexport function AccessRequirementWikiInstructions(\n props: AccessRequirementWikiInstructionsProps,\n) {\n const { accessRequirement } = props\n\n return (\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n {'Instructions (wiki)'}\n </Typography>\n <WikiMarkdownEditorButton\n ownerObjectType={ObjectType.ACCESS_REQUIREMENT}\n ownerObjectId={accessRequirement.id.toString()}\n displayWikiMarkdown={true}\n buttonProps={{ children: 'Edit Instructions' }}\n />\n </Box>\n )\n}\n"],"mappings":";;;;;AAQA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,yBAAsB;CAE9B,OACE,kBAAC,GAAD;EACE,IAAI,EACF,IAAI,EACN;YAHF,CAKE,kBAAC,GAAD;GACE,SAAQ;GACR,IAAI,EACF,YAAY,IACd;aAEC;EACS,CAAA,GACZ,kBAAC,GAAD;GACE,iBAAiB,EAAW;GAC5B,eAAe,EAAkB,GAAG,SAAS;GAC7C,qBAAqB;GACrB,aAAa,EAAE,UAAU,oBAAoB;EAC9C,CAAA,CACE;;AAET"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessorRequirements.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessorRequirements.tsx"],"sourcesContent":["import {\n AccessRequirement,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport { hasAccessorRequirement } from './GovernanceUtils'\nimport { Box, Checkbox, FormControlLabel, Typography } from '@mui/material'\n\ntype AccessorRequirementsProps = {\n accessRequirement: AccessRequirement\n onChange: (updatedAr: AccessRequirement) => void\n}\n\nexport function AccessorRequirements(props: AccessorRequirementsProps) {\n const { accessRequirement, onChange } = props\n\n return (\n <>\n {hasAccessorRequirement(accessRequirement) && (\n <>\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n Accessor requirements\n </Typography>\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must be certified.\"\n checked={accessRequirement.isCertifiedUserRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isCertifiedUserRequired: checked,\n })\n }\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must have a validated profile.\"\n checked={accessRequirement.isValidatedProfileRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isValidatedProfileRequired: checked,\n })\n }\n />\n {accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE && (\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must use two-factor authentication (2FA).\"\n checked={accessRequirement.isTwoFaRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isTwoFaRequired: checked,\n })\n }\n />\n )}\n </Box>\n </>\n )}\n </>\n )\n}\n"],"mappings":";;;;;AAYA,SAAgB,EAAqB,GAAkC;CACrE,IAAM,EAAE,sBAAmB,gBAAa;
|
|
1
|
+
{"version":3,"file":"AccessorRequirements.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/AccessorRequirements.tsx"],"sourcesContent":["import {\n AccessRequirement,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\nimport { hasAccessorRequirement } from './GovernanceUtils'\nimport { Box, Checkbox, FormControlLabel, Typography } from '@mui/material'\n\ntype AccessorRequirementsProps = {\n accessRequirement: AccessRequirement\n onChange: (updatedAr: AccessRequirement) => void\n}\n\nexport function AccessorRequirements(props: AccessorRequirementsProps) {\n const { accessRequirement, onChange } = props\n\n return (\n <>\n {hasAccessorRequirement(accessRequirement) && (\n <>\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n Accessor requirements\n </Typography>\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must be certified.\"\n checked={accessRequirement.isCertifiedUserRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isCertifiedUserRequired: checked,\n })\n }\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must have a validated profile.\"\n checked={accessRequirement.isValidatedProfileRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isValidatedProfileRequired: checked,\n })\n }\n />\n {accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE && (\n <FormControlLabel\n control={<Checkbox />}\n label=\"Accessors must use two-factor authentication (2FA).\"\n checked={accessRequirement.isTwoFaRequired}\n onChange={(_event, checked: boolean) =>\n onChange({\n ...accessRequirement,\n isTwoFaRequired: checked,\n })\n }\n />\n )}\n </Box>\n </>\n )}\n </>\n )\n}\n"],"mappings":";;;;;AAYA,SAAgB,EAAqB,GAAkC;CACrE,IAAM,EAAE,sBAAmB,gBAAa;CAExC,OACE,kBAAA,GAAA,EAAA,UACG,EAAuB,CAAiB,KACvC,kBAAA,GAAA,EAAA,UACE,kBAAC,GAAD;EACE,IAAI,EACF,IAAI,EACN;YAHF;GAKE,kBAAC,GAAD;IACE,SAAQ;IACR,IAAI,EACF,YAAY,IACd;cACD;GAEW,CAAA;GACZ,kBAAC,GAAD;IACE,SAAS,kBAAC,GAAD,CAAW,CAAA;IACpB,OAAM;IACN,SAAS,EAAkB;IAC3B,WAAW,GAAQ,MACjB,EAAS;KACP,GAAG;KACH,yBAAyB;IAC3B,CAAC;GAEJ,CAAA;GACD,kBAAC,GAAD;IACE,SAAS,kBAAC,GAAD,CAAW,CAAA;IACpB,OAAM;IACN,SAAS,EAAkB;IAC3B,WAAW,GAAQ,MACjB,EAAS;KACP,GAAG;KACH,4BAA4B;IAC9B,CAAC;GAEJ,CAAA;GACA,EAAkB,iBACjB,KACA,kBAAC,GAAD;IACE,SAAS,kBAAC,GAAD,CAAW,CAAA;IACpB,OAAM;IACN,SAAS,EAAkB;IAC3B,WAAW,GAAQ,MACjB,EAAS;KACP,GAAG;KACH,iBAAiB;IACnB,CAAC;GAEJ,CAAA;EAEA;IACL,CAAA,EAEJ,CAAA;AAEN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GovernanceUtils.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/GovernanceUtils.ts"],"sourcesContent":["import {\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n AccessRequirement,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ManagedACTAccessRequirement,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SelfSignAccessRequirement,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\n\nexport const LOCK_ACCESS_REQUIREMENT_TEXT =\n 'Access restricted pending review by Synapse Access and Compliance Team.'\n\nexport const getOldAccessRequirementInstructions = (ar: AccessRequirement) => {\n switch (ar.concreteType) {\n case MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n case SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n // uses wiki to store instructions\n return ''\n case TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ar.termsOfUse\n case ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ar.actContactInfo\n case LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return LOCK_ACCESS_REQUIREMENT_TEXT\n }\n}\n\n/**\n * Returns true iff the access requirement can apply restrictions based on\n * accessor qualities, such as certification or validation status\n */\nexport const hasAccessorRequirement = (\n ar: AccessRequirement,\n): ar is SelfSignAccessRequirement | ManagedACTAccessRequirement => {\n return (\n ar.concreteType === SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n ar.concreteType == MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n )\n}\n"],"mappings":";;AAWA,IAAa,IACX,2EAEW,KAAuC,MAA0B;
|
|
1
|
+
{"version":3,"file":"GovernanceUtils.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/GovernanceUtils.ts"],"sourcesContent":["import {\n ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n AccessRequirement,\n LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ManagedACTAccessRequirement,\n SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n SelfSignAccessRequirement,\n TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n} from '@sage-bionetworks/synapse-types'\n\nexport const LOCK_ACCESS_REQUIREMENT_TEXT =\n 'Access restricted pending review by Synapse Access and Compliance Team.'\n\nexport const getOldAccessRequirementInstructions = (ar: AccessRequirement) => {\n switch (ar.concreteType) {\n case MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n case SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n // uses wiki to store instructions\n return ''\n case TERMS_OF_USE_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ar.termsOfUse\n case ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return ar.actContactInfo\n case LOCK_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE:\n return LOCK_ACCESS_REQUIREMENT_TEXT\n }\n}\n\n/**\n * Returns true iff the access requirement can apply restrictions based on\n * accessor qualities, such as certification or validation status\n */\nexport const hasAccessorRequirement = (\n ar: AccessRequirement,\n): ar is SelfSignAccessRequirement | ManagedACTAccessRequirement => {\n return (\n ar.concreteType === SELF_SIGN_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE ||\n ar.concreteType == MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n )\n}\n"],"mappings":";;AAWA,IAAa,IACX,2EAEW,KAAuC,MAA0B;CAC5E,QAAQ,EAAG,cAAX;EACE,KAAK;EACL,KAAK,GAEH,OAAO;EACT,KAAK,GACH,OAAO,EAAG;EACZ,KAAK,GACH,OAAO,EAAG;EACZ,KAAK,GACH,OAAO;CACX;AACF,GAMa,KACX,MAGE,EAAG,iBAAiB,KACpB,EAAG,gBAAgB"}
|
package/dist/components/SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetBasicAccessRequirementFields.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.tsx"],"sourcesContent":["import {\n useGetAccessRequirements,\n useUpdateAccessRequirement,\n} from '@/synapse-queries'\nimport { Alert } from '@mui/material'\nimport {\n AccessRequirement,\n ManagedACTAccessRequirement,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ForwardedRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useState,\n} from 'react'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport { AccessorRequirements } from './AccessorRequirements'\nimport { AccessRequirementTextInstructions } from './AccessRequirementTextInstructions'\nimport { AccessRequirementWikiInstructions } from './AccessRequirementWikiInstructions'\n\nexport type BasicAccessRequirement = Exclude<\n AccessRequirement,\n ManagedACTAccessRequirement\n>\n\nexport type SetBasicAccessRequirementFieldsHandle = {\n /* Allow the parent component to trigger saving the AR, so this may be embedded in an arbitrary modal. */\n save: () => void\n}\n\nexport type SetBasicAccessRequirementFieldsProps = {\n accessRequirementId: string\n /* Called when AR has been saved successfully */\n onSave: () => void\n /* Called when error saving AR */\n onError: () => void\n allowDeleteTextInstructions?: boolean\n}\n\nexport const SetBasicAccessRequirementFields = forwardRef(\n function SetBasicAccessRequirementFields(\n props: SetBasicAccessRequirementFieldsProps,\n ref: ForwardedRef<SetBasicAccessRequirementFieldsHandle>,\n ) {\n const {\n accessRequirementId,\n onSave,\n onError,\n allowDeleteTextInstructions = false,\n } = props\n const [updatedAr, setUpdatedAr] = useState<BasicAccessRequirement | null>(\n null,\n )\n\n const { data: accessRequirement, error: getArError } =\n useGetAccessRequirements<BasicAccessRequirement>(accessRequirementId, {\n staleTime: Infinity,\n })\n useEffect(() => {\n if (accessRequirement) {\n setUpdatedAr(accessRequirement)\n }\n }, [accessRequirement])\n\n const { mutateAsync: updateAccessRequirement, error: updateArError } =\n useUpdateAccessRequirement<BasicAccessRequirement>()\n\n const onUpdateAccessRequirement = useCallback(\n async (\n updatedAr: BasicAccessRequirement,\n isDeletingTextInstructions: boolean,\n ) => {\n try {\n await updateAccessRequirement(updatedAr)\n setUpdatedAr(updatedAr)\n if (!isDeletingTextInstructions) {\n onSave()\n }\n } catch {\n if (!isDeletingTextInstructions) {\n onError()\n }\n }\n },\n [onSave, onError, updateAccessRequirement],\n )\n\n useImperativeHandle(ref, () => {\n return {\n save() {\n if (updatedAr) onUpdateAccessRequirement(updatedAr, false)\n },\n }\n }, [updatedAr, onUpdateAccessRequirement])\n\n if (!updatedAr) {\n if (getArError) {\n return <Alert severity=\"error\">{getArError.reason}</Alert>\n } else {\n return <SynapseSpinner />\n }\n }\n\n return (\n <>\n <AccessRequirementTextInstructions\n accessRequirement={updatedAr}\n allowDelete={allowDeleteTextInstructions}\n onConfirmDelete={updatedAr => {\n onUpdateAccessRequirement(updatedAr as BasicAccessRequirement, true)\n }}\n />\n <AccessRequirementWikiInstructions accessRequirement={updatedAr} />\n <AccessorRequirements\n accessRequirement={updatedAr}\n onChange={updatedAr =>\n setUpdatedAr(updatedAr as BasicAccessRequirement)\n }\n />\n {updateArError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {updateArError.reason}\n </Alert>\n )}\n </>\n )\n },\n)\n"],"mappings":";;;;;;;;;;AAyCA,IAAa,IAAkC,EAC7C,SACE,GACA,GACA;CACA,IAAM,EACJ,wBACA,WACA,YACA,iCAA8B,OAC5B,GACE,CAAC,GAAW,KAAgB,EAChC,
|
|
1
|
+
{"version":3,"file":"SetBasicAccessRequirementFields.js","names":[],"sources":["../../../src/components/SetBasicAccessRequirementFields/SetBasicAccessRequirementFields.tsx"],"sourcesContent":["import {\n useGetAccessRequirements,\n useUpdateAccessRequirement,\n} from '@/synapse-queries'\nimport { Alert } from '@mui/material'\nimport {\n AccessRequirement,\n ManagedACTAccessRequirement,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ForwardedRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useState,\n} from 'react'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport { AccessorRequirements } from './AccessorRequirements'\nimport { AccessRequirementTextInstructions } from './AccessRequirementTextInstructions'\nimport { AccessRequirementWikiInstructions } from './AccessRequirementWikiInstructions'\n\nexport type BasicAccessRequirement = Exclude<\n AccessRequirement,\n ManagedACTAccessRequirement\n>\n\nexport type SetBasicAccessRequirementFieldsHandle = {\n /* Allow the parent component to trigger saving the AR, so this may be embedded in an arbitrary modal. */\n save: () => void\n}\n\nexport type SetBasicAccessRequirementFieldsProps = {\n accessRequirementId: string\n /* Called when AR has been saved successfully */\n onSave: () => void\n /* Called when error saving AR */\n onError: () => void\n allowDeleteTextInstructions?: boolean\n}\n\nexport const SetBasicAccessRequirementFields = forwardRef(\n function SetBasicAccessRequirementFields(\n props: SetBasicAccessRequirementFieldsProps,\n ref: ForwardedRef<SetBasicAccessRequirementFieldsHandle>,\n ) {\n const {\n accessRequirementId,\n onSave,\n onError,\n allowDeleteTextInstructions = false,\n } = props\n const [updatedAr, setUpdatedAr] = useState<BasicAccessRequirement | null>(\n null,\n )\n\n const { data: accessRequirement, error: getArError } =\n useGetAccessRequirements<BasicAccessRequirement>(accessRequirementId, {\n staleTime: Infinity,\n })\n useEffect(() => {\n if (accessRequirement) {\n setUpdatedAr(accessRequirement)\n }\n }, [accessRequirement])\n\n const { mutateAsync: updateAccessRequirement, error: updateArError } =\n useUpdateAccessRequirement<BasicAccessRequirement>()\n\n const onUpdateAccessRequirement = useCallback(\n async (\n updatedAr: BasicAccessRequirement,\n isDeletingTextInstructions: boolean,\n ) => {\n try {\n await updateAccessRequirement(updatedAr)\n setUpdatedAr(updatedAr)\n if (!isDeletingTextInstructions) {\n onSave()\n }\n } catch {\n if (!isDeletingTextInstructions) {\n onError()\n }\n }\n },\n [onSave, onError, updateAccessRequirement],\n )\n\n useImperativeHandle(ref, () => {\n return {\n save() {\n if (updatedAr) onUpdateAccessRequirement(updatedAr, false)\n },\n }\n }, [updatedAr, onUpdateAccessRequirement])\n\n if (!updatedAr) {\n if (getArError) {\n return <Alert severity=\"error\">{getArError.reason}</Alert>\n } else {\n return <SynapseSpinner />\n }\n }\n\n return (\n <>\n <AccessRequirementTextInstructions\n accessRequirement={updatedAr}\n allowDelete={allowDeleteTextInstructions}\n onConfirmDelete={updatedAr => {\n onUpdateAccessRequirement(updatedAr as BasicAccessRequirement, true)\n }}\n />\n <AccessRequirementWikiInstructions accessRequirement={updatedAr} />\n <AccessorRequirements\n accessRequirement={updatedAr}\n onChange={updatedAr =>\n setUpdatedAr(updatedAr as BasicAccessRequirement)\n }\n />\n {updateArError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {updateArError.reason}\n </Alert>\n )}\n </>\n )\n },\n)\n"],"mappings":";;;;;;;;;;AAyCA,IAAa,IAAkC,EAC7C,SACE,GACA,GACA;CACA,IAAM,EACJ,wBACA,WACA,YACA,iCAA8B,OAC5B,GACE,CAAC,GAAW,KAAgB,EAChC,IACF,GAEM,EAAE,MAAM,GAAmB,OAAO,MACtC,EAAiD,GAAqB,EACpE,WAAW,SACb,CAAC;CACH,QAAgB;EACd,AAAI,KACF,EAAa,CAAiB;CAElC,GAAG,CAAC,CAAiB,CAAC;CAEtB,IAAM,EAAE,aAAa,GAAyB,OAAO,MACnD,EAAmD,GAE/C,IAA4B,EAChC,OACE,GACA,MACG;EACH,IAAI;GAGF,AAFA,MAAM,EAAwB,CAAS,GACvC,EAAa,CAAS,GACjB,KACH,EAAO;EAEX,QAAQ;GACN,AAAK,KACH,EAAQ;EAEZ;CACF,GACA;EAAC;EAAQ;EAAS;CAAuB,CAC3C;CAkBA,OAhBA,EAAoB,UACX,EACL,OAAO;EACL,AAAI,KAAW,EAA0B,GAAW,EAAK;CAC3D,EACF,IACC,CAAC,GAAW,CAAyB,CAAC,GAEpC,IASH,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD;GACE,mBAAmB;GACnB,aAAa;GACb,kBAAiB,MAAa;IAC5B,EAA0B,GAAqC,EAAI;GACrE;EACD,CAAA;EACD,kBAAC,GAAD,EAAmC,mBAAmB,EAAY,CAAA;EAClE,kBAAC,GAAD;GACE,mBAAmB;GACnB,WAAU,MACR,EAAa,CAAmC;EAEnD,CAAA;EACA,KACC,kBAAC,GAAD;GAAO,UAAS;GAAQ,IAAI,EAAE,WAAW,EAAE;aACxC,EAAc;EACV,CAAA;CAET,EAAA,CAAA,IA5BE,IACK,kBAAC,GAAD;EAAO,UAAS;YAAS,EAAW;CAAc,CAAA,IAElD,kBAAC,GAAD,CAAiB,CAAA;AA2B9B,CACF"}
|
package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetManagedAccessRequirementFields.js","names":[],"sources":["../../../src/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.tsx"],"sourcesContent":["import {\n useGetAccessRequirements,\n useUpdateAccessRequirement,\n} from '@/synapse-queries'\nimport { DAY_IN_MS } from '@/utils/SynapseConstants'\nimport {\n Alert,\n Box,\n Checkbox,\n FormControlLabel,\n TextField,\n Typography,\n} from '@mui/material'\nimport { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError'\nimport {\n FileHandleAssociateType,\n FileHandleAssociation,\n FileUploadComplete,\n ManagedACTAccessRequirement,\n UploadCallbackResp,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ForwardedRef,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\nimport { UploadDocumentField } from '../AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField'\nimport { SynapseErrorBoundary } from '../error/ErrorBanner'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport {\n AccessorRequirements,\n AccessRequirementWikiInstructions,\n} from '../SetBasicAccessRequirementFields'\n\nexport const DUC_TEMPLATE_UPLOAD_ERROR =\n 'There was an error uploading the DUC template. '\n\nexport const getValidExpirationPeriodOrErrorMessage = (\n expirationPeriodDays: string,\n) => {\n if (expirationPeriodDays === '') return 0\n\n const msgPrefix = 'Please enter a valid expiration period (in days): '\n if (/^[-]?\\d+$/.test(expirationPeriodDays)) {\n const num = Number(expirationPeriodDays)\n if (num < 0) {\n return `${msgPrefix}If expiration period is set, then it must be greater than 0.`\n }\n return num * DAY_IN_MS\n }\n return `${msgPrefix}For input string: \"${expirationPeriodDays}\"`\n}\n\nexport type SetManagedAccessRequirementFieldsHandle = {\n /* Allow the parent component to trigger saving the AR, so this may be embedded in an arbitrary modal. */\n save: () => void\n}\n\nexport type SetManagedAccessRequirementFieldsProps = {\n accessRequirementId: string\n /* Called when AR has been saved successfully */\n onSave: () => void\n /* Called when error saving AR */\n onError: () => void\n}\n\nexport const SetManagedAccessRequirementFields = forwardRef(\n function SetManagedAccessRequirementFields(\n props: SetManagedAccessRequirementFieldsProps,\n ref: ForwardedRef<SetManagedAccessRequirementFieldsHandle>,\n ) {\n const { accessRequirementId, onSave, onError } = props\n\n const { data: accessRequirement, error: getArError } =\n useGetAccessRequirements<ManagedACTAccessRequirement>(\n accessRequirementId,\n { staleTime: Infinity },\n )\n useEffect(() => {\n if (accessRequirement) {\n setUpdatedAr(accessRequirement)\n setExpirationPeriodDays(\n (accessRequirement.expirationPeriod / DAY_IN_MS).toString(),\n )\n }\n }, [accessRequirement])\n\n const [uploadDucTemplateError, setUploadDucTemplateError] = useState<\n string | null\n >(null)\n const [expirationPeriodError, setExpirationPeriodError] = useState<\n string | null\n >(null)\n\n const [updatedAr, setUpdatedAr] =\n useState<ManagedACTAccessRequirement | null>(null)\n const [expirationPeriodDays, setExpirationPeriodDays] = useState<string>('')\n\n const ducTemplateFileHandleAssociation = useMemo(() => {\n if (updatedAr?.ducTemplateFileHandleId) {\n const ducTemplateFileHandleAssociation: FileHandleAssociation = {\n fileHandleId: updatedAr.ducTemplateFileHandleId,\n associateObjectType:\n FileHandleAssociateType.AccessRequirementAttachment,\n associateObjectId: updatedAr.id.toString(),\n }\n return ducTemplateFileHandleAssociation\n }\n return undefined\n }, [updatedAr?.ducTemplateFileHandleId, updatedAr?.id])\n\n const uploadDucTemplateCallback = (data: UploadCallbackResp) => {\n if (data.resp && data.success && updatedAr) {\n setUploadDucTemplateError(null)\n // Files are uploaded and synced with the server immediately\n const uploadResponse: FileUploadComplete = data.resp\n setUpdatedAr({\n ...updatedAr,\n ducTemplateFileHandleId: uploadResponse.fileHandleId,\n })\n } else if (!data.success && data.error) {\n setUploadDucTemplateError(\n `${DUC_TEMPLATE_UPLOAD_ERROR} ${\n (data.error as SynapseClientError).reason\n }`,\n )\n }\n }\n\n const {\n mutate: updateAccessRequirement,\n isPending: isUpdatingAccessRequirement,\n error: updateArError,\n } = useUpdateAccessRequirement<ManagedACTAccessRequirement>({\n onSuccess: () => onSave(),\n onError: () => onError(),\n })\n\n useImperativeHandle(ref, () => {\n return {\n save() {\n if (updatedAr) {\n const expirationPeriodOrErrorMessage =\n getValidExpirationPeriodOrErrorMessage(expirationPeriodDays)\n if (typeof expirationPeriodOrErrorMessage === 'string') {\n setExpirationPeriodError(expirationPeriodOrErrorMessage)\n onError()\n } else {\n updateAccessRequirement({\n ...updatedAr,\n expirationPeriod: expirationPeriodOrErrorMessage,\n })\n }\n }\n },\n }\n }, [expirationPeriodDays, updatedAr, updateAccessRequirement, onError])\n\n if (!updatedAr) {\n if (getArError) {\n return <Alert severity=\"error\">{getArError.reason}</Alert>\n } else {\n return <SynapseSpinner />\n }\n }\n\n return (\n <>\n <AccessRequirementWikiInstructions accessRequirement={updatedAr} />\n <Box>\n <Typography\n sx={{\n bgcolor: '#f5f5f5',\n borderBottom: '1px solid #ddd',\n color: '#333',\n px: 2,\n py: 1,\n }}\n >\n Data Access Request Parameters\n </Typography>\n <Box\n sx={{\n mt: 2,\n mb: 4,\n }}\n >\n <AccessorRequirements\n accessRequirement={updatedAr}\n onChange={updatedAr =>\n setUpdatedAr(updatedAr as ManagedACTAccessRequirement)\n }\n />\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n DUC\n </Typography>\n <FormControlLabel\n control={<Checkbox />}\n label=\"DUC is required.\"\n checked={updatedAr.isDUCRequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isDUCRequired: checked,\n })\n }\n />\n <SynapseErrorBoundary>\n <UploadDocumentField\n id=\"duc\"\n isLoading={isUpdatingAccessRequirement}\n uploadCallback={resp => uploadDucTemplateCallback(resp)}\n documentName=\"Template DUC\"\n fileHandleAssociations={\n ducTemplateFileHandleAssociation\n ? [ducTemplateFileHandleAssociation]\n : undefined\n }\n isMultiFileUpload={false}\n uploadBtnVariant=\"contained\"\n />\n {uploadDucTemplateError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {uploadDucTemplateError}\n </Alert>\n )}\n </SynapseErrorBoundary>\n <FormControlLabel\n label=\"IRB approval is required.\"\n checked={updatedAr.isIRBApprovalRequired}\n control={<Checkbox />}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isIRBApprovalRequired: checked,\n })\n }\n sx={{ ml: 0 }}\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Other documents are required.\"\n checked={updatedAr.areOtherAttachmentsRequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n areOtherAttachmentsRequired: checked,\n })\n }\n />\n <TextField\n id=\"expirationPeriod\"\n name=\"expirationPeriod\"\n label=\"Expiration period (days)\"\n value={expirationPeriodDays}\n error={Boolean(expirationPeriodError)}\n helperText={expirationPeriodError}\n sx={{ mt: 1 }}\n fullWidth\n onChange={event => {\n setExpirationPeriodError(null)\n setExpirationPeriodDays(event.target.value)\n }}\n onBlur={() => {\n const expirationPeriodOrErrorMessage =\n getValidExpirationPeriodOrErrorMessage(expirationPeriodDays)\n if (typeof expirationPeriodOrErrorMessage === 'string') {\n setExpirationPeriodError(expirationPeriodOrErrorMessage)\n }\n }}\n />\n <Box\n sx={{\n mt: 1,\n }}\n >\n <FormControlLabel\n control={<Checkbox />}\n label=\"Intended Data Use statement is required.\"\n checked={updatedAr.isIDURequired}\n onChange={(_event, checked: boolean) => {\n if (checked) {\n setUpdatedAr({\n ...updatedAr,\n isIDURequired: true,\n })\n } else {\n setUpdatedAr({\n ...updatedAr,\n isIDURequired: false,\n isIDUPublic: false,\n })\n }\n }}\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Intended Data Use statements will be publicly available.\"\n checked={updatedAr.isIDUPublic}\n disabled={!updatedAr.isIDURequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isIDUPublic: checked,\n })\n }\n />\n </Box>\n </Box>\n </Box>\n </Box>\n {updateArError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {updateArError.reason}\n </Alert>\n )}\n </>\n )\n },\n)\n"],"mappings":";;;;;;;;;;;;;;AAqCA,IAAa,IACX,mDAEW,KACX,MACG;AACH,KAAI,MAAyB,GAAI,QAAO;CAExC,IAAM,IAAY;AAClB,KAAI,YAAY,KAAK,EAAqB,EAAE;EAC1C,IAAM,IAAM,OAAO,EAAqB;AAIxC,SAHI,IAAM,IACD,GAAG,EAAU,gEAEf,IAAM;;AAEf,QAAO,GAAG,EAAU,qBAAqB,EAAqB;GAgBnD,IAAoC,EAC/C,SACE,GACA,GACA;CACA,IAAM,EAAE,wBAAqB,WAAQ,eAAY,GAE3C,EAAE,MAAM,GAAmB,OAAO,MACtC,EACE,GACA,EAAE,WAAW,UAAU,CACxB;AACH,SAAgB;AACd,EAAI,MACF,EAAa,EAAkB,EAC/B,GACG,EAAkB,mBAAmB,GAAW,UAAU,CAC5D;IAEF,CAAC,EAAkB,CAAC;CAEvB,IAAM,CAAC,GAAwB,KAA6B,EAE1D,KAAK,EACD,CAAC,GAAuB,KAA4B,EAExD,KAAK,EAED,CAAC,GAAW,KAChB,EAA6C,KAAK,EAC9C,CAAC,GAAsB,KAA2B,EAAiB,GAAG,EAEtE,IAAmC,QAAc;AACrD,MAAI,GAAW,wBAOb,QAAO;GALL,cAAc,EAAU;GACxB,qBACE,EAAwB;GAC1B,mBAAmB,EAAU,GAAG,UAAU;GAErC;IAGR,CAAC,GAAW,yBAAyB,GAAW,GAAG,CAAC,EAEjD,KAA6B,MAA6B;AAC9D,MAAI,EAAK,QAAQ,EAAK,WAAW,GAAW;AAC1C,KAA0B,KAAK;GAE/B,IAAM,IAAqC,EAAK;AAChD,KAAa;IACX,GAAG;IACH,yBAAyB,EAAe;IACzC,CAAC;SACO,CAAC,EAAK,WAAW,EAAK,SAC/B,EACE,GAAG,EAA0B,GAC1B,EAAK,MAA6B,SAEtC;IAIC,EACJ,QAAQ,GACR,WAAW,GACX,OAAO,MACL,EAAwD;EAC1D,iBAAiB,GAAQ;EACzB,eAAe,GAAS;EACzB,CAAC;AA8BF,QA5BA,EAAoB,UACX,EACL,OAAO;AACL,MAAI,GAAW;GACb,IAAM,IACJ,EAAuC,EAAqB;AAC9D,GAAI,OAAO,KAAmC,YAC5C,EAAyB,EAA+B,EACxD,GAAS,IAET,EAAwB;IACtB,GAAG;IACH,kBAAkB;IACnB,CAAC;;IAIT,GACA;EAAC;EAAsB;EAAW;EAAyB;EAAQ,CAAC,EAElE,IASH,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD,EAAmC,mBAAmB,GAAa,CAAA;EACnE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;GACE,IAAI;IACF,SAAS;IACT,cAAc;IACd,OAAO;IACP,IAAI;IACJ,IAAI;IACL;aACF;GAEY,CAAA,EACb,kBAAC,GAAD;GACE,IAAI;IACF,IAAI;IACJ,IAAI;IACL;aAJH,CAME,kBAAC,GAAD;IACE,mBAAmB;IACnB,WAAU,MACR,EAAa,EAAyC;IAExD,CAAA,EACF,kBAAC,GAAD;IACE,IAAI,EACF,IAAI,GACL;cAHH;KAKE,kBAAC,GAAD;MACE,SAAQ;MACR,IAAI,EACF,YAAY,KACb;gBACF;MAEY,CAAA;KACb,kBAAC,GAAD;MACE,SAAS,kBAAC,GAAD,EAAY,CAAA;MACrB,OAAM;MACN,SAAS,EAAU;MACnB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,eAAe;OAChB,CAAC;MAEJ,CAAA;KACF,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MACE,IAAG;MACH,WAAW;MACX,iBAAgB,MAAQ,EAA0B,EAAK;MACvD,cAAa;MACb,wBACE,IACI,CAAC,EAAiC,GAClC,KAAA;MAEN,mBAAmB;MACnB,kBAAiB;MACjB,CAAA,EACD,KACC,kBAAC,GAAD;MAAO,UAAS;MAAQ,IAAI,EAAE,WAAW,GAAG;gBACzC;MACK,CAAA,CAEW,EAAA,CAAA;KACvB,kBAAC,GAAD;MACE,OAAM;MACN,SAAS,EAAU;MACnB,SAAS,kBAAC,GAAD,EAAY,CAAA;MACrB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,uBAAuB;OACxB,CAAC;MAEJ,IAAI,EAAE,IAAI,GAAG;MACb,CAAA;KACF,kBAAC,GAAD;MACE,SAAS,kBAAC,GAAD,EAAY,CAAA;MACrB,OAAM;MACN,SAAS,EAAU;MACnB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,6BAA6B;OAC9B,CAAC;MAEJ,CAAA;KACF,kBAAC,GAAD;MACE,IAAG;MACH,MAAK;MACL,OAAM;MACN,OAAO;MACP,OAAO,EAAQ;MACf,YAAY;MACZ,IAAI,EAAE,IAAI,GAAG;MACb,WAAA;MACA,WAAU,MAAS;AAEjB,OADA,EAAyB,KAAK,EAC9B,EAAwB,EAAM,OAAO,MAAM;;MAE7C,cAAc;OACZ,IAAM,IACJ,EAAuC,EAAqB;AAC9D,OAAI,OAAO,KAAmC,YAC5C,EAAyB,EAA+B;;MAG5D,CAAA;KACF,kBAAC,GAAD;MACE,IAAI,EACF,IAAI,GACL;gBAHH,CAKE,kBAAC,GAAD;OACE,SAAS,kBAAC,GAAD,EAAY,CAAA;OACrB,OAAM;OACN,SAAS,EAAU;OACnB,WAAW,GAAQ,MAAqB;AACtC,QACE,EADE,IACW;SACX,GAAG;SACH,eAAe;SAChB,GAEY;SACX,GAAG;SACH,eAAe;SACf,aAAa;SACd,CAAC;;OAGN,CAAA,EACF,kBAAC,GAAD;OACE,SAAS,kBAAC,GAAD,EAAY,CAAA;OACrB,OAAM;OACN,SAAS,EAAU;OACnB,UAAU,CAAC,EAAU;OACrB,WAAW,GAAQ,MACjB,EAAa;QACX,GAAG;QACH,aAAa;QACd,CAAC;OAEJ,CAAA,CACE;;KACF;MACF;KACF,EAAA,CAAA;EACL,KACC,kBAAC,GAAD;GAAO,UAAS;GAAQ,IAAI,EAAE,WAAW,GAAG;aACzC,EAAc;GACT,CAAA;EAET,EAAA,CAAA,GAvKC,IACK,kBAAC,GAAD;EAAO,UAAS;YAAS,EAAW;EAAe,CAAA,GAEnD,kBAAC,GAAD,EAAkB,CAAA;EAuKhC"}
|
|
1
|
+
{"version":3,"file":"SetManagedAccessRequirementFields.js","names":[],"sources":["../../../src/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.tsx"],"sourcesContent":["import {\n useGetAccessRequirements,\n useUpdateAccessRequirement,\n} from '@/synapse-queries'\nimport { DAY_IN_MS } from '@/utils/SynapseConstants'\nimport {\n Alert,\n Box,\n Checkbox,\n FormControlLabel,\n TextField,\n Typography,\n} from '@mui/material'\nimport { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError'\nimport {\n FileHandleAssociateType,\n FileHandleAssociation,\n FileUploadComplete,\n ManagedACTAccessRequirement,\n UploadCallbackResp,\n} from '@sage-bionetworks/synapse-types'\nimport {\n ForwardedRef,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\nimport { UploadDocumentField } from '../AccessRequirementList/ManagedACTAccessRequirementRequestFlow/UploadDocumentField'\nimport { SynapseErrorBoundary } from '../error/ErrorBanner'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport {\n AccessorRequirements,\n AccessRequirementWikiInstructions,\n} from '../SetBasicAccessRequirementFields'\n\nexport const DUC_TEMPLATE_UPLOAD_ERROR =\n 'There was an error uploading the DUC template. '\n\nexport const getValidExpirationPeriodOrErrorMessage = (\n expirationPeriodDays: string,\n) => {\n if (expirationPeriodDays === '') return 0\n\n const msgPrefix = 'Please enter a valid expiration period (in days): '\n if (/^[-]?\\d+$/.test(expirationPeriodDays)) {\n const num = Number(expirationPeriodDays)\n if (num < 0) {\n return `${msgPrefix}If expiration period is set, then it must be greater than 0.`\n }\n return num * DAY_IN_MS\n }\n return `${msgPrefix}For input string: \"${expirationPeriodDays}\"`\n}\n\nexport type SetManagedAccessRequirementFieldsHandle = {\n /* Allow the parent component to trigger saving the AR, so this may be embedded in an arbitrary modal. */\n save: () => void\n}\n\nexport type SetManagedAccessRequirementFieldsProps = {\n accessRequirementId: string\n /* Called when AR has been saved successfully */\n onSave: () => void\n /* Called when error saving AR */\n onError: () => void\n}\n\nexport const SetManagedAccessRequirementFields = forwardRef(\n function SetManagedAccessRequirementFields(\n props: SetManagedAccessRequirementFieldsProps,\n ref: ForwardedRef<SetManagedAccessRequirementFieldsHandle>,\n ) {\n const { accessRequirementId, onSave, onError } = props\n\n const { data: accessRequirement, error: getArError } =\n useGetAccessRequirements<ManagedACTAccessRequirement>(\n accessRequirementId,\n { staleTime: Infinity },\n )\n useEffect(() => {\n if (accessRequirement) {\n setUpdatedAr(accessRequirement)\n setExpirationPeriodDays(\n (accessRequirement.expirationPeriod / DAY_IN_MS).toString(),\n )\n }\n }, [accessRequirement])\n\n const [uploadDucTemplateError, setUploadDucTemplateError] = useState<\n string | null\n >(null)\n const [expirationPeriodError, setExpirationPeriodError] = useState<\n string | null\n >(null)\n\n const [updatedAr, setUpdatedAr] =\n useState<ManagedACTAccessRequirement | null>(null)\n const [expirationPeriodDays, setExpirationPeriodDays] = useState<string>('')\n\n const ducTemplateFileHandleAssociation = useMemo(() => {\n if (updatedAr?.ducTemplateFileHandleId) {\n const ducTemplateFileHandleAssociation: FileHandleAssociation = {\n fileHandleId: updatedAr.ducTemplateFileHandleId,\n associateObjectType:\n FileHandleAssociateType.AccessRequirementAttachment,\n associateObjectId: updatedAr.id.toString(),\n }\n return ducTemplateFileHandleAssociation\n }\n return undefined\n }, [updatedAr?.ducTemplateFileHandleId, updatedAr?.id])\n\n const uploadDucTemplateCallback = (data: UploadCallbackResp) => {\n if (data.resp && data.success && updatedAr) {\n setUploadDucTemplateError(null)\n // Files are uploaded and synced with the server immediately\n const uploadResponse: FileUploadComplete = data.resp\n setUpdatedAr({\n ...updatedAr,\n ducTemplateFileHandleId: uploadResponse.fileHandleId,\n })\n } else if (!data.success && data.error) {\n setUploadDucTemplateError(\n `${DUC_TEMPLATE_UPLOAD_ERROR} ${\n (data.error as SynapseClientError).reason\n }`,\n )\n }\n }\n\n const {\n mutate: updateAccessRequirement,\n isPending: isUpdatingAccessRequirement,\n error: updateArError,\n } = useUpdateAccessRequirement<ManagedACTAccessRequirement>({\n onSuccess: () => onSave(),\n onError: () => onError(),\n })\n\n useImperativeHandle(ref, () => {\n return {\n save() {\n if (updatedAr) {\n const expirationPeriodOrErrorMessage =\n getValidExpirationPeriodOrErrorMessage(expirationPeriodDays)\n if (typeof expirationPeriodOrErrorMessage === 'string') {\n setExpirationPeriodError(expirationPeriodOrErrorMessage)\n onError()\n } else {\n updateAccessRequirement({\n ...updatedAr,\n expirationPeriod: expirationPeriodOrErrorMessage,\n })\n }\n }\n },\n }\n }, [expirationPeriodDays, updatedAr, updateAccessRequirement, onError])\n\n if (!updatedAr) {\n if (getArError) {\n return <Alert severity=\"error\">{getArError.reason}</Alert>\n } else {\n return <SynapseSpinner />\n }\n }\n\n return (\n <>\n <AccessRequirementWikiInstructions accessRequirement={updatedAr} />\n <Box>\n <Typography\n sx={{\n bgcolor: '#f5f5f5',\n borderBottom: '1px solid #ddd',\n color: '#333',\n px: 2,\n py: 1,\n }}\n >\n Data Access Request Parameters\n </Typography>\n <Box\n sx={{\n mt: 2,\n mb: 4,\n }}\n >\n <AccessorRequirements\n accessRequirement={updatedAr}\n onChange={updatedAr =>\n setUpdatedAr(updatedAr as ManagedACTAccessRequirement)\n }\n />\n <Box\n sx={{\n mb: 2,\n }}\n >\n <Typography\n variant=\"body1\"\n sx={{\n fontWeight: 700,\n }}\n >\n DUC\n </Typography>\n <FormControlLabel\n control={<Checkbox />}\n label=\"DUC is required.\"\n checked={updatedAr.isDUCRequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isDUCRequired: checked,\n })\n }\n />\n <SynapseErrorBoundary>\n <UploadDocumentField\n id=\"duc\"\n isLoading={isUpdatingAccessRequirement}\n uploadCallback={resp => uploadDucTemplateCallback(resp)}\n documentName=\"Template DUC\"\n fileHandleAssociations={\n ducTemplateFileHandleAssociation\n ? [ducTemplateFileHandleAssociation]\n : undefined\n }\n isMultiFileUpload={false}\n uploadBtnVariant=\"contained\"\n />\n {uploadDucTemplateError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {uploadDucTemplateError}\n </Alert>\n )}\n </SynapseErrorBoundary>\n <FormControlLabel\n label=\"IRB approval is required.\"\n checked={updatedAr.isIRBApprovalRequired}\n control={<Checkbox />}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isIRBApprovalRequired: checked,\n })\n }\n sx={{ ml: 0 }}\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Other documents are required.\"\n checked={updatedAr.areOtherAttachmentsRequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n areOtherAttachmentsRequired: checked,\n })\n }\n />\n <TextField\n id=\"expirationPeriod\"\n name=\"expirationPeriod\"\n label=\"Expiration period (days)\"\n value={expirationPeriodDays}\n error={Boolean(expirationPeriodError)}\n helperText={expirationPeriodError}\n sx={{ mt: 1 }}\n fullWidth\n onChange={event => {\n setExpirationPeriodError(null)\n setExpirationPeriodDays(event.target.value)\n }}\n onBlur={() => {\n const expirationPeriodOrErrorMessage =\n getValidExpirationPeriodOrErrorMessage(expirationPeriodDays)\n if (typeof expirationPeriodOrErrorMessage === 'string') {\n setExpirationPeriodError(expirationPeriodOrErrorMessage)\n }\n }}\n />\n <Box\n sx={{\n mt: 1,\n }}\n >\n <FormControlLabel\n control={<Checkbox />}\n label=\"Intended Data Use statement is required.\"\n checked={updatedAr.isIDURequired}\n onChange={(_event, checked: boolean) => {\n if (checked) {\n setUpdatedAr({\n ...updatedAr,\n isIDURequired: true,\n })\n } else {\n setUpdatedAr({\n ...updatedAr,\n isIDURequired: false,\n isIDUPublic: false,\n })\n }\n }}\n />\n <FormControlLabel\n control={<Checkbox />}\n label=\"Intended Data Use statements will be publicly available.\"\n checked={updatedAr.isIDUPublic}\n disabled={!updatedAr.isIDURequired}\n onChange={(_event, checked: boolean) =>\n setUpdatedAr({\n ...updatedAr,\n isIDUPublic: checked,\n })\n }\n />\n </Box>\n </Box>\n </Box>\n </Box>\n {updateArError && (\n <Alert severity=\"error\" sx={{ marginTop: 2 }}>\n {updateArError.reason}\n </Alert>\n )}\n </>\n )\n },\n)\n"],"mappings":";;;;;;;;;;;;;;AAqCA,IAAa,IACX,mDAEW,KACX,MACG;CACH,IAAI,MAAyB,IAAI,OAAO;CAExC,IAAM,IAAY;CAClB,IAAI,YAAY,KAAK,CAAoB,GAAG;EAC1C,IAAM,IAAM,OAAO,CAAoB;EAIvC,OAHI,IAAM,IACD,GAAG,EAAU,gEAEf,IAAM;CACf;CACA,OAAO,GAAG,EAAU,qBAAqB,EAAqB;AAChE,GAea,IAAoC,EAC/C,SACE,GACA,GACA;CACA,IAAM,EAAE,wBAAqB,WAAQ,eAAY,GAE3C,EAAE,MAAM,GAAmB,OAAO,MACtC,EACE,GACA,EAAE,WAAW,SAAS,CACxB;CACF,QAAgB;EACd,AAAI,MACF,EAAa,CAAiB,GAC9B,GACG,EAAkB,mBAAmB,GAAW,SAAS,CAC5D;CAEJ,GAAG,CAAC,CAAiB,CAAC;CAEtB,IAAM,CAAC,GAAwB,KAA6B,EAE1D,IAAI,GACA,CAAC,GAAuB,KAA4B,EAExD,IAAI,GAEA,CAAC,GAAW,KAChB,EAA6C,IAAI,GAC7C,CAAC,GAAsB,KAA2B,EAAiB,EAAE,GAErE,IAAmC,QAAc;EACrD,IAAI,GAAW,yBAOb,OAAO;GALL,cAAc,EAAU;GACxB,qBACE,EAAwB;GAC1B,mBAAmB,EAAU,GAAG,SAAS;EAEpC;CAGX,GAAG,CAAC,GAAW,yBAAyB,GAAW,EAAE,CAAC,GAEhD,KAA6B,MAA6B;EAC9D,IAAI,EAAK,QAAQ,EAAK,WAAW,GAAW;GAC1C,EAA0B,IAAI;GAE9B,IAAM,IAAqC,EAAK;GAChD,EAAa;IACX,GAAG;IACH,yBAAyB,EAAe;GAC1C,CAAC;EACH,OAAO,AAAI,CAAC,EAAK,WAAW,EAAK,SAC/B,EACE,GAAG,EAA0B,GAC1B,EAAK,MAA6B,QAEvC;CAEJ,GAEM,EACJ,QAAQ,GACR,WAAW,GACX,OAAO,MACL,EAAwD;EAC1D,iBAAiB,EAAO;EACxB,eAAe,EAAQ;CACzB,CAAC;CA8BD,OA5BA,EAAoB,UACX,EACL,OAAO;EACL,IAAI,GAAW;GACb,IAAM,IACJ,EAAuC,CAAoB;GAC7D,AAAI,OAAO,KAAmC,YAC5C,EAAyB,CAA8B,GACvD,EAAQ,KAER,EAAwB;IACtB,GAAG;IACH,kBAAkB;GACpB,CAAC;EAEL;CACF,EACF,IACC;EAAC;EAAsB;EAAW;EAAyB;CAAO,CAAC,GAEjE,IASH,kBAAA,GAAA,EAAA,UAAA;EACE,kBAAC,GAAD,EAAmC,mBAAmB,EAAY,CAAA;EAClE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;GACE,IAAI;IACF,SAAS;IACT,cAAc;IACd,OAAO;IACP,IAAI;IACJ,IAAI;GACN;aACD;EAEW,CAAA,GACZ,kBAAC,GAAD;GACE,IAAI;IACF,IAAI;IACJ,IAAI;GACN;aAJF,CAME,kBAAC,GAAD;IACE,mBAAmB;IACnB,WAAU,MACR,EAAa,CAAwC;GAExD,CAAA,GACD,kBAAC,GAAD;IACE,IAAI,EACF,IAAI,EACN;cAHF;KAKE,kBAAC,GAAD;MACE,SAAQ;MACR,IAAI,EACF,YAAY,IACd;gBACD;KAEW,CAAA;KACZ,kBAAC,GAAD;MACE,SAAS,kBAAC,GAAD,CAAW,CAAA;MACpB,OAAM;MACN,SAAS,EAAU;MACnB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,eAAe;MACjB,CAAC;KAEJ,CAAA;KACD,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;MACE,IAAG;MACH,WAAW;MACX,iBAAgB,MAAQ,EAA0B,CAAI;MACtD,cAAa;MACb,wBACE,IACI,CAAC,CAAgC,IACjC,KAAA;MAEN,mBAAmB;MACnB,kBAAiB;KAClB,CAAA,GACA,KACC,kBAAC,GAAD;MAAO,UAAS;MAAQ,IAAI,EAAE,WAAW,EAAE;gBACxC;KACI,CAAA,CAEW,EAAA,CAAA;KACtB,kBAAC,GAAD;MACE,OAAM;MACN,SAAS,EAAU;MACnB,SAAS,kBAAC,GAAD,CAAW,CAAA;MACpB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,uBAAuB;MACzB,CAAC;MAEH,IAAI,EAAE,IAAI,EAAE;KACb,CAAA;KACD,kBAAC,GAAD;MACE,SAAS,kBAAC,GAAD,CAAW,CAAA;MACpB,OAAM;MACN,SAAS,EAAU;MACnB,WAAW,GAAQ,MACjB,EAAa;OACX,GAAG;OACH,6BAA6B;MAC/B,CAAC;KAEJ,CAAA;KACD,kBAAC,GAAD;MACE,IAAG;MACH,MAAK;MACL,OAAM;MACN,OAAO;MACP,OAAO,EAAQ;MACf,YAAY;MACZ,IAAI,EAAE,IAAI,EAAE;MACZ,WAAA;MACA,WAAU,MAAS;OAEjB,AADA,EAAyB,IAAI,GAC7B,EAAwB,EAAM,OAAO,KAAK;MAC5C;MACA,cAAc;OACZ,IAAM,IACJ,EAAuC,CAAoB;OAC7D,AAAI,OAAO,KAAmC,YAC5C,EAAyB,CAA8B;MAE3D;KACD,CAAA;KACD,kBAAC,GAAD;MACE,IAAI,EACF,IAAI,EACN;gBAHF,CAKE,kBAAC,GAAD;OACE,SAAS,kBAAC,GAAD,CAAW,CAAA;OACpB,OAAM;OACN,SAAS,EAAU;OACnB,WAAW,GAAQ,MAAqB;QACtC,AACE,EADE,IACW;SACX,GAAG;SACH,eAAe;QACjB,IAEa;SACX,GAAG;SACH,eAAe;SACf,aAAa;QACf,CAAC;OAEL;MACD,CAAA,GACD,kBAAC,GAAD;OACE,SAAS,kBAAC,GAAD,CAAW,CAAA;OACpB,OAAM;OACN,SAAS,EAAU;OACnB,UAAU,CAAC,EAAU;OACrB,WAAW,GAAQ,MACjB,EAAa;QACX,GAAG;QACH,aAAa;OACf,CAAC;MAEJ,CAAA,CACE;;IACF;KACF;IACF,EAAA,CAAA;EACJ,KACC,kBAAC,GAAD;GAAO,UAAS;GAAQ,IAAI,EAAE,WAAW,EAAE;aACxC,EAAc;EACV,CAAA;CAET,EAAA,CAAA,IAvKE,IACK,kBAAC,GAAD;EAAO,UAAS;YAAS,EAAW;CAAc,CAAA,IAElD,kBAAC,GAAD,CAAiB,CAAA;AAsK9B,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareThisPage.js","names":[],"sources":["../../../src/components/ShareThisPage/ShareThisPage.tsx"],"sourcesContent":["import {\n Button,\n Dialog,\n DialogTitle,\n DialogContent,\n IconButton,\n Typography,\n Input,\n Box,\n} from '@mui/material'\nimport React from 'react'\nimport { useEffect, useState } from 'react'\nimport CloseIcon from '@mui/icons-material/Close'\nimport CopyToClipboardIcon from '../CopyToClipboardIcon'\nimport {\n LinkedinShareButton,\n LinkedinIcon,\n TwitterShareButton,\n BlueskyShareButton,\n BlueskyIcon,\n XIcon,\n} from 'react-share'\nimport styles from './ShareThisPage.module.scss'\nimport { ShareTwoTone } from '@mui/icons-material'\nimport { useCreateShortUrl } from '../../utils/hooks/useCreateShortUrl'\n\nexport type ShareThisPageProps = {\n shortIoPublicApiKey?: string\n domain?: string\n renderAs?: 'button' | 'icon'\n open?: boolean\n onClose?: () => void\n}\n\nconst ShareThisPage = ({\n shortIoPublicApiKey,\n domain = 'sageb.io',\n renderAs = 'button',\n open: externalOpen,\n onClose: externalOnClose,\n}: ShareThisPageProps): React.ReactNode => {\n const [url, setUrl] = useState('')\n const [internalOpen, setInternalOpen] = useState(false)\n\n // Use internal state if externalOpen is undefined\n // Otherwise, the open state is controlled externally by externalOpen\n const isControlled = externalOpen === undefined\n const open = isControlled ? internalOpen : externalOpen\n\n const handleOpen = () => {\n if (isControlled) {\n setInternalOpen(true)\n }\n }\n\n const handleClose = () => {\n if (isControlled) {\n setInternalOpen(false)\n }\n if (externalOnClose) {\n externalOnClose()\n }\n }\n\n const { mutate: createShortUrl, isPending } = useCreateShortUrl({\n shortIoPublicApiKey,\n domain,\n onSuccess: data => {\n setUrl(data)\n },\n onError: error => {\n console.error(error)\n setUrl(window.location.href)\n },\n })\n\n useEffect(() => {\n if (open) {\n createShortUrl()\n }\n }, [open, createShortUrl])\n\n return (\n <div>\n {renderAs === 'button' && (\n <Button\n variant=\"outlined\"\n startIcon={<ShareTwoTone className={styles.shareIcon} />}\n onClick={handleOpen}\n >\n Share\n </Button>\n )}\n\n <Dialog\n open={open}\n onClose={handleClose}\n maxWidth=\"xs\"\n className={styles.dialogPaper}\n >\n <DialogTitle className={styles.dialogTitle}>\n Share this page\n <IconButton onClick={handleClose} size=\"small\">\n <CloseIcon className={styles.closeIcon} />\n </IconButton>\n </DialogTitle>\n\n <DialogContent className={styles.dialogContent}>\n <Box className={styles.contentStack}>\n <div className={styles.shareButtonsContainer}>\n <LinkedinShareButton url={url} aria-label=\"Share on LinkedIn\">\n <div className={styles.shareItem}>\n <LinkedinIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n LinkedIn\n </Typography>\n </div>\n </LinkedinShareButton>\n\n <TwitterShareButton url={url} aria-label=\"Share on X\">\n <div className={styles.shareItem}>\n <XIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n X\n </Typography>\n </div>\n </TwitterShareButton>\n\n <BlueskyShareButton url={url} aria-label=\"Share on Bluesky\">\n <div className={styles.shareItem}>\n <BlueskyIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n Bluesky\n </Typography>\n </div>\n </BlueskyShareButton>\n </div>\n\n <div className={styles.copySection}>\n <Typography className={styles.copyLabel}>Page Link</Typography>\n <div className={styles.copyRow}>\n <Input\n className={styles.urlInput}\n value={url}\n readOnly\n aria-label=\"Page URL\"\n placeholder={isPending ? 'Generating link...' : ''}\n />\n <CopyToClipboardIcon\n value={url}\n sizePx={24}\n className={styles.copyButton}\n />\n </div>\n </div>\n </Box>\n </DialogContent>\n </Dialog>\n </div>\n )\n}\n\nexport default ShareThisPage\n"],"mappings":";;;;;;;;;;AAkCA,IAAM,KAAiB,EACrB,wBACA,YAAS,YACT,cAAW,UACX,MAAM,GACN,SAAS,QACgC;CACzC,IAAM,CAAC,GAAK,KAAU,EAAS,
|
|
1
|
+
{"version":3,"file":"ShareThisPage.js","names":[],"sources":["../../../src/components/ShareThisPage/ShareThisPage.tsx"],"sourcesContent":["import {\n Button,\n Dialog,\n DialogTitle,\n DialogContent,\n IconButton,\n Typography,\n Input,\n Box,\n} from '@mui/material'\nimport React from 'react'\nimport { useEffect, useState } from 'react'\nimport CloseIcon from '@mui/icons-material/Close'\nimport CopyToClipboardIcon from '../CopyToClipboardIcon'\nimport {\n LinkedinShareButton,\n LinkedinIcon,\n TwitterShareButton,\n BlueskyShareButton,\n BlueskyIcon,\n XIcon,\n} from 'react-share'\nimport styles from './ShareThisPage.module.scss'\nimport { ShareTwoTone } from '@mui/icons-material'\nimport { useCreateShortUrl } from '../../utils/hooks/useCreateShortUrl'\n\nexport type ShareThisPageProps = {\n shortIoPublicApiKey?: string\n domain?: string\n renderAs?: 'button' | 'icon'\n open?: boolean\n onClose?: () => void\n}\n\nconst ShareThisPage = ({\n shortIoPublicApiKey,\n domain = 'sageb.io',\n renderAs = 'button',\n open: externalOpen,\n onClose: externalOnClose,\n}: ShareThisPageProps): React.ReactNode => {\n const [url, setUrl] = useState('')\n const [internalOpen, setInternalOpen] = useState(false)\n\n // Use internal state if externalOpen is undefined\n // Otherwise, the open state is controlled externally by externalOpen\n const isControlled = externalOpen === undefined\n const open = isControlled ? internalOpen : externalOpen\n\n const handleOpen = () => {\n if (isControlled) {\n setInternalOpen(true)\n }\n }\n\n const handleClose = () => {\n if (isControlled) {\n setInternalOpen(false)\n }\n if (externalOnClose) {\n externalOnClose()\n }\n }\n\n const { mutate: createShortUrl, isPending } = useCreateShortUrl({\n shortIoPublicApiKey,\n domain,\n onSuccess: data => {\n setUrl(data)\n },\n onError: error => {\n console.error(error)\n setUrl(window.location.href)\n },\n })\n\n useEffect(() => {\n if (open) {\n createShortUrl()\n }\n }, [open, createShortUrl])\n\n return (\n <div>\n {renderAs === 'button' && (\n <Button\n variant=\"outlined\"\n startIcon={<ShareTwoTone className={styles.shareIcon} />}\n onClick={handleOpen}\n >\n Share\n </Button>\n )}\n\n <Dialog\n open={open}\n onClose={handleClose}\n maxWidth=\"xs\"\n className={styles.dialogPaper}\n >\n <DialogTitle className={styles.dialogTitle}>\n Share this page\n <IconButton onClick={handleClose} size=\"small\">\n <CloseIcon className={styles.closeIcon} />\n </IconButton>\n </DialogTitle>\n\n <DialogContent className={styles.dialogContent}>\n <Box className={styles.contentStack}>\n <div className={styles.shareButtonsContainer}>\n <LinkedinShareButton url={url} aria-label=\"Share on LinkedIn\">\n <div className={styles.shareItem}>\n <LinkedinIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n LinkedIn\n </Typography>\n </div>\n </LinkedinShareButton>\n\n <TwitterShareButton url={url} aria-label=\"Share on X\">\n <div className={styles.shareItem}>\n <XIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n X\n </Typography>\n </div>\n </TwitterShareButton>\n\n <BlueskyShareButton url={url} aria-label=\"Share on Bluesky\">\n <div className={styles.shareItem}>\n <BlueskyIcon size={48} round />\n <Typography variant=\"body1\" className={styles.shareItemLabel}>\n Bluesky\n </Typography>\n </div>\n </BlueskyShareButton>\n </div>\n\n <div className={styles.copySection}>\n <Typography className={styles.copyLabel}>Page Link</Typography>\n <div className={styles.copyRow}>\n <Input\n className={styles.urlInput}\n value={url}\n readOnly\n aria-label=\"Page URL\"\n placeholder={isPending ? 'Generating link...' : ''}\n />\n <CopyToClipboardIcon\n value={url}\n sizePx={24}\n className={styles.copyButton}\n />\n </div>\n </div>\n </Box>\n </DialogContent>\n </Dialog>\n </div>\n )\n}\n\nexport default ShareThisPage\n"],"mappings":";;;;;;;;;;AAkCA,IAAM,KAAiB,EACrB,wBACA,YAAS,YACT,cAAW,UACX,MAAM,GACN,SAAS,QACgC;CACzC,IAAM,CAAC,GAAK,KAAU,EAAS,EAAE,GAC3B,CAAC,GAAc,KAAmB,EAAS,EAAK,GAIhD,IAAe,MAAiB,KAAA,GAChC,IAAO,IAAe,IAAe,GAErC,UAAmB;EACvB,AAAI,KACF,EAAgB,EAAI;CAExB,GAEM,UAAoB;EAIxB,AAHI,KACF,EAAgB,EAAK,GAEnB,KACF,EAAgB;CAEpB,GAEM,EAAE,QAAQ,GAAgB,iBAAc,EAAkB;EAC9D;EACA;EACA,YAAW,MAAQ;GACjB,EAAO,CAAI;EACb;EACA,UAAS,MAAS;GAEhB,AADA,QAAQ,MAAM,CAAK,GACnB,EAAO,OAAO,SAAS,IAAI;EAC7B;CACF,CAAC;CAQD,OANA,QAAgB;EACd,AAAI,KACF,EAAe;CAEnB,GAAG,CAAC,GAAM,CAAc,CAAC,GAGvB,kBAAC,OAAD,EAAA,UAAA,CACG,MAAa,YACZ,kBAAC,GAAD;EACE,SAAQ;EACR,WAAW,kBAAC,GAAD,EAAc,WAAW,EAAO,UAAY,CAAA;EACvD,SAAS;YACV;CAEO,CAAA,GAGV,kBAAC,GAAD;EACQ;EACN,SAAS;EACT,UAAS;EACT,WAAW,EAAO;YAJpB,CAME,kBAAC,GAAD;GAAa,WAAW,EAAO;aAA/B,CAA4C,mBAE1C,kBAAC,GAAD;IAAY,SAAS;IAAa,MAAK;cACrC,kBAAC,GAAD,EAAW,WAAW,EAAO,UAAY,CAAA;GAC/B,CAAA,CACD;MAEb,kBAAC,GAAD;GAAe,WAAW,EAAO;aAC/B,kBAAC,GAAD;IAAK,WAAW,EAAO;cAAvB,CACE,kBAAC,OAAD;KAAK,WAAW,EAAO;eAAvB;MACE,kBAAC,GAAD;OAA0B;OAAK,cAAW;iBACxC,kBAAC,OAAD;QAAK,WAAW,EAAO;kBAAvB,CACE,kBAAC,GAAD;SAAc,MAAM;SAAI,OAAA;QAAO,CAAA,GAC/B,kBAAC,GAAD;SAAY,SAAQ;SAAQ,WAAW,EAAO;mBAAgB;QAElD,CAAA,CACT;;MACc,CAAA;MAErB,kBAAC,GAAD;OAAyB;OAAK,cAAW;iBACvC,kBAAC,OAAD;QAAK,WAAW,EAAO;kBAAvB,CACE,kBAAC,GAAD;SAAO,MAAM;SAAI,OAAA;QAAO,CAAA,GACxB,kBAAC,GAAD;SAAY,SAAQ;SAAQ,WAAW,EAAO;mBAAgB;QAElD,CAAA,CACT;;MACa,CAAA;MAEpB,kBAAC,GAAD;OAAyB;OAAK,cAAW;iBACvC,kBAAC,OAAD;QAAK,WAAW,EAAO;kBAAvB,CACE,kBAAC,GAAD;SAAa,MAAM;SAAI,OAAA;QAAO,CAAA,GAC9B,kBAAC,GAAD;SAAY,SAAQ;SAAQ,WAAW,EAAO;mBAAgB;QAElD,CAAA,CACT;;MACa,CAAA;KACjB;QAEL,kBAAC,OAAD;KAAK,WAAW,EAAO;eAAvB,CACE,kBAAC,GAAD;MAAY,WAAW,EAAO;gBAAW;KAAqB,CAAA,GAC9D,kBAAC,OAAD;MAAK,WAAW,EAAO;gBAAvB,CACE,kBAAC,GAAD;OACE,WAAW,EAAO;OAClB,OAAO;OACP,UAAA;OACA,cAAW;OACX,aAAa,IAAY,uBAAuB;MACjD,CAAA,GACD,kBAAC,GAAD;OACE,OAAO;OACP,QAAQ;OACR,WAAW,EAAO;MACnB,CAAA,CACE;OACF;MACF;;EACQ,CAAA,CACT;GACL,EAAA,CAAA;AAET"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShowMore.js","names":[],"sources":["../../../src/components/ShowMore/ShowMore.tsx"],"sourcesContent":["import { Component, MouseEvent } from 'react'\n\nconst CHAR_COUNT_CUTOFF = 400\n\ntype ShowMoreState = {\n showMore: boolean\n}\n\nexport type ShowMoreProps = {\n summary: string\n maxCharacterCount?: number\n}\n\nexport default class ShowMore extends Component<ShowMoreProps, ShowMoreState> {\n constructor(props: ShowMoreProps) {\n super(props)\n this.state = {\n showMore: false,\n }\n this.toggleShowMore = this.toggleShowMore.bind(this)\n }\n\n public toggleShowMore(event: MouseEvent<HTMLAnchorElement>) {\n event.preventDefault()\n this.setState({\n showMore: true,\n })\n }\n\n getCutoff = (summary: string, maxCharacterCount: number) => {\n let previewText = ''\n if (!summary) {\n return { previewText }\n }\n let hiddenText = ''\n const summarySplit = summary.split(' ')\n // find num words to join such that its >= char_count_cutoff\n let i = 0\n while (previewText.length < maxCharacterCount && i < summarySplit.length) {\n previewText += `${summarySplit[i]} `\n i += 1\n }\n if (i < summarySplit.length - 1) {\n hiddenText = summarySplit.slice(i).join(' ')\n }\n return { previewText, hiddenText }\n }\n\n public render() {\n const { summary, maxCharacterCount = CHAR_COUNT_CUTOFF } = this.props\n const meetsCharRequirements = summary && summary.length >= maxCharacterCount\n const { previewText, hiddenText } = this.getCutoff(\n summary,\n maxCharacterCount,\n )\n const showMoreButton = meetsCharRequirements && (\n <a\n style={{ fontSize: '14px', cursor: 'pointer', marginLeft: '5px' }}\n onClick={this.toggleShowMore}\n className=\"highlight-link\"\n >\n ...Show More\n </a>\n )\n return (\n <>\n <span>\n {previewText}\n <span className={this.state.showMore ? '' : 'SRC-hidden'}>\n {hiddenText}\n </span>\n </span>\n {!this.state.showMore && showMoreButton}\n </>\n )\n }\n}\n"],"mappings":";;;AAEA,IAAM,IAAoB,KAWL,IAArB,cAAsC,EAAwC;CAC5E,YAAY,GAAsB;
|
|
1
|
+
{"version":3,"file":"ShowMore.js","names":[],"sources":["../../../src/components/ShowMore/ShowMore.tsx"],"sourcesContent":["import { Component, MouseEvent } from 'react'\n\nconst CHAR_COUNT_CUTOFF = 400\n\ntype ShowMoreState = {\n showMore: boolean\n}\n\nexport type ShowMoreProps = {\n summary: string\n maxCharacterCount?: number\n}\n\nexport default class ShowMore extends Component<ShowMoreProps, ShowMoreState> {\n constructor(props: ShowMoreProps) {\n super(props)\n this.state = {\n showMore: false,\n }\n this.toggleShowMore = this.toggleShowMore.bind(this)\n }\n\n public toggleShowMore(event: MouseEvent<HTMLAnchorElement>) {\n event.preventDefault()\n this.setState({\n showMore: true,\n })\n }\n\n getCutoff = (summary: string, maxCharacterCount: number) => {\n let previewText = ''\n if (!summary) {\n return { previewText }\n }\n let hiddenText = ''\n const summarySplit = summary.split(' ')\n // find num words to join such that its >= char_count_cutoff\n let i = 0\n while (previewText.length < maxCharacterCount && i < summarySplit.length) {\n previewText += `${summarySplit[i]} `\n i += 1\n }\n if (i < summarySplit.length - 1) {\n hiddenText = summarySplit.slice(i).join(' ')\n }\n return { previewText, hiddenText }\n }\n\n public render() {\n const { summary, maxCharacterCount = CHAR_COUNT_CUTOFF } = this.props\n const meetsCharRequirements = summary && summary.length >= maxCharacterCount\n const { previewText, hiddenText } = this.getCutoff(\n summary,\n maxCharacterCount,\n )\n const showMoreButton = meetsCharRequirements && (\n <a\n style={{ fontSize: '14px', cursor: 'pointer', marginLeft: '5px' }}\n onClick={this.toggleShowMore}\n className=\"highlight-link\"\n >\n ...Show More\n </a>\n )\n return (\n <>\n <span>\n {previewText}\n <span className={this.state.showMore ? '' : 'SRC-hidden'}>\n {hiddenText}\n </span>\n </span>\n {!this.state.showMore && showMoreButton}\n </>\n )\n }\n}\n"],"mappings":";;;AAEA,IAAM,IAAoB,KAWL,IAArB,cAAsC,EAAwC;CAC5E,YAAY,GAAsB;EAKhC,AAJA,MAAM,CAAK,GACX,KAAK,QAAQ,EACX,UAAU,GACZ,GACA,KAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;CACrD;CAEA,eAAsB,GAAsC;EAE1D,AADA,EAAM,eAAe,GACrB,KAAK,SAAS,EACZ,UAAU,GACZ,CAAC;CACH;CAEA,aAAa,GAAiB,MAA8B;EAC1D,IAAI,IAAc;EAClB,IAAI,CAAC,GACH,OAAO,EAAE,eAAY;EAEvB,IAAI,IAAa,IACX,IAAe,EAAQ,MAAM,GAAG,GAElC,IAAI;EACR,OAAO,EAAY,SAAS,KAAqB,IAAI,EAAa,SAEhE,AADA,KAAe,GAAG,EAAa,GAAG,IAClC,KAAK;EAKP,OAHI,IAAI,EAAa,SAAS,MAC5B,IAAa,EAAa,MAAM,CAAC,EAAE,KAAK,GAAG,IAEtC;GAAE;GAAa;EAAW;CACnC;CAEA,SAAgB;EACd,IAAM,EAAE,YAAS,uBAAoB,MAAsB,KAAK,OAC1D,IAAwB,KAAW,EAAQ,UAAU,GACrD,EAAE,gBAAa,kBAAe,KAAK,UACvC,GACA,CACF,GACM,IAAiB,KACrB,kBAAC,KAAD;GACE,OAAO;IAAE,UAAU;IAAQ,QAAQ;IAAW,YAAY;GAAM;GAChE,SAAS,KAAK;GACd,WAAU;aACX;EAEE,CAAA;EAEL,OACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,QAAD,EAAA,UAAA,CACG,GACD,kBAAC,QAAD;GAAM,WAAW,KAAK,MAAM,WAAW,KAAK;aACzC;EACG,CAAA,CACF,EAAA,CAAA,GACL,CAAC,KAAK,MAAM,YAAY,CACzB,EAAA,CAAA;CAEN;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignInButton.js","names":[],"sources":["../../src/components/SignInButton.tsx"],"sourcesContent":["import React from 'react'\nimport { SRC_SIGN_IN_CLASS } from '@/utils/SynapseConstants'\nimport { Link } from '@mui/material'\nimport { CSSProperties } from 'react'\n\nexport type SignInProps = {\n className?: string\n style?: CSSProperties\n}\n// An event listener for the class SRC_SIGN_IN_CLASS is needed to trigger a download\n// modal\nconst SignInButton = ({ className, style }: SignInProps): React.ReactNode => {\n return (\n <Link\n type=\"button\"\n style={style}\n className={`SignInButton ${SRC_SIGN_IN_CLASS} ${className}`}\n >\n Sign In\n </Link>\n )\n}\n\nexport default SignInButton\n"],"mappings":";;;;;AAWA,IAAM,KAAgB,EAAE,cAAW,eAE/B,kBAAC,GAAD;CACE,MAAK;CACE;CACP,WAAW,gBAAgB,EAAkB,GAAG;WACjD;
|
|
1
|
+
{"version":3,"file":"SignInButton.js","names":[],"sources":["../../src/components/SignInButton.tsx"],"sourcesContent":["import React from 'react'\nimport { SRC_SIGN_IN_CLASS } from '@/utils/SynapseConstants'\nimport { Link } from '@mui/material'\nimport { CSSProperties } from 'react'\n\nexport type SignInProps = {\n className?: string\n style?: CSSProperties\n}\n// An event listener for the class SRC_SIGN_IN_CLASS is needed to trigger a download\n// modal\nconst SignInButton = ({ className, style }: SignInProps): React.ReactNode => {\n return (\n <Link\n type=\"button\"\n style={style}\n className={`SignInButton ${SRC_SIGN_IN_CLASS} ${className}`}\n >\n Sign In\n </Link>\n )\n}\n\nexport default SignInButton\n"],"mappings":";;;;;AAWA,IAAM,KAAgB,EAAE,cAAW,eAE/B,kBAAC,GAAD;CACE,MAAK;CACE;CACP,WAAW,gBAAgB,EAAkB,GAAG;WACjD;AAEK,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignInRequiredModal.js","names":[],"sources":["../../../src/components/SignInRequiredModal/SignInRequiredModal.tsx"],"sourcesContent":["import { SRC_SIGN_IN_CLASS } from '@/utils/SynapseConstants'\nimport {\n ConfirmationDialog,\n ConfirmationDialogProps,\n} from '../ConfirmationDialog/ConfirmationDialog'\n\nexport type SignInRequiredModalProps = Partial<\n Omit<ConfirmationDialogProps, 'title' | 'onConfirm' | 'onCancel'>\n> & {\n onHide: () => void\n}\n\nexport const CONFIRM_BUTTON_TEXT = 'Sign in'\nexport const DEFAULT_CONTENT =\n 'You will need to sign in for access to that resource.'\nexport const TITLE = 'Sign In Required'\n\nexport function SignInRequiredModal({\n onHide,\n content = DEFAULT_CONTENT,\n open = true,\n ...rest\n}: SignInRequiredModalProps) {\n return (\n <ConfirmationDialog\n {...rest}\n open={open}\n title={TITLE}\n content={content}\n onCancel={onHide}\n onConfirm={onHide}\n confirmButtonProps={{\n ...rest.confirmButtonProps,\n children: rest.confirmButtonProps?.children ?? CONFIRM_BUTTON_TEXT,\n className: SRC_SIGN_IN_CLASS,\n }}\n />\n )\n}\n"],"mappings":";;;;AAYA,IAAa,IAAsB,WACtB,IACX,yDACW,IAAQ;AAErB,SAAgB,EAAoB,EAClC,WACA,aAAU,GACV,UAAO,IACP,GAAG,KACwB;
|
|
1
|
+
{"version":3,"file":"SignInRequiredModal.js","names":[],"sources":["../../../src/components/SignInRequiredModal/SignInRequiredModal.tsx"],"sourcesContent":["import { SRC_SIGN_IN_CLASS } from '@/utils/SynapseConstants'\nimport {\n ConfirmationDialog,\n ConfirmationDialogProps,\n} from '../ConfirmationDialog/ConfirmationDialog'\n\nexport type SignInRequiredModalProps = Partial<\n Omit<ConfirmationDialogProps, 'title' | 'onConfirm' | 'onCancel'>\n> & {\n onHide: () => void\n}\n\nexport const CONFIRM_BUTTON_TEXT = 'Sign in'\nexport const DEFAULT_CONTENT =\n 'You will need to sign in for access to that resource.'\nexport const TITLE = 'Sign In Required'\n\nexport function SignInRequiredModal({\n onHide,\n content = DEFAULT_CONTENT,\n open = true,\n ...rest\n}: SignInRequiredModalProps) {\n return (\n <ConfirmationDialog\n {...rest}\n open={open}\n title={TITLE}\n content={content}\n onCancel={onHide}\n onConfirm={onHide}\n confirmButtonProps={{\n ...rest.confirmButtonProps,\n children: rest.confirmButtonProps?.children ?? CONFIRM_BUTTON_TEXT,\n className: SRC_SIGN_IN_CLASS,\n }}\n />\n )\n}\n"],"mappings":";;;;AAYA,IAAa,IAAsB,WACtB,IACX,yDACW,IAAQ;AAErB,SAAgB,EAAoB,EAClC,WACA,aAAU,GACV,UAAO,IACP,GAAG,KACwB;CAC3B,OACE,kBAAC,GAAD;EACE,GAAI;EACE;EACN,OAAO;EACE;EACT,UAAU;EACV,WAAW;EACX,oBAAoB;GAClB,GAAG,EAAK;GACR,UAAU,EAAK,oBAAoB,YAAA;GACnC,WAAW;EACb;CACD,CAAA;AAEL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonButton.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonButton.tsx"],"sourcesContent":["import { Button, Skeleton } from '@mui/material'\n\ntype SkeletonButtonProps = { placeholderText?: string }\n\n/**\n * Skeleton of a MUI button. The `placeholderText` prompt can be used to customise the length to roughly match the existing button\n */\nexport function SkeletonButton({\n placeholderText = 'Placeholder',\n}: SkeletonButtonProps) {\n return (\n <Skeleton variant=\"rectangular\">\n <Button>{placeholderText}</Button>\n </Skeleton>\n )\n}\n\nexport default SkeletonButton\n"],"mappings":";;;AAOA,SAAgB,EAAe,EAC7B,qBAAkB,iBACI;
|
|
1
|
+
{"version":3,"file":"SkeletonButton.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonButton.tsx"],"sourcesContent":["import { Button, Skeleton } from '@mui/material'\n\ntype SkeletonButtonProps = { placeholderText?: string }\n\n/**\n * Skeleton of a MUI button. The `placeholderText` prompt can be used to customise the length to roughly match the existing button\n */\nexport function SkeletonButton({\n placeholderText = 'Placeholder',\n}: SkeletonButtonProps) {\n return (\n <Skeleton variant=\"rectangular\">\n <Button>{placeholderText}</Button>\n </Skeleton>\n )\n}\n\nexport default SkeletonButton\n"],"mappings":";;;AAOA,SAAgB,EAAe,EAC7B,qBAAkB,iBACI;CACtB,OACE,kBAAC,GAAD;EAAU,SAAQ;YAChB,kBAAC,GAAD,EAAA,UAAS,EAAwB,CAAA;CACzB,CAAA;AAEd"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonInlineBlock.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonInlineBlock.tsx"],"sourcesContent":["import Skeleton, { SkeletonProps } from '@mui/material/Skeleton'\n\n/**\n * Skeleton with a display value of `inline-block`. MUI applies `display: block` with high specificity, so it's easiest to just apply the style to the component.\n */\nexport function SkeletonInlineBlock(props: SkeletonProps) {\n return (\n <Skeleton\n style={{ ...props.style, display: 'inline-block' }}\n {...props}\n ></Skeleton>\n )\n}\n"],"mappings":";;;AAKA,SAAgB,EAAoB,GAAsB;
|
|
1
|
+
{"version":3,"file":"SkeletonInlineBlock.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonInlineBlock.tsx"],"sourcesContent":["import Skeleton, { SkeletonProps } from '@mui/material/Skeleton'\n\n/**\n * Skeleton with a display value of `inline-block`. MUI applies `display: block` with high specificity, so it's easiest to just apply the style to the component.\n */\nexport function SkeletonInlineBlock(props: SkeletonProps) {\n return (\n <Skeleton\n style={{ ...props.style, display: 'inline-block' }}\n {...props}\n ></Skeleton>\n )\n}\n"],"mappings":";;;AAKA,SAAgB,EAAoB,GAAsB;CACxD,OACE,kBAAC,GAAD;EACE,OAAO;GAAE,GAAG,EAAM;GAAO,SAAS;EAAe;EACjD,GAAI;CACK,CAAA;AAEf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonParagraph.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonParagraph.tsx"],"sourcesContent":["import { Fragment, ReactNode, useEffect, useState } from 'react'\nimport Skeleton from '@mui/material/Skeleton'\nimport { times } from 'lodash-es'\n\nexport type SkeletonParagraphProps = {\n numRows?: number\n rowHeight?: string\n className?: string\n}\n\n/**\n * Skeleton component designed to mimic a paragraph.\n */\nexport function SkeletonParagraph({\n numRows = 5,\n rowHeight,\n className,\n}: SkeletonParagraphProps) {\n const [skeletons, setSkeletons] = useState<ReactNode[]>([])\n\n useEffect(() => {\n const elements: ReactNode[] = []\n times(numRows, i => {\n elements.push(\n <Fragment key={i}>\n <Skeleton\n height={rowHeight}\n width={i === numRows - 1 ? '35%' : '100%'}\n ></Skeleton>\n </Fragment>,\n )\n })\n setSkeletons(elements)\n }, [numRows, rowHeight])\n\n return <div className={className}>{skeletons}</div>\n}\n"],"mappings":";;;;;AAaA,SAAgB,EAAkB,EAChC,aAAU,GACV,cACA,gBACyB;CACzB,IAAM,CAAC,GAAW,KAAgB,EAAsB,
|
|
1
|
+
{"version":3,"file":"SkeletonParagraph.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonParagraph.tsx"],"sourcesContent":["import { Fragment, ReactNode, useEffect, useState } from 'react'\nimport Skeleton from '@mui/material/Skeleton'\nimport { times } from 'lodash-es'\n\nexport type SkeletonParagraphProps = {\n numRows?: number\n rowHeight?: string\n className?: string\n}\n\n/**\n * Skeleton component designed to mimic a paragraph.\n */\nexport function SkeletonParagraph({\n numRows = 5,\n rowHeight,\n className,\n}: SkeletonParagraphProps) {\n const [skeletons, setSkeletons] = useState<ReactNode[]>([])\n\n useEffect(() => {\n const elements: ReactNode[] = []\n times(numRows, i => {\n elements.push(\n <Fragment key={i}>\n <Skeleton\n height={rowHeight}\n width={i === numRows - 1 ? '35%' : '100%'}\n ></Skeleton>\n </Fragment>,\n )\n })\n setSkeletons(elements)\n }, [numRows, rowHeight])\n\n return <div className={className}>{skeletons}</div>\n}\n"],"mappings":";;;;;AAaA,SAAgB,EAAkB,EAChC,aAAU,GACV,cACA,gBACyB;CACzB,IAAM,CAAC,GAAW,KAAgB,EAAsB,CAAC,CAAC;CAiB1D,OAfA,QAAgB;EACd,IAAM,IAAwB,CAAC;EAW/B,AAVA,EAAM,IAAS,MAAK;GAClB,EAAS,KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IACE,QAAQ;IACR,OAAO,MAAM,IAAU,IAAI,QAAQ;GAC1B,CAAA,EACH,GALK,CAKL,CACZ;EACF,CAAC,GACD,EAAa,CAAQ;CACvB,GAAG,CAAC,GAAS,CAAS,CAAC,GAEhB,kBAAC,OAAD;EAAgB;YAAY;CAAe,CAAA;AACpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkeletonTable.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonTable.tsx"],"sourcesContent":["import { Fragment, ReactNode, useEffect, useState } from 'react'\nimport Skeleton from '@mui/material/Skeleton'\nimport { times } from 'lodash-es'\nimport { Box, BoxProps } from '@mui/material'\n\nfunction getRandomInt(min: number, max: number) {\n return Math.floor(Math.random() * (max - min) + min)\n}\n\nexport type SkeletonTableProps = BoxProps & {\n numRows?: number\n numCols?: number\n rowHeight?: string\n fullWidthCells?: boolean\n}\n\n/**\n * Skeleton component designed to mimic a table with an arbitrary number of rows and columns.\n *\n * Implemented using CSS grid.\n */\nexport function SkeletonTable(props: SkeletonTableProps) {\n const {\n numRows = 5,\n numCols = 2,\n rowHeight,\n fullWidthCells = false,\n ...boxProps\n } = props\n const [skeletons, setSkeletons] = useState<ReactNode[]>([])\n\n useEffect(() => {\n const elements: ReactNode[] = []\n times(numRows * numCols, i => {\n elements.push(\n <Fragment key={i}>\n <Skeleton\n height={rowHeight}\n width={fullWidthCells ? '100%' : `${getRandomInt(35, 75)}%`}\n ></Skeleton>\n </Fragment>,\n )\n })\n setSkeletons(elements)\n }, [numRows, numCols, rowHeight, fullWidthCells])\n\n return (\n <Box\n {...boxProps}\n sx={{\n display: 'grid',\n gridTemplateColumns: `auto `.repeat(numCols),\n gap: '8px',\n ...boxProps.sx,\n }}\n >\n {skeletons}\n </Box>\n )\n}\n"],"mappings":";;;;;;AAKA,SAAS,EAAa,GAAa,GAAa;
|
|
1
|
+
{"version":3,"file":"SkeletonTable.js","names":[],"sources":["../../../src/components/Skeleton/SkeletonTable.tsx"],"sourcesContent":["import { Fragment, ReactNode, useEffect, useState } from 'react'\nimport Skeleton from '@mui/material/Skeleton'\nimport { times } from 'lodash-es'\nimport { Box, BoxProps } from '@mui/material'\n\nfunction getRandomInt(min: number, max: number) {\n return Math.floor(Math.random() * (max - min) + min)\n}\n\nexport type SkeletonTableProps = BoxProps & {\n numRows?: number\n numCols?: number\n rowHeight?: string\n fullWidthCells?: boolean\n}\n\n/**\n * Skeleton component designed to mimic a table with an arbitrary number of rows and columns.\n *\n * Implemented using CSS grid.\n */\nexport function SkeletonTable(props: SkeletonTableProps) {\n const {\n numRows = 5,\n numCols = 2,\n rowHeight,\n fullWidthCells = false,\n ...boxProps\n } = props\n const [skeletons, setSkeletons] = useState<ReactNode[]>([])\n\n useEffect(() => {\n const elements: ReactNode[] = []\n times(numRows * numCols, i => {\n elements.push(\n <Fragment key={i}>\n <Skeleton\n height={rowHeight}\n width={fullWidthCells ? '100%' : `${getRandomInt(35, 75)}%`}\n ></Skeleton>\n </Fragment>,\n )\n })\n setSkeletons(elements)\n }, [numRows, numCols, rowHeight, fullWidthCells])\n\n return (\n <Box\n {...boxProps}\n sx={{\n display: 'grid',\n gridTemplateColumns: `auto `.repeat(numCols),\n gap: '8px',\n ...boxProps.sx,\n }}\n >\n {skeletons}\n </Box>\n )\n}\n"],"mappings":";;;;;;AAKA,SAAS,EAAa,GAAa,GAAa;CAC9C,OAAO,KAAK,MAAM,KAAK,OAAO,KAAK,IAAM,KAAO,CAAG;AACrD;AAcA,SAAgB,EAAc,GAA2B;CACvD,IAAM,EACJ,aAAU,GACV,aAAU,GACV,cACA,oBAAiB,IACjB,GAAG,MACD,GACE,CAAC,GAAW,KAAgB,EAAsB,CAAC,CAAC;CAiB1D,OAfA,QAAgB;EACd,IAAM,IAAwB,CAAC;EAW/B,AAVA,EAAM,IAAU,IAAS,MAAK;GAC5B,EAAS,KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;IACE,QAAQ;IACR,OAAO,IAAiB,SAAS,GAAG,EAAa,IAAI,EAAE,EAAE;GAChD,CAAA,EACH,GALK,CAKL,CACZ;EACF,CAAC,GACD,EAAa,CAAQ;CACvB,GAAG;EAAC;EAAS;EAAS;EAAW;CAAc,CAAC,GAG9C,kBAAC,GAAD;EACE,GAAI;EACJ,IAAI;GACF,SAAS;GACT,qBAAqB,QAAQ,OAAO,CAAO;GAC3C,KAAK;GACL,GAAG,EAAS;EACd;YAEC;CACE,CAAA;AAET"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartButton.js","names":[],"sources":["../../../src/components/SmartLink/SmartButton.tsx"],"sourcesContent":["import { Button, ButtonProps } from '@mui/material'\nimport { useSmartLink } from './useSmartLink'\n\ninterface SmartButtonProps extends ButtonProps {\n href?: string\n target?: string\n}\n\nexport function SmartButton({\n href,\n target,\n children,\n ...props\n}: SmartButtonProps) {\n const navProps = useSmartLink(href, target)\n return (\n <Button {...navProps} {...props}>\n {children}\n </Button>\n )\n}\n"],"mappings":";;;;AAQA,SAAgB,EAAY,EAC1B,SACA,WACA,aACA,GAAG,KACgB;
|
|
1
|
+
{"version":3,"file":"SmartButton.js","names":[],"sources":["../../../src/components/SmartLink/SmartButton.tsx"],"sourcesContent":["import { Button, ButtonProps } from '@mui/material'\nimport { useSmartLink } from './useSmartLink'\n\ninterface SmartButtonProps extends ButtonProps {\n href?: string\n target?: string\n}\n\nexport function SmartButton({\n href,\n target,\n children,\n ...props\n}: SmartButtonProps) {\n const navProps = useSmartLink(href, target)\n return (\n <Button {...navProps} {...props}>\n {children}\n </Button>\n )\n}\n"],"mappings":";;;;AAQA,SAAgB,EAAY,EAC1B,SACA,WACA,aACA,GAAG,KACgB;CAEnB,OACE,kBAAC,GAAD;EAAQ,GAFO,EAAa,GAAM,CAEtB;EAAU,GAAI;EACvB;CACK,CAAA;AAEZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartLink.js","names":[],"sources":["../../../src/components/SmartLink/SmartLink.tsx"],"sourcesContent":["import { Link as MuiLink, LinkProps as MuiLinkProps } from '@mui/material'\nimport { useSmartLink } from './useSmartLink'\n\ninterface SmartLinkProps extends MuiLinkProps {\n href: string\n}\n\nexport function SmartLink({\n href,\n target,\n children,\n ...props\n}: SmartLinkProps) {\n const navProps = useSmartLink(href, target)\n return (\n <MuiLink {...navProps} {...props}>\n {children}\n </MuiLink>\n )\n}\n"],"mappings":";;;;AAOA,SAAgB,EAAU,EACxB,SACA,WACA,aACA,GAAG,KACc;
|
|
1
|
+
{"version":3,"file":"SmartLink.js","names":[],"sources":["../../../src/components/SmartLink/SmartLink.tsx"],"sourcesContent":["import { Link as MuiLink, LinkProps as MuiLinkProps } from '@mui/material'\nimport { useSmartLink } from './useSmartLink'\n\ninterface SmartLinkProps extends MuiLinkProps {\n href: string\n}\n\nexport function SmartLink({\n href,\n target,\n children,\n ...props\n}: SmartLinkProps) {\n const navProps = useSmartLink(href, target)\n return (\n <MuiLink {...navProps} {...props}>\n {children}\n </MuiLink>\n )\n}\n"],"mappings":";;;;AAOA,SAAgB,EAAU,EACxB,SACA,WACA,aACA,GAAG,KACc;CAEjB,OACE,kBAAC,GAAD;EAAS,GAFM,EAAa,GAAM,CAErB;EAAU,GAAI;EACxB;CACM,CAAA;AAEb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSmartLink.js","names":[],"sources":["../../../src/components/SmartLink/useSmartLink.tsx"],"sourcesContent":["import { useInRouterContext, Link as ReactRouterLink } from 'react-router'\nimport { isExternalLink } from '@/utils/functions/IsExternalLink'\n\nexport function useSmartLink(href?: string, target?: string) {\n const inRouterContext = useInRouterContext()\n const isExternal = href ? isExternalLink(href) : false\n\n if (href && inRouterContext && !isExternal) {\n return {\n component: ReactRouterLink,\n to: href,\n }\n }\n\n return {\n component: href ? ('a' as const) : undefined,\n href,\n target: target ?? (isExternal ? '_blank' : undefined),\n rel: isExternal ? 'noopener noreferrer' : undefined,\n }\n}\n"],"mappings":";;;AAGA,SAAgB,EAAa,GAAe,GAAiB;CAC3D,IAAM,IAAkB,
|
|
1
|
+
{"version":3,"file":"useSmartLink.js","names":[],"sources":["../../../src/components/SmartLink/useSmartLink.tsx"],"sourcesContent":["import { useInRouterContext, Link as ReactRouterLink } from 'react-router'\nimport { isExternalLink } from '@/utils/functions/IsExternalLink'\n\nexport function useSmartLink(href?: string, target?: string) {\n const inRouterContext = useInRouterContext()\n const isExternal = href ? isExternalLink(href) : false\n\n if (href && inRouterContext && !isExternal) {\n return {\n component: ReactRouterLink,\n to: href,\n }\n }\n\n return {\n component: href ? ('a' as const) : undefined,\n href,\n target: target ?? (isExternal ? '_blank' : undefined),\n rel: isExternal ? 'noopener noreferrer' : undefined,\n }\n}\n"],"mappings":";;;AAGA,SAAgB,EAAa,GAAe,GAAiB;CAC3D,IAAM,IAAkB,EAAmB,GACrC,IAAa,IAAO,EAAe,CAAI,IAAI;CASjD,OAPI,KAAQ,KAAmB,CAAC,IACvB;EACL,WAAW;EACX,IAAI;CACN,IAGK;EACL,WAAW,IAAQ,MAAgB,KAAA;EACnC;EACA,QAAQ,MAAW,IAAa,WAAW,KAAA;EAC3C,KAAK,IAAa,wBAAwB,KAAA;CAC5C;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SourceAppImage.js","names":[],"sources":["../../src/components/SourceAppImage.tsx"],"sourcesContent":["import { useGetStablePresignedUrl } from '@/synapse-queries'\nimport Skeleton from '@mui/material/Skeleton'\nimport {\n FileHandleAssociateType,\n FileHandleAssociation,\n} from '@sage-bionetworks/synapse-types'\n\nexport type SourceAppImageProps = {\n sourceAppConfigTableID: string\n fileHandleId: string | null\n friendlyName?: string\n}\n\n// Refactored into it's own class, thinking that using a prefetch resource would improve loading performance of the images, but it does not.\nfunction SourceAppImage(props: SourceAppImageProps) {\n const { sourceAppConfigTableID, fileHandleId, friendlyName } = props\n const fha: FileHandleAssociation = {\n associateObjectId: sourceAppConfigTableID,\n associateObjectType: FileHandleAssociateType.TableEntity,\n fileHandleId: fileHandleId ?? '',\n }\n const stablePresignedUrl = useGetStablePresignedUrl(fha, true, {\n enabled: !!fileHandleId,\n })\n\n const dataUrl = stablePresignedUrl?.dataUrl\n const error = stablePresignedUrl?.queryResult?.error\n\n if (error) {\n return <></>\n }\n const icon = dataUrl ? (\n <img\n className=\"SourceAppImage\"\n alt={friendlyName ? `${friendlyName} logo` : 'Application logo'}\n src={dataUrl}\n />\n ) : (\n <Skeleton variant=\"rectangular\" width={250} height={65} />\n )\n\n return icon\n}\n\nexport default SourceAppImage\n"],"mappings":";;;;;;AAcA,SAAS,EAAe,GAA4B;CAClD,IAAM,EAAE,2BAAwB,iBAAc,oBAAiB,GAMzD,IAAqB,EAAyB;EAJlD,mBAAmB;EACnB,qBAAqB,EAAwB;EAC7C,cAAc,KAAgB;
|
|
1
|
+
{"version":3,"file":"SourceAppImage.js","names":[],"sources":["../../src/components/SourceAppImage.tsx"],"sourcesContent":["import { useGetStablePresignedUrl } from '@/synapse-queries'\nimport Skeleton from '@mui/material/Skeleton'\nimport {\n FileHandleAssociateType,\n FileHandleAssociation,\n} from '@sage-bionetworks/synapse-types'\n\nexport type SourceAppImageProps = {\n sourceAppConfigTableID: string\n fileHandleId: string | null\n friendlyName?: string\n}\n\n// Refactored into it's own class, thinking that using a prefetch resource would improve loading performance of the images, but it does not.\nfunction SourceAppImage(props: SourceAppImageProps) {\n const { sourceAppConfigTableID, fileHandleId, friendlyName } = props\n const fha: FileHandleAssociation = {\n associateObjectId: sourceAppConfigTableID,\n associateObjectType: FileHandleAssociateType.TableEntity,\n fileHandleId: fileHandleId ?? '',\n }\n const stablePresignedUrl = useGetStablePresignedUrl(fha, true, {\n enabled: !!fileHandleId,\n })\n\n const dataUrl = stablePresignedUrl?.dataUrl\n const error = stablePresignedUrl?.queryResult?.error\n\n if (error) {\n return <></>\n }\n const icon = dataUrl ? (\n <img\n className=\"SourceAppImage\"\n alt={friendlyName ? `${friendlyName} logo` : 'Application logo'}\n src={dataUrl}\n />\n ) : (\n <Skeleton variant=\"rectangular\" width={250} height={65} />\n )\n\n return icon\n}\n\nexport default SourceAppImage\n"],"mappings":";;;;;;AAcA,SAAS,EAAe,GAA4B;CAClD,IAAM,EAAE,2BAAwB,iBAAc,oBAAiB,GAMzD,IAAqB,EAAyB;EAJlD,mBAAmB;EACnB,qBAAqB,EAAwB;EAC7C,cAAc,KAAgB;CAEoB,GAAK,IAAM,EAC7D,SAAS,CAAC,CAAC,EACb,CAAC,GAEK,IAAU,GAAoB;CAgBpC,OAfc,GAAoB,aAAa,QAGtC,kBAAA,GAAA,CAAI,CAAA,IAEA,IACX,kBAAC,OAAD;EACE,WAAU;EACV,KAAK,IAAe,GAAG,EAAa,SAAS;EAC7C,KAAK;CACN,CAAA,IAED,kBAAC,GAAD;EAAU,SAAQ;EAAc,OAAO;EAAK,QAAQ;CAAK,CAAA;AAI7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpinnerButton.js","names":[],"sources":["../../../src/components/SpinnerButton/SpinnerButton.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport {\n LoginAwareButton,\n LoginAwareButtonProps,\n} from '../widgets/LoginAwareButton'\nimport { Box } from '@mui/material'\n\nexport type SpinnerButtonProps = LoginAwareButtonProps & {\n showSpinner?: boolean\n}\n\nfunction SpinnerButton({ showSpinner = false, ...props }: SpinnerButtonProps) {\n const [width, setWidth] = useState(0)\n const elementRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (elementRef) {\n const n = elementRef.current?.offsetWidth ?? 0\n setWidth(n)\n }\n }, [])\n return (\n <div\n data-testid=\"SpinnerButton\"\n style={{ position: 'relative', width: 'max-content' }}\n >\n {showSpinner && (\n <div\n style={{\n position: 'absolute',\n top: '8px',\n left: `${width / 2 - 8}px`,\n }}\n >\n <span data-testid=\"SpinnerButton-spinner\" className=\"spinner\" />\n </div>\n )}\n <Box sx={{ display: 'flex' }} ref={elementRef}>\n <LoginAwareButton\n {...props}\n disabled={props.disabled || showSpinner}\n style={{ opacity: showSpinner ? 0.4 : 1 }}\n />\n </Box>\n </div>\n )\n}\n\nexport default SpinnerButton\n"],"mappings":";;;;;AAWA,SAAS,EAAc,EAAE,iBAAc,IAAO,GAAG,KAA6B;CAC5E,IAAM,CAAC,GAAO,KAAY,EAAS,
|
|
1
|
+
{"version":3,"file":"SpinnerButton.js","names":[],"sources":["../../../src/components/SpinnerButton/SpinnerButton.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react'\nimport {\n LoginAwareButton,\n LoginAwareButtonProps,\n} from '../widgets/LoginAwareButton'\nimport { Box } from '@mui/material'\n\nexport type SpinnerButtonProps = LoginAwareButtonProps & {\n showSpinner?: boolean\n}\n\nfunction SpinnerButton({ showSpinner = false, ...props }: SpinnerButtonProps) {\n const [width, setWidth] = useState(0)\n const elementRef = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n if (elementRef) {\n const n = elementRef.current?.offsetWidth ?? 0\n setWidth(n)\n }\n }, [])\n return (\n <div\n data-testid=\"SpinnerButton\"\n style={{ position: 'relative', width: 'max-content' }}\n >\n {showSpinner && (\n <div\n style={{\n position: 'absolute',\n top: '8px',\n left: `${width / 2 - 8}px`,\n }}\n >\n <span data-testid=\"SpinnerButton-spinner\" className=\"spinner\" />\n </div>\n )}\n <Box sx={{ display: 'flex' }} ref={elementRef}>\n <LoginAwareButton\n {...props}\n disabled={props.disabled || showSpinner}\n style={{ opacity: showSpinner ? 0.4 : 1 }}\n />\n </Box>\n </div>\n )\n}\n\nexport default SpinnerButton\n"],"mappings":";;;;;AAWA,SAAS,EAAc,EAAE,iBAAc,IAAO,GAAG,KAA6B;CAC5E,IAAM,CAAC,GAAO,KAAY,EAAS,CAAC,GAC9B,IAAa,EAAuB,IAAI;CAQ9C,OANA,QAAgB;EACd,AAAI,KAEF,EADU,EAAW,SAAS,eAAe,CACnC;CAEd,GAAG,CAAC,CAAC,GAEH,kBAAC,OAAD;EACE,eAAY;EACZ,OAAO;GAAE,UAAU;GAAY,OAAO;EAAc;YAFtD,CAIG,KACC,kBAAC,OAAD;GACE,OAAO;IACL,UAAU;IACV,KAAK;IACL,MAAM,GAAG,IAAQ,IAAI,EAAE;GACzB;aAEA,kBAAC,QAAD;IAAM,eAAY;IAAwB,WAAU;GAAW,CAAA;EAC5D,CAAA,GAEP,kBAAC,GAAD;GAAK,IAAI,EAAE,SAAS,OAAO;GAAG,KAAK;aACjC,kBAAC,GAAD;IACE,GAAI;IACJ,UAAU,EAAM,YAAY;IAC5B,OAAO,EAAE,SAAS,IAAc,KAAM,EAAE;GACzC,CAAA;EACE,CAAA,CACF;;AAET"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlDefinedTableEditor.js","names":[],"sources":["../../../src/components/SqlDefinedTableEditor/SqlDefinedTableEditor.tsx"],"sourcesContent":["import { Box, Link, TextField, Typography } from '@mui/material'\nimport { TextFieldProps } from '@mui/material/TextField'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\n\nconst MATERIALIZED_VIEW_HELP = (\n <Box\n sx={{\n mb: 2.5,\n }}\n >\n <Typography\n variant={'body1'}\n sx={{\n color: 'grey.700',\n mb: 1.25,\n }}\n >\n If you store normalized data in Synapse tables, views, or datasets, you\n can combine separate data sources using Materialized Views. A materialized\n view is a type of Synapse table that is defined using a Synapse SQL\n statement, which can contain SQL keywords such as JOIN and UNION to\n combine existing Synapse tables.\n </Typography>\n <Link\n href={\n 'https://help.synapse.org/docs/Combining-Data-from-Multiple-Table-Sources.2973270158.html'\n }\n target=\"_blank\"\n onClick={e => {\n e.stopPropagation()\n }}\n >\n More about Materialized Views\n </Link>\n </Box>\n)\n\nconst VIRTUAL_TABLE_HELP = (\n <Box\n sx={{\n mb: 2.5,\n }}\n >\n <Typography\n variant={'body1'}\n sx={{\n color: 'grey.700',\n mb: 1.25,\n }}\n >\n A Synapse Virtual Table is a type of table that is defined by a Synapse\n SQL query. Any query on a Virtual Table will execute the defining SQL\n statement on the referenced table. The defining SQL of a Virtual Table\n cannot include JOIN clauses on multiple tables.\n </Typography>\n </Box>\n)\n\nexport type SqlDefinedTableEditorProps = TextFieldProps & {\n /* Optional entity type for showing help documentation */\n entityType?: EntityType\n}\n\n/**\n * Component used to edit the SQL of a Synapse entity defined by SQL, such as a MaterializedView or VirtualTable\n * @param props\n * @constructor\n */\nexport default function SqlDefinedTableEditor(\n props: SqlDefinedTableEditorProps,\n) {\n const { entityType, ...textFieldProps } = props\n return (\n <>\n {entityType === EntityType.materializedview && MATERIALIZED_VIEW_HELP}\n {entityType === EntityType.virtualtable && VIRTUAL_TABLE_HELP}\n <TextField\n label={'Defining SQL'}\n placeholder={'SELECT * FROM syn123'}\n fullWidth\n multiline\n required\n minRows={6}\n {...textFieldProps}\n />\n </>\n )\n}\n"],"mappings":";;;;AAIA,IAAM,IACJ,kBAAC,GAAD;CACE,IAAI,EACF,IAAI,
|
|
1
|
+
{"version":3,"file":"SqlDefinedTableEditor.js","names":[],"sources":["../../../src/components/SqlDefinedTableEditor/SqlDefinedTableEditor.tsx"],"sourcesContent":["import { Box, Link, TextField, Typography } from '@mui/material'\nimport { TextFieldProps } from '@mui/material/TextField'\nimport { EntityType } from '@sage-bionetworks/synapse-client'\n\nconst MATERIALIZED_VIEW_HELP = (\n <Box\n sx={{\n mb: 2.5,\n }}\n >\n <Typography\n variant={'body1'}\n sx={{\n color: 'grey.700',\n mb: 1.25,\n }}\n >\n If you store normalized data in Synapse tables, views, or datasets, you\n can combine separate data sources using Materialized Views. A materialized\n view is a type of Synapse table that is defined using a Synapse SQL\n statement, which can contain SQL keywords such as JOIN and UNION to\n combine existing Synapse tables.\n </Typography>\n <Link\n href={\n 'https://help.synapse.org/docs/Combining-Data-from-Multiple-Table-Sources.2973270158.html'\n }\n target=\"_blank\"\n onClick={e => {\n e.stopPropagation()\n }}\n >\n More about Materialized Views\n </Link>\n </Box>\n)\n\nconst VIRTUAL_TABLE_HELP = (\n <Box\n sx={{\n mb: 2.5,\n }}\n >\n <Typography\n variant={'body1'}\n sx={{\n color: 'grey.700',\n mb: 1.25,\n }}\n >\n A Synapse Virtual Table is a type of table that is defined by a Synapse\n SQL query. Any query on a Virtual Table will execute the defining SQL\n statement on the referenced table. The defining SQL of a Virtual Table\n cannot include JOIN clauses on multiple tables.\n </Typography>\n </Box>\n)\n\nexport type SqlDefinedTableEditorProps = TextFieldProps & {\n /* Optional entity type for showing help documentation */\n entityType?: EntityType\n}\n\n/**\n * Component used to edit the SQL of a Synapse entity defined by SQL, such as a MaterializedView or VirtualTable\n * @param props\n * @constructor\n */\nexport default function SqlDefinedTableEditor(\n props: SqlDefinedTableEditorProps,\n) {\n const { entityType, ...textFieldProps } = props\n return (\n <>\n {entityType === EntityType.materializedview && MATERIALIZED_VIEW_HELP}\n {entityType === EntityType.virtualtable && VIRTUAL_TABLE_HELP}\n <TextField\n label={'Defining SQL'}\n placeholder={'SELECT * FROM syn123'}\n fullWidth\n multiline\n required\n minRows={6}\n {...textFieldProps}\n />\n </>\n )\n}\n"],"mappings":";;;;AAIA,IAAM,IACJ,kBAAC,GAAD;CACE,IAAI,EACF,IAAI,IACN;WAHF,CAKE,kBAAC,GAAD;EACE,SAAS;EACT,IAAI;GACF,OAAO;GACP,IAAI;EACN;YACD;CAMW,CAAA,GACZ,kBAAC,GAAD;EACE,MACE;EAEF,QAAO;EACP,UAAS,MAAK;GACZ,EAAE,gBAAgB;EACpB;YACD;CAEK,CAAA,CACH;IAGD,IACJ,kBAAC,GAAD;CACE,IAAI,EACF,IAAI,IACN;WAEA,kBAAC,GAAD;EACE,SAAS;EACT,IAAI;GACF,OAAO;GACP,IAAI;EACN;YACD;CAKW,CAAA;AACT,CAAA;AAaP,SAAwB,EACtB,GACA;CACA,IAAM,EAAE,eAAY,GAAG,MAAmB;CAC1C,OACE,kBAAA,GAAA,EAAA,UAAA;EACG,MAAe,EAAW,oBAAoB;EAC9C,MAAe,EAAW,gBAAgB;EAC3C,kBAAC,GAAD;GACE,OAAO;GACP,aAAa;GACb,WAAA;GACA,WAAA;GACA,UAAA;GACA,SAAS;GACT,GAAI;EACL,CAAA;CACD,EAAA,CAAA;AAEN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SqlDefinedTableEditorModal.js","names":[],"sources":["../../../src/components/SqlDefinedTableEditor/SqlDefinedTableEditorModal.tsx"],"sourcesContent":["import { useGetEntity, useUpdateEntity } from '@/synapse-queries'\nimport { convertToEntityType } from '@/utils/functions/EntityTypeUtils'\nimport { Alert } from '@mui/material'\nimport { MaterializedView, VirtualTable } from '@sage-bionetworks/synapse-types'\nimport { useEffect, useState } from 'react'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport SqlDefinedTableEditor from './SqlDefinedTableEditor'\n\nexport type SqlDefinedTableEditorModalProps = {\n open: boolean\n entityId: string\n onUpdate: () => void\n onCancel: () => void\n}\nexport function SqlDefinedTableEditorModal(\n props: SqlDefinedTableEditorModalProps,\n) {\n const { open, entityId, onCancel, onUpdate } = props\n const {\n data: entity,\n isLoading: isEntityLoading,\n error: entityError,\n } = useGetEntity<MaterializedView | VirtualTable>(entityId, undefined, {\n // Set the stale time to infinity because we don't want to refetch this in the middle of an edit\n staleTime: Infinity,\n })\n const [sql, setSql] = useState('')\n\n useEffect(() => {\n if (entity) {\n setSql(entity.definingSQL)\n }\n }, [entity])\n\n const type = entity ? convertToEntityType(entity.concreteType) : undefined\n const {\n mutate,\n isPending: isUpdatePending,\n error: updateError,\n } = useUpdateEntity<MaterializedView | VirtualTable>({ onSuccess: onUpdate })\n const isLoading = isEntityLoading || isUpdatePending\n const error = entityError || updateError\n return (\n <ConfirmationDialog\n open={open}\n title=\"Update SQL\"\n content={\n <>\n <SqlDefinedTableEditor\n value={sql}\n entityType={type}\n onChange={e => setSql(e.target.value)}\n disabled={isLoading}\n ></SqlDefinedTableEditor>\n {error && (\n <Alert\n sx={{\n my: 1,\n }}\n severity=\"error\"\n >\n {error.reason}\n </Alert>\n )}\n </>\n }\n confirmButtonProps={{\n children: isUpdatePending ? 'Saving...' : 'Save',\n disabled: isLoading,\n startIcon: isUpdatePending ? <SynapseSpinner /> : undefined,\n }}\n onConfirm={() => {\n if (entity) {\n mutate({ ...entity, definingSQL: sql })\n }\n }}\n onCancel={onCancel}\n maxWidth=\"md\"\n />\n )\n}\n\nexport default SqlDefinedTableEditorModal\n"],"mappings":";;;;;;;;;;AAeA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,SAAM,aAAU,aAAU,gBAAa,GACzC,EACJ,MAAM,GACN,WAAW,GACX,OAAO,MACL,EAA8C,GAAU,KAAA,GAAW,EAErE,WAAW,
|
|
1
|
+
{"version":3,"file":"SqlDefinedTableEditorModal.js","names":[],"sources":["../../../src/components/SqlDefinedTableEditor/SqlDefinedTableEditorModal.tsx"],"sourcesContent":["import { useGetEntity, useUpdateEntity } from '@/synapse-queries'\nimport { convertToEntityType } from '@/utils/functions/EntityTypeUtils'\nimport { Alert } from '@mui/material'\nimport { MaterializedView, VirtualTable } from '@sage-bionetworks/synapse-types'\nimport { useEffect, useState } from 'react'\nimport ConfirmationDialog from '../ConfirmationDialog'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport SqlDefinedTableEditor from './SqlDefinedTableEditor'\n\nexport type SqlDefinedTableEditorModalProps = {\n open: boolean\n entityId: string\n onUpdate: () => void\n onCancel: () => void\n}\nexport function SqlDefinedTableEditorModal(\n props: SqlDefinedTableEditorModalProps,\n) {\n const { open, entityId, onCancel, onUpdate } = props\n const {\n data: entity,\n isLoading: isEntityLoading,\n error: entityError,\n } = useGetEntity<MaterializedView | VirtualTable>(entityId, undefined, {\n // Set the stale time to infinity because we don't want to refetch this in the middle of an edit\n staleTime: Infinity,\n })\n const [sql, setSql] = useState('')\n\n useEffect(() => {\n if (entity) {\n setSql(entity.definingSQL)\n }\n }, [entity])\n\n const type = entity ? convertToEntityType(entity.concreteType) : undefined\n const {\n mutate,\n isPending: isUpdatePending,\n error: updateError,\n } = useUpdateEntity<MaterializedView | VirtualTable>({ onSuccess: onUpdate })\n const isLoading = isEntityLoading || isUpdatePending\n const error = entityError || updateError\n return (\n <ConfirmationDialog\n open={open}\n title=\"Update SQL\"\n content={\n <>\n <SqlDefinedTableEditor\n value={sql}\n entityType={type}\n onChange={e => setSql(e.target.value)}\n disabled={isLoading}\n ></SqlDefinedTableEditor>\n {error && (\n <Alert\n sx={{\n my: 1,\n }}\n severity=\"error\"\n >\n {error.reason}\n </Alert>\n )}\n </>\n }\n confirmButtonProps={{\n children: isUpdatePending ? 'Saving...' : 'Save',\n disabled: isLoading,\n startIcon: isUpdatePending ? <SynapseSpinner /> : undefined,\n }}\n onConfirm={() => {\n if (entity) {\n mutate({ ...entity, definingSQL: sql })\n }\n }}\n onCancel={onCancel}\n maxWidth=\"md\"\n />\n )\n}\n\nexport default SqlDefinedTableEditorModal\n"],"mappings":";;;;;;;;;;AAeA,SAAgB,EACd,GACA;CACA,IAAM,EAAE,SAAM,aAAU,aAAU,gBAAa,GACzC,EACJ,MAAM,GACN,WAAW,GACX,OAAO,MACL,EAA8C,GAAU,KAAA,GAAW,EAErE,WAAW,SACb,CAAC,GACK,CAAC,GAAK,KAAU,EAAS,EAAE;CAEjC,QAAgB;EACd,AAAI,KACF,EAAO,EAAO,WAAW;CAE7B,GAAG,CAAC,CAAM,CAAC;CAEX,IAAM,IAAO,IAAS,EAAoB,EAAO,YAAY,IAAI,KAAA,GAC3D,EACJ,WACA,WAAW,GACX,OAAO,MACL,EAAiD,EAAE,WAAW,EAAS,CAAC,GACtE,IAAY,KAAmB,GAC/B,IAAQ,KAAe;CAC7B,OACE,kBAAC,GAAD;EACQ;EACN,OAAM;EACN,SACE,kBAAA,GAAA,EAAA,UAAA,CACE,kBAAC,GAAD;GACE,OAAO;GACP,YAAY;GACZ,WAAU,MAAK,EAAO,EAAE,OAAO,KAAK;GACpC,UAAU;EACY,CAAA,GACvB,KACC,kBAAC,GAAD;GACE,IAAI,EACF,IAAI,EACN;GACA,UAAS;aAER,EAAM;EACF,CAAA,CAET,EAAA,CAAA;EAEJ,oBAAoB;GAClB,UAAU,IAAkB,cAAc;GAC1C,UAAU;GACV,WAAW,IAAkB,kBAAC,GAAD,CAAiB,CAAA,IAAI,KAAA;EACpD;EACA,iBAAiB;GACf,AAAI,KACF,EAAO;IAAE,GAAG;IAAQ,aAAa;GAAI,CAAC;EAE1C;EACU;EACV,UAAS;CACV,CAAA;AAEL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StandaloneQueryWrapper.js","names":[],"sources":["../../../src/components/StandaloneQueryWrapper/StandaloneQueryWrapper.tsx"],"sourcesContent":["import { QueryOrDeprecatedSearchParams } from '@/components/CardContainerLogic/CardContainerLogic'\nimport { useGetEntity } from '@/synapse-queries/entity/useEntity'\nimport { SynapseConstants } from '@/utils'\nimport { isTable } from '@/utils/functions/EntityTypeUtils'\nimport {\n getAdditionalFilters,\n parseEntityIdFromSqlStatement,\n} from '@/utils/functions/SqlFunctions'\nimport { DEFAULT_PAGE_SIZE } from '@/utils/SynapseConstants'\nimport { Query, QueryBundleRequest } from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport FullTextSearch from '../FullTextSearch/FullTextSearch'\nimport { QueryContextConsumer } from '../QueryContext/QueryContext'\nimport {\n QueryVisualizationContextConsumer,\n QueryVisualizationWrapper,\n QueryVisualizationWrapperProps,\n} from '../QueryVisualizationWrapper'\nimport { QueryWrapper, QueryWrapperProps } from '../QueryWrapper/QueryWrapper'\nimport { QueryWrapperPlotNavProps } from '../QueryWrapperPlotNav/QueryWrapperPlotNav'\nimport { RowSetView } from '../QueryWrapperPlotNav/RowSetView'\nimport { NoContentPlaceholderType } from '../SynapseTable/NoContentPlaceholderType'\nimport SearchV2, { SearchV2Props } from '../SynapseTable/SearchV2'\nimport SqlEditor from '../SynapseTable/SqlEditor'\nimport { SynapseTableConfiguration } from '../SynapseTable/SynapseTable'\nimport TopLevelControls, {\n TopLevelControlsProps,\n CustomControl,\n} from '../SynapseTable/TopLevelControls/TopLevelControls'\nimport { CustomControls } from '../SynapseTable/CustomControls/CustomControls'\nimport TotalQueryResults from '../TotalQueryResults'\n\ntype StandaloneQueryWrapperOwnProps = {\n showTopLevelControls?: boolean\n searchConfiguration?: Omit<\n SearchV2Props,\n 'queryContext' | 'queryVisualizationContext'\n >\n customControls?: CustomControl[]\n} & Omit<TopLevelControlsProps, 'customControls'> &\n Pick<\n QueryVisualizationWrapperProps,\n | 'rgbIndex'\n | 'unitDescription'\n | 'columnAliases'\n | 'noContentPlaceholderType'\n | 'showLastUpdatedOn'\n | 'visibleColumnCount'\n | 'hiddenColumns'\n | 'additionalFiltersSessionStorageKey'\n > &\n Pick<\n QueryWrapperProps,\n | 'fileIdColumnName'\n | 'fileNameColumnName'\n | 'fileVersionColumnName'\n | 'onQueryResultBundleChange'\n | 'shouldDeepLink'\n > &\n Pick<QueryWrapperPlotNavProps, 'cardConfiguration' | 'tableConfiguration'>\n\nexport type StandaloneQueryWrapperProps = QueryOrDeprecatedSearchParams &\n SynapseTableConfiguration &\n StandaloneQueryWrapperOwnProps\n\nexport const generateInitQueryRequest = (query: Query): QueryBundleRequest => {\n return {\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_FACETS |\n SynapseConstants.BUNDLE_MASK_QUERY_COUNT |\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS |\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS |\n SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON,\n entityId: parseEntityIdFromSqlStatement(query.sql),\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n query: {\n limit: DEFAULT_PAGE_SIZE,\n offset: 0,\n ...query,\n },\n }\n}\n\nexport function getQueryFromProps(props: StandaloneQueryWrapperProps) {\n if (props.query) {\n // use props.query if set\n return props.query\n } else {\n // use the deprecated sql, searchParams, and sqlOperator\n const additionalFilters = getAdditionalFilters(\n props.searchParams,\n props.sqlOperator,\n props.additionalFiltersSessionStorageKey,\n )\n return {\n sql: props.sql!,\n additionalFilters,\n offset: 0,\n }\n }\n}\n\n/**\n * This component was initially implemented on the portal side. It renders a SynapseTable if a title is provided.\n * If showTopLevelControls is set to true, then the SynapseTable will also include the TopLevelControls (search, export table, column selection).\n */\nfunction StandaloneQueryWrapper(props: StandaloneQueryWrapperProps) {\n /** @deprecated property inherited from SynapseTableProps */\n const { hideDownload } = props\n const {\n showAccessColumn,\n sql: deprecatedSql,\n hideAddToDownloadListColumn = hideDownload,\n hideQueryCount,\n name,\n showTopLevelControls = false,\n searchConfiguration,\n unitDescription = 'Results',\n rgbIndex,\n showLastUpdatedOn,\n noContentPlaceholderType = showTopLevelControls\n ? NoContentPlaceholderType.INTERACTIVE\n : NoContentPlaceholderType.STATIC,\n cardConfiguration,\n tableConfiguration,\n shouldDeepLink,\n customControls,\n ...rest\n } = props\n const [componentKey, setComponentKey] = useState(1)\n const remount = () => {\n setComponentKey(componentKey + 1)\n }\n\n const sql = props.query?.sql ?? deprecatedSql ?? ''\n const query: Query = getQueryFromProps(props)\n const derivedQueryRequestFromSearchParams = generateInitQueryRequest(query)\n const entityId = parseEntityIdFromSqlStatement(sql)\n const { data: entity } = useGetEntity(entityId)\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 =\n JSON.stringify(derivedQueryRequestFromSearchParams) + componentKey\n return (\n <QueryWrapper\n {...rest}\n initQueryRequest={derivedQueryRequestFromSearchParams}\n shouldDeepLink={shouldDeepLink}\n key={queryWrapperKey}\n >\n <QueryVisualizationWrapper\n rgbIndex={rgbIndex}\n unitDescription={unitDescription}\n showLastUpdatedOn={showLastUpdatedOn}\n noContentPlaceholderType={noContentPlaceholderType}\n {...rest}\n >\n <QueryContextConsumer>\n {queryContext => {\n if (queryContext === undefined) {\n throw new Error(\n 'No queryContext found when calling QueryContextConsumer',\n )\n }\n return (\n <QueryVisualizationContextConsumer>\n {queryVisualizationContext => {\n if (queryVisualizationContext === undefined) {\n throw new Error(\n 'No queryVisualizationContext found when calling QueryVisualizationContextConsumer',\n )\n }\n\n return (\n <>\n {showTopLevelControls && (\n <TopLevelControls\n showColumnSelection={true}\n name={name}\n hideDownload={hideAddToDownloadListColumn}\n hideQueryCount={hideQueryCount}\n hideFacetFilterControl={true}\n hideVisualizationsControl={true}\n remount={remount}\n customControls={customControls}\n />\n )}\n {entity && isTable(entity) && entity.isSearchEnabled ? (\n <FullTextSearch\n ftsConfig={searchConfiguration?.ftsConfig}\n />\n ) : (\n <SearchV2\n {...searchConfiguration}\n queryContext={queryContext}\n queryVisualizationContext={queryVisualizationContext}\n />\n )}\n <SqlEditor />\n {showTopLevelControls && (\n <TotalQueryResults frontText={''} />\n )}\n <CustomControls\n customControls={props.customControls}\n remount={remount}\n />\n\n <RowSetView\n tableConfiguration={\n cardConfiguration\n ? undefined\n : {\n ...tableConfiguration, // if exist, use tableConfiguration property\n showAccessColumn: showAccessColumn,\n hideAddToDownloadListColumn,\n ...rest,\n }\n }\n cardConfiguration={cardConfiguration} // if exist, use the cardConfiguration property\n />\n </>\n )\n }}\n </QueryVisualizationContextConsumer>\n )\n }}\n </QueryContextConsumer>\n </QueryVisualizationWrapper>\n </QueryWrapper>\n )\n}\n\nexport default StandaloneQueryWrapper\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiEA,IAAa,KAA4B,OAChC;CACL,UACE;CAMF,UAAU,EAA8B,EAAM,IAAI;CAClD,cAAc;CACd,OAAO;EACL,OAAA;EACA,QAAQ;EACR,GAAG;EACJ;CACF;AAGH,SAAgB,EAAkB,GAAoC;AACpE,KAAI,EAAM,MAER,QAAO,EAAM;CACR;EAEL,IAAM,IAAoB,EACxB,EAAM,cACN,EAAM,aACN,EAAM,mCACP;AACD,SAAO;GACL,KAAK,EAAM;GACX;GACA,QAAQ;GACT;;;AAQL,SAAS,EAAuB,GAAoC;CAElE,IAAM,EAAE,oBAAiB,GACnB,EACJ,qBACA,KAAK,GACL,iCAA8B,GAC9B,mBACA,SACA,0BAAuB,IACvB,wBACA,qBAAkB,WAClB,aACA,sBACA,8BAA2B,IACvB,EAAyB,cACzB,EAAyB,QAC7B,sBACA,uBACA,mBACA,mBACA,GAAG,MACD,GACE,CAAC,GAAc,KAAmB,EAAS,EAAE,EAC7C,UAAgB;AACpB,IAAgB,IAAe,EAAE;IAG7B,IAAM,EAAM,OAAO,OAAO,KAAiB,IAE3C,IAAsC,EADvB,EAAkB,EAC8B,CAAM,EAErE,EAAE,MAAM,MAAW,EADR,EAA8B,EACT,CAAS,EAQzC,IACJ,KAAK,UAAU,EAAoC,GAAG;AACxD,QACE,kBAAC,GAAD;EACE,GAAI;EACJ,kBAAkB;EACF;EAChB,KAAK;EAgFQ,EA9Eb,kBAAC,GAAD;EACY;EACO;EACE;EACO;EAC1B,GAAI;YAEJ,kBAAC,GAAD,EAAA,WACG,MAAgB;AACf,OAAI,MAAiB,KAAA,EACnB,OAAU,MACR,0DACD;AAEH,UACE,kBAAC,GAAD,EAAA,WACG,MAA6B;AAC5B,QAAI,MAA8B,KAAA,EAChC,OAAU,MACR,oFACD;AAGH,WACE,kBAAA,GAAA,EAAA,UAAA;KACG,KACC,kBAAC,GAAD;MACE,qBAAqB;MACf;MACN,cAAc;MACE;MAChB,wBAAwB;MACxB,2BAA2B;MAClB;MACO;MAChB,CAAA;KAEH,KAAU,EAAQ,EAAO,IAAI,EAAO,kBACnC,kBAAC,GAAD,EACE,WAAW,GAAqB,WAChC,CAAA,GAEF,kBAAC,GAAD;MACE,GAAI;MACU;MACa;MAC3B,CAAA;KAEJ,kBAAC,GAAD,EAAa,CAAA;KACZ,KACC,kBAAC,GAAD,EAAmB,WAAW,IAAM,CAAA;KAEtC,kBAAC,GAAD;MACE,gBAAgB,EAAM;MACb;MACT,CAAA;KAEF,kBAAC,GAAD;MACE,oBACE,IACI,KAAA,IACA;OACE,GAAG;OACe;OAClB;OACA,GAAG;OACJ;MAEY;MACnB,CAAA;KACD,EAAA,CAAA;MAG2B,CAAA;KAGnB,CAAA;EACG,CAAA,CACf"}
|
|
1
|
+
{"version":3,"file":"StandaloneQueryWrapper.js","names":[],"sources":["../../../src/components/StandaloneQueryWrapper/StandaloneQueryWrapper.tsx"],"sourcesContent":["import { QueryOrDeprecatedSearchParams } from '@/components/CardContainerLogic/CardContainerLogic'\nimport { useGetEntity } from '@/synapse-queries/entity/useEntity'\nimport { SynapseConstants } from '@/utils'\nimport { isTable } from '@/utils/functions/EntityTypeUtils'\nimport {\n getAdditionalFilters,\n parseEntityIdFromSqlStatement,\n} from '@/utils/functions/SqlFunctions'\nimport { DEFAULT_PAGE_SIZE } from '@/utils/SynapseConstants'\nimport { Query, QueryBundleRequest } from '@sage-bionetworks/synapse-types'\nimport { useState } from 'react'\nimport FullTextSearch from '../FullTextSearch/FullTextSearch'\nimport { QueryContextConsumer } from '../QueryContext/QueryContext'\nimport {\n QueryVisualizationContextConsumer,\n QueryVisualizationWrapper,\n QueryVisualizationWrapperProps,\n} from '../QueryVisualizationWrapper'\nimport { QueryWrapper, QueryWrapperProps } from '../QueryWrapper/QueryWrapper'\nimport { QueryWrapperPlotNavProps } from '../QueryWrapperPlotNav/QueryWrapperPlotNav'\nimport { RowSetView } from '../QueryWrapperPlotNav/RowSetView'\nimport { NoContentPlaceholderType } from '../SynapseTable/NoContentPlaceholderType'\nimport SearchV2, { SearchV2Props } from '../SynapseTable/SearchV2'\nimport SqlEditor from '../SynapseTable/SqlEditor'\nimport { SynapseTableConfiguration } from '../SynapseTable/SynapseTable'\nimport TopLevelControls, {\n TopLevelControlsProps,\n CustomControl,\n} from '../SynapseTable/TopLevelControls/TopLevelControls'\nimport { CustomControls } from '../SynapseTable/CustomControls/CustomControls'\nimport TotalQueryResults from '../TotalQueryResults'\n\ntype StandaloneQueryWrapperOwnProps = {\n showTopLevelControls?: boolean\n searchConfiguration?: Omit<\n SearchV2Props,\n 'queryContext' | 'queryVisualizationContext'\n >\n customControls?: CustomControl[]\n} & Omit<TopLevelControlsProps, 'customControls'> &\n Pick<\n QueryVisualizationWrapperProps,\n | 'rgbIndex'\n | 'unitDescription'\n | 'columnAliases'\n | 'noContentPlaceholderType'\n | 'showLastUpdatedOn'\n | 'visibleColumnCount'\n | 'hiddenColumns'\n | 'additionalFiltersSessionStorageKey'\n > &\n Pick<\n QueryWrapperProps,\n | 'fileIdColumnName'\n | 'fileNameColumnName'\n | 'fileVersionColumnName'\n | 'onQueryResultBundleChange'\n | 'shouldDeepLink'\n > &\n Pick<QueryWrapperPlotNavProps, 'cardConfiguration' | 'tableConfiguration'>\n\nexport type StandaloneQueryWrapperProps = QueryOrDeprecatedSearchParams &\n SynapseTableConfiguration &\n StandaloneQueryWrapperOwnProps\n\nexport const generateInitQueryRequest = (query: Query): QueryBundleRequest => {\n return {\n partMask:\n SynapseConstants.BUNDLE_MASK_QUERY_FACETS |\n SynapseConstants.BUNDLE_MASK_QUERY_COUNT |\n SynapseConstants.BUNDLE_MASK_QUERY_SELECT_COLUMNS |\n SynapseConstants.BUNDLE_MASK_QUERY_COLUMN_MODELS |\n SynapseConstants.BUNDLE_MASK_QUERY_RESULTS |\n SynapseConstants.BUNDLE_MASK_LAST_UPDATED_ON,\n entityId: parseEntityIdFromSqlStatement(query.sql),\n concreteType: 'org.sagebionetworks.repo.model.table.QueryBundleRequest',\n query: {\n limit: DEFAULT_PAGE_SIZE,\n offset: 0,\n ...query,\n },\n }\n}\n\nexport function getQueryFromProps(props: StandaloneQueryWrapperProps) {\n if (props.query) {\n // use props.query if set\n return props.query\n } else {\n // use the deprecated sql, searchParams, and sqlOperator\n const additionalFilters = getAdditionalFilters(\n props.searchParams,\n props.sqlOperator,\n props.additionalFiltersSessionStorageKey,\n )\n return {\n sql: props.sql!,\n additionalFilters,\n offset: 0,\n }\n }\n}\n\n/**\n * This component was initially implemented on the portal side. It renders a SynapseTable if a title is provided.\n * If showTopLevelControls is set to true, then the SynapseTable will also include the TopLevelControls (search, export table, column selection).\n */\nfunction StandaloneQueryWrapper(props: StandaloneQueryWrapperProps) {\n /** @deprecated property inherited from SynapseTableProps */\n const { hideDownload } = props\n const {\n showAccessColumn,\n sql: deprecatedSql,\n hideAddToDownloadListColumn = hideDownload,\n hideQueryCount,\n name,\n showTopLevelControls = false,\n searchConfiguration,\n unitDescription = 'Results',\n rgbIndex,\n showLastUpdatedOn,\n noContentPlaceholderType = showTopLevelControls\n ? NoContentPlaceholderType.INTERACTIVE\n : NoContentPlaceholderType.STATIC,\n cardConfiguration,\n tableConfiguration,\n shouldDeepLink,\n customControls,\n ...rest\n } = props\n const [componentKey, setComponentKey] = useState(1)\n const remount = () => {\n setComponentKey(componentKey + 1)\n }\n\n const sql = props.query?.sql ?? deprecatedSql ?? ''\n const query: Query = getQueryFromProps(props)\n const derivedQueryRequestFromSearchParams = generateInitQueryRequest(query)\n const entityId = parseEntityIdFromSqlStatement(sql)\n const { data: entity } = useGetEntity(entityId)\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 =\n JSON.stringify(derivedQueryRequestFromSearchParams) + componentKey\n return (\n <QueryWrapper\n {...rest}\n initQueryRequest={derivedQueryRequestFromSearchParams}\n shouldDeepLink={shouldDeepLink}\n key={queryWrapperKey}\n >\n <QueryVisualizationWrapper\n rgbIndex={rgbIndex}\n unitDescription={unitDescription}\n showLastUpdatedOn={showLastUpdatedOn}\n noContentPlaceholderType={noContentPlaceholderType}\n {...rest}\n >\n <QueryContextConsumer>\n {queryContext => {\n if (queryContext === undefined) {\n throw new Error(\n 'No queryContext found when calling QueryContextConsumer',\n )\n }\n return (\n <QueryVisualizationContextConsumer>\n {queryVisualizationContext => {\n if (queryVisualizationContext === undefined) {\n throw new Error(\n 'No queryVisualizationContext found when calling QueryVisualizationContextConsumer',\n )\n }\n\n return (\n <>\n {showTopLevelControls && (\n <TopLevelControls\n showColumnSelection={true}\n name={name}\n hideDownload={hideAddToDownloadListColumn}\n hideQueryCount={hideQueryCount}\n hideFacetFilterControl={true}\n hideVisualizationsControl={true}\n remount={remount}\n customControls={customControls}\n />\n )}\n {entity && isTable(entity) && entity.isSearchEnabled ? (\n <FullTextSearch\n ftsConfig={searchConfiguration?.ftsConfig}\n />\n ) : (\n <SearchV2\n {...searchConfiguration}\n queryContext={queryContext}\n queryVisualizationContext={queryVisualizationContext}\n />\n )}\n <SqlEditor />\n {showTopLevelControls && (\n <TotalQueryResults frontText={''} />\n )}\n <CustomControls\n customControls={props.customControls}\n remount={remount}\n />\n\n <RowSetView\n tableConfiguration={\n cardConfiguration\n ? undefined\n : {\n ...tableConfiguration, // if exist, use tableConfiguration property\n showAccessColumn: showAccessColumn,\n hideAddToDownloadListColumn,\n ...rest,\n }\n }\n cardConfiguration={cardConfiguration} // if exist, use the cardConfiguration property\n />\n </>\n )\n }}\n </QueryVisualizationContextConsumer>\n )\n }}\n </QueryContextConsumer>\n </QueryVisualizationWrapper>\n </QueryWrapper>\n )\n}\n\nexport default StandaloneQueryWrapper\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiEA,IAAa,KAA4B,OAChC;CACL,UACE;CAMF,UAAU,EAA8B,EAAM,GAAG;CACjD,cAAc;CACd,OAAO;EACL,OAAA;EACA,QAAQ;EACR,GAAG;CACL;AACF;AAGF,SAAgB,EAAkB,GAAoC;CACpE,IAAI,EAAM,OAER,OAAO,EAAM;CACR;EAEL,IAAM,IAAoB,EACxB,EAAM,cACN,EAAM,aACN,EAAM,kCACR;EACA,OAAO;GACL,KAAK,EAAM;GACX;GACA,QAAQ;EACV;CACF;AACF;AAMA,SAAS,EAAuB,GAAoC;CAElE,IAAM,EAAE,oBAAiB,GACnB,EACJ,qBACA,KAAK,GACL,iCAA8B,GAC9B,mBACA,SACA,0BAAuB,IACvB,wBACA,qBAAkB,WAClB,aACA,sBACA,8BAA2B,IACvB,EAAyB,cACzB,EAAyB,QAC7B,sBACA,uBACA,mBACA,mBACA,GAAG,MACD,GACE,CAAC,GAAc,KAAmB,EAAS,CAAC,GAC5C,UAAgB;EACpB,EAAgB,IAAe,CAAC;CAClC,GAEM,IAAM,EAAM,OAAO,OAAO,KAAiB,IAE3C,IAAsC,EADvB,EAAkB,CAC8B,CAAK,GAEpE,EAAE,MAAM,MAAW,EADR,EAA8B,CACT,CAAQ,GAQxC,IACJ,KAAK,UAAU,CAAmC,IAAI;CACxD,OACE,kBAAC,GAAD;EACE,GAAI;EACJ,kBAAkB;EACF;EAChB,KAAK;CAgFO,GA9EZ,kBAAC,GAAD;EACY;EACO;EACE;EACO;EAC1B,GAAI;YAEJ,kBAAC,GAAD,EAAA,WACG,MAAgB;GACf,IAAI,MAAiB,KAAA,GACnB,MAAU,MACR,yDACF;GAEF,OACE,kBAAC,GAAD,EAAA,WACG,MAA6B;IAC5B,IAAI,MAA8B,KAAA,GAChC,MAAU,MACR,mFACF;IAGF,OACE,kBAAA,GAAA,EAAA,UAAA;KACG,KACC,kBAAC,GAAD;MACE,qBAAqB;MACf;MACN,cAAc;MACE;MAChB,wBAAwB;MACxB,2BAA2B;MAClB;MACO;KACjB,CAAA;KAEF,KAAU,EAAQ,CAAM,KAAK,EAAO,kBACnC,kBAAC,GAAD,EACE,WAAW,GAAqB,UACjC,CAAA,IAED,kBAAC,GAAD;MACE,GAAI;MACU;MACa;KAC5B,CAAA;KAEH,kBAAC,GAAD,CAAY,CAAA;KACX,KACC,kBAAC,GAAD,EAAmB,WAAW,GAAK,CAAA;KAErC,kBAAC,GAAD;MACE,gBAAgB,EAAM;MACb;KACV,CAAA;KAED,kBAAC,GAAD;MACE,oBACE,IACI,KAAA,IACA;OACE,GAAG;OACe;OAClB;OACA,GAAG;MACL;MAEa;KACpB,CAAA;IACD,EAAA,CAAA;GAEN,EACiC,CAAA;EAEvC,EACoB,CAAA;CACG,CAAA,CACf;AAElB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatisticsPlot.js","names":[],"sources":["../../src/components/StatisticsPlot.tsx"],"sourcesContent":["import SynapseClient from '@/synapse-client'\nimport { SynapseContext } from '@/utils/context/SynapseContext'\nimport {\n FilesCountStatistics,\n ProjectFilesStatisticsRequest,\n ProjectFilesStatisticsResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { Component, ContextType } from 'react'\nimport Plot from './Plot/Plot'\n\nconst months = [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n]\n\nexport type StatisticsPlotProps = {\n request: ProjectFilesStatisticsRequest\n title?: string\n xtitle?: string\n ytitle?: string\n isHorizontal?: boolean\n xaxistype?: string\n showlegend?: boolean\n}\n\ntype StatisticsPlotState = {\n isLoaded: boolean\n plotData?: ProjectFilesStatisticsResponse\n}\n\nclass StatisticsPlot extends Component<\n StatisticsPlotProps,\n StatisticsPlotState\n> {\n static contextType = SynapseContext\n declare context: NonNullable<ContextType<typeof SynapseContext>>\n constructor(props: StatisticsPlotProps) {\n super(props)\n this.state = {\n isLoaded: false,\n plotData: {} as ProjectFilesStatisticsResponse,\n }\n }\n\n public componentDidMount() {\n this.fetchPlotlyData()\n }\n /**\n * Get data for plotly\n *\n * @returns data corresponding to plotly widget\n */\n fetchPlotlyData = async () => {\n const { request } = this.props\n return SynapseClient.getProjectStatistics(request, this.context.accessToken)\n .then((data: ProjectFilesStatisticsResponse) => {\n this.setState({\n isLoaded: true,\n plotData: data,\n })\n })\n .catch((err: any) => {\n console.log('Error on call to get statistics ', err)\n })\n }\n\n getTrace = (\n traceName: string,\n stats: FilesCountStatistics[],\n orientation: string,\n markerColor: string,\n ) => {\n const x: string[] = []\n const y: number[] = []\n const trace = {\n orientation,\n x,\n y,\n name: traceName,\n type: 'bar',\n marker: { color: markerColor },\n hovertemplate:\n // see S3 Formatting options: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format\n `%{y:n} <br><extra>${traceName}</extra>`,\n }\n for (const statPoint of stats) {\n const statPointDate: Date = new Date(statPoint.rangeStart)\n trace.x.push(\n `${\n months[statPointDate.getUTCMonth()]\n } ${statPointDate.getUTCFullYear()}`,\n )\n trace.y.push(statPoint.filesCount)\n }\n return trace\n }\n\n showPlot = () => {\n if (!this.state.isLoaded || !this.state.plotData) {\n return\n }\n const { title, xtitle, ytitle, isHorizontal, xaxistype, showlegend } =\n this.props\n const plotData = this.state.plotData\n const layout: any = {\n showlegend,\n title,\n barmode: 'stack',\n hovermode: 'x',\n }\n const config: any = {\n displayModeBar: true,\n displaylogo: false,\n // options found here: https://github.com/plotly/plotly.js/blob/master/src/components/modebar/buttons.js\n modeBarButtonsToRemove: [\n 'sendDataToCloud',\n 'hoverCompareCartesian',\n 'select2d',\n 'lasso2d',\n 'zoom2d',\n 'resetScale2d',\n 'hoverClosestCartesian',\n 'toggleSpikelines',\n ],\n }\n if (xtitle) {\n layout.xaxis = {\n title: xtitle,\n }\n }\n if (xaxistype) {\n layout.xaxis = {\n ...layout.xaxis,\n xaxistype: xaxistype.toLowerCase(),\n }\n }\n\n if (ytitle) {\n layout.yaxis = {\n title: ytitle,\n }\n }\n // init plot_data\n const orientation: string = isHorizontal ? 'h' : 'v'\n const traces: any = []\n if (\n plotData.fileDownloads &&\n plotData.fileDownloads.months &&\n plotData.fileDownloads.months.length > 0\n ) {\n // add file downloads trace\n traces.push(\n this.getTrace(\n 'File Downloads',\n plotData.fileDownloads.months,\n orientation,\n '#7CC0C4',\n ),\n )\n }\n if (\n plotData.fileUploads &&\n plotData.fileUploads.months &&\n plotData.fileUploads.months.length > 0\n ) {\n // add file uploads trace\n traces.push(\n this.getTrace(\n 'File Uploads',\n plotData.fileUploads.months,\n orientation,\n '#D4689A',\n ),\n )\n }\n if (traces.length > 0)\n return (\n <Plot\n layout={layout}\n data={traces}\n config={config}\n className=\"SRC-fullWidth\"\n useResizeHandler={true}\n />\n )\n else return <></>\n }\n\n public render() {\n if (!this.state.isLoaded) {\n return null\n }\n return this.showPlot()\n }\n}\nexport default StatisticsPlot\n"],"mappings":";;;;;;AAUA,IAAM,IAAS;CACb;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;
|
|
1
|
+
{"version":3,"file":"StatisticsPlot.js","names":[],"sources":["../../src/components/StatisticsPlot.tsx"],"sourcesContent":["import SynapseClient from '@/synapse-client'\nimport { SynapseContext } from '@/utils/context/SynapseContext'\nimport {\n FilesCountStatistics,\n ProjectFilesStatisticsRequest,\n ProjectFilesStatisticsResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { Component, ContextType } from 'react'\nimport Plot from './Plot/Plot'\n\nconst months = [\n 'Jan',\n 'Feb',\n 'Mar',\n 'Apr',\n 'May',\n 'Jun',\n 'Jul',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n]\n\nexport type StatisticsPlotProps = {\n request: ProjectFilesStatisticsRequest\n title?: string\n xtitle?: string\n ytitle?: string\n isHorizontal?: boolean\n xaxistype?: string\n showlegend?: boolean\n}\n\ntype StatisticsPlotState = {\n isLoaded: boolean\n plotData?: ProjectFilesStatisticsResponse\n}\n\nclass StatisticsPlot extends Component<\n StatisticsPlotProps,\n StatisticsPlotState\n> {\n static contextType = SynapseContext\n declare context: NonNullable<ContextType<typeof SynapseContext>>\n constructor(props: StatisticsPlotProps) {\n super(props)\n this.state = {\n isLoaded: false,\n plotData: {} as ProjectFilesStatisticsResponse,\n }\n }\n\n public componentDidMount() {\n this.fetchPlotlyData()\n }\n /**\n * Get data for plotly\n *\n * @returns data corresponding to plotly widget\n */\n fetchPlotlyData = async () => {\n const { request } = this.props\n return SynapseClient.getProjectStatistics(request, this.context.accessToken)\n .then((data: ProjectFilesStatisticsResponse) => {\n this.setState({\n isLoaded: true,\n plotData: data,\n })\n })\n .catch((err: any) => {\n console.log('Error on call to get statistics ', err)\n })\n }\n\n getTrace = (\n traceName: string,\n stats: FilesCountStatistics[],\n orientation: string,\n markerColor: string,\n ) => {\n const x: string[] = []\n const y: number[] = []\n const trace = {\n orientation,\n x,\n y,\n name: traceName,\n type: 'bar',\n marker: { color: markerColor },\n hovertemplate:\n // see S3 Formatting options: https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format\n `%{y:n} <br><extra>${traceName}</extra>`,\n }\n for (const statPoint of stats) {\n const statPointDate: Date = new Date(statPoint.rangeStart)\n trace.x.push(\n `${\n months[statPointDate.getUTCMonth()]\n } ${statPointDate.getUTCFullYear()}`,\n )\n trace.y.push(statPoint.filesCount)\n }\n return trace\n }\n\n showPlot = () => {\n if (!this.state.isLoaded || !this.state.plotData) {\n return\n }\n const { title, xtitle, ytitle, isHorizontal, xaxistype, showlegend } =\n this.props\n const plotData = this.state.plotData\n const layout: any = {\n showlegend,\n title,\n barmode: 'stack',\n hovermode: 'x',\n }\n const config: any = {\n displayModeBar: true,\n displaylogo: false,\n // options found here: https://github.com/plotly/plotly.js/blob/master/src/components/modebar/buttons.js\n modeBarButtonsToRemove: [\n 'sendDataToCloud',\n 'hoverCompareCartesian',\n 'select2d',\n 'lasso2d',\n 'zoom2d',\n 'resetScale2d',\n 'hoverClosestCartesian',\n 'toggleSpikelines',\n ],\n }\n if (xtitle) {\n layout.xaxis = {\n title: xtitle,\n }\n }\n if (xaxistype) {\n layout.xaxis = {\n ...layout.xaxis,\n xaxistype: xaxistype.toLowerCase(),\n }\n }\n\n if (ytitle) {\n layout.yaxis = {\n title: ytitle,\n }\n }\n // init plot_data\n const orientation: string = isHorizontal ? 'h' : 'v'\n const traces: any = []\n if (\n plotData.fileDownloads &&\n plotData.fileDownloads.months &&\n plotData.fileDownloads.months.length > 0\n ) {\n // add file downloads trace\n traces.push(\n this.getTrace(\n 'File Downloads',\n plotData.fileDownloads.months,\n orientation,\n '#7CC0C4',\n ),\n )\n }\n if (\n plotData.fileUploads &&\n plotData.fileUploads.months &&\n plotData.fileUploads.months.length > 0\n ) {\n // add file uploads trace\n traces.push(\n this.getTrace(\n 'File Uploads',\n plotData.fileUploads.months,\n orientation,\n '#D4689A',\n ),\n )\n }\n if (traces.length > 0)\n return (\n <Plot\n layout={layout}\n data={traces}\n config={config}\n className=\"SRC-fullWidth\"\n useResizeHandler={true}\n />\n )\n else return <></>\n }\n\n public render() {\n if (!this.state.isLoaded) {\n return null\n }\n return this.showPlot()\n }\n}\nexport default StatisticsPlot\n"],"mappings":";;;;;;AAUA,IAAM,IAAS;CACb;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,GAiBM,IAAN,cAA6B,EAG3B;CACA,OAAO,cAAc;CAErB,YAAY,GAA4B;EAEtC,AADA,MAAM,CAAK,GACX,KAAK,QAAQ;GACX,UAAU;GACV,UAAU,CAAC;EACb;CACF;CAEA,oBAA2B;EACzB,KAAK,gBAAgB;CACvB;CAMA,kBAAkB,YAAY;EAC5B,IAAM,EAAE,eAAY,KAAK;EACzB,OAAO,EAAc,qBAAqB,GAAS,KAAK,QAAQ,WAAW,EACxE,MAAM,MAAyC;GAC9C,KAAK,SAAS;IACZ,UAAU;IACV,UAAU;GACZ,CAAC;EACH,CAAC,EACA,OAAO,MAAa;GACnB,QAAQ,IAAI,oCAAoC,CAAG;EACrD,CAAC;CACL;CAEA,YACE,GACA,GACA,GACA,MACG;EAGH,IAAM,IAAQ;GACZ;GACA,GAAA,CAAA;GACA,GAAA,CAAA;GACA,MAAM;GACN,MAAM;GACN,QAAQ,EAAE,OAAO,EAAY;GAC7B,eAEE,qBAAqB,EAAU;EACnC;EACA,KAAK,IAAM,KAAa,GAAO;GAC7B,IAAM,IAAsB,IAAI,KAAK,EAAU,UAAU;GAMzD,AALA,EAAM,EAAE,KACN,GACE,EAAO,EAAc,YAAY,GAClC,GAAG,EAAc,eAAe,GACnC,GACA,EAAM,EAAE,KAAK,EAAU,UAAU;EACnC;EACA,OAAO;CACT;CAEA,iBAAiB;EACf,IAAI,CAAC,KAAK,MAAM,YAAY,CAAC,KAAK,MAAM,UACtC;EAEF,IAAM,EAAE,UAAO,WAAQ,WAAQ,iBAAc,cAAW,kBACtD,KAAK,OACD,IAAW,KAAK,MAAM,UACtB,IAAc;GAClB;GACA;GACA,SAAS;GACT,WAAW;EACb,GACM,IAAc;GAClB,gBAAgB;GAChB,aAAa;GAEb,wBAAwB;IACtB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACF;EACF;EAaA,AAZI,MACF,EAAO,QAAQ,EACb,OAAO,EACT,IAEE,MACF,EAAO,QAAQ;GACb,GAAG,EAAO;GACV,WAAW,EAAU,YAAY;EACnC,IAGE,MACF,EAAO,QAAQ,EACb,OAAO,EACT;EAGF,IAAM,IAAsB,IAAe,MAAM,KAC3C,IAAc,CAAC;EAyChB,OAvCH,EAAS,iBACT,EAAS,cAAc,UACvB,EAAS,cAAc,OAAO,SAAS,KAGvC,EAAO,KACL,KAAK,SACH,kBACA,EAAS,cAAc,QACvB,GACA,SACF,CACF,GAGA,EAAS,eACT,EAAS,YAAY,UACrB,EAAS,YAAY,OAAO,SAAS,KAGrC,EAAO,KACL,KAAK,SACH,gBACA,EAAS,YAAY,QACrB,GACA,SACF,CACF,GAEE,EAAO,SAAS,IAEhB,kBAAC,GAAD;GACU;GACR,MAAM;GACE;GACR,WAAU;GACV,kBAAkB;EACnB,CAAA,IAEO,kBAAA,GAAA,CAAI,CAAA;CAClB;CAEA,SAAgB;EAId,OAHK,KAAK,MAAM,WAGT,KAAK,SAAS,IAFZ;CAGX;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepperDialog.js","names":[],"sources":["../../../src/components/StepperDialog/StepperDialog.tsx"],"sourcesContent":["import { Alert, Button, Box } from '@mui/material'\nimport { ReactNode } from 'react'\nimport { DialogBase } from '../DialogBase'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport SpinnerButton from '../SpinnerButton/SpinnerButton'\nimport { DialogContentProps } from '@mui/material'\n\nexport type Step<TStepId = string> = {\n id: TStepId\n title: string\n cancelButtonText?: string\n onConfirm?: () => void\n confirmStep?: string\n confirmEnabled?: boolean\n confirmButtonText?: string\n previousStep?: string\n nextStep?: string\n nextEnabled?: boolean\n contentProps?: DialogContentProps\n}\n\nexport type Steps = Step[]\n\nexport type StepperDialogProps = {\n errorMessage: string | undefined\n onCancel: () => void\n onConfirm: () => void\n confirming?: boolean\n onStepChange: (arg: string) => void\n open: boolean\n step: Step\n content: ReactNode\n loading: boolean\n}\n\n/**\n * A stepper dialog built using MUI components.\n */\nfunction StepperDialog({\n errorMessage,\n onCancel,\n onConfirm,\n confirming,\n onStepChange,\n open,\n step,\n content,\n loading,\n}: StepperDialogProps) {\n if (!step) return null\n\n const dialogContent = (\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n }}\n >\n <>\n {loading ? <SynapseSpinner size={40} /> : content}\n {errorMessage && <Alert severity=\"error\">{errorMessage}</Alert>}\n </>\n </Box>\n )\n\n return (\n <DialogBase\n actions={\n <>\n {step?.cancelButtonText && (\n <Button variant=\"outlined\" onClick={() => onCancel()}>\n {step.cancelButtonText}\n </Button>\n )}\n {step?.previousStep && (\n <Button\n variant=\"outlined\"\n color=\"primary\"\n onClick={() =>\n step.previousStep ? onStepChange(step.previousStep) : null\n }\n >\n Back\n </Button>\n )}\n {step?.nextStep && (\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={!step.nextEnabled}\n onClick={() =>\n step.nextStep ? onStepChange(step.nextStep) : null\n }\n >\n Next\n </Button>\n )}\n {onConfirm && step?.confirmButtonText && (\n <SpinnerButton\n variant=\"contained\"\n color=\"primary\"\n disabled={!step.confirmEnabled}\n onClick={() => {\n onConfirm()\n }}\n showSpinner={confirming === true}\n sx={{ marginLeft: '8px' }}\n >\n {step.confirmButtonText}\n </SpinnerButton>\n )}\n </>\n }\n content={dialogContent}\n onCancel={onCancel}\n open={open}\n title={step.title}\n sx={{\n h2: { paddingTop: 0, paddingBottom: '20px' },\n }}\n contentProps={step.contentProps}\n />\n )\n}\n\nexport default StepperDialog\n"],"mappings":";;;;;;AAsCA,SAAS,EAAc,EACrB,iBACA,aACA,cACA,eACA,iBACA,SACA,SACA,YACA,cACqB;
|
|
1
|
+
{"version":3,"file":"StepperDialog.js","names":[],"sources":["../../../src/components/StepperDialog/StepperDialog.tsx"],"sourcesContent":["import { Alert, Button, Box } from '@mui/material'\nimport { ReactNode } from 'react'\nimport { DialogBase } from '../DialogBase'\nimport { SynapseSpinner } from '../LoadingScreen/LoadingScreen'\nimport SpinnerButton from '../SpinnerButton/SpinnerButton'\nimport { DialogContentProps } from '@mui/material'\n\nexport type Step<TStepId = string> = {\n id: TStepId\n title: string\n cancelButtonText?: string\n onConfirm?: () => void\n confirmStep?: string\n confirmEnabled?: boolean\n confirmButtonText?: string\n previousStep?: string\n nextStep?: string\n nextEnabled?: boolean\n contentProps?: DialogContentProps\n}\n\nexport type Steps = Step[]\n\nexport type StepperDialogProps = {\n errorMessage: string | undefined\n onCancel: () => void\n onConfirm: () => void\n confirming?: boolean\n onStepChange: (arg: string) => void\n open: boolean\n step: Step\n content: ReactNode\n loading: boolean\n}\n\n/**\n * A stepper dialog built using MUI components.\n */\nfunction StepperDialog({\n errorMessage,\n onCancel,\n onConfirm,\n confirming,\n onStepChange,\n open,\n step,\n content,\n loading,\n}: StepperDialogProps) {\n if (!step) return null\n\n const dialogContent = (\n <Box\n sx={{\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n }}\n >\n <>\n {loading ? <SynapseSpinner size={40} /> : content}\n {errorMessage && <Alert severity=\"error\">{errorMessage}</Alert>}\n </>\n </Box>\n )\n\n return (\n <DialogBase\n actions={\n <>\n {step?.cancelButtonText && (\n <Button variant=\"outlined\" onClick={() => onCancel()}>\n {step.cancelButtonText}\n </Button>\n )}\n {step?.previousStep && (\n <Button\n variant=\"outlined\"\n color=\"primary\"\n onClick={() =>\n step.previousStep ? onStepChange(step.previousStep) : null\n }\n >\n Back\n </Button>\n )}\n {step?.nextStep && (\n <Button\n variant=\"contained\"\n color=\"primary\"\n disabled={!step.nextEnabled}\n onClick={() =>\n step.nextStep ? onStepChange(step.nextStep) : null\n }\n >\n Next\n </Button>\n )}\n {onConfirm && step?.confirmButtonText && (\n <SpinnerButton\n variant=\"contained\"\n color=\"primary\"\n disabled={!step.confirmEnabled}\n onClick={() => {\n onConfirm()\n }}\n showSpinner={confirming === true}\n sx={{ marginLeft: '8px' }}\n >\n {step.confirmButtonText}\n </SpinnerButton>\n )}\n </>\n }\n content={dialogContent}\n onCancel={onCancel}\n open={open}\n title={step.title}\n sx={{\n h2: { paddingTop: 0, paddingBottom: '20px' },\n }}\n contentProps={step.contentProps}\n />\n )\n}\n\nexport default StepperDialog\n"],"mappings":";;;;;;AAsCA,SAAS,EAAc,EACrB,iBACA,aACA,cACA,eACA,iBACA,SACA,SACA,YACA,cACqB;CACrB,IAAI,CAAC,GAAM,OAAO;CAElB,IAAM,IACJ,kBAAC,GAAD;EACE,IAAI;GACF,SAAS;GACT,eAAe;GACf,KAAK;EACP;YAEA,kBAAA,GAAA,EAAA,UAAA,CACG,IAAU,kBAAC,GAAD,EAAgB,MAAM,GAAK,CAAA,IAAI,GACzC,KAAgB,kBAAC,GAAD;GAAO,UAAS;aAAS;EAAoB,CAAA,CAC9D,EAAA,CAAA;CACC,CAAA;CAGP,OACE,kBAAC,GAAD;EACE,SACE,kBAAA,GAAA,EAAA,UAAA;GACG,GAAM,oBACL,kBAAC,GAAD;IAAQ,SAAQ;IAAW,eAAe,EAAS;cAChD,EAAK;GACA,CAAA;GAET,GAAM,gBACL,kBAAC,GAAD;IACE,SAAQ;IACR,OAAM;IACN,eACE,EAAK,eAAe,EAAa,EAAK,YAAY,IAAI;cAEzD;GAEO,CAAA;GAET,GAAM,YACL,kBAAC,GAAD;IACE,SAAQ;IACR,OAAM;IACN,UAAU,CAAC,EAAK;IAChB,eACE,EAAK,WAAW,EAAa,EAAK,QAAQ,IAAI;cAEjD;GAEO,CAAA;GAET,KAAa,GAAM,qBAClB,kBAAC,GAAD;IACE,SAAQ;IACR,OAAM;IACN,UAAU,CAAC,EAAK;IAChB,eAAe;KACb,EAAU;IACZ;IACA,aAAa,MAAe;IAC5B,IAAI,EAAE,YAAY,MAAM;cAEvB,EAAK;GACO,CAAA;EAEjB,EAAA,CAAA;EAEJ,SAAS;EACC;EACJ;EACN,OAAO,EAAK;EACZ,IAAI,EACF,IAAI;GAAE,YAAY;GAAG,eAAe;EAAO,EAC7C;EACA,cAAc,EAAK;CACpB,CAAA;AAEL"}
|