synapse-react-client 4.0.19 → 4.0.20
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/CardContainer.js.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.js +28 -31
- package/dist/components/DataExplorer/DataExplorer.js.map +1 -1
- 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.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.js +2 -0
- 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.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.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.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.d.ts +12 -0
- package/dist/components/Plot/SynapseSankeyPlot.d.ts.map +1 -0
- package/dist/components/Plot/SynapseSankeyPlot.js +54 -0
- package/dist/components/Plot/SynapseSankeyPlot.js.map +1 -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.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.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.js +4 -4
- 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.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +9 -9
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormActions.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/BooleanSchema.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/ColumnModelValidator.js.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.js.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.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/Validators/OptionalStringSchema.js.map +1 -1
- 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.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.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.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/synapse-client/HttpClient.js.map +1 -1
- package/dist/synapse-client/SynapseClient.d.ts.map +1 -1
- package/dist/synapse-client/SynapseClient.js +61 -69
- 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 +67 -66
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessRequirementHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/accessRequirementHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT,\n ACCESS_REQUIREMENT_BY_ID,\n ACCESS_REQUIREMENT_SEARCH,\n ACCESS_REQUIREMENT_STATUS,\n ACCESS_REQUIREMENT_WIKI_PAGE_KEY,\n ENTITY_ACCESS_REQUIREMENTS,\n} from '@/utils/APIConstants'\nimport {\n AccessApproval,\n AccessRequirement,\n AccessRequirementSearchRequest,\n AccessRequirementStatus,\n CreateAccessApprovalRequest,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ObjectType,\n PaginatedResults,\n SubmissionState,\n WikiPageKey,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_AR_ETAG,\n MOCK_NEWLY_CREATED_AR_ID,\n mockAccessRequirements,\n mockAccessRequirementWikiPageKeys,\n mockSearchResultsPageOne,\n mockSearchResultsPageTwo,\n mockSelfSignAccessRequirement,\n} from '../../accessRequirement/mockAccessRequirements'\nimport { mockApprovedSubmission } from '../../dataaccess/MockSubmission'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\n\nconst accessRequirementStatuses: Map<string, AccessRequirementStatus> =\n new Map()\n\nexport const getAccessRequirementHandlers = (backendOrigin: string) => [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_BY_ID(':id')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<AccessRequirement> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an access requirement with ID ${params.id}`,\n }\n const ar = mockAccessRequirements.find(\n ar => ar.id.toString() === params.id,\n )\n\n if (ar) {\n response = ar\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_WIKI_PAGE_KEY(':id')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<WikiPageKey> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an access requirement wiki page key with AR ID ${params.id}`,\n }\n const wikiPageKey = mockAccessRequirementWikiPageKeys.find(\n wpk =>\n wpk.ownerObjectType === ObjectType.ACCESS_REQUIREMENT &&\n String(wpk.ownerObjectId) === params.id,\n )\n\n if (wikiPageKey) {\n response = wikiPageKey\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n]\n\nexport function createAccessRequirement(backendOrigin: string) {\n return http.post<\n never,\n AccessRequirement,\n SynapseApiResponse<AccessRequirement>\n >(`${backendOrigin}${ACCESS_REQUIREMENT}`, async ({ request }) => {\n const requestBody: AccessRequirement = await request.json()\n return HttpResponse.json(\n {\n ...requestBody,\n id: MOCK_NEWLY_CREATED_AR_ID,\n etag: MOCK_AR_ETAG,\n },\n { status: 201 },\n )\n })\n}\n\nexport function updateAccessRequirement(backendOrigin: string) {\n return http.put<{ id: string }, AccessRequirement>(\n `${backendOrigin}${ACCESS_REQUIREMENT_BY_ID(':id')}`,\n async ({ request }) => {\n const requestBody = await request.json()\n return HttpResponse.json(requestBody, { status: 200 })\n },\n )\n}\n\nexport const getAccessRequirementEntityBindingHandlers = (\n backendOrigin: string,\n entityId = ':entityId',\n accessRequirements: AccessRequirement[] = mockAccessRequirements,\n) => [\n http.get(\n `${backendOrigin}${ENTITY_ACCESS_REQUIREMENTS(entityId)}`,\n\n () => {\n const status = 200\n const response: PaginatedResults<AccessRequirement> = {\n results: accessRequirements,\n totalNumberOfResults: accessRequirements.length,\n }\n return HttpResponse.json(response, { status })\n },\n ),\n]\n\nexport const getAccessRequirementsBoundToTeamHandler = (\n backendOrigin: string,\n accessRequirements: AccessRequirement[] = [mockSelfSignAccessRequirement],\n) =>\n http.get(\n `${backendOrigin}/repo/v1/team/:teamId/accessRequirement`,\n\n () => {\n const status = 200\n const response: PaginatedResults<AccessRequirement> = {\n results: accessRequirements,\n totalNumberOfResults: accessRequirements.length,\n }\n return HttpResponse.json(response, { status })\n },\n )\n\nexport const getAccessRequirementStatusHandlers = (\n backendOrigin: string,\n arStatusOverrides?: AccessRequirementStatus[],\n) => {\n if (arStatusOverrides) {\n arStatusOverrides.forEach(override => {\n accessRequirementStatuses.set(override.accessRequirementId, override)\n })\n }\n return [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_STATUS(':id')}`,\n\n ({ params }) => {\n let response: AccessRequirementStatus | undefined\n const accessRequirement = mockAccessRequirements.find(\n accessRequirement => params.id === accessRequirement.id.toString(),\n )\n const override = accessRequirementStatuses.get(params.id as string)\n if (override) {\n response = override\n }\n if (!response && accessRequirement) {\n const isManagedACTAR =\n accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n response = {\n accessRequirementId: params.id as string,\n concreteType: isManagedACTAR\n ? 'org.sagebionetworks.repo.model.dataaccess.ManagedACTAccessRequirementStatus'\n : 'org.sagebionetworks.repo.model.dataaccess.BasicAccessRequirementStatus',\n isApproved: true,\n currentSubmissionStatus: isManagedACTAR\n ? {\n submissionId: mockApprovedSubmission.id,\n submittedBy: mockApprovedSubmission.submittedBy,\n modifiedOn: mockApprovedSubmission.modifiedOn,\n state: SubmissionState.APPROVED,\n }\n : undefined,\n }\n }\n const status = response ? 200 : 404\n return HttpResponse.json(response, { status })\n },\n ),\n ]\n}\n\nexport function getCreateAccessApprovalHandler(backendOrigin: string) {\n return http.post<never, CreateAccessApprovalRequest>(\n `${backendOrigin}/repo/v1/accessApproval`,\n async ({ request }) => {\n const requestBody = await request.json()\n const status = 200\n const response: AccessApproval = {\n ...requestBody,\n id: 123,\n etag: 'mock-etag',\n createdOn: new Date().toISOString(),\n modifiedOn: new Date().toISOString(),\n createdBy: String(MOCK_USER_ID),\n modifiedBy: String(MOCK_USER_ID),\n }\n\n // Update the corresponding status object\n // TODO: Status should be inferred from the presence of an access approval, rather than the other way around\n accessRequirementStatuses.set(String(requestBody.requirementId), {\n accessRequirementId: String(requestBody.requirementId),\n concreteType:\n 'org.sagebionetworks.repo.model.dataaccess.BasicAccessRequirementStatus',\n isApproved: true,\n })\n\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function getAccessRequirementSearchHandler(backendOrigin: string) {\n return http.post<never, AccessRequirementSearchRequest>(\n `${backendOrigin}${ACCESS_REQUIREMENT_SEARCH}`,\n async ({ request }) => {\n let response\n if (\n (await request.json()).nextPageToken ===\n mockSearchResultsPageOne.nextPageToken\n ) {\n response = mockSearchResultsPageTwo\n } else {\n response = mockSearchResultsPageOne\n }\n\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getAllAccessRequirementHandlers(backendOrigin: string) {\n return [\n ...getAccessRequirementHandlers(backendOrigin),\n createAccessRequirement(backendOrigin),\n updateAccessRequirement(backendOrigin),\n ...getAccessRequirementEntityBindingHandlers(backendOrigin),\n getAccessRequirementsBoundToTeamHandler(backendOrigin),\n ...getAccessRequirementStatusHandlers(backendOrigin),\n getCreateAccessApprovalHandler(backendOrigin),\n getAccessRequirementSearchHandler(backendOrigin),\n ]\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"accessRequirementHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/accessRequirementHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT,\n ACCESS_REQUIREMENT_BY_ID,\n ACCESS_REQUIREMENT_SEARCH,\n ACCESS_REQUIREMENT_STATUS,\n ACCESS_REQUIREMENT_WIKI_PAGE_KEY,\n ENTITY_ACCESS_REQUIREMENTS,\n} from '@/utils/APIConstants'\nimport {\n AccessApproval,\n AccessRequirement,\n AccessRequirementSearchRequest,\n AccessRequirementStatus,\n CreateAccessApprovalRequest,\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE,\n ObjectType,\n PaginatedResults,\n SubmissionState,\n WikiPageKey,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_AR_ETAG,\n MOCK_NEWLY_CREATED_AR_ID,\n mockAccessRequirements,\n mockAccessRequirementWikiPageKeys,\n mockSearchResultsPageOne,\n mockSearchResultsPageTwo,\n mockSelfSignAccessRequirement,\n} from '../../accessRequirement/mockAccessRequirements'\nimport { mockApprovedSubmission } from '../../dataaccess/MockSubmission'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\n\nconst accessRequirementStatuses: Map<string, AccessRequirementStatus> =\n new Map()\n\nexport const getAccessRequirementHandlers = (backendOrigin: string) => [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_BY_ID(':id')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<AccessRequirement> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an access requirement with ID ${params.id}`,\n }\n const ar = mockAccessRequirements.find(\n ar => ar.id.toString() === params.id,\n )\n\n if (ar) {\n response = ar\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_WIKI_PAGE_KEY(':id')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<WikiPageKey> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an access requirement wiki page key with AR ID ${params.id}`,\n }\n const wikiPageKey = mockAccessRequirementWikiPageKeys.find(\n wpk =>\n wpk.ownerObjectType === ObjectType.ACCESS_REQUIREMENT &&\n String(wpk.ownerObjectId) === params.id,\n )\n\n if (wikiPageKey) {\n response = wikiPageKey\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n]\n\nexport function createAccessRequirement(backendOrigin: string) {\n return http.post<\n never,\n AccessRequirement,\n SynapseApiResponse<AccessRequirement>\n >(`${backendOrigin}${ACCESS_REQUIREMENT}`, async ({ request }) => {\n const requestBody: AccessRequirement = await request.json()\n return HttpResponse.json(\n {\n ...requestBody,\n id: MOCK_NEWLY_CREATED_AR_ID,\n etag: MOCK_AR_ETAG,\n },\n { status: 201 },\n )\n })\n}\n\nexport function updateAccessRequirement(backendOrigin: string) {\n return http.put<{ id: string }, AccessRequirement>(\n `${backendOrigin}${ACCESS_REQUIREMENT_BY_ID(':id')}`,\n async ({ request }) => {\n const requestBody = await request.json()\n return HttpResponse.json(requestBody, { status: 200 })\n },\n )\n}\n\nexport const getAccessRequirementEntityBindingHandlers = (\n backendOrigin: string,\n entityId = ':entityId',\n accessRequirements: AccessRequirement[] = mockAccessRequirements,\n) => [\n http.get(\n `${backendOrigin}${ENTITY_ACCESS_REQUIREMENTS(entityId)}`,\n\n () => {\n const status = 200\n const response: PaginatedResults<AccessRequirement> = {\n results: accessRequirements,\n totalNumberOfResults: accessRequirements.length,\n }\n return HttpResponse.json(response, { status })\n },\n ),\n]\n\nexport const getAccessRequirementsBoundToTeamHandler = (\n backendOrigin: string,\n accessRequirements: AccessRequirement[] = [mockSelfSignAccessRequirement],\n) =>\n http.get(\n `${backendOrigin}/repo/v1/team/:teamId/accessRequirement`,\n\n () => {\n const status = 200\n const response: PaginatedResults<AccessRequirement> = {\n results: accessRequirements,\n totalNumberOfResults: accessRequirements.length,\n }\n return HttpResponse.json(response, { status })\n },\n )\n\nexport const getAccessRequirementStatusHandlers = (\n backendOrigin: string,\n arStatusOverrides?: AccessRequirementStatus[],\n) => {\n if (arStatusOverrides) {\n arStatusOverrides.forEach(override => {\n accessRequirementStatuses.set(override.accessRequirementId, override)\n })\n }\n return [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_STATUS(':id')}`,\n\n ({ params }) => {\n let response: AccessRequirementStatus | undefined\n const accessRequirement = mockAccessRequirements.find(\n accessRequirement => params.id === accessRequirement.id.toString(),\n )\n const override = accessRequirementStatuses.get(params.id as string)\n if (override) {\n response = override\n }\n if (!response && accessRequirement) {\n const isManagedACTAR =\n accessRequirement.concreteType ===\n MANAGED_ACT_ACCESS_REQUIREMENT_CONCRETE_TYPE_VALUE\n response = {\n accessRequirementId: params.id as string,\n concreteType: isManagedACTAR\n ? 'org.sagebionetworks.repo.model.dataaccess.ManagedACTAccessRequirementStatus'\n : 'org.sagebionetworks.repo.model.dataaccess.BasicAccessRequirementStatus',\n isApproved: true,\n currentSubmissionStatus: isManagedACTAR\n ? {\n submissionId: mockApprovedSubmission.id,\n submittedBy: mockApprovedSubmission.submittedBy,\n modifiedOn: mockApprovedSubmission.modifiedOn,\n state: SubmissionState.APPROVED,\n }\n : undefined,\n }\n }\n const status = response ? 200 : 404\n return HttpResponse.json(response, { status })\n },\n ),\n ]\n}\n\nexport function getCreateAccessApprovalHandler(backendOrigin: string) {\n return http.post<never, CreateAccessApprovalRequest>(\n `${backendOrigin}/repo/v1/accessApproval`,\n async ({ request }) => {\n const requestBody = await request.json()\n const status = 200\n const response: AccessApproval = {\n ...requestBody,\n id: 123,\n etag: 'mock-etag',\n createdOn: new Date().toISOString(),\n modifiedOn: new Date().toISOString(),\n createdBy: String(MOCK_USER_ID),\n modifiedBy: String(MOCK_USER_ID),\n }\n\n // Update the corresponding status object\n // TODO: Status should be inferred from the presence of an access approval, rather than the other way around\n accessRequirementStatuses.set(String(requestBody.requirementId), {\n accessRequirementId: String(requestBody.requirementId),\n concreteType:\n 'org.sagebionetworks.repo.model.dataaccess.BasicAccessRequirementStatus',\n isApproved: true,\n })\n\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function getAccessRequirementSearchHandler(backendOrigin: string) {\n return http.post<never, AccessRequirementSearchRequest>(\n `${backendOrigin}${ACCESS_REQUIREMENT_SEARCH}`,\n async ({ request }) => {\n let response\n if (\n (await request.json()).nextPageToken ===\n mockSearchResultsPageOne.nextPageToken\n ) {\n response = mockSearchResultsPageTwo\n } else {\n response = mockSearchResultsPageOne\n }\n\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getAllAccessRequirementHandlers(backendOrigin: string) {\n return [\n ...getAccessRequirementHandlers(backendOrigin),\n createAccessRequirement(backendOrigin),\n updateAccessRequirement(backendOrigin),\n ...getAccessRequirementEntityBindingHandlers(backendOrigin),\n getAccessRequirementsBoundToTeamHandler(backendOrigin),\n ...getAccessRequirementStatusHandlers(backendOrigin),\n getCreateAccessApprovalHandler(backendOrigin),\n getAccessRequirementSearchHandler(backendOrigin),\n ]\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asyncJobHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/asyncJobHandlers.ts"],"sourcesContent":["import { ASYNCHRONOUS_JOB_TOKEN } from '@/utils/APIConstants'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { ErrorResponse } from '@sage-bionetworks/synapse-client'\nimport {\n AsynchJobState,\n AsynchronousJobStatus,\n AsyncJobId,\n} from '@sage-bionetworks/synapse-types'\nimport { DefaultBodyType, http, HttpResponse } from 'msw'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\ntype AsyncJobDetails<TRequestBody, TResponseBody> = {\n id: string\n request: TRequestBody\n response: TResponseBody\n}\n\nconst mockAsynchronousJobService = new BasicMockedCrudService<\n AsyncJobDetails<unknown, unknown>,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n})\n\n/**\n * Generates MSW handlers for asynchronous jobs.\n * @param requestPath the path to the service-specific asynchronous job request endpoint.\n * For example, `'/repo/v1/entity/:id/table/query/async/start'`\n * @param responsePath a function that takes the token parameter ID and returns a path to the service-specific asynchronous job response endpoint.\n * For example, `param => /repo/v1/entity/:id/table/query/async/get/${param}`\n * The generic asynchronous job retrieval handler will be generated automatically.\n * @param responseBody the response body, or a function that takes the request body and returns the response body\n * @param backendOrigin the backend origin to use for the handlers.\n * @param serviceSpecificEndpointResponseStatus the status code to use for the service-specific endpoint. The asynchronous job endpoint will always return 200.\n */\nexport function generateAsyncJobHandlers<\n TRequestBody = unknown,\n TResponseBody extends DefaultBodyType | ErrorResponse =\n | DefaultBodyType\n | ErrorResponse,\n>(\n requestPath: string,\n responsePath: (tokenParam: string) => string,\n responseBody: TResponseBody | ((requestBody: TRequestBody) => TResponseBody),\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n serviceSpecificEndpointResponseStatus = 201,\n) {\n return [\n // Handler for the asynchronous job request endpoint.\n http.post(`${backendOrigin}${requestPath}`, async ({ request }) => {\n const createdJob = mockAsynchronousJobService.create({\n request: await request.json(),\n response: responseBody,\n })\n\n const asyncJobResponse: AsyncJobId = {\n token: createdJob.id,\n }\n\n return HttpResponse.json(asyncJobResponse, { status: 201 })\n }),\n\n // Generic async job response handler. Since this implementation is the same for all services and references the global map, it's fine if this is overridden.\n http.get(\n `${backendOrigin}${ASYNCHRONOUS_JOB_TOKEN(':id')}`,\n ({ params }) => {\n const id = params.id as string\n const asyncJobDetails = mockAsynchronousJobService.getOneById(id)\n if (!id || !asyncJobDetails) {\n return HttpResponse.json(\n { message: 'The mocked asynchronous job was not found' },\n { status: 404 },\n )\n }\n const { request, response } = asyncJobDetails as {\n request: TRequestBody\n response: TResponseBody\n }\n const responseObject: TResponseBody =\n typeof response === 'function' ? response(request) : response\n\n const jobState: AsynchJobState =\n serviceSpecificEndpointResponseStatus < 400 ? 'COMPLETE' : 'FAILED'\n\n return HttpResponse.json<\n AsynchronousJobStatus<TRequestBody, TResponseBody>\n >(\n {\n jobState,\n jobCanceling: false,\n requestBody: request,\n etag: '00000000-0000-0000-0000-000000000000',\n jobId: id,\n responseBody: responseObject,\n startedByUserId: 0,\n startedOn: '',\n changedOn: '',\n progressMessage: '',\n progressCurrent: 100,\n progressTotal: 100,\n exception: '',\n errorMessage: '',\n errorDetails: '',\n runtimeMS: 100,\n },\n {\n // This endpoint returns a successful status code regardless of the job status\n status: 200,\n },\n )\n },\n ),\n\n // Service-specific response endpoint\n http.get<{ asyncJobToken: string }, TResponseBody>(\n `${backendOrigin}${responsePath(':asyncJobToken')}`,\n ({ params }) => {\n const asyncJobToken = params.asyncJobToken\n const asyncJobDetails =\n mockAsynchronousJobService.getOneById(asyncJobToken)\n if (!asyncJobToken || !asyncJobDetails) {\n return HttpResponse.json(\n { message: 'The mocked asynchronous job was not found' },\n { status: 404 },\n )\n }\n\n const { request, response } = asyncJobDetails as {\n request: TRequestBody\n response: TResponseBody\n }\n const responseObject: TResponseBody =\n typeof response === 'function' ? response(request) : response\n\n return HttpResponse.json(responseObject, {\n status: serviceSpecificEndpointResponseStatus,\n })\n },\n ),\n ]\n}\n"],"mappings":";;;;;AAoBA,IAAM,IAA6B,IAAI,EAGrC;CACA,SAAS;CACT,gBAAgB;
|
|
1
|
+
{"version":3,"file":"asyncJobHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/asyncJobHandlers.ts"],"sourcesContent":["import { ASYNCHRONOUS_JOB_TOKEN } from '@/utils/APIConstants'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { ErrorResponse } from '@sage-bionetworks/synapse-client'\nimport {\n AsynchJobState,\n AsynchronousJobStatus,\n AsyncJobId,\n} from '@sage-bionetworks/synapse-types'\nimport { DefaultBodyType, http, HttpResponse } from 'msw'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\ntype AsyncJobDetails<TRequestBody, TResponseBody> = {\n id: string\n request: TRequestBody\n response: TResponseBody\n}\n\nconst mockAsynchronousJobService = new BasicMockedCrudService<\n AsyncJobDetails<unknown, unknown>,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n})\n\n/**\n * Generates MSW handlers for asynchronous jobs.\n * @param requestPath the path to the service-specific asynchronous job request endpoint.\n * For example, `'/repo/v1/entity/:id/table/query/async/start'`\n * @param responsePath a function that takes the token parameter ID and returns a path to the service-specific asynchronous job response endpoint.\n * For example, `param => /repo/v1/entity/:id/table/query/async/get/${param}`\n * The generic asynchronous job retrieval handler will be generated automatically.\n * @param responseBody the response body, or a function that takes the request body and returns the response body\n * @param backendOrigin the backend origin to use for the handlers.\n * @param serviceSpecificEndpointResponseStatus the status code to use for the service-specific endpoint. The asynchronous job endpoint will always return 200.\n */\nexport function generateAsyncJobHandlers<\n TRequestBody = unknown,\n TResponseBody extends DefaultBodyType | ErrorResponse =\n | DefaultBodyType\n | ErrorResponse,\n>(\n requestPath: string,\n responsePath: (tokenParam: string) => string,\n responseBody: TResponseBody | ((requestBody: TRequestBody) => TResponseBody),\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n serviceSpecificEndpointResponseStatus = 201,\n) {\n return [\n // Handler for the asynchronous job request endpoint.\n http.post(`${backendOrigin}${requestPath}`, async ({ request }) => {\n const createdJob = mockAsynchronousJobService.create({\n request: await request.json(),\n response: responseBody,\n })\n\n const asyncJobResponse: AsyncJobId = {\n token: createdJob.id,\n }\n\n return HttpResponse.json(asyncJobResponse, { status: 201 })\n }),\n\n // Generic async job response handler. Since this implementation is the same for all services and references the global map, it's fine if this is overridden.\n http.get(\n `${backendOrigin}${ASYNCHRONOUS_JOB_TOKEN(':id')}`,\n ({ params }) => {\n const id = params.id as string\n const asyncJobDetails = mockAsynchronousJobService.getOneById(id)\n if (!id || !asyncJobDetails) {\n return HttpResponse.json(\n { message: 'The mocked asynchronous job was not found' },\n { status: 404 },\n )\n }\n const { request, response } = asyncJobDetails as {\n request: TRequestBody\n response: TResponseBody\n }\n const responseObject: TResponseBody =\n typeof response === 'function' ? response(request) : response\n\n const jobState: AsynchJobState =\n serviceSpecificEndpointResponseStatus < 400 ? 'COMPLETE' : 'FAILED'\n\n return HttpResponse.json<\n AsynchronousJobStatus<TRequestBody, TResponseBody>\n >(\n {\n jobState,\n jobCanceling: false,\n requestBody: request,\n etag: '00000000-0000-0000-0000-000000000000',\n jobId: id,\n responseBody: responseObject,\n startedByUserId: 0,\n startedOn: '',\n changedOn: '',\n progressMessage: '',\n progressCurrent: 100,\n progressTotal: 100,\n exception: '',\n errorMessage: '',\n errorDetails: '',\n runtimeMS: 100,\n },\n {\n // This endpoint returns a successful status code regardless of the job status\n status: 200,\n },\n )\n },\n ),\n\n // Service-specific response endpoint\n http.get<{ asyncJobToken: string }, TResponseBody>(\n `${backendOrigin}${responsePath(':asyncJobToken')}`,\n ({ params }) => {\n const asyncJobToken = params.asyncJobToken\n const asyncJobDetails =\n mockAsynchronousJobService.getOneById(asyncJobToken)\n if (!asyncJobToken || !asyncJobDetails) {\n return HttpResponse.json(\n { message: 'The mocked asynchronous job was not found' },\n { status: 404 },\n )\n }\n\n const { request, response } = asyncJobDetails as {\n request: TRequestBody\n response: TResponseBody\n }\n const responseObject: TResponseBody =\n typeof response === 'function' ? response(request) : response\n\n return HttpResponse.json(responseObject, {\n status: serviceSpecificEndpointResponseStatus,\n })\n },\n ),\n ]\n}\n"],"mappings":";;;;;AAoBA,IAAM,IAA6B,IAAI,EAGrC;CACA,SAAS;CACT,gBAAgB;AAClB,CAAC;AAaD,SAAgB,EAMd,GACA,GACA,GACA,IAAgB,EAAY,EAAuB,aAAa,GAChE,IAAwC,KACxC;CACA,OAAO;EAEL,EAAK,KAAK,GAAG,IAAgB,KAAe,OAAO,EAAE,iBAAc;GAMjE,IAAM,IAA+B,EACnC,OANiB,EAA2B,OAAO;IACnD,SAAS,MAAM,EAAQ,KAAK;IAC5B,UAAU;GACZ,CAGS,EAAW,GACpB;GAEA,OAAO,EAAa,KAAK,GAAkB,EAAE,QAAQ,IAAI,CAAC;EAC5D,CAAC;EAGD,EAAK,IACH,GAAG,IAAgB,EAAuB,KAAK,MAC9C,EAAE,gBAAa;GACd,IAAM,IAAK,EAAO,IACZ,IAAkB,EAA2B,WAAW,CAAE;GAChE,IAAI,CAAC,KAAM,CAAC,GACV,OAAO,EAAa,KAClB,EAAE,SAAS,4CAA4C,GACvD,EAAE,QAAQ,IAAI,CAChB;GAEF,IAAM,EAAE,YAAS,gBAAa,GAIxB,IACJ,OAAO,KAAa,aAAa,EAAS,CAAO,IAAI,GAEjD,IACJ,IAAwC,MAAM,aAAa;GAE7D,OAAO,EAAa,KAGlB;IACE;IACA,cAAc;IACd,aAAa;IACb,MAAM;IACN,OAAO;IACP,cAAc;IACd,iBAAiB;IACjB,WAAW;IACX,WAAW;IACX,iBAAiB;IACjB,iBAAiB;IACjB,eAAe;IACf,WAAW;IACX,cAAc;IACd,cAAc;IACd,WAAW;GACb,GACA,EAEE,QAAQ,IACV,CACF;EACF,CACF;EAGA,EAAK,IACH,GAAG,IAAgB,EAAa,gBAAgB,MAC/C,EAAE,gBAAa;GACd,IAAM,IAAgB,EAAO,eACvB,IACJ,EAA2B,WAAW,CAAa;GACrD,IAAI,CAAC,KAAiB,CAAC,GACrB,OAAO,EAAa,KAClB,EAAE,SAAS,4CAA4C,GACvD,EAAE,QAAQ,IAAI,CAChB;GAGF,IAAM,EAAE,YAAS,gBAAa,GAIxB,IACJ,OAAO,KAAa,aAAa,EAAS,CAAO,IAAI;GAEvD,OAAO,EAAa,KAAK,GAAgB,EACvC,QAAQ,EACV,CAAC;EACH,CACF;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/authHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getAuthHandlers(backendOrigin: string) {\n return [\n http.get(`${backendOrigin}/auth/v1/authenticatedOn`, () => {\n return HttpResponse.json(\n { authenticatedOn: new Date().toISOString() },\n { status: 200 },\n )\n }),\n http.get(`${backendOrigin}/auth/v1/anonymousToken`, () => {\n return HttpResponse.json(\n { accessToken: 'mock-anonymous-token' },\n { status: 200 },\n )\n }),\n\n http.post(`${backendOrigin}/auth/v1/oauth2/introspect`, () => {\n return HttpResponse.json({ active: true }, { status: 200 })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,EAAgB,GAAuB;
|
|
1
|
+
{"version":3,"file":"authHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/authHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getAuthHandlers(backendOrigin: string) {\n return [\n http.get(`${backendOrigin}/auth/v1/authenticatedOn`, () => {\n return HttpResponse.json(\n { authenticatedOn: new Date().toISOString() },\n { status: 200 },\n )\n }),\n http.get(`${backendOrigin}/auth/v1/anonymousToken`, () => {\n return HttpResponse.json(\n { accessToken: 'mock-anonymous-token' },\n { status: 200 },\n )\n }),\n\n http.post(`${backendOrigin}/auth/v1/oauth2/introspect`, () => {\n return HttpResponse.json({ active: true }, { status: 200 })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,EAAgB,GAAuB;CACrD,OAAO;EACL,EAAK,IAAI,GAAG,EAAc,iCACjB,EAAa,KAClB,EAAE,kCAAiB,IAAI,KAAK,GAAE,YAAY,EAAE,GAC5C,EAAE,QAAQ,IAAI,CAChB,CACD;EACD,EAAK,IAAI,GAAG,EAAc,gCACjB,EAAa,KAClB,EAAE,aAAa,uBAAuB,GACtC,EAAE,QAAQ,IAAI,CAChB,CACD;EAED,EAAK,KAAK,GAAG,EAAc,mCAClB,EAAa,KAAK,EAAE,QAAQ,GAAK,GAAG,EAAE,QAAQ,IAAI,CAAC,CAC3D;CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"challengeHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/challengeHandlers.ts"],"sourcesContent":["import {\n Challenge,\n ChallengeTeam,\n ChallengeTeamPagedResults,\n CreateChallengeTeamRequest,\n PaginatedIds,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_CHALLENGE_ID,\n mockRegisteredChallengeTeams,\n} from '../../challenge/mockChallenge'\nimport { MOCK_CHALLENGE_PARTICIPANT_TEAM_ID } from '../../team/mockTeam'\nimport { SynapseApiResponse } from '../handlers'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst registeredChallengeTeamService = new BasicMockedCrudService<\n ChallengeTeam,\n 'id'\n>({\n initialData: mockRegisteredChallengeTeams,\n idField: 'id',\n autoGenerateId: true,\n})\n\nexport function getChallengeHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/entity/:id/challenge`,\n ({ params }) => {\n const response: SynapseApiResponse<Challenge> = {\n id: MOCK_CHALLENGE_ID,\n etag: 'f5e9df54-360b-4ede-9a17-f7f5680c8dd4',\n projectId: params.id as string,\n participantTeamId: String(MOCK_CHALLENGE_PARTICIPANT_TEAM_ID),\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getRegisteredChallengeTeamsHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/challenge/:challengeId/challengeTeam`,\n () => {\n const results = registeredChallengeTeamService.getAll()\n const response: SynapseApiResponse<ChallengeTeamPagedResults> = {\n results: results,\n totalNumberOfResults: results.length,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getRegisterTeamForChallengeHandler(backendOrigin: string) {\n return http.post<never, CreateChallengeTeamRequest>(\n `${backendOrigin}/repo/v1/challenge/:challengeId/challengeTeam`,\n async ({ request }) => {\n const requestBody = await request.json()\n const created = registeredChallengeTeamService.create({\n ...requestBody,\n etag: 'abcdef0987654321',\n })\n return HttpResponse.json(created, { status: 200 })\n },\n )\n}\n\nexport function getSubmissionTeamsHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/challenge/:challengeId/submissionTeams`,\n () => {\n const response: SynapseApiResponse<PaginatedIds> = {\n results: [],\n totalNumberOfResults: 0,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport default function getAllChallengeHandlers(backendOrigin: string) {\n return [\n getChallengeHandler(backendOrigin),\n getSubmissionTeamsHandler(backendOrigin),\n getRegisterTeamForChallengeHandler(backendOrigin),\n getRegisteredChallengeTeamsHandler(backendOrigin),\n ]\n}\n"],"mappings":";;;;;AAgBA,IAAM,IAAiC,IAAI,EAGzC;CACA,aAAa;CACb,SAAS;CACT,gBAAgB;
|
|
1
|
+
{"version":3,"file":"challengeHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/challengeHandlers.ts"],"sourcesContent":["import {\n Challenge,\n ChallengeTeam,\n ChallengeTeamPagedResults,\n CreateChallengeTeamRequest,\n PaginatedIds,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_CHALLENGE_ID,\n mockRegisteredChallengeTeams,\n} from '../../challenge/mockChallenge'\nimport { MOCK_CHALLENGE_PARTICIPANT_TEAM_ID } from '../../team/mockTeam'\nimport { SynapseApiResponse } from '../handlers'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst registeredChallengeTeamService = new BasicMockedCrudService<\n ChallengeTeam,\n 'id'\n>({\n initialData: mockRegisteredChallengeTeams,\n idField: 'id',\n autoGenerateId: true,\n})\n\nexport function getChallengeHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/entity/:id/challenge`,\n ({ params }) => {\n const response: SynapseApiResponse<Challenge> = {\n id: MOCK_CHALLENGE_ID,\n etag: 'f5e9df54-360b-4ede-9a17-f7f5680c8dd4',\n projectId: params.id as string,\n participantTeamId: String(MOCK_CHALLENGE_PARTICIPANT_TEAM_ID),\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getRegisteredChallengeTeamsHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/challenge/:challengeId/challengeTeam`,\n () => {\n const results = registeredChallengeTeamService.getAll()\n const response: SynapseApiResponse<ChallengeTeamPagedResults> = {\n results: results,\n totalNumberOfResults: results.length,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getRegisterTeamForChallengeHandler(backendOrigin: string) {\n return http.post<never, CreateChallengeTeamRequest>(\n `${backendOrigin}/repo/v1/challenge/:challengeId/challengeTeam`,\n async ({ request }) => {\n const requestBody = await request.json()\n const created = registeredChallengeTeamService.create({\n ...requestBody,\n etag: 'abcdef0987654321',\n })\n return HttpResponse.json(created, { status: 200 })\n },\n )\n}\n\nexport function getSubmissionTeamsHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}/repo/v1/challenge/:challengeId/submissionTeams`,\n () => {\n const response: SynapseApiResponse<PaginatedIds> = {\n results: [],\n totalNumberOfResults: 0,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport default function getAllChallengeHandlers(backendOrigin: string) {\n return [\n getChallengeHandler(backendOrigin),\n getSubmissionTeamsHandler(backendOrigin),\n getRegisterTeamForChallengeHandler(backendOrigin),\n getRegisteredChallengeTeamsHandler(backendOrigin),\n ]\n}\n"],"mappings":";;;;;AAgBA,IAAM,IAAiC,IAAI,EAGzC;CACA,aAAa;CACb,SAAS;CACT,gBAAgB;AAClB,CAAC;AAED,SAAgB,EAAoB,GAAuB;CACzD,OAAO,EAAK,IACV,GAAG,EAAc,iCAChB,EAAE,gBAAa;EACd,IAAM,IAA0C;GAC9C,IAAI;GACJ,MAAM;GACN,WAAW,EAAO;GAClB,mBAAmB,OAAO,CAAkC;EAC9D;EACA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;CACpD,CACF;AACF;AAEA,SAAgB,EAAmC,GAAuB;CACxE,OAAO,EAAK,IACV,GAAG,EAAc,sDACX;EACJ,IAAM,IAAU,EAA+B,OAAO,GAChD,IAA0D;GACrD;GACT,sBAAsB,EAAQ;EAChC;EACA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;CACpD,CACF;AACF;AAEA,SAAgB,EAAmC,GAAuB;CACxE,OAAO,EAAK,KACV,GAAG,EAAc,gDACjB,OAAO,EAAE,iBAAc;EACrB,IAAM,IAAc,MAAM,EAAQ,KAAK,GACjC,IAAU,EAA+B,OAAO;GACpD,GAAG;GACH,MAAM;EACR,CAAC;EACD,OAAO,EAAa,KAAK,GAAS,EAAE,QAAQ,IAAI,CAAC;CACnD,CACF;AACF;AAEA,SAAgB,EAA0B,GAAuB;CAC/D,OAAO,EAAK,IACV,GAAG,EAAc,wDAMR,EAAa,KAAK;EAHvB,SAAS,CAAC;EACV,sBAAsB;CAEC,GAAU,EAAE,QAAQ,IAAI,CAAC,CAEtD;AACF;AAEA,SAAwB,EAAwB,GAAuB;CACrE,OAAO;EACL,EAAoB,CAAa;EACjC,EAA0B,CAAa;EACvC,EAAmC,CAAa;EAChD,EAAmC,CAAa;CAClD;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changePasswordHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/changePasswordHandlers.ts"],"sourcesContent":["import { CHANGE_PASSWORD } from '@/utils/APIConstants'\nimport {\n ChangePasswordInterface,\n ErrorResponseCode,\n TwoFactorAuthErrorResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\n\nexport function getSuccessfulChangePasswordHandler(backendOrigin: string) {\n return http.post(backendOrigin + CHANGE_PASSWORD, () => {\n return new Response(null, { status: 204 })\n })\n}\n\nexport function getBadRequestChangePasswordHandler(\n backendOrigin: string,\n message: string,\n) {\n return http.post(backendOrigin + CHANGE_PASSWORD, () => {\n return HttpResponse.json(\n {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: message,\n },\n { status: 401 },\n )\n })\n}\n\nexport function getRequires2FAChangePasswordHandler(\n backendOrigin: string,\n userId: number,\n twoFaToken: string,\n) {\n return http.post<never, ChangePasswordInterface>(\n backendOrigin + CHANGE_PASSWORD,\n async ({ request }) => {\n const requestBody = await request.json()\n if ('twoFaToken' in requestBody) {\n // If a 2FA token is provided, accept the request.\n return new Response(null, { status: 204 })\n }\n\n // Otherwise, reject it with a 2FA challenge.\n const response: TwoFactorAuthErrorResponse = {\n concreteType:\n 'org.sagebionetworks.repo.model.auth.TwoFactorAuthErrorResponse',\n reason: 'Two factor authentication required.',\n errorCode: ErrorResponseCode.TWO_FA_REQUIRED,\n userId: userId,\n twoFaToken: twoFaToken,\n }\n\n return HttpResponse.json(response, { status: 401 })\n },\n )\n}\n"],"mappings":";;;;AAQA,SAAgB,EAAmC,GAAuB;
|
|
1
|
+
{"version":3,"file":"changePasswordHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/changePasswordHandlers.ts"],"sourcesContent":["import { CHANGE_PASSWORD } from '@/utils/APIConstants'\nimport {\n ChangePasswordInterface,\n ErrorResponseCode,\n TwoFactorAuthErrorResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\n\nexport function getSuccessfulChangePasswordHandler(backendOrigin: string) {\n return http.post(backendOrigin + CHANGE_PASSWORD, () => {\n return new Response(null, { status: 204 })\n })\n}\n\nexport function getBadRequestChangePasswordHandler(\n backendOrigin: string,\n message: string,\n) {\n return http.post(backendOrigin + CHANGE_PASSWORD, () => {\n return HttpResponse.json(\n {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: message,\n },\n { status: 401 },\n )\n })\n}\n\nexport function getRequires2FAChangePasswordHandler(\n backendOrigin: string,\n userId: number,\n twoFaToken: string,\n) {\n return http.post<never, ChangePasswordInterface>(\n backendOrigin + CHANGE_PASSWORD,\n async ({ request }) => {\n const requestBody = await request.json()\n if ('twoFaToken' in requestBody) {\n // If a 2FA token is provided, accept the request.\n return new Response(null, { status: 204 })\n }\n\n // Otherwise, reject it with a 2FA challenge.\n const response: TwoFactorAuthErrorResponse = {\n concreteType:\n 'org.sagebionetworks.repo.model.auth.TwoFactorAuthErrorResponse',\n reason: 'Two factor authentication required.',\n errorCode: ErrorResponseCode.TWO_FA_REQUIRED,\n userId: userId,\n twoFaToken: twoFaToken,\n }\n\n return HttpResponse.json(response, { status: 401 })\n },\n )\n}\n"],"mappings":";;;;AAQA,SAAgB,EAAmC,GAAuB;CACxE,OAAO,EAAK,KAAK,IAAgB,SACxB,IAAI,SAAS,MAAM,EAAE,QAAQ,IAAI,CAAC,CAC1C;AACH;AAEA,SAAgB,EACd,GACA,GACA;CACA,OAAO,EAAK,KAAK,IAAgB,SACxB,EAAa,KAClB;EACE,cAAc;EACd,QAAQ;CACV,GACA,EAAE,QAAQ,IAAI,CAChB,CACD;AACH;AAEA,SAAgB,EACd,GACA,GACA,GACA;CACA,OAAO,EAAK,KACV,IAAgB,GAChB,OAAO,EAAE,iBAAc;EAErB,IAAI,gBAAgB,MADM,EAAQ,KAAK,GAGrC,OAAO,IAAI,SAAS,MAAM,EAAE,QAAQ,IAAI,CAAC;EAI3C,IAAM,IAAuC;GAC3C,cACE;GACF,QAAQ;GACR,WAAW,EAAkB;GACrB;GACI;EACd;EAEA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;CACpD,CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/chatHandlers.ts"],"sourcesContent":["import {\n mockAgentChatResponse,\n mockAgentSession,\n mockChatSessionId,\n mockEmptyTraceEventsResponse,\n mockListAgentSessionsResponse,\n mockSessionHistoryResponse,\n mockTraceEventsResponse1,\n mockTraceEventsResponse2,\n mockTraceEventsResponse3,\n} from '@/mocks/chat/mockChat'\nimport {\n AGENT_CHAT_TRACE,\n AGENT_SESSION,\n AGENT_SESSION_HISTORY,\n GET_CHAT_ASYNC,\n LIST_AGENT_SESSIONS,\n START_CHAT_ASYNC,\n} from '@/utils/APIConstants'\nimport { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport {\n AgentChatRequest,\n AgentChatResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { generateAsyncJobHandlers } from './asyncJobHandlers'\n\nlet traceCallCount = 0\nexport const getChatbotHandlers = (\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n) => [\n http.post(`${backendOrigin}${AGENT_SESSION}`, () => {\n return HttpResponse.json(mockAgentSession, { status: 201 })\n }),\n\n //list chat sessions\n http.post(`${backendOrigin}${LIST_AGENT_SESSIONS}`, () => {\n // const request: ListAgentSessionsRequest = await request.json()\n return HttpResponse.json(mockListAgentSessionsResponse, { status: 201 })\n }),\n\n //session history\n http.post(\n `${backendOrigin}${AGENT_SESSION_HISTORY(mockChatSessionId)}`,\n () => {\n return HttpResponse.json(mockSessionHistoryResponse, { status: 201 })\n },\n ),\n //Async job to send chat message to the agent\n generateAsyncJobHandlers<AgentChatRequest, AgentChatResponse>(\n START_CHAT_ASYNC,\n tokenParam => GET_CHAT_ASYNC(tokenParam),\n mockAgentChatResponse,\n backendOrigin,\n ),\n\n //trace events\n http.post(`${backendOrigin}${AGENT_CHAT_TRACE(':id')}`, () => {\n //mock showing progress (increasing number of items)\n traceCallCount++\n if (traceCallCount == 1) {\n return HttpResponse.json(mockTraceEventsResponse1, { status: 201 })\n } else if (traceCallCount == 5) {\n return HttpResponse.json(mockTraceEventsResponse2, { status: 201 })\n } else if (traceCallCount == 8) {\n return HttpResponse.json(mockTraceEventsResponse3, { status: 201 })\n } else\n return HttpResponse.json(mockEmptyTraceEventsResponse, { status: 201 })\n }),\n // generateAsyncJobHandlers(\n // START_CHAT_ASYNC,\n // tokenParam => GET_CHAT_ASYNC(tokenParam),\n // {\n // reason: 'Failed to respond, timed out for example',\n // },\n // backendOrigin,\n // 400\n // )\n]\n"],"mappings":";;;;;;;AA2BA,IAAI,IAAiB,GACR,KACX,IAAgB,EAAY,EAAuB,
|
|
1
|
+
{"version":3,"file":"chatHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/chatHandlers.ts"],"sourcesContent":["import {\n mockAgentChatResponse,\n mockAgentSession,\n mockChatSessionId,\n mockEmptyTraceEventsResponse,\n mockListAgentSessionsResponse,\n mockSessionHistoryResponse,\n mockTraceEventsResponse1,\n mockTraceEventsResponse2,\n mockTraceEventsResponse3,\n} from '@/mocks/chat/mockChat'\nimport {\n AGENT_CHAT_TRACE,\n AGENT_SESSION,\n AGENT_SESSION_HISTORY,\n GET_CHAT_ASYNC,\n LIST_AGENT_SESSIONS,\n START_CHAT_ASYNC,\n} from '@/utils/APIConstants'\nimport { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport {\n AgentChatRequest,\n AgentChatResponse,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { generateAsyncJobHandlers } from './asyncJobHandlers'\n\nlet traceCallCount = 0\nexport const getChatbotHandlers = (\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n) => [\n http.post(`${backendOrigin}${AGENT_SESSION}`, () => {\n return HttpResponse.json(mockAgentSession, { status: 201 })\n }),\n\n //list chat sessions\n http.post(`${backendOrigin}${LIST_AGENT_SESSIONS}`, () => {\n // const request: ListAgentSessionsRequest = await request.json()\n return HttpResponse.json(mockListAgentSessionsResponse, { status: 201 })\n }),\n\n //session history\n http.post(\n `${backendOrigin}${AGENT_SESSION_HISTORY(mockChatSessionId)}`,\n () => {\n return HttpResponse.json(mockSessionHistoryResponse, { status: 201 })\n },\n ),\n //Async job to send chat message to the agent\n generateAsyncJobHandlers<AgentChatRequest, AgentChatResponse>(\n START_CHAT_ASYNC,\n tokenParam => GET_CHAT_ASYNC(tokenParam),\n mockAgentChatResponse,\n backendOrigin,\n ),\n\n //trace events\n http.post(`${backendOrigin}${AGENT_CHAT_TRACE(':id')}`, () => {\n //mock showing progress (increasing number of items)\n traceCallCount++\n if (traceCallCount == 1) {\n return HttpResponse.json(mockTraceEventsResponse1, { status: 201 })\n } else if (traceCallCount == 5) {\n return HttpResponse.json(mockTraceEventsResponse2, { status: 201 })\n } else if (traceCallCount == 8) {\n return HttpResponse.json(mockTraceEventsResponse3, { status: 201 })\n } else\n return HttpResponse.json(mockEmptyTraceEventsResponse, { status: 201 })\n }),\n // generateAsyncJobHandlers(\n // START_CHAT_ASYNC,\n // tokenParam => GET_CHAT_ASYNC(tokenParam),\n // {\n // reason: 'Failed to respond, timed out for example',\n // },\n // backendOrigin,\n // 400\n // )\n]\n"],"mappings":";;;;;;;AA2BA,IAAI,IAAiB,GACR,KACX,IAAgB,EAAY,EAAuB,aAAa,MAC7D;CACH,EAAK,KAAK,GAAG,IAAgB,WACpB,EAAa,KAAK,GAAkB,EAAE,QAAQ,IAAI,CAAC,CAC3D;CAGD,EAAK,KAAK,GAAG,IAAgB,WAEpB,EAAa,KAAK,GAA+B,EAAE,QAAQ,IAAI,CAAC,CACxE;CAGD,EAAK,KACH,GAAG,IAAgB,EAAsB,CAAiB,WAEjD,EAAa,KAAK,GAA4B,EAAE,QAAQ,IAAI,CAAC,CAExE;CAEA,EACE,IACA,MAAc,EAAe,CAAU,GACvC,GACA,CACF;CAGA,EAAK,KAAK,GAAG,IAAgB,EAAiB,KAAK,YAEjD,KACI,KAAkB,IACb,EAAa,KAAK,GAA0B,EAAE,QAAQ,IAAI,CAAC,IACzD,KAAkB,IACpB,EAAa,KAAK,GAA0B,EAAE,QAAQ,IAAI,CAAC,IACzD,KAAkB,IACpB,EAAa,KAAK,GAA0B,EAAE,QAAQ,IAAI,CAAC,IAE3D,EAAa,KAAK,GAA8B,EAAE,QAAQ,IAAI,CAAC,EACzE;AAUH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAccessRequestHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/dataAccessRequestHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT_DATA_ACCESS_REQUEST_FOR_UPDATE,\n DATA_ACCESS_REQUEST,\n DATA_ACCESS_REQUEST_SUBMISSION,\n} from '@/utils/APIConstants'\nimport { Renewal, Request } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_ACCESS_REQUIREMENT_WITHOUT_ACL_ID,\n mockManagedACTAccessRequirement,\n} from '../../accessRequirement/mockAccessRequirements'\nimport {\n MOCK_DATA_ACCESS_RENEWAL,\n MOCK_DATA_ACCESS_REQUEST,\n} from '../../dataaccess/MockDataAccessRequest'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst mockDataAccessRequestService = new BasicMockedCrudService<\n Request | Renewal,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n initialData: [MOCK_DATA_ACCESS_REQUEST, MOCK_DATA_ACCESS_RENEWAL],\n})\n\nconst mockMapARToDataAccessRequestService = new BasicMockedCrudService<{\n accessRequirementId: string\n requestId: string\n}>({\n initialData: [\n {\n accessRequirementId: String(mockManagedACTAccessRequirement.id),\n requestId: MOCK_DATA_ACCESS_REQUEST.id,\n },\n {\n accessRequirementId: String(MOCK_ACCESS_REQUIREMENT_WITHOUT_ACL_ID),\n requestId: MOCK_DATA_ACCESS_RENEWAL.id,\n },\n ],\n})\n\nexport function getDataAccessRequestHandlers(backendOrigin: string) {\n return [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_DATA_ACCESS_REQUEST_FOR_UPDATE(\n ':id',\n )}`,\n ({ params }) => {\n const response = mockMapARToDataAccessRequestService.getOneByField(\n 'accessRequirementId',\n params.id as string,\n )\n if (response && response.requestId) {\n const dataAccessRequest = mockDataAccessRequestService.getOneById(\n response.requestId,\n )\n if (dataAccessRequest) {\n return HttpResponse.json(dataAccessRequest, { status: 200 })\n }\n }\n return HttpResponse.json(\n {\n message: `MSW: Request or Renewal not found for access requirement ID: ${params.id}`,\n },\n { status: 404 },\n )\n },\n ),\n http.post<never, Request | Renewal>(\n `${backendOrigin}${DATA_ACCESS_REQUEST}`,\n async ({ request }) => {\n const resp = await request.json()\n const existingRequest = resp.id\n ? mockDataAccessRequestService.getOneById(resp.id)\n : null\n\n let updated\n if (existingRequest) {\n updated = mockDataAccessRequestService.update(resp.id, resp)\n } else {\n updated = mockDataAccessRequestService.create(resp)\n }\n\n return HttpResponse.json(updated, { status: 201 })\n },\n ),\n\n http.post(\n `${backendOrigin}${DATA_ACCESS_REQUEST_SUBMISSION(':id')}`,\n () => {\n return HttpResponse.json({}, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;;;;AAiBA,IAAM,IAA+B,IAAI,EAGvC;CACA,SAAS;CACT,gBAAgB;CAChB,aAAa,CAAC,GAA0B,
|
|
1
|
+
{"version":3,"file":"dataAccessRequestHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/dataAccessRequestHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT_DATA_ACCESS_REQUEST_FOR_UPDATE,\n DATA_ACCESS_REQUEST,\n DATA_ACCESS_REQUEST_SUBMISSION,\n} from '@/utils/APIConstants'\nimport { Renewal, Request } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n MOCK_ACCESS_REQUIREMENT_WITHOUT_ACL_ID,\n mockManagedACTAccessRequirement,\n} from '../../accessRequirement/mockAccessRequirements'\nimport {\n MOCK_DATA_ACCESS_RENEWAL,\n MOCK_DATA_ACCESS_REQUEST,\n} from '../../dataaccess/MockDataAccessRequest'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst mockDataAccessRequestService = new BasicMockedCrudService<\n Request | Renewal,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n initialData: [MOCK_DATA_ACCESS_REQUEST, MOCK_DATA_ACCESS_RENEWAL],\n})\n\nconst mockMapARToDataAccessRequestService = new BasicMockedCrudService<{\n accessRequirementId: string\n requestId: string\n}>({\n initialData: [\n {\n accessRequirementId: String(mockManagedACTAccessRequirement.id),\n requestId: MOCK_DATA_ACCESS_REQUEST.id,\n },\n {\n accessRequirementId: String(MOCK_ACCESS_REQUIREMENT_WITHOUT_ACL_ID),\n requestId: MOCK_DATA_ACCESS_RENEWAL.id,\n },\n ],\n})\n\nexport function getDataAccessRequestHandlers(backendOrigin: string) {\n return [\n http.get(\n `${backendOrigin}${ACCESS_REQUIREMENT_DATA_ACCESS_REQUEST_FOR_UPDATE(\n ':id',\n )}`,\n ({ params }) => {\n const response = mockMapARToDataAccessRequestService.getOneByField(\n 'accessRequirementId',\n params.id as string,\n )\n if (response && response.requestId) {\n const dataAccessRequest = mockDataAccessRequestService.getOneById(\n response.requestId,\n )\n if (dataAccessRequest) {\n return HttpResponse.json(dataAccessRequest, { status: 200 })\n }\n }\n return HttpResponse.json(\n {\n message: `MSW: Request or Renewal not found for access requirement ID: ${params.id}`,\n },\n { status: 404 },\n )\n },\n ),\n http.post<never, Request | Renewal>(\n `${backendOrigin}${DATA_ACCESS_REQUEST}`,\n async ({ request }) => {\n const resp = await request.json()\n const existingRequest = resp.id\n ? mockDataAccessRequestService.getOneById(resp.id)\n : null\n\n let updated\n if (existingRequest) {\n updated = mockDataAccessRequestService.update(resp.id, resp)\n } else {\n updated = mockDataAccessRequestService.create(resp)\n }\n\n return HttpResponse.json(updated, { status: 201 })\n },\n ),\n\n http.post(\n `${backendOrigin}${DATA_ACCESS_REQUEST_SUBMISSION(':id')}`,\n () => {\n return HttpResponse.json({}, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;;;;AAiBA,IAAM,IAA+B,IAAI,EAGvC;CACA,SAAS;CACT,gBAAgB;CAChB,aAAa,CAAC,GAA0B,CAAwB;AAClE,CAAC,GAEK,IAAsC,IAAI,EAG7C,EACD,aAAa,CACX;CACE,qBAAqB,OAAO,EAAgC,EAAE;CAC9D,WAAW,EAAyB;AACtC,GACA;CACE,qBAAqB,OAAO,CAAsC;CAClE,WAAW,EAAyB;AACtC,CACF,EACF,CAAC;AAED,SAAgB,EAA6B,GAAuB;CAClE,OAAO;EACL,EAAK,IACH,GAAG,IAAgB,EACjB,KACF,MACC,EAAE,gBAAa;GACd,IAAM,IAAW,EAAoC,cACnD,uBACA,EAAO,EACT;GACA,IAAI,KAAY,EAAS,WAAW;IAClC,IAAM,IAAoB,EAA6B,WACrD,EAAS,SACX;IACA,IAAI,GACF,OAAO,EAAa,KAAK,GAAmB,EAAE,QAAQ,IAAI,CAAC;GAE/D;GACA,OAAO,EAAa,KAClB,EACE,SAAS,gEAAgE,EAAO,KAClF,GACA,EAAE,QAAQ,IAAI,CAChB;EACF,CACF;EACA,EAAK,KACH,GAAG,IAAgB,KACnB,OAAO,EAAE,iBAAc;GACrB,IAAM,IAAO,MAAM,EAAQ,KAAK,GAC1B,IAAkB,EAAK,KACzB,EAA6B,WAAW,EAAK,EAAE,IAC/C,MAEA;GAOJ,OANA,AAGE,IAHE,IACQ,EAA6B,OAAO,EAAK,IAAI,CAAI,IAEjD,EAA6B,OAAO,CAAI,GAG7C,EAAa,KAAK,GAAS,EAAE,QAAQ,IAAI,CAAC;EACnD,CACF;EAEA,EAAK,KACH,GAAG,IAAgB,EAA+B,KAAK,WAE9C,EAAa,KAAK,CAAC,GAAG,EAAE,QAAQ,IAAI,CAAC,CAEhD;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataciteHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/dataciteHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getDataciteHandler() {\n return [\n http.post('https://api.datacite.org/graphql', () => {\n // const body = await request.json()\n\n // Default success payload\n return HttpResponse.json({\n data: {\n work: {\n citations: {\n nodes: [\n {\n id: 'https://doi.org/10.1111/xyz',\n titles: [{ title: 'A???B??C' }],\n publisher: { name: 'My Publishing' },\n publicationYear: 2025,\n container: { title: 'Best Journal' },\n },\n {\n id: 'https://doi.org/10.2222/xyz',\n titles: [{ title: 'D???E??F' }],\n publisher: { name: 'Other Publisher' },\n publicationYear: 2025,\n container: { title: 'Ok Journal' },\n },\n ],\n },\n },\n },\n })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,IAAqB;
|
|
1
|
+
{"version":3,"file":"dataciteHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/dataciteHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getDataciteHandler() {\n return [\n http.post('https://api.datacite.org/graphql', () => {\n // const body = await request.json()\n\n // Default success payload\n return HttpResponse.json({\n data: {\n work: {\n citations: {\n nodes: [\n {\n id: 'https://doi.org/10.1111/xyz',\n titles: [{ title: 'A???B??C' }],\n publisher: { name: 'My Publishing' },\n publicationYear: 2025,\n container: { title: 'Best Journal' },\n },\n {\n id: 'https://doi.org/10.2222/xyz',\n titles: [{ title: 'D???E??F' }],\n publisher: { name: 'Other Publisher' },\n publicationYear: 2025,\n container: { title: 'Ok Journal' },\n },\n ],\n },\n },\n },\n })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,IAAqB;CACnC,OAAO,CACL,EAAK,KAAK,0CAID,EAAa,KAAK,EACvB,MAAM,EACJ,MAAM,EACJ,WAAW,EACT,OAAO,CACL;EACE,IAAI;EACJ,QAAQ,CAAC,EAAE,OAAO,WAAW,CAAC;EAC9B,WAAW,EAAE,MAAM,gBAAgB;EACnC,iBAAiB;EACjB,WAAW,EAAE,OAAO,eAAe;CACrC,GACA;EACE,IAAI;EACJ,QAAQ,CAAC,EAAE,OAAO,WAAW,CAAC;EAC9B,WAAW,EAAE,MAAM,kBAAkB;EACrC,iBAAiB;EACjB,WAAW,EAAE,OAAO,aAAa;CACnC,CACF,EACF,EACF,EACF,EACF,CAAC,CACF,CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discussionHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/discussionHandlers.ts"],"sourcesContent":["import { FORUM, FORUM_THREAD, THREAD } from '@/utils/APIConstants'\nimport {\n CreateDiscussionThread,\n DiscussionFilter,\n DiscussionThreadBundle,\n Forum,\n PaginatedIds,\n PaginatedResults,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n mockDiscussionThreadBundles,\n mockForums,\n} from '../../discussion/mock_discussion'\nimport mockProject from '../../entity/mockProject'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst forumService = new BasicMockedCrudService<Forum, 'id'>({\n initialData: mockForums,\n idField: 'id',\n autoGenerateId: true,\n})\n\nconst threadService = new BasicMockedCrudService<DiscussionThreadBundle, 'id'>({\n initialData: mockDiscussionThreadBundles,\n idField: 'id',\n autoGenerateId: true,\n})\n\nfunction getAllThreadsMatchingForum(forumId: string, filter: DiscussionFilter) {\n return threadService\n .getMany(thread => thread.forumId === forumId)\n .filter(thread => {\n switch (filter) {\n case DiscussionFilter.NO_FILTER:\n return true\n case DiscussionFilter.DELETED_ONLY:\n return thread.isDeleted\n case DiscussionFilter.EXCLUDE_DELETED:\n return !thread.isDeleted\n }\n })\n}\n\nexport function getDiscussionHandlers(backendOrigin: string) {\n return [\n http.get(`${backendOrigin}${FORUM}/:id`, ({ params }) => {\n let status = 404\n let resp: SynapseApiResponse<Forum> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `MSW could not find a mock forum object with ID ${params.id}`,\n }\n\n const match = forumService.getOneById(params.id as string)\n if (match) {\n status = 200\n resp = match\n }\n\n return HttpResponse.json(resp, { status: status })\n }),\n\n http.get(`${backendOrigin}${THREAD}/:id`, ({ params }) => {\n let status = 404\n let resp: SynapseApiResponse<Forum> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `MSW could not find a mock discussion thread bundle object with ID ${params.id}`,\n }\n if (params.id === 'messageUrl') {\n // This is a different endpoint\n resp = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: 'GET /thread/messageUrl is not yet implemented',\n }\n }\n\n const match = threadService.getOneById(params.id as string)\n if (match) {\n status = 200\n resp = match\n }\n\n return HttpResponse.json(resp, { status: status })\n }),\n\n http.post<never, CreateDiscussionThread>(\n `${backendOrigin}${THREAD}`,\n async ({ request }) => {\n const requestBody = await request.json()\n\n const newDiscussionThreadBundle = threadService.create({\n forumId: requestBody.forumId,\n projectId: mockProject.id,\n title: requestBody.title,\n createdOn: new Date().toISOString(),\n createdBy: String(MOCK_USER_ID),\n modifiedOn: new Date().toISOString(),\n etag: 'etag',\n messageKey: 'todo key',\n numberOfViews: 0,\n numberOfReplies: 0,\n lastActivity: new Date().toISOString(),\n activeAuthors: [String(MOCK_USER_ID)],\n isEdited: false,\n isDeleted: false,\n isPinned: false,\n })\n\n return HttpResponse.json(newDiscussionThreadBundle, { status: 201 })\n },\n ),\n\n http.get(\n `${backendOrigin}${FORUM_THREAD(':forumId')}`,\n ({ params, request }) => {\n const offsetParam = new URL(request.url).searchParams.get('offset')\n const offset = offsetParam ? parseInt(offsetParam) : 0\n const limitParam = new URL(request.url).searchParams.get('limit')\n const limit = limitParam ? parseInt(limitParam) : 10\n const filter: DiscussionFilter =\n (params.filter as DiscussionFilter) ??\n DiscussionFilter.EXCLUDE_DELETED\n\n const matchingThreads = getAllThreadsMatchingForum(\n params.forumId as string,\n filter,\n )\n\n const response: SynapseApiResponse<\n PaginatedResults<DiscussionThreadBundle>\n > = {\n results: matchingThreads.slice(offset, offset + limit),\n totalNumberOfResults: matchingThreads.length,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n ),\n http.get(`${backendOrigin}${FORUM}/:id/moderators`, () => {\n const resp: PaginatedIds = {\n results: [String(MOCK_USER_ID)],\n totalNumberOfResults: 1,\n }\n return HttpResponse.json(resp, { status: 200 })\n }),\n ]\n}\n"],"mappings":";;;;;;;;AAmBA,IAAM,IAAe,IAAI,EAAoC;CAC3D,aAAa;CACb,SAAS;CACT,gBAAgB;
|
|
1
|
+
{"version":3,"file":"discussionHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/discussionHandlers.ts"],"sourcesContent":["import { FORUM, FORUM_THREAD, THREAD } from '@/utils/APIConstants'\nimport {\n CreateDiscussionThread,\n DiscussionFilter,\n DiscussionThreadBundle,\n Forum,\n PaginatedIds,\n PaginatedResults,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n mockDiscussionThreadBundles,\n mockForums,\n} from '../../discussion/mock_discussion'\nimport mockProject from '../../entity/mockProject'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\nconst forumService = new BasicMockedCrudService<Forum, 'id'>({\n initialData: mockForums,\n idField: 'id',\n autoGenerateId: true,\n})\n\nconst threadService = new BasicMockedCrudService<DiscussionThreadBundle, 'id'>({\n initialData: mockDiscussionThreadBundles,\n idField: 'id',\n autoGenerateId: true,\n})\n\nfunction getAllThreadsMatchingForum(forumId: string, filter: DiscussionFilter) {\n return threadService\n .getMany(thread => thread.forumId === forumId)\n .filter(thread => {\n switch (filter) {\n case DiscussionFilter.NO_FILTER:\n return true\n case DiscussionFilter.DELETED_ONLY:\n return thread.isDeleted\n case DiscussionFilter.EXCLUDE_DELETED:\n return !thread.isDeleted\n }\n })\n}\n\nexport function getDiscussionHandlers(backendOrigin: string) {\n return [\n http.get(`${backendOrigin}${FORUM}/:id`, ({ params }) => {\n let status = 404\n let resp: SynapseApiResponse<Forum> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `MSW could not find a mock forum object with ID ${params.id}`,\n }\n\n const match = forumService.getOneById(params.id as string)\n if (match) {\n status = 200\n resp = match\n }\n\n return HttpResponse.json(resp, { status: status })\n }),\n\n http.get(`${backendOrigin}${THREAD}/:id`, ({ params }) => {\n let status = 404\n let resp: SynapseApiResponse<Forum> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `MSW could not find a mock discussion thread bundle object with ID ${params.id}`,\n }\n if (params.id === 'messageUrl') {\n // This is a different endpoint\n resp = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: 'GET /thread/messageUrl is not yet implemented',\n }\n }\n\n const match = threadService.getOneById(params.id as string)\n if (match) {\n status = 200\n resp = match\n }\n\n return HttpResponse.json(resp, { status: status })\n }),\n\n http.post<never, CreateDiscussionThread>(\n `${backendOrigin}${THREAD}`,\n async ({ request }) => {\n const requestBody = await request.json()\n\n const newDiscussionThreadBundle = threadService.create({\n forumId: requestBody.forumId,\n projectId: mockProject.id,\n title: requestBody.title,\n createdOn: new Date().toISOString(),\n createdBy: String(MOCK_USER_ID),\n modifiedOn: new Date().toISOString(),\n etag: 'etag',\n messageKey: 'todo key',\n numberOfViews: 0,\n numberOfReplies: 0,\n lastActivity: new Date().toISOString(),\n activeAuthors: [String(MOCK_USER_ID)],\n isEdited: false,\n isDeleted: false,\n isPinned: false,\n })\n\n return HttpResponse.json(newDiscussionThreadBundle, { status: 201 })\n },\n ),\n\n http.get(\n `${backendOrigin}${FORUM_THREAD(':forumId')}`,\n ({ params, request }) => {\n const offsetParam = new URL(request.url).searchParams.get('offset')\n const offset = offsetParam ? parseInt(offsetParam) : 0\n const limitParam = new URL(request.url).searchParams.get('limit')\n const limit = limitParam ? parseInt(limitParam) : 10\n const filter: DiscussionFilter =\n (params.filter as DiscussionFilter) ??\n DiscussionFilter.EXCLUDE_DELETED\n\n const matchingThreads = getAllThreadsMatchingForum(\n params.forumId as string,\n filter,\n )\n\n const response: SynapseApiResponse<\n PaginatedResults<DiscussionThreadBundle>\n > = {\n results: matchingThreads.slice(offset, offset + limit),\n totalNumberOfResults: matchingThreads.length,\n }\n return HttpResponse.json(response, { status: 200 })\n },\n ),\n http.get(`${backendOrigin}${FORUM}/:id/moderators`, () => {\n const resp: PaginatedIds = {\n results: [String(MOCK_USER_ID)],\n totalNumberOfResults: 1,\n }\n return HttpResponse.json(resp, { status: 200 })\n }),\n ]\n}\n"],"mappings":";;;;;;;;AAmBA,IAAM,IAAe,IAAI,EAAoC;CAC3D,aAAa;CACb,SAAS;CACT,gBAAgB;AAClB,CAAC,GAEK,IAAgB,IAAI,EAAqD;CAC7E,aAAa;CACb,SAAS;CACT,gBAAgB;AAClB,CAAC;AAED,SAAS,EAA2B,GAAiB,GAA0B;CAC7E,OAAO,EACJ,SAAQ,MAAU,EAAO,YAAY,CAAO,EAC5C,QAAO,MAAU;EAChB,QAAQ,GAAR;GACE,KAAK,EAAiB,WACpB,OAAO;GACT,KAAK,EAAiB,cACpB,OAAO,EAAO;GAChB,KAAK,EAAiB,iBACpB,OAAO,CAAC,EAAO;EACnB;CACF,CAAC;AACL;AAEA,SAAgB,EAAsB,GAAuB;CAC3D,OAAO;EACL,EAAK,IAAI,GAAG,IAAgB,EAAM,QAAQ,EAAE,gBAAa;GACvD,IAAI,IAAS,KACT,IAAkC;IACpC,cAAc;IACd,QAAQ,kDAAkD,EAAO;GACnE,GAEM,IAAQ,EAAa,WAAW,EAAO,EAAY;GAMzD,OALI,MACF,IAAS,KACT,IAAO,IAGF,EAAa,KAAK,GAAM,EAAU,UAAO,CAAC;EACnD,CAAC;EAED,EAAK,IAAI,GAAG,IAAgB,EAAO,QAAQ,EAAE,gBAAa;GACxD,IAAI,IAAS,KACT,IAAkC;IACpC,cAAc;IACd,QAAQ,qEAAqE,EAAO;GACtF;GACA,AAAI,EAAO,OAAO,iBAEhB,IAAO;IACL,cAAc;IACd,QAAQ;GACV;GAGF,IAAM,IAAQ,EAAc,WAAW,EAAO,EAAY;GAM1D,OALI,MACF,IAAS,KACT,IAAO,IAGF,EAAa,KAAK,GAAM,EAAU,UAAO,CAAC;EACnD,CAAC;EAED,EAAK,KACH,GAAG,IAAgB,KACnB,OAAO,EAAE,iBAAc;GACrB,IAAM,IAAc,MAAM,EAAQ,KAAK,GAEjC,IAA4B,EAAc,OAAO;IACrD,SAAS,EAAY;IACrB,WAAW,EAAY;IACvB,OAAO,EAAY;IACnB,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,WAAW;IACX,6BAAY,IAAI,KAAK,GAAE,YAAY;IACnC,MAAM;IACN,YAAY;IACZ,eAAe;IACf,iBAAiB;IACjB,+BAAc,IAAI,KAAK,GAAE,YAAY;IACrC,eAAe,CAAC,KAAoB;IACpC,UAAU;IACV,WAAW;IACX,UAAU;GACZ,CAAC;GAED,OAAO,EAAa,KAAK,GAA2B,EAAE,QAAQ,IAAI,CAAC;EACrE,CACF;EAEA,EAAK,IACH,GAAG,IAAgB,EAAa,UAAU,MACzC,EAAE,WAAQ,iBAAc;GACvB,IAAM,IAAc,IAAI,IAAI,EAAQ,GAAG,EAAE,aAAa,IAAI,QAAQ,GAC5D,IAAS,IAAc,SAAS,CAAW,IAAI,GAC/C,IAAa,IAAI,IAAI,EAAQ,GAAG,EAAE,aAAa,IAAI,OAAO,GAC1D,IAAQ,IAAa,SAAS,CAAU,IAAI,IAC5C,IACH,EAAO,UACR,EAAiB,iBAEb,IAAkB,EACtB,EAAO,SACP,CACF,GAEM,IAEF;IACF,SAAS,EAAgB,MAAM,GAAQ,IAAS,CAAK;IACrD,sBAAsB,EAAgB;GACxC;GACA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CACF;EACA,EAAK,IAAI,GAAG,IAAgB,EAAM,wBAKzB,EAAa,KAAK;GAHvB,SAAS,CAAC,KAAoB;GAC9B,sBAAsB;EAEC,GAAM,EAAE,QAAQ,IAAI,CAAC,CAC/C;CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doiHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/doiHandlers.ts"],"sourcesContent":["import { REPO } from '@/utils/APIConstants'\nimport { Doi } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_DOI } from '../../doi/MockDoi'\n\nexport function getDoiHandler(\n backendOrigin: string,\n doiResponse: Doi = MOCK_DOI,\n) {\n return [\n http.get(`${backendOrigin}${REPO}/doi`, () => {\n return HttpResponse.json(doiResponse, { status: 201 })\n }),\n ]\n}\n"],"mappings":";;;;AAKA,SAAgB,EACd,GACA,IAAmB,GACnB;
|
|
1
|
+
{"version":3,"file":"doiHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/doiHandlers.ts"],"sourcesContent":["import { REPO } from '@/utils/APIConstants'\nimport { Doi } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_DOI } from '../../doi/MockDoi'\n\nexport function getDoiHandler(\n backendOrigin: string,\n doiResponse: Doi = MOCK_DOI,\n) {\n return [\n http.get(`${backendOrigin}${REPO}/doi`, () => {\n return HttpResponse.json(doiResponse, { status: 201 })\n }),\n ]\n}\n"],"mappings":";;;;AAKA,SAAgB,EACd,GACA,IAAmB,GACnB;CACA,OAAO,CACL,EAAK,IAAI,GAAG,IAAgB,EAAK,aACxB,EAAa,KAAK,GAAa,EAAE,QAAQ,IAAI,CAAC,CACtD,CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entityHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/entityHandlers.ts"],"sourcesContent":["import {\n ENTITY,\n ENTITY_BUNDLE_V2,\n ENTITY_HEADERS,\n ENTITY_ID,\n ENTITY_ID_VERSION,\n ENTITY_ID_VERSIONS,\n ENTITY_JSON,\n ENTITY_SCHEMA_BINDING,\n} from '@/utils/APIConstants'\nimport { normalizeSynPrefix } from '@/utils/functions/EntityTypeUtils'\nimport {\n ErrorResponse,\n UploadDestination,\n} from '@sage-bionetworks/synapse-client'\nimport {\n AccessControlList,\n Entity,\n EntityBundle,\n EntityHeader,\n EntityJson,\n EntityPath,\n PaginatedResults,\n ProjectHeaderList,\n Reference,\n VersionableEntity,\n VersionInfo,\n} from '@sage-bionetworks/synapse-types'\nimport { uniqueId } from 'lodash-es'\nimport { http, HttpResponse } from 'msw'\nimport mockEntities, { mockProjectsEntityData } from '../../entity'\nimport { MOCK_INVALID_PROJECT_NAME } from '../../entity/mockEntity'\nimport { MockEntityData } from '../../entity/MockEntityData'\nimport {\n mockSynapseStorageUploadDestination,\n mockUploadDestinations,\n} from '../../mock_upload_destination'\nimport { mockSchemaBinding } from '../../mockSchema'\nimport { SynapseApiResponse } from '../handlers'\n\nfunction getMatchingMockEntities(entityIds: string[]): MockEntityData[] {\n const normalizedPassedIds = entityIds.map(normalizeSynPrefix)\n return mockEntities.filter(entity =>\n normalizedPassedIds.includes(normalizeSynPrefix(entity.id)),\n )\n}\nfunction getMatchingMockEntity(entityId: string): MockEntityData | undefined {\n const matches = getMatchingMockEntities([entityId])\n if (matches.length == 0) {\n return undefined\n }\n return matches[0]\n}\n\nexport function getEntityBundleHandler(\n backendOrigin: string,\n bundle?: Partial<EntityBundle>,\n) {\n return http.post(\n `${backendOrigin}${ENTITY_BUNDLE_V2(':entityId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityBundle> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n if (bundle) {\n response = bundle as EntityBundle\n status = 200\n } else {\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData?.bundle) {\n response = entityData.bundle\n status = 200\n }\n }\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function getEntityJsonHandler(\n backendOrigin: string,\n entityJson?: Partial<EntityJson>,\n) {\n return http.get(\n `${backendOrigin}${ENTITY_JSON(':entityId')}`,\n\n () => {\n const response = entityJson\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getVersionedEntityBundleHandler(\n backendOrigin: string,\n bundle?: Partial<EntityBundle>,\n) {\n return http.post(\n `${backendOrigin}${ENTITY_BUNDLE_V2(':entityId', ':versionNumber')}`,\n ({ params }) => {\n const entityId = params.entityId as string\n const versionNumber = parseInt(params.versionNumber as string)\n let status = 404\n let response: SynapseApiResponse<EntityBundle> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${entityId}`,\n }\n if (bundle) {\n response = bundle as EntityBundle\n status = 200\n } else {\n const entityData = getMatchingMockEntity(entityId)\n if (entityData) {\n const bundle = entityData.bundle\n if (entityData.versions && entityData.versions[versionNumber]) {\n response = {\n ...bundle,\n entity: entityData.versions[versionNumber],\n } as EntityBundle\n } else {\n response = bundle as EntityBundle\n }\n status = 200\n }\n }\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport const getEntityHandlers = (backendOrigin: string) => [\n /**\n * Create a new entity\n */\n http.post<never, Entity>(`${backendOrigin}${ENTITY}`, async ({ request }) => {\n let status = 200\n const requestBody = await request.json()\n let response: SynapseApiResponse<Entity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: '...',\n }\n if (!requestBody) {\n status = 400\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock service worker received the following malformed body for PUT ${ENTITY} : ${JSON.stringify(\n requestBody,\n )}`,\n }\n } else {\n if (requestBody.name === MOCK_INVALID_PROJECT_NAME) {\n ;(response as ErrorResponse).reason = 'Invalid project name'\n status = 403\n } else {\n response = { id: uniqueId('syn'), ...requestBody }\n }\n }\n\n return HttpResponse.json(response, { status })\n }),\n\n /**\n * Get entity by ID\n */\n http.get(`${backendOrigin}${ENTITY_ID(':entityId')}`, ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<Entity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity with ID ${params.entityId}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData) {\n response = entityData.entity\n status = 200\n }\n return HttpResponse.json(response, { status })\n }),\n\n http.get(\n `${backendOrigin}${ENTITY_ID_VERSIONS(':entityId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<PaginatedResults<VersionInfo>> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find mock entity versions for ID ${params.entityId}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData && entityData.versionInfo) {\n response = { results: entityData.versionInfo }\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get<{ entityId: string; versionNumber: string }>(\n `${backendOrigin}${ENTITY_ID_VERSION(':entityId', ':versionNumber')}`,\n ({ params }) => {\n let status = 404\n const entityId = params.entityId\n const versionNumber = params.versionNumber.toString()\n const requestedVersionNumber = parseInt(versionNumber)\n\n let response: SynapseApiResponse<VersionableEntity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock versioned entity with ID ${entityId}.${versionNumber}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId)\n if (\n entityData &&\n entityData.versions &&\n entityData.versions[requestedVersionNumber]\n ) {\n response = entityData.versions[\n requestedVersionNumber\n ] as VersionableEntity\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n getEntityBundleHandler(backendOrigin),\n getVersionedEntityBundleHandler(backendOrigin),\n\n http.get(`${backendOrigin}${ENTITY_SCHEMA_BINDING(':entityId')}`, () => {\n return HttpResponse.json(mockSchemaBinding, { status: 200 })\n }),\n http.get(\n `${backendOrigin}${ENTITY_JSON(':entityId')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityJson> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData?.json) {\n response = entityData.json\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.post<{ entityId: string }, { references: Reference[] }>(\n `${backendOrigin}${ENTITY_HEADERS}`,\n\n async ({ params, request }) => {\n let status = 404\n let response: SynapseApiResponse<PaginatedResults<EntityHeader>> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n\n const referenceList = await request.json()\n const entityData: EntityHeader[] = referenceList.references\n .map(ref => {\n const entityHeader = getMatchingMockEntity(ref.targetId)?.entityHeader\n if (entityHeader) {\n return {\n ...entityHeader,\n // ID should match what is passed in (i.e. may or may not have syn prefix)\n id: ref.targetId,\n }\n }\n return undefined\n })\n .filter((header): header is EntityHeader => !!header)\n\n if (entityData) {\n response = { results: entityData }\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(\n `${backendOrigin}${ENTITY_ID(':entityId')}/path`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityPath> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity path using ID ${params.entityId}`,\n }\n const entityData = getMatchingMockEntity(params.entityId as string)\n\n if (entityData && entityData.path) {\n response = entityData.path\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(`${backendOrigin}/file/v1/entity/:id/uploadDestination`, () => {\n const response: UploadDestination = mockSynapseStorageUploadDestination\n return HttpResponse.json(response, { status: 200 })\n }),\n\n http.get(\n `${backendOrigin}/file/v1/entity/:id/uploadDestination/:storageLocationId`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<UploadDestination> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an uploadDestination using storageLocationId ${params.storageLocationId}`,\n }\n const uploadDestination = mockUploadDestinations.find(\n e => Number(params.storageLocationId) === e.storageLocationId,\n )\n\n if (uploadDestination) {\n response = uploadDestination\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(`${backendOrigin}/repo/v1/projects`, () => {\n const response: ProjectHeaderList = {\n results: mockProjectsEntityData.map(p => ({\n name: p.name,\n id: p.id,\n lastActivity: '2024-01-04T21:11:59.000Z',\n modifiedBy: parseInt(p.entity.modifiedBy!),\n modifiedOn: p.entity.modifiedOn!,\n })),\n }\n return HttpResponse.json(response, { status: 200 })\n }),\n\n http.post<{ entityId: string }, AccessControlList>(\n `${backendOrigin}${ENTITY_ID(':entityId')}/acl`,\n async ({ params, request }) => {\n const entityData = getMatchingMockEntity(params.entityId)\n let status: number\n let response: SynapseApiResponse<AccessControlList>\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (entityData.bundle?.accessControlList) {\n status = 403\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: 'Resource already has an ACL.',\n }\n } else {\n response = await request.json()\n status = 201\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.put<{ entityId: string }, AccessControlList>(\n `${backendOrigin}${ENTITY_ID(':entityId')}/acl`,\n async ({ params, request }) => {\n const entityData = getMatchingMockEntity(params.entityId)\n\n let status: number\n let response: SynapseApiResponse<AccessControlList>\n\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (!entityData?.bundle?.accessControlList) {\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason:\n 'Cannot update ACL for a resource which inherits its permissions.',\n }\n status = 403\n } else {\n response = await request.json()\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.delete(`${backendOrigin}${ENTITY_ID(':entityId')}/acl`, ({ params }) => {\n const entityData = getMatchingMockEntity(params.entityId as string)\n\n let status: number\n let response: SynapseApiResponse<''>\n\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (!entityData?.bundle?.accessControlList) {\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason:\n 'Cannot delete ACL for a resource which inherits its permissions.',\n }\n status = 403\n } else {\n response = ''\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n }),\n]\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entityHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/entityHandlers.ts"],"sourcesContent":["import {\n ENTITY,\n ENTITY_BUNDLE_V2,\n ENTITY_HEADERS,\n ENTITY_ID,\n ENTITY_ID_VERSION,\n ENTITY_ID_VERSIONS,\n ENTITY_JSON,\n ENTITY_SCHEMA_BINDING,\n} from '@/utils/APIConstants'\nimport { normalizeSynPrefix } from '@/utils/functions/EntityTypeUtils'\nimport {\n ErrorResponse,\n UploadDestination,\n} from '@sage-bionetworks/synapse-client'\nimport {\n AccessControlList,\n Entity,\n EntityBundle,\n EntityHeader,\n EntityJson,\n EntityPath,\n PaginatedResults,\n ProjectHeaderList,\n Reference,\n VersionableEntity,\n VersionInfo,\n} from '@sage-bionetworks/synapse-types'\nimport { uniqueId } from 'lodash-es'\nimport { http, HttpResponse } from 'msw'\nimport mockEntities, { mockProjectsEntityData } from '../../entity'\nimport { MOCK_INVALID_PROJECT_NAME } from '../../entity/mockEntity'\nimport { MockEntityData } from '../../entity/MockEntityData'\nimport {\n mockSynapseStorageUploadDestination,\n mockUploadDestinations,\n} from '../../mock_upload_destination'\nimport { mockSchemaBinding } from '../../mockSchema'\nimport { SynapseApiResponse } from '../handlers'\n\nfunction getMatchingMockEntities(entityIds: string[]): MockEntityData[] {\n const normalizedPassedIds = entityIds.map(normalizeSynPrefix)\n return mockEntities.filter(entity =>\n normalizedPassedIds.includes(normalizeSynPrefix(entity.id)),\n )\n}\nfunction getMatchingMockEntity(entityId: string): MockEntityData | undefined {\n const matches = getMatchingMockEntities([entityId])\n if (matches.length == 0) {\n return undefined\n }\n return matches[0]\n}\n\nexport function getEntityBundleHandler(\n backendOrigin: string,\n bundle?: Partial<EntityBundle>,\n) {\n return http.post(\n `${backendOrigin}${ENTITY_BUNDLE_V2(':entityId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityBundle> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n if (bundle) {\n response = bundle as EntityBundle\n status = 200\n } else {\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData?.bundle) {\n response = entityData.bundle\n status = 200\n }\n }\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function getEntityJsonHandler(\n backendOrigin: string,\n entityJson?: Partial<EntityJson>,\n) {\n return http.get(\n `${backendOrigin}${ENTITY_JSON(':entityId')}`,\n\n () => {\n const response = entityJson\n return HttpResponse.json(response, { status: 200 })\n },\n )\n}\n\nexport function getVersionedEntityBundleHandler(\n backendOrigin: string,\n bundle?: Partial<EntityBundle>,\n) {\n return http.post(\n `${backendOrigin}${ENTITY_BUNDLE_V2(':entityId', ':versionNumber')}`,\n ({ params }) => {\n const entityId = params.entityId as string\n const versionNumber = parseInt(params.versionNumber as string)\n let status = 404\n let response: SynapseApiResponse<EntityBundle> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${entityId}`,\n }\n if (bundle) {\n response = bundle as EntityBundle\n status = 200\n } else {\n const entityData = getMatchingMockEntity(entityId)\n if (entityData) {\n const bundle = entityData.bundle\n if (entityData.versions && entityData.versions[versionNumber]) {\n response = {\n ...bundle,\n entity: entityData.versions[versionNumber],\n } as EntityBundle\n } else {\n response = bundle as EntityBundle\n }\n status = 200\n }\n }\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport const getEntityHandlers = (backendOrigin: string) => [\n /**\n * Create a new entity\n */\n http.post<never, Entity>(`${backendOrigin}${ENTITY}`, async ({ request }) => {\n let status = 200\n const requestBody = await request.json()\n let response: SynapseApiResponse<Entity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: '...',\n }\n if (!requestBody) {\n status = 400\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock service worker received the following malformed body for PUT ${ENTITY} : ${JSON.stringify(\n requestBody,\n )}`,\n }\n } else {\n if (requestBody.name === MOCK_INVALID_PROJECT_NAME) {\n ;(response as ErrorResponse).reason = 'Invalid project name'\n status = 403\n } else {\n response = { id: uniqueId('syn'), ...requestBody }\n }\n }\n\n return HttpResponse.json(response, { status })\n }),\n\n /**\n * Get entity by ID\n */\n http.get(`${backendOrigin}${ENTITY_ID(':entityId')}`, ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<Entity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity with ID ${params.entityId}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData) {\n response = entityData.entity\n status = 200\n }\n return HttpResponse.json(response, { status })\n }),\n\n http.get(\n `${backendOrigin}${ENTITY_ID_VERSIONS(':entityId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<PaginatedResults<VersionInfo>> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find mock entity versions for ID ${params.entityId}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData && entityData.versionInfo) {\n response = { results: entityData.versionInfo }\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get<{ entityId: string; versionNumber: string }>(\n `${backendOrigin}${ENTITY_ID_VERSION(':entityId', ':versionNumber')}`,\n ({ params }) => {\n let status = 404\n const entityId = params.entityId\n const versionNumber = params.versionNumber.toString()\n const requestedVersionNumber = parseInt(versionNumber)\n\n let response: SynapseApiResponse<VersionableEntity> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock versioned entity with ID ${entityId}.${versionNumber}`,\n }\n\n const entityData = getMatchingMockEntity(params.entityId)\n if (\n entityData &&\n entityData.versions &&\n entityData.versions[requestedVersionNumber]\n ) {\n response = entityData.versions[\n requestedVersionNumber\n ] as VersionableEntity\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n getEntityBundleHandler(backendOrigin),\n getVersionedEntityBundleHandler(backendOrigin),\n\n http.get(`${backendOrigin}${ENTITY_SCHEMA_BINDING(':entityId')}`, () => {\n return HttpResponse.json(mockSchemaBinding, { status: 200 })\n }),\n http.get(\n `${backendOrigin}${ENTITY_JSON(':entityId')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityJson> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n const entityData = getMatchingMockEntity(params.entityId as string)\n if (entityData?.json) {\n response = entityData.json\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.post<{ entityId: string }, { references: Reference[] }>(\n `${backendOrigin}${ENTITY_HEADERS}`,\n\n async ({ params, request }) => {\n let status = 404\n let response: SynapseApiResponse<PaginatedResults<EntityHeader>> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n\n const referenceList = await request.json()\n const entityData: EntityHeader[] = referenceList.references\n .map(ref => {\n const entityHeader = getMatchingMockEntity(ref.targetId)?.entityHeader\n if (entityHeader) {\n return {\n ...entityHeader,\n // ID should match what is passed in (i.e. may or may not have syn prefix)\n id: ref.targetId,\n }\n }\n return undefined\n })\n .filter((header): header is EntityHeader => !!header)\n\n if (entityData) {\n response = { results: entityData }\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(\n `${backendOrigin}${ENTITY_ID(':entityId')}/path`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<EntityPath> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity path using ID ${params.entityId}`,\n }\n const entityData = getMatchingMockEntity(params.entityId as string)\n\n if (entityData && entityData.path) {\n response = entityData.path\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(`${backendOrigin}/file/v1/entity/:id/uploadDestination`, () => {\n const response: UploadDestination = mockSynapseStorageUploadDestination\n return HttpResponse.json(response, { status: 200 })\n }),\n\n http.get(\n `${backendOrigin}/file/v1/entity/:id/uploadDestination/:storageLocationId`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<UploadDestination> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an uploadDestination using storageLocationId ${params.storageLocationId}`,\n }\n const uploadDestination = mockUploadDestinations.find(\n e => Number(params.storageLocationId) === e.storageLocationId,\n )\n\n if (uploadDestination) {\n response = uploadDestination\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.get(`${backendOrigin}/repo/v1/projects`, () => {\n const response: ProjectHeaderList = {\n results: mockProjectsEntityData.map(p => ({\n name: p.name,\n id: p.id,\n lastActivity: '2024-01-04T21:11:59.000Z',\n modifiedBy: parseInt(p.entity.modifiedBy!),\n modifiedOn: p.entity.modifiedOn!,\n })),\n }\n return HttpResponse.json(response, { status: 200 })\n }),\n\n http.post<{ entityId: string }, AccessControlList>(\n `${backendOrigin}${ENTITY_ID(':entityId')}/acl`,\n async ({ params, request }) => {\n const entityData = getMatchingMockEntity(params.entityId)\n let status: number\n let response: SynapseApiResponse<AccessControlList>\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (entityData.bundle?.accessControlList) {\n status = 403\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: 'Resource already has an ACL.',\n }\n } else {\n response = await request.json()\n status = 201\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.put<{ entityId: string }, AccessControlList>(\n `${backendOrigin}${ENTITY_ID(':entityId')}/acl`,\n async ({ params, request }) => {\n const entityData = getMatchingMockEntity(params.entityId)\n\n let status: number\n let response: SynapseApiResponse<AccessControlList>\n\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (!entityData?.bundle?.accessControlList) {\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason:\n 'Cannot update ACL for a resource which inherits its permissions.',\n }\n status = 403\n } else {\n response = await request.json()\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n ),\n\n http.delete(`${backendOrigin}${ENTITY_ID(':entityId')}/acl`, ({ params }) => {\n const entityData = getMatchingMockEntity(params.entityId as string)\n\n let status: number\n let response: SynapseApiResponse<''>\n\n if (!entityData) {\n status = 404\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock entity bundle with ID ${params.entityId}`,\n }\n } else if (!entityData?.bundle?.accessControlList) {\n response = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason:\n 'Cannot delete ACL for a resource which inherits its permissions.',\n }\n status = 403\n } else {\n response = ''\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n }),\n]\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluationHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/evaluationHandlers.ts"],"sourcesContent":["import { EVALUATION, EVALUATION_BY_ID } from '@/utils/APIConstants'\nimport { Evaluation, PaginatedResults } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { mockEvaluations } from '../../entity/mockEvaluationQueue'\nimport { SynapseApiResponse } from '../handlers'\n\nexport function getEvaluationHandlers(backendOrigin: string) {\n return [\n /**\n * Get by ID\n */\n http.get(\n `${backendOrigin}${EVALUATION_BY_ID(':evaluationId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<Evaluation> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock evaluation queue with ID ${params.evaluationId}`,\n }\n\n const match = mockEvaluations.find(\n evaluation => evaluation.id === params.entityId,\n )\n if (match) {\n response = match\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n /**\n * Get paginated list\n */\n http.get(`${backendOrigin}${EVALUATION}`, () => {\n const status = 200\n const response: SynapseApiResponse<PaginatedResults<Evaluation>> = {\n results: mockEvaluations,\n totalNumberOfResults: mockEvaluations.length,\n }\n\n // TODO: Filtering\n\n return HttpResponse.json(response, { status })\n }),\n ]\n}\n"],"mappings":";;;;AAMA,SAAgB,EAAsB,GAAuB;
|
|
1
|
+
{"version":3,"file":"evaluationHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/evaluationHandlers.ts"],"sourcesContent":["import { EVALUATION, EVALUATION_BY_ID } from '@/utils/APIConstants'\nimport { Evaluation, PaginatedResults } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { mockEvaluations } from '../../entity/mockEvaluationQueue'\nimport { SynapseApiResponse } from '../handlers'\n\nexport function getEvaluationHandlers(backendOrigin: string) {\n return [\n /**\n * Get by ID\n */\n http.get(\n `${backendOrigin}${EVALUATION_BY_ID(':evaluationId')}`,\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<Evaluation> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find a mock evaluation queue with ID ${params.evaluationId}`,\n }\n\n const match = mockEvaluations.find(\n evaluation => evaluation.id === params.entityId,\n )\n if (match) {\n response = match\n status = 200\n }\n return HttpResponse.json(response, { status })\n },\n ),\n\n /**\n * Get paginated list\n */\n http.get(`${backendOrigin}${EVALUATION}`, () => {\n const status = 200\n const response: SynapseApiResponse<PaginatedResults<Evaluation>> = {\n results: mockEvaluations,\n totalNumberOfResults: mockEvaluations.length,\n }\n\n // TODO: Filtering\n\n return HttpResponse.json(response, { status })\n }),\n ]\n}\n"],"mappings":";;;;AAMA,SAAgB,EAAsB,GAAuB;CAC3D,OAAO,CAIL,EAAK,IACH,GAAG,IAAgB,EAAiB,eAAe,MAClD,EAAE,gBAAa;EACd,IAAI,IAAS,KACT,IAA2C;GAC7C,cAAc;GACd,QAAQ,sEAAsE,EAAO;EACvF,GAEM,IAAQ,EAAgB,MAC5B,MAAc,EAAW,OAAO,EAAO,QACzC;EAKA,OAJI,MACF,IAAW,GACX,IAAS,MAEJ,EAAa,KAAK,GAAU,EAAE,UAAO,CAAC;CAC/C,CACF,GAKA,EAAK,IAAI,GAAG,IAAgB,WAAoB;EAC9C,IACM,IAA6D;GACjE,SAAS;GACT,sBAAsB,EAAgB;EACxC;EAIA,OAAO,EAAa,KAAK,GAAU,EAAE,YAAO,CAAC;CAC/C,CAAC,CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"featureFlagHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/featureFlagHandlers.ts"],"sourcesContent":["import { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport { FeatureFlagEnum, FeatureFlags } from '@/utils/featureflag/FeatureFlags'\nimport { http, HttpResponse } from 'msw'\n\nconst MOCK_FEATURE_FLAGS_VALUE: FeatureFlags = Object.values(\n FeatureFlagEnum,\n).reduce((prev, curr) => {\n return { ...prev, [curr]: false }\n}, {} as FeatureFlags)\n\ntype FeatureFlagHandlerOptions = {\n portalOrigin?: string\n overrides?: Partial<FeatureFlags>\n}\n\nexport function getFeatureFlagsOverride(\n options: FeatureFlagHandlerOptions = {\n portalOrigin: getEndpoint(BackendDestinationEnum.PORTAL_ENDPOINT),\n overrides: {},\n },\n) {\n const { portalOrigin, overrides } = options\n return http.get(`${portalOrigin}/Portal/featureflags`, () => {\n return HttpResponse.json(\n { ...MOCK_FEATURE_FLAGS_VALUE, ...overrides },\n { status: 200 },\n )\n })\n}\n"],"mappings":";;;;;AAIA,IAAM,IAAyC,OAAO,OACpD,
|
|
1
|
+
{"version":3,"file":"featureFlagHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/featureFlagHandlers.ts"],"sourcesContent":["import { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport { FeatureFlagEnum, FeatureFlags } from '@/utils/featureflag/FeatureFlags'\nimport { http, HttpResponse } from 'msw'\n\nconst MOCK_FEATURE_FLAGS_VALUE: FeatureFlags = Object.values(\n FeatureFlagEnum,\n).reduce((prev, curr) => {\n return { ...prev, [curr]: false }\n}, {} as FeatureFlags)\n\ntype FeatureFlagHandlerOptions = {\n portalOrigin?: string\n overrides?: Partial<FeatureFlags>\n}\n\nexport function getFeatureFlagsOverride(\n options: FeatureFlagHandlerOptions = {\n portalOrigin: getEndpoint(BackendDestinationEnum.PORTAL_ENDPOINT),\n overrides: {},\n },\n) {\n const { portalOrigin, overrides } = options\n return http.get(`${portalOrigin}/Portal/featureflags`, () => {\n return HttpResponse.json(\n { ...MOCK_FEATURE_FLAGS_VALUE, ...overrides },\n { status: 200 },\n )\n })\n}\n"],"mappings":";;;;;AAIA,IAAM,IAAyC,OAAO,OACpD,CACF,EAAE,QAAQ,GAAM,OACP;CAAE,GAAG;EAAO,IAAO;AAAM,IAC/B,CAAC,CAAiB;AAOrB,SAAgB,EACd,IAAqC;CACnC,cAAc,EAAY,EAAuB,eAAe;CAChE,WAAW,CAAC;AACd,GACA;CACA,IAAM,EAAE,iBAAc,iBAAc;CACpC,OAAO,EAAK,IAAI,GAAG,EAAa,6BACvB,EAAa,KAClB;EAAE,GAAG;EAA0B,GAAG;CAAU,GAC5C,EAAE,QAAQ,IAAI,CAChB,CACD;AACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fileHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/fileHandlers.ts"],"sourcesContent":["import { FILE, FILE_HANDLE_BATCH } from '@/utils/APIConstants'\nimport { ExternalFileHandleInterface } from '@sage-bionetworks/synapse-client'\nimport {\n BatchFileRequest,\n BatchFileResult,\n MultipartUploadStatus,\n} from '@sage-bionetworks/synapse-types'\nimport { uniqueId } from 'lodash-es'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_FILE_HANDLE_ID, mockFileHandles } from '../../mock_file_handle'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\n\nexport function getFileHandlers(backendOrigin: string) {\n return [\n http.post<never, BatchFileRequest>(\n `${backendOrigin}${FILE_HANDLE_BATCH}`,\n async ({ request }) => {\n const requestBody: BatchFileRequest = await request.json()\n\n const response: BatchFileResult = {\n requestedFiles: [],\n }\n\n requestBody.requestedFiles.forEach(fileHandleAssociation => {\n const fileHandle = mockFileHandles.find(\n fh => fh.id === fileHandleAssociation.fileHandleId,\n )\n if (fileHandle) {\n response.requestedFiles.push({\n fileHandleId: fileHandle.id,\n fileHandle,\n })\n }\n })\n\n return HttpResponse.json(response, { status: 201 })\n },\n ),\n\n http.post(`${backendOrigin}${FILE}/file/multipart`, () => {\n const response: SynapseApiResponse<MultipartUploadStatus> = {\n state: 'COMPLETED',\n resultFileHandleId: MOCK_FILE_HANDLE_ID,\n uploadId: 'mockUploadId',\n startedBy: String(MOCK_USER_ID),\n startedOn: new Date().toISOString(),\n updatedOn: new Date().toISOString(),\n partsState: '1',\n }\n\n return HttpResponse.json(response, { status: 201 })\n }),\n http.put(`${backendOrigin}${FILE}/file/multipart/:id/complete`, () => {\n const response: SynapseApiResponse<MultipartUploadStatus> = {\n state: 'COMPLETED',\n resultFileHandleId: MOCK_FILE_HANDLE_ID,\n uploadId: 'mockUploadId',\n startedBy: String(MOCK_USER_ID),\n startedOn: new Date().toISOString(),\n updatedOn: new Date().toISOString(),\n partsState: '1',\n }\n\n return HttpResponse.json(response, { status: 201 })\n }),\n\n http.post<never, ExternalFileHandleInterface>(\n `${backendOrigin}${FILE}/externalFileHandle`,\n async ({ request }) => {\n const requestBody = await request.json()\n\n const response: SynapseApiResponse<ExternalFileHandleInterface> = {\n ...requestBody,\n id: uniqueId(),\n etag: 'fake-etag',\n createdBy: MOCK_USER_ID.toString(),\n createdOn: new Date().toISOString(),\n modifiedOn: new Date().toISOString(),\n }\n\n return HttpResponse.json(response, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;;;;AAaA,SAAgB,EAAgB,GAAuB;
|
|
1
|
+
{"version":3,"file":"fileHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/fileHandlers.ts"],"sourcesContent":["import { FILE, FILE_HANDLE_BATCH } from '@/utils/APIConstants'\nimport { ExternalFileHandleInterface } from '@sage-bionetworks/synapse-client'\nimport {\n BatchFileRequest,\n BatchFileResult,\n MultipartUploadStatus,\n} from '@sage-bionetworks/synapse-types'\nimport { uniqueId } from 'lodash-es'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_FILE_HANDLE_ID, mockFileHandles } from '../../mock_file_handle'\nimport { MOCK_USER_ID } from '../../user/mock_user_profile'\nimport { SynapseApiResponse } from '../handlers'\n\nexport function getFileHandlers(backendOrigin: string) {\n return [\n http.post<never, BatchFileRequest>(\n `${backendOrigin}${FILE_HANDLE_BATCH}`,\n async ({ request }) => {\n const requestBody: BatchFileRequest = await request.json()\n\n const response: BatchFileResult = {\n requestedFiles: [],\n }\n\n requestBody.requestedFiles.forEach(fileHandleAssociation => {\n const fileHandle = mockFileHandles.find(\n fh => fh.id === fileHandleAssociation.fileHandleId,\n )\n if (fileHandle) {\n response.requestedFiles.push({\n fileHandleId: fileHandle.id,\n fileHandle,\n })\n }\n })\n\n return HttpResponse.json(response, { status: 201 })\n },\n ),\n\n http.post(`${backendOrigin}${FILE}/file/multipart`, () => {\n const response: SynapseApiResponse<MultipartUploadStatus> = {\n state: 'COMPLETED',\n resultFileHandleId: MOCK_FILE_HANDLE_ID,\n uploadId: 'mockUploadId',\n startedBy: String(MOCK_USER_ID),\n startedOn: new Date().toISOString(),\n updatedOn: new Date().toISOString(),\n partsState: '1',\n }\n\n return HttpResponse.json(response, { status: 201 })\n }),\n http.put(`${backendOrigin}${FILE}/file/multipart/:id/complete`, () => {\n const response: SynapseApiResponse<MultipartUploadStatus> = {\n state: 'COMPLETED',\n resultFileHandleId: MOCK_FILE_HANDLE_ID,\n uploadId: 'mockUploadId',\n startedBy: String(MOCK_USER_ID),\n startedOn: new Date().toISOString(),\n updatedOn: new Date().toISOString(),\n partsState: '1',\n }\n\n return HttpResponse.json(response, { status: 201 })\n }),\n\n http.post<never, ExternalFileHandleInterface>(\n `${backendOrigin}${FILE}/externalFileHandle`,\n async ({ request }) => {\n const requestBody = await request.json()\n\n const response: SynapseApiResponse<ExternalFileHandleInterface> = {\n ...requestBody,\n id: uniqueId(),\n etag: 'fake-etag',\n createdBy: MOCK_USER_ID.toString(),\n createdOn: new Date().toISOString(),\n modifiedOn: new Date().toISOString(),\n }\n\n return HttpResponse.json(response, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;;;;AAaA,SAAgB,EAAgB,GAAuB;CACrD,OAAO;EACL,EAAK,KACH,GAAG,IAAgB,KACnB,OAAO,EAAE,iBAAc;GACrB,IAAM,IAAgC,MAAM,EAAQ,KAAK,GAEnD,IAA4B,EAChC,gBAAgB,CAAC,EACnB;GAcA,OAZA,EAAY,eAAe,SAAQ,MAAyB;IAC1D,IAAM,IAAa,EAAgB,MACjC,MAAM,EAAG,OAAO,EAAsB,YACxC;IACA,AAAI,KACF,EAAS,eAAe,KAAK;KAC3B,cAAc,EAAW;KACzB;IACF,CAAC;GAEL,CAAC,GAEM,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CACF;EAEA,EAAK,KAAK,GAAG,IAAgB,EAAK,wBAAwB;GACxD,IAAM,IAAsD;IAC1D,OAAO;IACP,oBAAoB;IACpB,UAAU;IACV,WAAW;IACX,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,YAAY;GACd;GAEA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CAAC;EACD,EAAK,IAAI,GAAG,IAAgB,EAAK,qCAAqC;GACpE,IAAM,IAAsD;IAC1D,OAAO;IACP,oBAAoB;IACpB,UAAU;IACV,WAAW;IACX,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,YAAY;GACd;GAEA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CAAC;EAED,EAAK,KACH,GAAG,IAAgB,EAAK,sBACxB,OAAO,EAAE,iBAAc;GAGrB,IAAM,IAA4D;IAChE,GAAG,MAHqB,EAAQ,KAAK;IAIrC,IAAI,EAAS;IACb,MAAM;IACN,WAAA;IACA,4BAAW,IAAI,KAAK,GAAE,YAAY;IAClC,6BAAY,IAAI,KAAK,GAAE,YAAY;GACrC;GAEA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CACF;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gridHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/gridHandlers.ts"],"sourcesContent":["import { CreateReplicaRequest } from '@sage-bionetworks/synapse-client'\nimport { http, HttpResponse } from 'msw'\n\nfunction getRandomInt() {\n return crypto.getRandomValues(new Uint32Array(1))[0]\n}\n\n// Generate unique session IDs for grid sessions\nconst generateSessionId = () => {\n const randomId: number = getRandomInt()\n return `grid-session-${randomId * 100000}`\n}\n\ninterface GridJob {\n status: string\n startTime: number\n sessionId: string\n}\n\n// In-memory storage to track async jobs\nconst pendingJobs = new Map<string, GridJob>()\n\nexport function getGridHandlers(backendOrigin: string) {\n return [\n // Handler for starting a grid session\n http.post(\n `${backendOrigin}/repo/v1/grid/session/async/start`,\n async ({ request }) => {\n // Generate a unique job token\n const jobToken = `job-${Date.now()}-${Math.random()\n .toString(36)\n .substring(2, 9)}`\n const requestBody = await request.json()\n\n // Store job details for later reference\n pendingJobs.set(jobToken, {\n status: 'PROCESSING',\n startTime: Date.now(),\n sessionId: generateSessionId(),\n })\n\n return HttpResponse.json(requestBody, { status: 201 })\n },\n ),\n\n // Handler for retrieving async job results\n http.get<{ token: string }>(\n `${backendOrigin}/repo/v1/grid/session/async/get/:token`,\n ({ params }) => {\n // Retrieve job data\n const jobData = pendingJobs.get(params.token)\n\n if (!jobData) {\n return HttpResponse.text('Job not found', { status: 404 })\n }\n\n // Job is complete, return result\n jobData.status = 'COMPLETE'\n return HttpResponse.json(\n {\n concreteType: 'org.sagebionetworks.repo.model.grid.GridSession',\n gridSession: {\n sessionId: jobData.sessionId,\n startedBy: 'mockUser',\n startedOn: new Date().toISOString(),\n etag: `etag-${Date.now()}`,\n modifiedOn: new Date().toISOString(),\n lastReplicaIdClient: 1,\n lastReplicaIdService: 1,\n },\n },\n { status: 200 },\n )\n },\n ),\n\n // Handler for GridSessionReplica\n http.post<{ sessionId: string }, CreateReplicaRequest>(\n `${backendOrigin}/repo/v1/grid/:sessionId/replica`,\n async ({ request }) => {\n const { gridSessionId } = await request.json()\n\n // Check if the session ID exists in pending jobs\n const jobData = Array.from(pendingJobs.values()).find(\n job => job.sessionId === gridSessionId,\n )\n\n if (!jobData) {\n return HttpResponse.text('Grid session not found', { status: 404 })\n }\n\n // Create a replica for the session\n const replicaId = getRandomInt() % 1000\n const replicaResponse = {\n concreteType: 'org.sagebionetworks.repo.model.grid.GridReplica',\n replica: {\n gridSessionId,\n replicaId,\n createdBy: 'mockUser',\n isAgentReplica: false,\n createdOn: new Date().toISOString(),\n },\n }\n return HttpResponse.json(replicaResponse, { status: 201 })\n },\n ),\n\n // Handler for Grid presigned URL\n http.get<{ sessionId: string }>(\n `${backendOrigin}/repo/v1/grid/:sessionId/presignedUrl`,\n ({ params }) => {\n const { sessionId } = params\n\n const jobData = Array.from(pendingJobs.values()).find(\n job => job.sessionId === sessionId,\n )\n if (!jobData) {\n return HttpResponse.text('Grid session not found', { status: 404 })\n }\n // Generate a mock presigned URL\n const presignedUrl = `https://mock-s3-bucket/${sessionId}/data.csv?presigned=true`\n return HttpResponse.json({ presignedUrl }, { status: 200 })\n },\n ),\n ]\n}\n"],"mappings":";;AAGA,SAAS,IAAe;
|
|
1
|
+
{"version":3,"file":"gridHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/gridHandlers.ts"],"sourcesContent":["import { CreateReplicaRequest } from '@sage-bionetworks/synapse-client'\nimport { http, HttpResponse } from 'msw'\n\nfunction getRandomInt() {\n return crypto.getRandomValues(new Uint32Array(1))[0]\n}\n\n// Generate unique session IDs for grid sessions\nconst generateSessionId = () => {\n const randomId: number = getRandomInt()\n return `grid-session-${randomId * 100000}`\n}\n\ninterface GridJob {\n status: string\n startTime: number\n sessionId: string\n}\n\n// In-memory storage to track async jobs\nconst pendingJobs = new Map<string, GridJob>()\n\nexport function getGridHandlers(backendOrigin: string) {\n return [\n // Handler for starting a grid session\n http.post(\n `${backendOrigin}/repo/v1/grid/session/async/start`,\n async ({ request }) => {\n // Generate a unique job token\n const jobToken = `job-${Date.now()}-${Math.random()\n .toString(36)\n .substring(2, 9)}`\n const requestBody = await request.json()\n\n // Store job details for later reference\n pendingJobs.set(jobToken, {\n status: 'PROCESSING',\n startTime: Date.now(),\n sessionId: generateSessionId(),\n })\n\n return HttpResponse.json(requestBody, { status: 201 })\n },\n ),\n\n // Handler for retrieving async job results\n http.get<{ token: string }>(\n `${backendOrigin}/repo/v1/grid/session/async/get/:token`,\n ({ params }) => {\n // Retrieve job data\n const jobData = pendingJobs.get(params.token)\n\n if (!jobData) {\n return HttpResponse.text('Job not found', { status: 404 })\n }\n\n // Job is complete, return result\n jobData.status = 'COMPLETE'\n return HttpResponse.json(\n {\n concreteType: 'org.sagebionetworks.repo.model.grid.GridSession',\n gridSession: {\n sessionId: jobData.sessionId,\n startedBy: 'mockUser',\n startedOn: new Date().toISOString(),\n etag: `etag-${Date.now()}`,\n modifiedOn: new Date().toISOString(),\n lastReplicaIdClient: 1,\n lastReplicaIdService: 1,\n },\n },\n { status: 200 },\n )\n },\n ),\n\n // Handler for GridSessionReplica\n http.post<{ sessionId: string }, CreateReplicaRequest>(\n `${backendOrigin}/repo/v1/grid/:sessionId/replica`,\n async ({ request }) => {\n const { gridSessionId } = await request.json()\n\n // Check if the session ID exists in pending jobs\n const jobData = Array.from(pendingJobs.values()).find(\n job => job.sessionId === gridSessionId,\n )\n\n if (!jobData) {\n return HttpResponse.text('Grid session not found', { status: 404 })\n }\n\n // Create a replica for the session\n const replicaId = getRandomInt() % 1000\n const replicaResponse = {\n concreteType: 'org.sagebionetworks.repo.model.grid.GridReplica',\n replica: {\n gridSessionId,\n replicaId,\n createdBy: 'mockUser',\n isAgentReplica: false,\n createdOn: new Date().toISOString(),\n },\n }\n return HttpResponse.json(replicaResponse, { status: 201 })\n },\n ),\n\n // Handler for Grid presigned URL\n http.get<{ sessionId: string }>(\n `${backendOrigin}/repo/v1/grid/:sessionId/presignedUrl`,\n ({ params }) => {\n const { sessionId } = params\n\n const jobData = Array.from(pendingJobs.values()).find(\n job => job.sessionId === sessionId,\n )\n if (!jobData) {\n return HttpResponse.text('Grid session not found', { status: 404 })\n }\n // Generate a mock presigned URL\n const presignedUrl = `https://mock-s3-bucket/${sessionId}/data.csv?presigned=true`\n return HttpResponse.json({ presignedUrl }, { status: 200 })\n },\n ),\n ]\n}\n"],"mappings":";;AAGA,SAAS,IAAe;CACtB,OAAO,OAAO,gBAAgB,IAAI,YAAY,CAAC,CAAC,EAAE;AACpD;AAGA,IAAM,UAEG,gBADkB,EACF,IAAW,OAU9B,oBAAc,IAAI,IAAqB;AAE7C,SAAgB,EAAgB,GAAuB;CACrD,OAAO;EAEL,EAAK,KACH,GAAG,EAAc,oCACjB,OAAO,EAAE,iBAAc;GAErB,IAAM,IAAW,OAAO,KAAK,IAAI,EAAE,GAAG,KAAK,OAAO,EAC/C,SAAS,EAAE,EACX,UAAU,GAAG,CAAC,KACX,IAAc,MAAM,EAAQ,KAAK;GASvC,OANA,EAAY,IAAI,GAAU;IACxB,QAAQ;IACR,WAAW,KAAK,IAAI;IACpB,WAAW,EAAkB;GAC/B,CAAC,GAEM,EAAa,KAAK,GAAa,EAAE,QAAQ,IAAI,CAAC;EACvD,CACF;EAGA,EAAK,IACH,GAAG,EAAc,0CAChB,EAAE,gBAAa;GAEd,IAAM,IAAU,EAAY,IAAI,EAAO,KAAK;GAQ5C,OANK,KAKL,EAAQ,SAAS,YACV,EAAa,KAClB;IACE,cAAc;IACd,aAAa;KACX,WAAW,EAAQ;KACnB,WAAW;KACX,4BAAW,IAAI,KAAK,GAAE,YAAY;KAClC,MAAM,QAAQ,KAAK,IAAI;KACvB,6BAAY,IAAI,KAAK,GAAE,YAAY;KACnC,qBAAqB;KACrB,sBAAsB;IACxB;GACF,GACA,EAAE,QAAQ,IAAI,CAChB,KAnBS,EAAa,KAAK,iBAAiB,EAAE,QAAQ,IAAI,CAAC;EAoB7D,CACF;EAGA,EAAK,KACH,GAAG,EAAc,mCACjB,OAAO,EAAE,iBAAc;GACrB,IAAM,EAAE,qBAAkB,MAAM,EAAQ,KAAK;GAO7C,IAAI,CAJY,MAAM,KAAK,EAAY,OAAO,CAAC,EAAE,MAC/C,MAAO,EAAI,cAAc,CAGtB,GACH,OAAO,EAAa,KAAK,0BAA0B,EAAE,QAAQ,IAAI,CAAC;GAKpE,IAAM,IAAkB;IACtB,cAAc;IACd,SAAS;KACP;KACA,WALc,EAAa,IAAI;KAM/B,WAAW;KACX,gBAAgB;KAChB,4BAAW,IAAI,KAAK,GAAE,YAAY;IACpC;GACF;GACA,OAAO,EAAa,KAAK,GAAiB,EAAE,QAAQ,IAAI,CAAC;EAC3D,CACF;EAGA,EAAK,IACH,GAAG,EAAc,yCAChB,EAAE,gBAAa;GACd,IAAM,EAAE,iBAAc;GAKtB,IAAI,CAHY,MAAM,KAAK,EAAY,OAAO,CAAC,EAAE,MAC/C,MAAO,EAAI,cAAc,CAEtB,GACH,OAAO,EAAa,KAAK,0BAA0B,EAAE,QAAQ,IAAI,CAAC;GAGpE,IAAM,IAAe,0BAA0B,EAAU;GACzD,OAAO,EAAa,KAAK,EAAE,gBAAa,GAAG,EAAE,QAAQ,IAAI,CAAC;EAC5D,CACF;CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/messageHandlers.ts"],"sourcesContent":["import { REPO } from '@/utils/APIConstants'\nimport { MessageToUser } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\n\nexport function getMessageHandlers(backendOrigin: string) {\n return [\n http.post<never, MessageToUser>(\n `${backendOrigin}${REPO}/message`,\n async ({ request }) => {\n const requestBody: MessageToUser = await request.json()\n\n return HttpResponse.json(requestBody, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;AAIA,SAAgB,EAAmB,GAAuB;
|
|
1
|
+
{"version":3,"file":"messageHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/messageHandlers.ts"],"sourcesContent":["import { REPO } from '@/utils/APIConstants'\nimport { MessageToUser } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\n\nexport function getMessageHandlers(backendOrigin: string) {\n return [\n http.post<never, MessageToUser>(\n `${backendOrigin}${REPO}/message`,\n async ({ request }) => {\n const requestBody: MessageToUser = await request.json()\n\n return HttpResponse.json(requestBody, { status: 201 })\n },\n ),\n ]\n}\n"],"mappings":";;;AAIA,SAAgB,EAAmB,GAAuB;CACxD,OAAO,CACL,EAAK,KACH,GAAG,IAAgB,EAAK,WACxB,OAAO,EAAE,iBAAc;EACrB,IAAM,IAA6B,MAAM,EAAQ,KAAK;EAEtD,OAAO,EAAa,KAAK,GAAa,EAAE,QAAQ,IAAI,CAAC;CACvD,CACF,CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauthClientAclHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/oauthClientAclHandlers.ts"],"sourcesContent":["import { OAUTH_CLIENT_ACL } from '@/utils/APIConstants'\nimport { http, HttpResponse } from 'msw'\nimport { SynapseApiResponse } from '../handlers'\nimport { mockOAuthClientAcls } from '@/mocks/mockOAuthClientAcls'\nimport { AccessControlList } from '@sage-bionetworks/synapse-client'\n\nexport function getOAuthClientAclHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}${OAUTH_CLIENT_ACL(':id')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<AccessControlList> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an ACL for OAuth client with ID ${params.id}`,\n }\n const acl = mockOAuthClientAcls.find(acl => acl.id === params.id)\n\n if (acl) {\n response = acl\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function updateOAuthClientAcl(backendOrigin: string) {\n return http.put<{ id: string }, AccessControlList>(\n `${backendOrigin}${OAUTH_CLIENT_ACL(':id')}`,\n async ({ request }) => {\n const requestBody: AccessControlList = await request.json()\n return HttpResponse.json(requestBody, { status: 200 })\n },\n )\n}\n\nexport function getAllOAuthClientAclHandlers(backendOrigin: string) {\n return [\n getOAuthClientAclHandler(backendOrigin),\n updateOAuthClientAcl(backendOrigin),\n ]\n}\n"],"mappings":";;;;AAMA,SAAgB,EAAyB,GAAuB;
|
|
1
|
+
{"version":3,"file":"oauthClientAclHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/oauthClientAclHandlers.ts"],"sourcesContent":["import { OAUTH_CLIENT_ACL } from '@/utils/APIConstants'\nimport { http, HttpResponse } from 'msw'\nimport { SynapseApiResponse } from '../handlers'\nimport { mockOAuthClientAcls } from '@/mocks/mockOAuthClientAcls'\nimport { AccessControlList } from '@sage-bionetworks/synapse-client'\n\nexport function getOAuthClientAclHandler(backendOrigin: string) {\n return http.get(\n `${backendOrigin}${OAUTH_CLIENT_ACL(':id')}`,\n\n ({ params }) => {\n let status = 404\n let response: SynapseApiResponse<AccessControlList> = {\n concreteType: 'org.sagebionetworks.repo.model.ErrorResponse',\n reason: `Mock Service worker could not find an ACL for OAuth client with ID ${params.id}`,\n }\n const acl = mockOAuthClientAcls.find(acl => acl.id === params.id)\n\n if (acl) {\n response = acl\n status = 200\n }\n\n return HttpResponse.json(response, { status })\n },\n )\n}\n\nexport function updateOAuthClientAcl(backendOrigin: string) {\n return http.put<{ id: string }, AccessControlList>(\n `${backendOrigin}${OAUTH_CLIENT_ACL(':id')}`,\n async ({ request }) => {\n const requestBody: AccessControlList = await request.json()\n return HttpResponse.json(requestBody, { status: 200 })\n },\n )\n}\n\nexport function getAllOAuthClientAclHandlers(backendOrigin: string) {\n return [\n getOAuthClientAclHandler(backendOrigin),\n updateOAuthClientAcl(backendOrigin),\n ]\n}\n"],"mappings":";;;;AAMA,SAAgB,EAAyB,GAAuB;CAC9D,OAAO,EAAK,IACV,GAAG,IAAgB,EAAiB,KAAK,MAExC,EAAE,gBAAa;EACd,IAAI,IAAS,KACT,IAAkD;GACpD,cAAc;GACd,QAAQ,sEAAsE,EAAO;EACvF,GACM,IAAM,EAAoB,MAAK,MAAO,EAAI,OAAO,EAAO,EAAE;EAOhE,OALI,MACF,IAAW,GACX,IAAS,MAGJ,EAAa,KAAK,GAAU,EAAE,UAAO,CAAC;CAC/C,CACF;AACF;AAEA,SAAgB,EAAqB,GAAuB;CAC1D,OAAO,EAAK,IACV,GAAG,IAAgB,EAAiB,KAAK,KACzC,OAAO,EAAE,iBAAc;EACrB,IAAM,IAAiC,MAAM,EAAQ,KAAK;EAC1D,OAAO,EAAa,KAAK,GAAa,EAAE,QAAQ,IAAI,CAAC;CACvD,CACF;AACF;AAEA,SAAgB,EAA6B,GAAuB;CAClE,OAAO,CACL,EAAyB,CAAa,GACtC,EAAqB,CAAa,CACpC;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personalAccessTokenHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/personalAccessTokenHandlers.ts"],"sourcesContent":["import {\n AccessTokenGenerationResponse,\n AccessTokenRecordList,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n mockAccessTokenRecordListPageOne,\n mockAccessTokenRecordListPageTwo,\n} from '../../personalAccessToken/mockPersonalAccessToken'\n\nexport function getPersonalAccessTokenHandlers(\n backendOrigin: string,\n tokenRecordOverride?: AccessTokenRecordList,\n) {\n return [\n http.get(`${backendOrigin}/auth/v1/personalAccessToken`, ({ request }) => {\n let response = mockAccessTokenRecordListPageOne\n if (tokenRecordOverride) {\n response = tokenRecordOverride\n } else if (new URL(request.url).searchParams.get('nextPageToken')) {\n response = mockAccessTokenRecordListPageTwo\n }\n\n return HttpResponse.json(response, { status: 200 })\n }),\n http.delete(`${backendOrigin}/auth/v1/personalAccessToken/:id`, () => {\n return new Response('', { status: 202 })\n }),\n\n http.post(`${backendOrigin}/auth/v1/personalAccessToken`, () => {\n const responseBody: AccessTokenGenerationResponse = {\n token: 'your-token-here',\n }\n return HttpResponse.json(responseBody, { status: 201 })\n }),\n ]\n}\n"],"mappings":";;;AAUA,SAAgB,EACd,GACA,GACA;
|
|
1
|
+
{"version":3,"file":"personalAccessTokenHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/personalAccessTokenHandlers.ts"],"sourcesContent":["import {\n AccessTokenGenerationResponse,\n AccessTokenRecordList,\n} from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport {\n mockAccessTokenRecordListPageOne,\n mockAccessTokenRecordListPageTwo,\n} from '../../personalAccessToken/mockPersonalAccessToken'\n\nexport function getPersonalAccessTokenHandlers(\n backendOrigin: string,\n tokenRecordOverride?: AccessTokenRecordList,\n) {\n return [\n http.get(`${backendOrigin}/auth/v1/personalAccessToken`, ({ request }) => {\n let response = mockAccessTokenRecordListPageOne\n if (tokenRecordOverride) {\n response = tokenRecordOverride\n } else if (new URL(request.url).searchParams.get('nextPageToken')) {\n response = mockAccessTokenRecordListPageTwo\n }\n\n return HttpResponse.json(response, { status: 200 })\n }),\n http.delete(`${backendOrigin}/auth/v1/personalAccessToken/:id`, () => {\n return new Response('', { status: 202 })\n }),\n\n http.post(`${backendOrigin}/auth/v1/personalAccessToken`, () => {\n const responseBody: AccessTokenGenerationResponse = {\n token: 'your-token-here',\n }\n return HttpResponse.json(responseBody, { status: 201 })\n }),\n ]\n}\n"],"mappings":";;;AAUA,SAAgB,EACd,GACA,GACA;CACA,OAAO;EACL,EAAK,IAAI,GAAG,EAAc,gCAAgC,EAAE,iBAAc;GACxE,IAAI,IAAW;GAOf,OANI,IACF,IAAW,IACF,IAAI,IAAI,EAAQ,GAAG,EAAE,aAAa,IAAI,eAAe,MAC9D,IAAW,IAGN,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;EACpD,CAAC;EACD,EAAK,OAAO,GAAG,EAAc,yCACpB,IAAI,SAAS,IAAI,EAAE,QAAQ,IAAI,CAAC,CACxC;EAED,EAAK,KAAK,GAAG,EAAc,qCAIlB,EAAa,KAAK,EAFvB,OAAO,kBAEgB,GAAc,EAAE,QAAQ,IAAI,CAAC,CACvD;CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectStorageHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/projectStorageHandlers.ts"],"sourcesContent":["import {\n mockProjectStorageUsageOverLimit,\n mockProjectStorageUsageUnderLimit,\n OVER_LIMIT_PROJECT_ID,\n UNDER_LIMIT_PROJECT_ID,\n} from '@/mocks/projectStorage/mockProjectStorageLimits'\nimport { PROJECT_STORAGE_USAGE } from '@/utils/APIConstants'\nimport { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport { http, HttpResponse } from 'msw'\n\nexport const getProjectStorageHandlers = (\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n) => [\n http.get(\n `${backendOrigin}${PROJECT_STORAGE_USAGE(OVER_LIMIT_PROJECT_ID)}`,\n () => {\n return HttpResponse.json(mockProjectStorageUsageOverLimit, {\n status: 201,\n })\n },\n ),\n http.get(\n `${backendOrigin}${PROJECT_STORAGE_USAGE(UNDER_LIMIT_PROJECT_ID)}`,\n () => {\n return HttpResponse.json(mockProjectStorageUsageUnderLimit, {\n status: 201,\n })\n },\n ),\n]\n"],"mappings":";;;;;;AAUA,IAAa,KACX,IAAgB,EAAY,EAAuB,
|
|
1
|
+
{"version":3,"file":"projectStorageHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/projectStorageHandlers.ts"],"sourcesContent":["import {\n mockProjectStorageUsageOverLimit,\n mockProjectStorageUsageUnderLimit,\n OVER_LIMIT_PROJECT_ID,\n UNDER_LIMIT_PROJECT_ID,\n} from '@/mocks/projectStorage/mockProjectStorageLimits'\nimport { PROJECT_STORAGE_USAGE } from '@/utils/APIConstants'\nimport { BackendDestinationEnum, getEndpoint } from '@/utils/functions'\nimport { http, HttpResponse } from 'msw'\n\nexport const getProjectStorageHandlers = (\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n) => [\n http.get(\n `${backendOrigin}${PROJECT_STORAGE_USAGE(OVER_LIMIT_PROJECT_ID)}`,\n () => {\n return HttpResponse.json(mockProjectStorageUsageOverLimit, {\n status: 201,\n })\n },\n ),\n http.get(\n `${backendOrigin}${PROJECT_STORAGE_USAGE(UNDER_LIMIT_PROJECT_ID)}`,\n () => {\n return HttpResponse.json(mockProjectStorageUsageUnderLimit, {\n status: 201,\n })\n },\n ),\n]\n"],"mappings":";;;;;;AAUA,IAAa,KACX,IAAgB,EAAY,EAAuB,aAAa,MAC7D,CACH,EAAK,IACH,GAAG,IAAgB,EAAsB,CAAqB,WAErD,EAAa,KAAK,GAAkC,EACzD,QAAQ,IACV,CAAC,CAEL,GACA,EAAK,IACH,GAAG,IAAgB,EAAsB,CAAsB,WAEtD,EAAa,KAAK,GAAmC,EAC1D,QAAQ,IACV,CAAC,CAEL,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realmHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/realmHandlers.ts"],"sourcesContent":["import {\n MOCK_REALM,\n MOCK_REALM_PRINCIPAL,\n} from '@/mocks/realm/mockRealmPrincipal'\nimport { http, HttpResponse } from 'msw'\n\nexport const getRealmByIdHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/:id`, () => {\n return HttpResponse.json(MOCK_REALM)\n })\n}\n\nexport const getRealmPrincipalsHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/principals`, () => {\n return HttpResponse.json(MOCK_REALM_PRINCIPAL)\n })\n}\n\nexport const getRealmPrincipalsByIdHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/:realmId/principals`, () => {\n return HttpResponse.json(MOCK_REALM_PRINCIPAL)\n })\n}\n\nexport const getRealmHandlers = (backendOrigin: string) => [\n // More specific routes must come before the wildcard `:id` handler\n getRealmPrincipalsHandler(backendOrigin),\n getRealmPrincipalsByIdHandler(backendOrigin),\n getRealmByIdHandler(backendOrigin),\n]\n"],"mappings":";;;AAMA,IAAa,KAAuB,MAC3B,EAAK,IAAI,GAAG,EAAc,2BACxB,EAAa,KAAK,
|
|
1
|
+
{"version":3,"file":"realmHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/realmHandlers.ts"],"sourcesContent":["import {\n MOCK_REALM,\n MOCK_REALM_PRINCIPAL,\n} from '@/mocks/realm/mockRealmPrincipal'\nimport { http, HttpResponse } from 'msw'\n\nexport const getRealmByIdHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/:id`, () => {\n return HttpResponse.json(MOCK_REALM)\n })\n}\n\nexport const getRealmPrincipalsHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/principals`, () => {\n return HttpResponse.json(MOCK_REALM_PRINCIPAL)\n })\n}\n\nexport const getRealmPrincipalsByIdHandler = (backendOrigin: string) => {\n return http.get(`${backendOrigin}/repo/v1/realm/:realmId/principals`, () => {\n return HttpResponse.json(MOCK_REALM_PRINCIPAL)\n })\n}\n\nexport const getRealmHandlers = (backendOrigin: string) => [\n // More specific routes must come before the wildcard `:id` handler\n getRealmPrincipalsHandler(backendOrigin),\n getRealmPrincipalsByIdHandler(backendOrigin),\n getRealmByIdHandler(backendOrigin),\n]\n"],"mappings":";;;AAMA,IAAa,KAAuB,MAC3B,EAAK,IAAI,GAAG,EAAc,2BACxB,EAAa,KAAK,CAAU,CACpC,GAGU,KAA6B,MACjC,EAAK,IAAI,GAAG,EAAc,kCACxB,EAAa,KAAK,CAAoB,CAC9C,GAGU,KAAiC,MACrC,EAAK,IAAI,GAAG,EAAc,2CACxB,EAAa,KAAK,CAAoB,CAC9C,GAGU,KAAoB,MAA0B;CAEzD,EAA0B,CAAa;CACvC,EAA8B,CAAa;CAC3C,EAAoB,CAAa;AACnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"researchProjectHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/researchProjectHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT_RESEARCH_PROJECT_FOR_UPDATE,\n RESEARCH_PROJECT,\n} from '@/utils/APIConstants'\nimport { ResearchProject } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_RESEARCH_PROJECT } from '../../dataaccess/MockResearchProject'\n\nexport function getResearchProjectHandlers(backendOrigin: string) {\n return [\n http.post(`${backendOrigin}${RESEARCH_PROJECT}`, async ({ request }) => {\n const resp = await request.json()\n return HttpResponse.json(resp, { status: 201 })\n }),\n http.get<{ id: string }>(\n `${backendOrigin}${ACCESS_REQUIREMENT_RESEARCH_PROJECT_FOR_UPDATE(\n ':id',\n )}`,\n ({ params }) => {\n const response: ResearchProject = {\n ...MOCK_RESEARCH_PROJECT,\n accessRequirementId: params.id.toString(),\n }\n return HttpResponse.json(response, { status: 200 })\n },\n ),\n ]\n}\n"],"mappings":";;;;AAQA,SAAgB,EAA2B,GAAuB;
|
|
1
|
+
{"version":3,"file":"researchProjectHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/researchProjectHandlers.ts"],"sourcesContent":["import {\n ACCESS_REQUIREMENT_RESEARCH_PROJECT_FOR_UPDATE,\n RESEARCH_PROJECT,\n} from '@/utils/APIConstants'\nimport { ResearchProject } from '@sage-bionetworks/synapse-types'\nimport { http, HttpResponse } from 'msw'\nimport { MOCK_RESEARCH_PROJECT } from '../../dataaccess/MockResearchProject'\n\nexport function getResearchProjectHandlers(backendOrigin: string) {\n return [\n http.post(`${backendOrigin}${RESEARCH_PROJECT}`, async ({ request }) => {\n const resp = await request.json()\n return HttpResponse.json(resp, { status: 201 })\n }),\n http.get<{ id: string }>(\n `${backendOrigin}${ACCESS_REQUIREMENT_RESEARCH_PROJECT_FOR_UPDATE(\n ':id',\n )}`,\n ({ params }) => {\n const response: ResearchProject = {\n ...MOCK_RESEARCH_PROJECT,\n accessRequirementId: params.id.toString(),\n }\n return HttpResponse.json(response, { status: 200 })\n },\n ),\n ]\n}\n"],"mappings":";;;;AAQA,SAAgB,EAA2B,GAAuB;CAChE,OAAO,CACL,EAAK,KAAK,GAAG,IAAgB,KAAoB,OAAO,EAAE,iBAAc;EACtE,IAAM,IAAO,MAAM,EAAQ,KAAK;EAChC,OAAO,EAAa,KAAK,GAAM,EAAE,QAAQ,IAAI,CAAC;CAChD,CAAC,GACD,EAAK,IACH,GAAG,IAAgB,EACjB,KACF,MACC,EAAE,gBAAa;EACd,IAAM,IAA4B;GAChC,GAAG;GACH,qBAAqB,EAAO,GAAG,SAAS;EAC1C;EACA,OAAO,EAAa,KAAK,GAAU,EAAE,QAAQ,IAAI,CAAC;CACpD,CACF,CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resetTwoFactorAuthHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/resetTwoFactorAuthHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getResetTwoFactorAuthHandlers(backendOrigin: string) {\n return [\n http.post(`${backendOrigin}/auth/v1/2fa/reset`, () => {\n return HttpResponse.json('', { status: 201 })\n }),\n http.post(`${backendOrigin}/auth/v1/2fa/disable`, () => {\n return HttpResponse.json('', { status: 200 })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,EAA8B,GAAuB;
|
|
1
|
+
{"version":3,"file":"resetTwoFactorAuthHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/resetTwoFactorAuthHandlers.ts"],"sourcesContent":["import { http, HttpResponse } from 'msw'\n\nexport function getResetTwoFactorAuthHandlers(backendOrigin: string) {\n return [\n http.post(`${backendOrigin}/auth/v1/2fa/reset`, () => {\n return HttpResponse.json('', { status: 201 })\n }),\n http.post(`${backendOrigin}/auth/v1/2fa/disable`, () => {\n return HttpResponse.json('', { status: 200 })\n }),\n ]\n}\n"],"mappings":";;AAEA,SAAgB,EAA8B,GAAuB;CACnE,OAAO,CACL,EAAK,KAAK,GAAG,EAAc,2BAClB,EAAa,KAAK,IAAI,EAAE,QAAQ,IAAI,CAAC,CAC7C,GACD,EAAK,KAAK,GAAG,EAAc,6BAClB,EAAa,KAAK,IAAI,EAAE,QAAQ,IAAI,CAAC,CAC7C,CACH;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemaHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/schemaHandlers.ts"],"sourcesContent":["// MSW handlers for JSON Schema services\nimport {\n mockConditionalOnConcreteTypeSchema,\n mockFileEntityValidationSchema,\n mockProjectValidationSchema,\n mockValidationSchema,\n} from '@/mocks/mockSchema'\nimport { generateAsyncJobHandlers } from '@/mocks/msw/handlers/asyncJobHandlers'\nimport {\n SCHEMA_VALIDATION_GET,\n SCHEMA_VALIDATION_START,\n} from '@/utils/APIConstants'\nimport { JSONSchema7 } from 'json-schema'\n\nconst validationSchemas: JSONSchema7[] = [\n mockValidationSchema,\n mockConditionalOnConcreteTypeSchema,\n mockFileEntityValidationSchema,\n mockProjectValidationSchema,\n]\n\nexport function getValidationSchemaHandlers(backendOrigin?: string) {\n return generateAsyncJobHandlers<\n {\n concreteType: 'org.sagebionetworks.repo.model.schema.GetValidationSchemaRequest'\n $id: string\n },\n {\n concreteType: 'org.sagebionetworks.repo.model.schema.GetValidationSchemaResponse'\n validationSchema: JSONSchema7\n }\n >(\n SCHEMA_VALIDATION_START,\n tokenParam => SCHEMA_VALIDATION_GET(tokenParam),\n req => {\n const requestedId = req.$id\n const validationSchema = validationSchemas.find(schema =>\n schema.$id?.includes(requestedId),\n )\n if (!validationSchema) {\n throw new Error(\n `Validation schema with id ${requestedId} not found in mock data.`,\n )\n }\n return {\n concreteType:\n 'org.sagebionetworks.repo.model.schema.GetValidationSchemaResponse',\n validationSchema: validationSchema,\n }\n },\n backendOrigin,\n )\n}\n"],"mappings":";;;;AAcA,IAAM,IAAmC;CACvC;CACA;CACA;CACA;
|
|
1
|
+
{"version":3,"file":"schemaHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/schemaHandlers.ts"],"sourcesContent":["// MSW handlers for JSON Schema services\nimport {\n mockConditionalOnConcreteTypeSchema,\n mockFileEntityValidationSchema,\n mockProjectValidationSchema,\n mockValidationSchema,\n} from '@/mocks/mockSchema'\nimport { generateAsyncJobHandlers } from '@/mocks/msw/handlers/asyncJobHandlers'\nimport {\n SCHEMA_VALIDATION_GET,\n SCHEMA_VALIDATION_START,\n} from '@/utils/APIConstants'\nimport { JSONSchema7 } from 'json-schema'\n\nconst validationSchemas: JSONSchema7[] = [\n mockValidationSchema,\n mockConditionalOnConcreteTypeSchema,\n mockFileEntityValidationSchema,\n mockProjectValidationSchema,\n]\n\nexport function getValidationSchemaHandlers(backendOrigin?: string) {\n return generateAsyncJobHandlers<\n {\n concreteType: 'org.sagebionetworks.repo.model.schema.GetValidationSchemaRequest'\n $id: string\n },\n {\n concreteType: 'org.sagebionetworks.repo.model.schema.GetValidationSchemaResponse'\n validationSchema: JSONSchema7\n }\n >(\n SCHEMA_VALIDATION_START,\n tokenParam => SCHEMA_VALIDATION_GET(tokenParam),\n req => {\n const requestedId = req.$id\n const validationSchema = validationSchemas.find(schema =>\n schema.$id?.includes(requestedId),\n )\n if (!validationSchema) {\n throw new Error(\n `Validation schema with id ${requestedId} not found in mock data.`,\n )\n }\n return {\n concreteType:\n 'org.sagebionetworks.repo.model.schema.GetValidationSchemaResponse',\n validationSchema: validationSchema,\n }\n },\n backendOrigin,\n )\n}\n"],"mappings":";;;;AAcA,IAAM,IAAmC;CACvC;CACA;CACA;CACA;AACF;AAEA,SAAgB,EAA4B,GAAwB;CAClE,OAAO,EAUL,IACA,MAAc,EAAsB,CAAU,IAC9C,MAAO;EACL,IAAM,IAAc,EAAI,KAClB,IAAmB,EAAkB,MAAK,MAC9C,EAAO,KAAK,SAAS,CAAW,CAClC;EACA,IAAI,CAAC,GACH,MAAU,MACR,6BAA6B,EAAY,yBAC3C;EAEF,OAAO;GACL,cACE;GACgB;EACpB;CACF,GACA,CACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchQueryHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/searchQueryHandlers.ts"],"sourcesContent":["import {\n SEARCH_QUERY_ASYNC_GET,\n SEARCH_QUERY_ASYNC_START,\n} from '@/utils/APIConstants'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { QueryResultBundle } from '@sage-bionetworks/synapse-types'\nimport {\n SearchIndexQuery,\n SearchQueryResults,\n SearchSearchQuery,\n} from '@sage-bionetworks/synapse-client'\nimport { cloneDeep } from 'lodash-es'\nimport { HttpHandler } from 'msw'\nimport { generateAsyncJobHandlers } from './asyncJobHandlers'\nimport { mockSearchQueryResultBundle } from '@/mocks/mockSearchQueryData'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\n/**\n * A key derived from a SearchIndexQuery, excluding pagination fields.\n * Used to match registered bindings against incoming requests.\n */\ntype SearchIndexQueryKey = Omit<SearchIndexQuery, 'searchQuery'> & {\n searchQuery?: Omit<SearchSearchQuery, 'limit' | 'offset'>\n}\n\ntype SearchQueryBinding = {\n id: string\n queryKey: SearchIndexQueryKey\n result: QueryResultBundle\n}\n\nconst mockSearchQueryService = new BasicMockedCrudService<\n SearchQueryBinding,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n})\n\nfunction applyLimitOffset(\n bundle: QueryResultBundle,\n limit = 25,\n offset = 0,\n): QueryResultBundle {\n const result = cloneDeep(bundle)\n if (result.queryResult?.queryResults.rows) {\n result.queryResult.queryResults.rows =\n result.queryResult.queryResults.rows.slice(offset, offset + limit)\n }\n return result\n}\n\nfunction processSearchRequest(\n request: SearchIndexQuery,\n baseBundle: QueryResultBundle,\n): QueryResultBundle {\n return applyLimitOffset(\n baseBundle,\n request.searchQuery?.limit,\n request.searchQuery?.offset,\n )\n}\n\n/**\n * Register a specific query binding for the mock search service.\n * If a binding for the same query key (ignoring limit/offset) already exists, it is updated.\n */\nexport function registerSearchQueryResult(\n queryKey: SearchIndexQueryKey,\n result: QueryResultBundle,\n) {\n const existing = mockSearchQueryService.getOneByField('queryKey', queryKey)\n if (existing) {\n mockSearchQueryService.update(existing.id, { ...existing, result })\n } else {\n mockSearchQueryService.create({ queryKey, result })\n }\n}\n\nfunction getSearchQueryResult(request: SearchIndexQuery): QueryResultBundle {\n const requestCopy = cloneDeep(request)\n if (requestCopy.searchQuery) {\n delete requestCopy.searchQuery.limit\n delete requestCopy.searchQuery.offset\n }\n const queryKey = requestCopy as SearchIndexQueryKey\n\n const binding = mockSearchQueryService.getOneByField('queryKey', queryKey)\n const baseBundle = binding?.result ?? mockSearchQueryResultBundle\n\n return processSearchRequest(request, baseBundle)\n}\n\n/**\n * Adapts the QueryResultBundle mock result into the SearchQueryResults shape\n * that the real SearchQueryServicesApi returns.\n */\nfunction toSearchQueryResults(bundle: QueryResultBundle): SearchQueryResults {\n const headers = bundle.queryResult?.queryResults.headers ?? []\n\n const hits = (bundle.queryResult?.queryResults.rows ?? []).map(row => ({\n rowId: row.rowId,\n rowVersion: row.versionNumber,\n fields: headers.map((header, i) => ({\n name: header.name,\n value: row.values[i] ?? undefined,\n })),\n }))\n\n const selectColumns = headers.map(header => ({\n name: header.name,\n columnType: header.columnType,\n id: header.id,\n }))\n\n return {\n concreteType:\n 'org.sagebionetworks.repo.model.search.SearchQueryResults' as const,\n totalHits: bundle.queryCount,\n hits,\n selectColumns,\n facets: bundle.facets as SearchQueryResults['facets'],\n offset: bundle.queryResult?.queryResults.rows?.length ? 0 : undefined,\n }\n}\n\n/**\n * Returns MSW handlers for the SearchQueryServicesApi endpoints.\n * Uses the default mock data from mockSearchQueryData.ts unless overridden via registerSearchQueryResult().\n */\nexport function getHandlersForSearchQuery(\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n): HttpHandler[] {\n return generateAsyncJobHandlers<SearchIndexQuery, SearchQueryResults>(\n SEARCH_QUERY_ASYNC_START,\n tokenParam => SEARCH_QUERY_ASYNC_GET(tokenParam),\n request => toSearchQueryResults(getSearchQueryResult(request)),\n backendOrigin,\n )\n}\n"],"mappings":";;;;;;;AAkCA,IAAM,IAAyB,IAAI,EAGjC;CACA,SAAS;CACT,gBAAgB;
|
|
1
|
+
{"version":3,"file":"searchQueryHandlers.js","names":[],"sources":["../../../../src/mocks/msw/handlers/searchQueryHandlers.ts"],"sourcesContent":["import {\n SEARCH_QUERY_ASYNC_GET,\n SEARCH_QUERY_ASYNC_START,\n} from '@/utils/APIConstants'\nimport {\n BackendDestinationEnum,\n getEndpoint,\n} from '@/utils/functions/getEndpoint'\nimport { QueryResultBundle } from '@sage-bionetworks/synapse-types'\nimport {\n SearchIndexQuery,\n SearchQueryResults,\n SearchSearchQuery,\n} from '@sage-bionetworks/synapse-client'\nimport { cloneDeep } from 'lodash-es'\nimport { HttpHandler } from 'msw'\nimport { generateAsyncJobHandlers } from './asyncJobHandlers'\nimport { mockSearchQueryResultBundle } from '@/mocks/mockSearchQueryData'\nimport BasicMockedCrudService from '../util/BasicMockedCrudService'\n\n/**\n * A key derived from a SearchIndexQuery, excluding pagination fields.\n * Used to match registered bindings against incoming requests.\n */\ntype SearchIndexQueryKey = Omit<SearchIndexQuery, 'searchQuery'> & {\n searchQuery?: Omit<SearchSearchQuery, 'limit' | 'offset'>\n}\n\ntype SearchQueryBinding = {\n id: string\n queryKey: SearchIndexQueryKey\n result: QueryResultBundle\n}\n\nconst mockSearchQueryService = new BasicMockedCrudService<\n SearchQueryBinding,\n 'id'\n>({\n idField: 'id',\n autoGenerateId: true,\n})\n\nfunction applyLimitOffset(\n bundle: QueryResultBundle,\n limit = 25,\n offset = 0,\n): QueryResultBundle {\n const result = cloneDeep(bundle)\n if (result.queryResult?.queryResults.rows) {\n result.queryResult.queryResults.rows =\n result.queryResult.queryResults.rows.slice(offset, offset + limit)\n }\n return result\n}\n\nfunction processSearchRequest(\n request: SearchIndexQuery,\n baseBundle: QueryResultBundle,\n): QueryResultBundle {\n return applyLimitOffset(\n baseBundle,\n request.searchQuery?.limit,\n request.searchQuery?.offset,\n )\n}\n\n/**\n * Register a specific query binding for the mock search service.\n * If a binding for the same query key (ignoring limit/offset) already exists, it is updated.\n */\nexport function registerSearchQueryResult(\n queryKey: SearchIndexQueryKey,\n result: QueryResultBundle,\n) {\n const existing = mockSearchQueryService.getOneByField('queryKey', queryKey)\n if (existing) {\n mockSearchQueryService.update(existing.id, { ...existing, result })\n } else {\n mockSearchQueryService.create({ queryKey, result })\n }\n}\n\nfunction getSearchQueryResult(request: SearchIndexQuery): QueryResultBundle {\n const requestCopy = cloneDeep(request)\n if (requestCopy.searchQuery) {\n delete requestCopy.searchQuery.limit\n delete requestCopy.searchQuery.offset\n }\n const queryKey = requestCopy as SearchIndexQueryKey\n\n const binding = mockSearchQueryService.getOneByField('queryKey', queryKey)\n const baseBundle = binding?.result ?? mockSearchQueryResultBundle\n\n return processSearchRequest(request, baseBundle)\n}\n\n/**\n * Adapts the QueryResultBundle mock result into the SearchQueryResults shape\n * that the real SearchQueryServicesApi returns.\n */\nfunction toSearchQueryResults(bundle: QueryResultBundle): SearchQueryResults {\n const headers = bundle.queryResult?.queryResults.headers ?? []\n\n const hits = (bundle.queryResult?.queryResults.rows ?? []).map(row => ({\n rowId: row.rowId,\n rowVersion: row.versionNumber,\n fields: headers.map((header, i) => ({\n name: header.name,\n value: row.values[i] ?? undefined,\n })),\n }))\n\n const selectColumns = headers.map(header => ({\n name: header.name,\n columnType: header.columnType,\n id: header.id,\n }))\n\n return {\n concreteType:\n 'org.sagebionetworks.repo.model.search.SearchQueryResults' as const,\n totalHits: bundle.queryCount,\n hits,\n selectColumns,\n facets: bundle.facets as SearchQueryResults['facets'],\n offset: bundle.queryResult?.queryResults.rows?.length ? 0 : undefined,\n }\n}\n\n/**\n * Returns MSW handlers for the SearchQueryServicesApi endpoints.\n * Uses the default mock data from mockSearchQueryData.ts unless overridden via registerSearchQueryResult().\n */\nexport function getHandlersForSearchQuery(\n backendOrigin = getEndpoint(BackendDestinationEnum.REPO_ENDPOINT),\n): HttpHandler[] {\n return generateAsyncJobHandlers<SearchIndexQuery, SearchQueryResults>(\n SEARCH_QUERY_ASYNC_START,\n tokenParam => SEARCH_QUERY_ASYNC_GET(tokenParam),\n request => toSearchQueryResults(getSearchQueryResult(request)),\n backendOrigin,\n )\n}\n"],"mappings":";;;;;;;AAkCA,IAAM,IAAyB,IAAI,EAGjC;CACA,SAAS;CACT,gBAAgB;AAClB,CAAC;AAED,SAAS,EACP,GACA,IAAQ,IACR,IAAS,GACU;CACnB,IAAM,IAAS,EAAU,CAAM;CAK/B,OAJI,EAAO,aAAa,aAAa,SACnC,EAAO,YAAY,aAAa,OAC9B,EAAO,YAAY,aAAa,KAAK,MAAM,GAAQ,IAAS,CAAK,IAE9D;AACT;AAEA,SAAS,EACP,GACA,GACmB;CACnB,OAAO,EACL,GACA,EAAQ,aAAa,OACrB,EAAQ,aAAa,MACvB;AACF;AAMA,SAAgB,EACd,GACA,GACA;CACA,IAAM,IAAW,EAAuB,cAAc,YAAY,CAAQ;CAC1E,AAAI,IACF,EAAuB,OAAO,EAAS,IAAI;EAAE,GAAG;EAAU;CAAO,CAAC,IAElE,EAAuB,OAAO;EAAE;EAAU;CAAO,CAAC;AAEtD;AAEA,SAAS,EAAqB,GAA8C;CAC1E,IAAM,IAAc,EAAU,CAAO;CACrC,AAAI,EAAY,gBACd,OAAO,EAAY,YAAY,OAC/B,OAAO,EAAY,YAAY;CAEjC,IAAM,IAAW;CAKjB,OAAO,EAAqB,GAHZ,EAAuB,cAAc,YAAY,CAC9C,GAAS,UAAU,CAES;AACjD;AAMA,SAAS,EAAqB,GAA+C;CAC3E,IAAM,IAAU,EAAO,aAAa,aAAa,WAAW,CAAC,GAEvD,KAAQ,EAAO,aAAa,aAAa,QAAQ,CAAC,GAAG,KAAI,OAAQ;EACrE,OAAO,EAAI;EACX,YAAY,EAAI;EAChB,QAAQ,EAAQ,KAAK,GAAQ,OAAO;GAClC,MAAM,EAAO;GACb,OAAO,EAAI,OAAO,MAAM,KAAA;EAC1B,EAAE;CACJ,EAAE,GAEI,IAAgB,EAAQ,KAAI,OAAW;EAC3C,MAAM,EAAO;EACb,YAAY,EAAO;EACnB,IAAI,EAAO;CACb,EAAE;CAEF,OAAO;EACL,cACE;EACF,WAAW,EAAO;EAClB;EACA;EACA,QAAQ,EAAO;EACf,QAAQ,EAAO,aAAa,aAAa,MAAM,SAAS,IAAI,KAAA;CAC9D;AACF;AAMA,SAAgB,EACd,IAAgB,EAAY,EAAuB,aAAa,GACjD;CACf,OAAO,EACL,IACA,MAAc,EAAuB,CAAU,IAC/C,MAAW,EAAqB,EAAqB,CAAO,CAAC,GAC7D,CACF;AACF"}
|