synapse-react-client 4.0.9 → 4.0.11
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 -0
- package/dist/SWC.index.d.ts.map +1 -1
- package/dist/SWC.index.js +2 -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/icons/CloudWarning.d.ts +5 -0
- package/dist/assets/icons/CloudWarning.d.ts.map +1 -0
- package/dist/assets/icons/CloudWarning.js +47 -0
- package/dist/assets/icons/CloudWarning.js.map +1 -0
- package/dist/assets/icons/TasksIcon.d.ts.map +1 -1
- package/dist/assets/icons/TasksIcon.js +6 -10
- package/dist/assets/icons/TasksIcon.js.map +1 -1
- package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.d.ts.map +1 -1
- package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js +69 -63
- package/dist/components/AccessRequirementAclEditor/AccessRequirementAclEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessApprovalCheckMark.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementList.js.map +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementListUtils.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.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/AcknowledgementsPage/StudyAcknowledgements.js.map +1 -1
- package/dist/components/AclEditor/PermissionLevelMenu.js.map +1 -1
- package/dist/components/AclEditor/ResourceAccessAndUserGroupHeader.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/Aridhia/AridhiaAccessStatus.js.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.d.ts.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.js +38 -37
- package/dist/components/Authentication/AuthenticationMethodSelection.js.map +1 -1
- package/dist/components/Authentication/Constants.d.ts +1 -0
- package/dist/components/Authentication/Constants.d.ts.map +1 -1
- package/dist/components/Authentication/Constants.js +2 -2
- package/dist/components/Authentication/Constants.js.map +1 -1
- package/dist/components/Authentication/LastLoginInfo.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 +1 -1
- package/dist/components/Authentication/TwoFactorBackupCodes.js.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js +2 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/CardContainer/CardContainer.js.map +1 -1
- package/dist/components/CardDeck/CardDeck.Mobile.js.map +1 -1
- package/dist/components/CardDeck/TableQueryCardDeck.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/ChallengeSubmission/ChallengeSubmission.js.map +1 -1
- 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/SubmissionDirectoryList.d.ts.map +1 -1
- package/dist/components/ChallengeSubmission/SubmissionDirectoryList.js +143 -140
- package/dist/components/ChallengeSubmission/SubmissionDirectoryList.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/ChallengeTeamWizard.js.map +1 -1
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.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 +1 -1
- package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
- package/dist/components/ColumnFilter/ColumnFilter.js.map +1 -1
- package/dist/components/ComponentCollapse.js.map +1 -1
- package/dist/components/CookiesNotification/CookiesNotification.js.map +1 -1
- package/dist/components/CreateProjectModal/CreateProjectModal.js.map +1 -1
- package/dist/components/CreateTableViewWizard/CreateTableViewWizardUtils.js.map +1 -1
- package/dist/components/DataGrid/DataGrid.d.ts +0 -1
- package/dist/components/DataGrid/DataGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/DataGrid.js +72 -72
- package/dist/components/DataGrid/DataGrid.js.map +1 -1
- package/dist/components/DataGrid/DataGridWebSocket.d.ts +4 -0
- package/dist/components/DataGrid/DataGridWebSocket.d.ts.map +1 -1
- package/dist/components/DataGrid/DataGridWebSocket.js +9 -8
- package/dist/components/DataGrid/DataGridWebSocket.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +326 -268
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteColumn.d.ts +2 -0
- package/dist/components/DataGrid/columns/AutocompleteColumn.d.ts.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteColumn.js +124 -67
- package/dist/components/DataGrid/columns/AutocompleteColumn.js.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.d.ts +2 -1
- package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.d.ts.map +1 -1
- package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js +126 -122
- package/dist/components/DataGrid/columns/AutocompleteMultipleEnumColumn.js.map +1 -1
- package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts +58 -0
- package/dist/components/DataGrid/columns/useGridAutocompleteState.d.ts.map +1 -0
- package/dist/components/DataGrid/columns/useGridAutocompleteState.js +52 -0
- package/dist/components/DataGrid/columns/useGridAutocompleteState.js.map +1 -0
- package/dist/components/DataGrid/components/ValidationAlert.d.ts +5 -2
- package/dist/components/DataGrid/components/ValidationAlert.d.ts.map +1 -1
- package/dist/components/DataGrid/components/ValidationAlert.js +429 -24
- package/dist/components/DataGrid/components/ValidationAlert.js.map +1 -1
- package/dist/components/DataGrid/hooks/useColumnResizeHandles.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGetSchemaForGrid.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGridUndoRedo.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 +7 -0
- package/dist/components/DataGrid/useDataGridWebsocket.d.ts.map +1 -1
- package/dist/components/DataGrid/useDataGridWebsocket.js +16 -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/applyModelChange.d.ts +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.js +27 -24
- package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.d.ts +8 -0
- package/dist/components/DataGrid/utils/columnFactory.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.js +47 -44
- 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/extractColumnValidationMessages.js.map +1 -1
- package/dist/components/DataGrid/utils/getCellClassName.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/getCellClassName.js +8 -8
- package/dist/components/DataGrid/utils/getCellClassName.js.map +1 -1
- package/dist/components/DataGrid/utils/getEmptyValue.d.ts +2 -0
- package/dist/components/DataGrid/utils/getEmptyValue.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/getEmptyValue.js +8 -0
- package/dist/components/DataGrid/utils/getEmptyValue.js.map +1 -0
- package/dist/components/DataGrid/utils/json-rx/JsonRx.js.map +1 -1
- package/dist/components/DataGrid/utils/modelColsToGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/modelColsToGrid.js +2 -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/schemaAwarePasteValue.d.ts +32 -0
- package/dist/components/DataGrid/utils/schemaAwarePasteValue.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/schemaAwarePasteValue.js +22 -0
- package/dist/components/DataGrid/utils/schemaAwarePasteValue.js.map +1 -0
- package/dist/components/DataGrid/utils/splitPatch.js.map +1 -1
- package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
- package/dist/components/DirectDownloadButton.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.css +1 -0
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.d.ts.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js +199 -132
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.module.js +22 -0
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.module.js.map +1 -0
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.module.scss +170 -0
- package/dist/components/DownloadCart/DownloadListActionsRequired.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.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/DynamicForm/DynamicFormModal.js.map +1 -1
- package/dist/components/Ecosystem/TableQueryEcosystem.js.map +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditor.d.ts.map +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditor.js +103 -103
- package/dist/components/EntityAclEditor/EntityAclEditor.js.map +1 -1
- package/dist/components/EntityAclEditor/useNotifyNewACLUsers.js.map +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitation.js.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.d.ts.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js +1 -0
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
- package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.d.ts.map +1 -1
- package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js +36 -30
- package/dist/components/EntityDownloadConfirmation/EntityDownloadConfirmation.js.map +1 -1
- package/dist/components/EntityFinder/EntityFinder.js.map +1 -1
- package/dist/components/EntityFinder/VersionSelectionType.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/view/DetailsView.js.map +1 -1
- package/dist/components/EntityFinder/tree/EntityTree.js.map +1 -1
- 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/EntityHeaderTable.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/EntitySubjectsSelector/EntitySubjectsSelector.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/EntityViewScopeEditor/EntityViewMaskEditor.d.ts.map +1 -1
- package/dist/components/EntityViewScopeEditor/EntityViewMaskEditor.js +15 -14
- package/dist/components/EntityViewScopeEditor/EntityViewMaskEditor.js.map +1 -1
- 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/QueryPerFacetPlotsCard.js.map +1 -1
- package/dist/components/FeaturedDataTabs/SingleQueryFacetPlotsCards.js.map +1 -1
- package/dist/components/FeaturedResearch/FeaturedResearch.js.map +1 -1
- package/dist/components/FeaturedToolsList/FeaturedToolsList.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/PreviewRendererType.js.map +1 -1
- package/dist/components/Forum/DiscussionReply.d.ts +1 -0
- package/dist/components/Forum/DiscussionReply.d.ts.map +1 -1
- package/dist/components/Forum/DiscussionReply.js +19 -19
- package/dist/components/Forum/DiscussionReply.js.map +1 -1
- package/dist/components/Forum/DiscussionSearchResult.js.map +1 -1
- package/dist/components/Forum/DiscussionThread.d.ts +1 -0
- package/dist/components/Forum/DiscussionThread.d.ts.map +1 -1
- package/dist/components/Forum/DiscussionThread.js +73 -72
- package/dist/components/Forum/DiscussionThread.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/FullTextSearch/FullTextSearchUtils.js.map +1 -1
- package/dist/components/GenericCard/BioregistryRules.d.ts.map +1 -1
- package/dist/components/GenericCard/BioregistryRules.js +7 -3
- package/dist/components/GenericCard/BioregistryRules.js.map +1 -1
- package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/GenericCard.js +12 -7
- package/dist/components/GenericCard/GenericCard.js.map +1 -1
- package/dist/components/GenericCard/Linkify.js.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +105 -105
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/Goals/Goals.Mobile.js.map +1 -1
- package/dist/components/Goals/Goals.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Mobile.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.js.map +1 -1
- package/dist/components/GoalsV3/GoalsV3.Mobile.js.map +1 -1
- package/dist/components/GoalsV3/GoalsV3.js.map +1 -1
- package/dist/components/GoogleMap/SynapseUserMarker.js.map +1 -1
- package/dist/components/HasAccess/AccessIcon.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.d.ts +6 -1
- package/dist/components/HeaderCard.d.ts.map +1 -1
- package/dist/components/HeaderCard.js +107 -76
- package/dist/components/HeaderCard.js.map +1 -1
- package/dist/components/HexGrid/HexGrid.js.map +1 -1
- package/dist/components/IconList.js.map +1 -1
- package/dist/components/IconSvg/IconSvg.d.ts.map +1 -1
- package/dist/components/IconSvg/IconSvg.js +2 -1
- package/dist/components/IconSvg/IconSvg.js.map +1 -1
- package/dist/components/ImageCardGridWithLinks/ImageCardGridWithLinks.js.map +1 -1
- package/dist/components/ImageFromSynapseTable.js.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldDescriptionTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/ArrayFieldItemTemplate.js.map +1 -1
- package/dist/components/JsonSchemaForm/templates/BaseInputTemplate.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/Markdown/MarkdownGithub.js.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.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/MarkdownProvenanceGraph.js.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
- package/dist/components/ModalDownload/ModalDownload.js.map +1 -1
- package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.d.ts.map +1 -1
- package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js +45 -39
- package/dist/components/OAuthClientAclEditor/OAuthClientAclEditor.js.map +1 -1
- package/dist/components/OAuthClientManagement/OAuthManagement.js.map +1 -1
- package/dist/components/PageProgress/PageProgress.js.map +1 -1
- package/dist/components/Plot/DotPlot.js.map +1 -1
- package/dist/components/Plot/Plot.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.js.map +1 -1
- package/dist/components/Plot/ThemesPlot.js.map +1 -1
- package/dist/components/Plot/UpsetPlot.js.map +1 -1
- package/dist/components/PortalAclEditor/PortalAclEditor.d.ts.map +1 -1
- package/dist/components/PortalAclEditor/PortalAclEditor.js +43 -41
- package/dist/components/PortalAclEditor/PortalAclEditor.js.map +1 -1
- package/dist/components/PortalFeaturedPartners/PortalFeaturedPartners.js.map +1 -1
- package/dist/components/PortalList/CreatePortalModal.js.map +1 -1
- package/dist/components/ProgrammaticInstructionsModal/ProgrammaticInstructionsModal.js.map +1 -1
- package/dist/components/ProgrammaticTableDownload/ProgrammaticTableDownload.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/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.map +1 -1
- package/dist/components/QueryCount/QueryCount.js.map +1 -1
- package/dist/components/QueryCountButton/QueryCountButton.js.map +1 -1
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js.map +1 -1
- package/dist/components/QueryWrapper/QueryWrapper.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/generateEncodedPathAndQueryForSelectedFacetURL.js.map +1 -1
- package/dist/components/QueryWrapper/useGetQueryMetadata.js.map +1 -1
- package/dist/components/QueryWrapperErrorBoundary.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/UseRowSet.js.map +1 -1
- package/dist/components/RecentPublicationsGrid/RecentPublicationsGrid.js.map +1 -1
- package/dist/components/ReleaseCard/ReleaseCardUtils.js.map +1 -1
- package/dist/components/ResizableContainer/hooks/useResizable.js.map +1 -1
- package/dist/components/Resources/Resources.Mobile.js.map +1 -1
- package/dist/components/Resources/Resources.js.map +1 -1
- package/dist/components/RowDataTable/RowDataTableWithQuery.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/SetAccessRequirementCommonFields/SetAccessRequirementCommonFields.js.map +1 -1
- package/dist/components/SetManagedAccessRequirementFields/SetManagedAccessRequirementFields.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/SourceAppImage.js.map +1 -1
- package/dist/components/StandaloneQueryWrapper/StandaloneQueryWrapper.js.map +1 -1
- package/dist/components/StatisticsPlot.js.map +1 -1
- package/dist/components/StorybookComponentWrapper.js.map +1 -1
- package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js.map +1 -1
- package/dist/components/SustainabilityScorecard/SustainabilityScorecard.js.map +1 -1
- package/dist/components/SynapseChat/GridAgentChat.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/extractMessageFromTraceEvent.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 +4 -2
- package/dist/components/SynapseForm/SynapseForm.js.map +1 -1
- package/dist/components/SynapseForm/SynapseFormWrapper.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/SynapseHomepageChatSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageSearch.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseInActionItem.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapsePlans.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseTrendingProjects.js.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts +8 -7
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.d.ts.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +173 -164
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
- package/dist/components/SynapsePortalBanners/SynapsePortalBanners.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/SynapseSearchPageResults.js.map +1 -1
- package/dist/components/SynapseTable/EntityIDColumnCopyIcon.js.map +1 -1
- package/dist/components/SynapseTable/NoContentPlaceholderType.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTableRenderers.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js.map +1 -1
- package/dist/components/SynapseTable/table-top/ColumnSelection.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/TableColumnSchemaEditor/ColumnModelForm.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ColumnModelFormFields/DefaultValueField.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/ImportTableColumnsButton.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.d.ts.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditorUtils.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js.map +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaFormReducer.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/TanStackTable/ColumnHeader.d.ts +1 -0
- package/dist/components/TanStackTable/ColumnHeader.d.ts.map +1 -1
- package/dist/components/TanStackTable/ColumnHeader.js +8 -8
- package/dist/components/TanStackTable/ColumnHeader.js.map +1 -1
- package/dist/components/TanStackTable/ColumnHeaderEnumFilter.js.map +1 -1
- package/dist/components/TanStackTable/TableBody.js.map +1 -1
- package/dist/components/TeamSubjectsSelector/TeamSubjectsSelector.js.map +1 -1
- package/dist/components/TextField/TextField.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/UserCard/Avatar.js.map +1 -1
- package/dist/components/UserCardList/UserCardList.js.map +1 -1
- package/dist/components/UserCardList/UserCardListGroups/UserCardListGroups.Mobile.js.map +1 -1
- package/dist/components/UserCardList/UserCardListRotate.js.map +1 -1
- package/dist/components/UserOrTeamBadge/useUserOrTeam.js.map +1 -1
- package/dist/components/UserProfileLinks/UserProjects.js.map +1 -1
- package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -1
- package/dist/components/Webhook/WebhookDashboard.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/dataaccess/AccessApprovalsTable.js.map +1 -1
- package/dist/components/dataaccess/AccessRequestSubmissionTable.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.d.ts.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js +157 -148
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js.map +1 -1
- package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
- package/dist/components/dataaccess/UserAccessRequestHistory/UserAccessRequestHistoryTable.js.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.d.ts.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.js +20 -19
- package/dist/components/doi/CreateOrUpdateDoiModal.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/title_bar/useDataCiteUsage.js.map +1 -1
- package/dist/components/entity/page/title_bar/useGetMentions.js.map +1 -1
- package/dist/components/error/ErrorPage.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/layout/SWCHeader.d.ts +9 -0
- package/dist/components/layout/SWCHeader.d.ts.map +1 -0
- package/dist/components/layout/SWCHeader.js +19 -0
- package/dist/components/layout/SWCHeader.js.map +1 -0
- package/dist/components/layout/SWCPageLayout.d.ts +9 -0
- package/dist/components/layout/SWCPageLayout.d.ts.map +1 -0
- package/dist/components/layout/SWCPageLayout.js +14 -0
- package/dist/components/layout/SWCPageLayout.js.map +1 -0
- package/dist/components/menu/ComplexMenu.js.map +1 -1
- package/dist/components/row_renderers/utils/ChipContainer.js.map +1 -1
- package/dist/components/styled/StyledPopover.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +2 -1
- package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
- package/dist/components/trash/TrashCanList.js.map +1 -1
- package/dist/components/widgets/FileHandleLink.js.map +1 -1
- package/dist/components/widgets/RangeSlider/RangeSlider.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/PlotsContainer.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/FacetFilterControls.js.map +1 -1
- package/dist/components/widgets/query-filter/RangeFacetFilter.js.map +1 -1
- package/dist/components/widgets/query-filter/RangeFacetFilterUI.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.d.ts.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.js +23 -30
- package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
- package/dist/features/curator/dashboard/CuratorDashboard.d.ts +2 -0
- package/dist/features/curator/dashboard/CuratorDashboard.d.ts.map +1 -0
- package/dist/features/curator/dashboard/CuratorDashboard.js +45 -0
- package/dist/features/curator/dashboard/CuratorDashboard.js.map +1 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.css +1 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.d.ts +9 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.d.ts.map +1 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.js +106 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.js.map +1 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.module.js +12 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.module.js.map +1 -0
- package/dist/features/curator/dashboard/components/CurationTaskCard.module.scss +52 -0
- package/dist/features/curator/dashboard/components/NextStepButton.css +1 -0
- package/dist/features/curator/dashboard/components/NextStepButton.d.ts +14 -0
- package/dist/features/curator/dashboard/components/NextStepButton.d.ts.map +1 -0
- package/dist/features/curator/dashboard/components/NextStepButton.js +35 -0
- package/dist/features/curator/dashboard/components/NextStepButton.js.map +1 -0
- package/dist/features/curator/dashboard/components/NextStepButton.module.js +11 -0
- package/dist/features/curator/dashboard/components/NextStepButton.module.js.map +1 -0
- package/dist/features/curator/dashboard/components/NextStepButton.module.scss +57 -0
- package/dist/features/curator/dashboard/components/UserOrTeamChip.css +1 -1
- package/dist/features/curator/dashboard/components/UserOrTeamChip.module.js +1 -1
- package/dist/features/curator/dashboard/components/UserOrTeamChip.module.js.map +1 -1
- package/dist/features/curator/dashboard/components/UserOrTeamChip.module.scss +5 -5
- package/dist/features/curator/dashboard/components/shared.css +1 -0
- package/dist/features/curator/dashboard/components/shared.module.js +5 -0
- package/dist/features/curator/dashboard/components/shared.module.js.map +1 -0
- package/dist/features/curator/dashboard/components/shared.module.scss +8 -0
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts +0 -2
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js +16 -34
- package/dist/features/entity/metadata-task/components/MetadataTaskTableActionCell.js.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTasksTableAssigneeCell.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/components/MetadataTasksTableAssigneeCell.js +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.js +1 -1
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js.map +1 -1
- package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.d.ts +10 -0
- package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.d.ts.map +1 -0
- package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js +37 -0
- package/dist/features/entity/metadata-task/hooks/useOpenCuratorButton.js.map +1 -0
- package/dist/features/entity/metadata-task/utils/constants.d.ts +5 -0
- package/dist/features/entity/metadata-task/utils/constants.d.ts.map +1 -0
- package/dist/features/entity/metadata-task/utils/constants.js +6 -0
- package/dist/features/entity/metadata-task/utils/constants.js.map +1 -0
- package/dist/mocks/challenge/mockChallenge.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/mockFileEntity.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/mockRootEntity.js.map +1 -1
- package/dist/mocks/entity/mockTableEntity.js.map +1 -1
- package/dist/mocks/mockWiki.js.map +1 -1
- package/dist/mocks/msw/handlers/asyncJobHandlers.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/discussionHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/entityHandlers.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/personalAccessTokenHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/subscriptionHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/teamHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/userProfileHandlers.js.map +1 -1
- package/dist/mocks/msw/handlers/wikiHandlers.js.map +1 -1
- package/dist/mocks/provenance/mockActivity.js.map +1 -1
- package/dist/mocks/query/mockReleaseCardsTableQueryResultBundle.js.map +1 -1
- package/dist/ror-client/index.js.map +1 -1
- package/dist/style/components/_cards.scss +4 -0
- package/dist/style/components/_data-grid-extra.css +1 -1
- package/dist/style/components/_data-grid-extra.scss +2 -0
- package/dist/style/main.css +1 -1
- package/dist/synapse-client/HttpClient.js.map +1 -1
- package/dist/synapse-client/SynapseClient.js.map +1 -1
- package/dist/synapse-queries/KeyFactory.d.ts +1 -0
- package/dist/synapse-queries/KeyFactory.d.ts.map +1 -1
- package/dist/synapse-queries/KeyFactory.js +3 -0
- package/dist/synapse-queries/KeyFactory.js.map +1 -1
- package/dist/synapse-queries/QueryMatching.test-utils.js.map +1 -1
- package/dist/synapse-queries/auth/useTwoFactorEnrollment.js.map +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.d.ts +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.d.ts.map +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.js +1 -1
- package/dist/synapse-queries/curation/task/useCurationTask.js.map +1 -1
- package/dist/synapse-queries/dataaccess/useRestrictionInformation.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/useEntity.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/useExportToTerra.js.map +1 -1
- package/dist/synapse-queries/entity/useGetQueryResultBundle.js.map +1 -1
- package/dist/synapse-queries/entity/useSchema.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/useFiles.js.map +1 -1
- package/dist/synapse-queries/forum/useReply.js.map +1 -1
- package/dist/synapse-queries/forum/useThread.d.ts +1 -0
- package/dist/synapse-queries/forum/useThread.d.ts.map +1 -1
- package/dist/synapse-queries/forum/useThread.js +19 -12
- package/dist/synapse-queries/forum/useThread.js.map +1 -1
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.d.ts +2 -0
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.d.ts.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/useGridSession.js.map +1 -1
- package/dist/synapse-queries/grid/useImportCsvIntoGrid.js.map +1 -1
- package/dist/synapse-queries/subscription/useSubscription.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/useTeamMembers.js.map +1 -1
- package/dist/synapse-queries/user/useGetUserChallenges.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/testutils/ReactQueryMockUtils.js.map +1 -1
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/APIConstants.d.ts +1 -0
- package/dist/utils/APIConstants.d.ts.map +1 -1
- package/dist/utils/APIConstants.js +2 -2
- package/dist/utils/APIConstants.js.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.d.ts.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.js +7 -4
- package/dist/utils/AppUtils/session/ApplicationSessionManager.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/PermissionLevelToAccessType.js.map +1 -1
- package/dist/utils/challenge/evaluation/EvaluationUtils.js.map +1 -1
- package/dist/utils/context/SynapseContext.js.map +1 -1
- package/dist/utils/functions/AccessControlListUtils.d.ts +4 -0
- package/dist/utils/functions/AccessControlListUtils.d.ts.map +1 -1
- package/dist/utils/functions/AccessControlListUtils.js +12 -1
- package/dist/utils/functions/AccessControlListUtils.js.map +1 -1
- package/dist/utils/functions/EntityTypeUtils.d.ts.map +1 -1
- package/dist/utils/functions/EntityTypeUtils.js +15 -4
- package/dist/utils/functions/EntityTypeUtils.js.map +1 -1
- package/dist/utils/functions/GridApiUtils.js.map +1 -1
- package/dist/utils/functions/QueryFilterUtils.js.map +1 -1
- package/dist/utils/functions/RealmUtils.d.ts +4 -0
- package/dist/utils/functions/RealmUtils.d.ts.map +1 -1
- package/dist/utils/functions/RealmUtils.js +9 -3
- package/dist/utils/functions/RealmUtils.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/deepLinkingUtils.js.map +1 -1
- package/dist/utils/functions/getDataFromFromStorage.js.map +1 -1
- package/dist/utils/functions/getEndpoint.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/hooks/useConfirmItems.js.map +1 -1
- package/dist/utils/hooks/useCookiePreferences.js.map +1 -1
- package/dist/utils/hooks/useCreateShortUrl.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/useGetGoalData.js.map +1 -1
- package/dist/utils/hooks/useGetInfoFromIds.js.map +1 -1
- package/dist/utils/hooks/useImageUrlUtils.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/useListState.js.map +1 -1
- package/dist/utils/hooks/useLogin.d.ts.map +1 -1
- package/dist/utils/hooks/useLogin.js +53 -52
- package/dist/utils/hooks/useLogin.js.map +1 -1
- package/dist/utils/hooks/useMutuallyExclusiveState.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/useSourceAppConfigs.js.map +1 -1
- package/dist/utils/hooks/useTableImageUrl.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/package.json +5 -5
|
@@ -1,58 +1,64 @@
|
|
|
1
1
|
import e from "../utils/parseFreeTextUsingJsonSchemaType.js";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
2
|
+
import { useGridAutocompleteState as t } from "./useGridAutocompleteState.js";
|
|
3
|
+
import { areAutocompleteCellPropsEqual as n, castCellValueToString as r } from "./AutocompleteColumn.js";
|
|
4
|
+
import { GridAutocompleteChip as i } from "./GridAutocompleteChip.js";
|
|
5
|
+
import { memo as a, useLayoutEffect as ee, useRef as te, useState as ne } from "react";
|
|
6
|
+
import { Autocomplete as re, TextField as ie, Tooltip as ae } from "@mui/material";
|
|
7
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
8
|
+
import s from "lodash-es/isEqual";
|
|
9
|
+
import { c as oe } from "react/compiler-runtime";
|
|
10
|
+
import se from "lodash-es/isNil";
|
|
10
11
|
//#region src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx
|
|
11
|
-
var
|
|
12
|
+
var ce = {
|
|
12
13
|
width: "100%",
|
|
13
14
|
height: "100%",
|
|
14
15
|
"& .MuiFormControl-root": { height: "100%" },
|
|
15
16
|
"& .MuiAutocomplete-tag": { margin: "1px" },
|
|
16
17
|
"&:hover .MuiAutocomplete-clearIndicator": { visibility: "visible" },
|
|
17
18
|
"&:hover .MuiAutocomplete-popupIndicator": { visibility: "visible" }
|
|
18
|
-
},
|
|
19
|
+
}, le = {
|
|
19
20
|
height: "100%",
|
|
20
21
|
padding: "0 10px",
|
|
21
22
|
backgroundColor: "inherit",
|
|
22
23
|
borderRadius: 0
|
|
23
24
|
};
|
|
24
|
-
function
|
|
25
|
+
function ue(e) {
|
|
25
26
|
return {
|
|
26
|
-
label:
|
|
27
|
+
label: r(e),
|
|
27
28
|
value: e
|
|
28
29
|
};
|
|
29
30
|
}
|
|
30
|
-
function
|
|
31
|
-
return Array.isArray(e) ? e :
|
|
31
|
+
function c(e) {
|
|
32
|
+
return Array.isArray(e) ? e : se(e) ? [] : [e];
|
|
32
33
|
}
|
|
33
|
-
function
|
|
34
|
-
let r =
|
|
35
|
-
r[0] ===
|
|
36
|
-
|
|
37
|
-
},
|
|
38
|
-
let
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
function l(n) {
|
|
35
|
+
let r = oe(73), { rowData: a, setRowData: s, choices: l, colType: u, limitTags: d, active: f, focus: me, stopEditing: p, clearValue: he } = n, m = d === void 0 ? 2 : d, ge = he === void 0 ? void 0 : he, _e = te(s), h;
|
|
36
|
+
r[0] === s ? h = r[1] : (h = () => {
|
|
37
|
+
_e.current = s;
|
|
38
|
+
}, r[0] = s, r[1] = h), ee(h);
|
|
39
|
+
let [g, ve] = ne(""), _;
|
|
40
|
+
r[2] !== f || r[3] !== p ? (_ = {
|
|
41
|
+
active: f,
|
|
42
|
+
stopEditing: p
|
|
43
|
+
}, r[2] = f, r[3] = p, r[4] = _) : _ = r[4];
|
|
44
|
+
let { menuIsOpen: ye, setMenuIsOpen: be, inputRef: xe, activeRef: v, handleListboxMouseDown: y, notifyOptionCommitted: b, handleMenuOpen: x, handleClose: S } = t(_), C, w, T, E, D;
|
|
45
|
+
if (r[5] !== f || r[6] !== l || r[7] !== m || r[8] !== a) {
|
|
46
|
+
T = c(a);
|
|
41
47
|
let e;
|
|
42
|
-
r[
|
|
43
|
-
} else C = r[
|
|
48
|
+
r[14] === l ? e = r[15] : (e = l.map(ue), r[14] = l, r[15] = e), w = e, E = T.map(ue), C = f ? -1 : m, D = T.length > 0 ? T.map(pe).join(",") : "", r[5] = f, r[6] = l, r[7] = m, r[8] = a, r[9] = C, r[10] = w, r[11] = T, r[12] = E, r[13] = D;
|
|
49
|
+
} else C = r[9], w = r[10], T = r[11], E = r[12], D = r[13];
|
|
44
50
|
let O = D, k;
|
|
45
|
-
r[
|
|
46
|
-
let
|
|
47
|
-
r[
|
|
51
|
+
r[16] === a ? k = r[17] : (k = !se(a) && a !== "", r[16] = a, r[17] = k);
|
|
52
|
+
let Se = k, A = me ? void 0 : "none", j = f ? "wrap" : "nowrap", M = f ? "auto" : "hidden", N, P, F, I;
|
|
53
|
+
r[18] === Symbol.for("react.memo_cache_sentinel") ? (N = {
|
|
48
54
|
width: "6px",
|
|
49
55
|
height: "6px"
|
|
50
56
|
}, P = { background: "transparent" }, F = {
|
|
51
57
|
background: "#888",
|
|
52
58
|
borderRadius: "3px"
|
|
53
|
-
}, I = { background: "#555" }, r[
|
|
59
|
+
}, I = { background: "#555" }, r[18] = N, r[19] = P, r[20] = F, r[21] = I) : (N = r[18], P = r[19], F = r[20], I = r[21]);
|
|
54
60
|
let L;
|
|
55
|
-
r[
|
|
61
|
+
r[22] !== A || r[23] !== j || r[24] !== M ? (L = {
|
|
56
62
|
pointerEvents: A,
|
|
57
63
|
padding: "0 10px",
|
|
58
64
|
backgroundColor: "inherit",
|
|
@@ -65,142 +71,140 @@ function d(t) {
|
|
|
65
71
|
"&::-webkit-scrollbar-track": P,
|
|
66
72
|
"&::-webkit-scrollbar-thumb": F,
|
|
67
73
|
"&::-webkit-scrollbar-thumb:hover": I
|
|
68
|
-
}, r[
|
|
74
|
+
}, r[22] = A, r[23] = j, r[24] = M, r[25] = L) : L = r[25];
|
|
69
75
|
let R = f ? "visible" : "hidden", z;
|
|
70
|
-
r[
|
|
76
|
+
r[26] === R ? z = r[27] : (z = {
|
|
71
77
|
visibility: R,
|
|
72
78
|
pointerEvents: "auto"
|
|
73
|
-
}, r[
|
|
74
|
-
let
|
|
75
|
-
r[
|
|
76
|
-
visibility:
|
|
79
|
+
}, r[26] = R, r[27] = z);
|
|
80
|
+
let B = f ? "visible" : "hidden", V;
|
|
81
|
+
r[28] === B ? V = r[29] : (V = {
|
|
82
|
+
visibility: B,
|
|
77
83
|
pointerEvents: "auto"
|
|
78
|
-
}, r[
|
|
79
|
-
let
|
|
80
|
-
r[
|
|
81
|
-
...
|
|
84
|
+
}, r[28] = B, r[29] = V);
|
|
85
|
+
let H;
|
|
86
|
+
r[30] !== L || r[31] !== z || r[32] !== V ? (H = {
|
|
87
|
+
...ce,
|
|
82
88
|
"& .MuiAutocomplete-inputRoot": L,
|
|
83
89
|
"& .MuiAutocomplete-clearIndicator": z,
|
|
84
|
-
"& .MuiAutocomplete-popupIndicator":
|
|
85
|
-
}, r[
|
|
86
|
-
let
|
|
87
|
-
r[
|
|
90
|
+
"& .MuiAutocomplete-popupIndicator": V
|
|
91
|
+
}, r[30] = L, r[31] = z, r[32] = V, r[33] = H) : H = r[33];
|
|
92
|
+
let U = H, W;
|
|
93
|
+
r[34] !== v || r[35] !== ge || r[36] !== u || r[37] !== b || r[38] !== be ? (W = (t, n, r) => {
|
|
94
|
+
b();
|
|
95
|
+
let i = n.map((t) => typeof t == "string" ? e(t, u) : t.value);
|
|
96
|
+
_e.current(i.length === 0 ? ge : i), ve(""), v.current || be(!1);
|
|
97
|
+
}, r[34] = v, r[35] = ge, r[36] = u, r[37] = b, r[38] = be, r[39] = W) : W = r[39];
|
|
98
|
+
let Ce = W, G;
|
|
99
|
+
r[40] !== u || r[41] !== g || r[42] !== T ? (G = () => {
|
|
100
|
+
if (g.trim()) {
|
|
101
|
+
let t = e(g, u);
|
|
102
|
+
_e.current([...T, t]), ve("");
|
|
103
|
+
}
|
|
104
|
+
}, r[40] = u, r[41] = g, r[42] = T, r[43] = G) : G = r[43];
|
|
105
|
+
let we = G, Te = f || T.length <= m, K;
|
|
106
|
+
r[44] === Symbol.for("react.memo_cache_sentinel") ? (K = {
|
|
88
107
|
width: "100%",
|
|
89
108
|
height: "100%",
|
|
90
109
|
overflow: "hidden"
|
|
91
|
-
}, r[
|
|
92
|
-
let
|
|
93
|
-
r[
|
|
94
|
-
|
|
95
|
-
}, r[
|
|
96
|
-
let
|
|
97
|
-
r[
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
v(!1), p({ nextRow: !1 });
|
|
103
|
-
}, r[35] = p, r[36] = J);
|
|
104
|
-
let Y;
|
|
105
|
-
r[37] !== h || r[38] !== d || r[39] !== c ? (Y = (t, n, r) => {
|
|
106
|
-
let i = (n || []).map((t) => typeof t == "string" ? e(t, d) : t.value);
|
|
107
|
-
c(i.length === 0 ? h : i), b("");
|
|
108
|
-
}, r[37] = h, r[38] = d, r[39] = c, r[40] = Y) : Y = r[40];
|
|
109
|
-
let _e = l.length > 1, X;
|
|
110
|
-
r[41] !== d || r[42] !== y || r[43] !== T || r[44] !== c ? (X = () => {
|
|
111
|
-
if (y.trim()) {
|
|
112
|
-
let t = e(y, d);
|
|
113
|
-
c([...T, t]), b("");
|
|
114
|
-
}
|
|
115
|
-
}, r[41] = d, r[42] = y, r[43] = T, r[44] = c, r[45] = X) : X = r[45];
|
|
116
|
-
let Z;
|
|
117
|
-
r[46] === f ? Z = r[47] : (Z = (e, t) => e.map((e, r) => {
|
|
118
|
-
let { key: i, ...a } = t({ index: r });
|
|
119
|
-
return /* @__PURE__ */ s(n, {
|
|
110
|
+
}, r[44] = K) : K = r[44];
|
|
111
|
+
let Ee = l.length > 0, q = !Se, J;
|
|
112
|
+
r[45] === Symbol.for("react.memo_cache_sentinel") ? (J = (e, t) => {
|
|
113
|
+
ve(t);
|
|
114
|
+
}, r[45] = J) : J = r[45];
|
|
115
|
+
let De = l.length > 1, Y;
|
|
116
|
+
r[46] === y ? Y = r[47] : (Y = { listbox: { onMouseDown: y } }, r[46] = y, r[47] = Y);
|
|
117
|
+
let X;
|
|
118
|
+
r[48] === f ? X = r[49] : (X = (e, t) => e.map((e, n) => {
|
|
119
|
+
let { key: r, ...a } = t({ index: n });
|
|
120
|
+
return /* @__PURE__ */ o(i, {
|
|
120
121
|
option: typeof e == "string" ? e : e.value,
|
|
121
122
|
active: f,
|
|
122
123
|
...a
|
|
123
|
-
},
|
|
124
|
-
}), r[
|
|
124
|
+
}, r);
|
|
125
|
+
}), r[48] = f, r[49] = X);
|
|
126
|
+
let Z;
|
|
127
|
+
r[50] === xe ? Z = r[51] : (Z = (e) => /* @__PURE__ */ o(ie, {
|
|
128
|
+
...e,
|
|
129
|
+
inputRef: xe,
|
|
130
|
+
slotProps: { input: {
|
|
131
|
+
...e.InputProps,
|
|
132
|
+
disableUnderline: !0,
|
|
133
|
+
sx: le
|
|
134
|
+
} }
|
|
135
|
+
}), r[50] = xe, r[51] = Z);
|
|
125
136
|
let Q;
|
|
126
|
-
r[
|
|
127
|
-
style:
|
|
128
|
-
children: /* @__PURE__ */
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
disableClearable: ge,
|
|
137
|
+
r[52] !== U || r[53] !== C || r[54] !== we || r[55] !== Ce || r[56] !== S || r[57] !== x || r[58] !== g || r[59] !== ye || r[60] !== w || r[61] !== E || r[62] !== Ee || r[63] !== q || r[64] !== De || r[65] !== Y || r[66] !== X || r[67] !== Z ? (Q = /* @__PURE__ */ o("div", {
|
|
138
|
+
style: K,
|
|
139
|
+
children: /* @__PURE__ */ o(re, {
|
|
140
|
+
forcePopupIcon: Ee,
|
|
141
|
+
disableClearable: q,
|
|
132
142
|
multiple: !0,
|
|
133
143
|
freeSolo: !0,
|
|
134
|
-
open:
|
|
135
|
-
onOpen:
|
|
144
|
+
open: ye,
|
|
145
|
+
onOpen: x,
|
|
136
146
|
disablePortal: !1,
|
|
137
147
|
limitTags: C,
|
|
138
148
|
options: w,
|
|
139
|
-
getOptionLabel:
|
|
140
|
-
isOptionEqualToValue:
|
|
149
|
+
getOptionLabel: fe,
|
|
150
|
+
isOptionEqualToValue: de,
|
|
141
151
|
value: E,
|
|
142
|
-
inputValue:
|
|
143
|
-
onInputChange:
|
|
144
|
-
onClose:
|
|
145
|
-
onChange:
|
|
146
|
-
disableCloseOnSelect:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
152
|
+
inputValue: g,
|
|
153
|
+
onInputChange: J,
|
|
154
|
+
onClose: S,
|
|
155
|
+
onChange: Ce,
|
|
156
|
+
disableCloseOnSelect: De,
|
|
157
|
+
slotProps: Y,
|
|
158
|
+
onBlur: we,
|
|
159
|
+
renderValue: X,
|
|
160
|
+
renderInput: Z,
|
|
161
|
+
sx: U
|
|
151
162
|
})
|
|
152
|
-
}), r[
|
|
163
|
+
}), r[52] = U, r[53] = C, r[54] = we, r[55] = Ce, r[56] = S, r[57] = x, r[58] = g, r[59] = ye, r[60] = w, r[61] = E, r[62] = Ee, r[63] = q, r[64] = De, r[65] = Y, r[66] = X, r[67] = Z, r[68] = Q) : Q = r[68];
|
|
153
164
|
let $;
|
|
154
|
-
return r[
|
|
165
|
+
return r[69] !== Te || r[70] !== Q || r[71] !== O ? ($ = /* @__PURE__ */ o(ae, {
|
|
155
166
|
title: O,
|
|
156
167
|
placement: "top-start",
|
|
157
168
|
arrow: !0,
|
|
158
169
|
enterDelay: 500,
|
|
159
|
-
disableHoverListener:
|
|
170
|
+
disableHoverListener: Te,
|
|
160
171
|
children: Q
|
|
161
|
-
}), r[
|
|
172
|
+
}), r[69] = Te, r[70] = Q, r[71] = O, r[72] = $) : $ = r[72], $;
|
|
162
173
|
}
|
|
163
|
-
function
|
|
164
|
-
return
|
|
165
|
-
...e,
|
|
166
|
-
slotProps: { input: {
|
|
167
|
-
...e.InputProps,
|
|
168
|
-
disableUnderline: !0,
|
|
169
|
-
sx: l
|
|
170
|
-
} }
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
function ce(e, t) {
|
|
174
|
-
return c(typeof e == "string" ? e : e.value, typeof t == "string" ? t : t.value);
|
|
174
|
+
function de(e, t) {
|
|
175
|
+
return s(typeof e == "string" ? e : e.value, typeof t == "string" ? t : t.value);
|
|
175
176
|
}
|
|
176
|
-
function
|
|
177
|
+
function fe(e) {
|
|
177
178
|
return typeof e == "string" ? e : e.label;
|
|
178
179
|
}
|
|
179
|
-
function
|
|
180
|
-
return
|
|
180
|
+
function pe(e) {
|
|
181
|
+
return r(e);
|
|
182
|
+
}
|
|
183
|
+
function u(e, t) {
|
|
184
|
+
return n(e, t) && e.limitTags === t.limitTags;
|
|
181
185
|
}
|
|
182
|
-
var
|
|
183
|
-
function f({ choices:
|
|
186
|
+
var d = a(l, u);
|
|
187
|
+
function f({ choices: t, colType: n, limitTags: i = 2, dynamicHeight: a = !1, clearValue: ee = void 0 }) {
|
|
184
188
|
return {
|
|
185
|
-
component: ((e) => /* @__PURE__ */
|
|
189
|
+
component: ((e) => /* @__PURE__ */ o(d, {
|
|
186
190
|
...e,
|
|
187
|
-
choices:
|
|
188
|
-
colType:
|
|
191
|
+
choices: t,
|
|
192
|
+
colType: n,
|
|
189
193
|
limitTags: i,
|
|
190
194
|
clearValue: ee
|
|
191
195
|
})),
|
|
192
|
-
copyValue: ({ rowData: e }) =>
|
|
196
|
+
copyValue: ({ rowData: e }) => c(e).map((e) => r(e)).join(","),
|
|
193
197
|
pasteValue: ({ value: t }) => {
|
|
194
198
|
if (typeof t != "string") return t;
|
|
195
|
-
let
|
|
196
|
-
return
|
|
199
|
+
let r = t.split(/[,\t]/).map((e) => e.trim()).filter((e) => e.length > 0).map((t) => e(t, n)).filter((e) => e != null);
|
|
200
|
+
return r.length > 0 ? r : ee;
|
|
197
201
|
},
|
|
198
202
|
disableKeys: !0,
|
|
199
203
|
keepFocus: !0,
|
|
200
|
-
...a && { cellClassName: ({ rowData: e }) =>
|
|
204
|
+
...a && { cellClassName: ({ rowData: e }) => c(e).length > 3 ? "multi-value-cell-large" : "multi-value-cell" }
|
|
201
205
|
};
|
|
202
206
|
}
|
|
203
207
|
//#endregion
|
|
204
|
-
export { f as autocompleteMultipleEnumColumn };
|
|
208
|
+
export { u as areAutocompleteMultipleEnumCellPropsEqual, f as autocompleteMultipleEnumColumn };
|
|
205
209
|
|
|
206
210
|
//# sourceMappingURL=AutocompleteMultipleEnumColumn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutocompleteMultipleEnumColumn.js","names":["parseFreeTextGivenJsonSchemaType","Autocomplete","SxProps","TextField","Theme","Tooltip","JSONSchema7Type","memo","useEffect","useMemo","useRef","useState","CellComponent","Column","AutocompleteCellProps","castCellValueToString","AutocompleteOption","GridAutocompleteChip","isNil","isEqual","AUTOCOMPLETE_MULTIPLE_BASE_SX","width","height","margin","visibility","TEXT_FIELD_SX","padding","backgroundColor","borderRadius","AutocompleteMultipleEnumOption","AutocompleteMultipleEnumCellProps","Omit","choices","limitTags","clearValue","EnumOption","label","value","createOptionFromValue","createSafeRowData","rowData","Array","isArray","AutocompleteMultipleEnumCell","t0","$","_c","setRowData","colType","t1","active","focus","stopEditing","t2","undefined","ref","menuIsOpen","setMenuIsOpen","localInputState","setLocalInputState","t3","t4","current","blur","effectiveLimitTags","optionsWithLabels","safeRowData","selectedOptions","t5","t6","map","length","_temp","join","tooltipContent","hasValue","t7","t8","t9","t10","t11","t12","t13","Symbol","for","background","t14","pointerEvents","flexWrap","minHeight","maxHeight","overflowY","overflowX","t15","t16","t17","t18","t19","autocompleteSx","t20","t21","overflow","t22","t23","t24","t25","_","newInputValue","t26","nextRow","t27","_e","newVal","_reason","values","item_0","item","t28","t29","trim","parsedValue","t30","tagValue","getTagProps","option_1","index","key","tagProps","optionValue_0","option","optionValue","t31","_temp2","_temp3","_temp4","t32","params","input","InputProps","disableUnderline","sx","option_0","valueValue","MemoizedAutocompleteMultipleEnumCell","prevProps","nextProps","AutocompleteMultipleEnumColumnProps","dynamicHeight","autocompleteMultipleEnumColumn","Partial","component","props","copyValue","pasteValue","delimiters","parsedValues","split","filter","disableKeys","keepFocus","cellClassName"],"sources":["../../../../src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx"],"sourcesContent":["import parseFreeTextGivenJsonSchemaType from '@/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType'\nimport { Autocomplete, SxProps, TextField, Theme, Tooltip } from '@mui/material'\nimport { JSONSchema7Type } from 'json-schema'\nimport { memo, useEffect, useMemo, useRef, useState } from 'react'\nimport { CellComponent, Column } from '@sage-bionetworks/react-datasheet-grid'\nimport {\n AutocompleteCellProps,\n castCellValueToString,\n AutocompleteOption,\n} from './AutocompleteColumn'\nimport { GridAutocompleteChip } from './GridAutocompleteChip'\nimport isNil from 'lodash-es/isNil'\nimport isEqual from 'lodash-es/isEqual'\n\n// Static styles extracted to avoid recreation on every render\nconst AUTOCOMPLETE_MULTIPLE_BASE_SX: SxProps<Theme> = {\n width: '100%',\n height: '100%',\n '& .MuiFormControl-root': {\n height: '100%',\n },\n '& .MuiAutocomplete-tag': {\n margin: '1px',\n },\n '&:hover .MuiAutocomplete-clearIndicator': {\n visibility: 'visible',\n },\n '&:hover .MuiAutocomplete-popupIndicator': {\n visibility: 'visible',\n },\n}\n\nconst TEXT_FIELD_SX: SxProps<Theme> = {\n height: '100%',\n padding: '0 10px',\n backgroundColor: 'inherit',\n borderRadius: 0,\n}\n\nexport type AutocompleteMultipleEnumOption =\n | AutocompleteOption\n | unknown\n | unknown[]\n\nexport type AutocompleteMultipleEnumCellProps = Omit<\n AutocompleteCellProps,\n 'choices'\n> & {\n choices: AutocompleteMultipleEnumOption[]\n limitTags?: number\n clearValue?: undefined | null\n}\n\ntype EnumOption = {\n label: string\n value: AutocompleteMultipleEnumOption\n}\n\nfunction createOptionFromValue(\n value: AutocompleteMultipleEnumOption,\n): EnumOption {\n return {\n label: castCellValueToString(value),\n value: value,\n }\n}\n\nfunction createSafeRowData(\n rowData: AutocompleteMultipleEnumOption,\n): AutocompleteMultipleEnumOption[] {\n if (Array.isArray(rowData)) {\n return rowData\n } else if (isNil(rowData)) {\n return []\n } else {\n return [rowData]\n }\n}\n\nfunction AutocompleteMultipleEnumCell({\n rowData,\n setRowData,\n choices,\n colType,\n limitTags = 2,\n active,\n focus,\n stopEditing,\n clearValue = undefined,\n}: AutocompleteMultipleEnumCellProps) {\n const ref = useRef<HTMLInputElement>(null)\n const [menuIsOpen, setMenuIsOpen] = useState(false)\n const [localInputState, setLocalInputState] = useState<string>('')\n\n useEffect(() => {\n // Treat `active` as the source of truth for focus/blur and menu state\n // If we listen to Autocomplete's onBlur, it will fire when selecting an option from the dropdown,\n // in which case we do not want to update rowData\n if (active) {\n ref.current?.focus()\n } else {\n setMenuIsOpen(false)\n ref.current?.blur()\n }\n }, [active])\n\n const safeRowData = createSafeRowData(rowData)\n const optionsWithLabels = choices.map(createOptionFromValue)\n const selectedOptions = safeRowData.map(createOptionFromValue)\n const effectiveLimitTags = active ? -1 : limitTags\n\n // Create tooltip content showing all values\n const tooltipContent =\n safeRowData.length > 0\n ? safeRowData.map(item => castCellValueToString(item)).join(',')\n : ''\n\n const hasValue = !isNil(rowData) && rowData !== ''\n\n // Memoize sx to avoid recreation - dynamic styles change based on active/focus state\n const autocompleteSx = useMemo<SxProps<Theme>>(\n () => ({\n ...AUTOCOMPLETE_MULTIPLE_BASE_SX,\n '& .MuiAutocomplete-inputRoot': {\n pointerEvents: focus ? undefined : 'none',\n padding: '0 10px',\n backgroundColor: 'inherit',\n // Allow tags to wrap and enable scrolling\n flexWrap: active ? 'wrap' : 'nowrap',\n minHeight: '100%',\n maxHeight: '100%',\n overflowY: active ? 'auto' : 'hidden',\n overflowX: 'hidden',\n '&::-webkit-scrollbar': {\n width: '6px',\n height: '6px',\n },\n '&::-webkit-scrollbar-track': {\n background: 'transparent',\n },\n '&::-webkit-scrollbar-thumb': {\n background: '#888',\n borderRadius: '3px',\n },\n '&::-webkit-scrollbar-thumb:hover': {\n background: '#555',\n },\n },\n '& .MuiAutocomplete-clearIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n '& .MuiAutocomplete-popupIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n }),\n [active, focus],\n )\n\n return (\n <Tooltip\n title={tooltipContent}\n placement=\"top-start\"\n arrow\n enterDelay={500}\n disableHoverListener={active || safeRowData.length <= limitTags}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n }}\n >\n <Autocomplete\n ref={ref}\n forcePopupIcon={choices.length > 0}\n disableClearable={!hasValue}\n multiple\n freeSolo\n open={menuIsOpen}\n onOpen={() => {\n setMenuIsOpen(true)\n }}\n disablePortal={false}\n limitTags={effectiveLimitTags}\n options={optionsWithLabels}\n getOptionLabel={option => {\n // Handle both string (for freeSolo) and object options\n return typeof option === 'string' ? option : option.label\n }}\n isOptionEqualToValue={(option, value) => {\n // Compare the actual values, not labels\n const optionValue =\n typeof option === 'string' ? option : option.value\n const valueValue = typeof value === 'string' ? value : value.value\n return isEqual(optionValue, valueValue)\n }}\n value={selectedOptions}\n inputValue={localInputState}\n onInputChange={(_, newInputValue) => {\n setLocalInputState(newInputValue)\n }}\n onClose={() => {\n setMenuIsOpen(false)\n stopEditing({ nextRow: false })\n }}\n onChange={(_e, newVal, _reason) => {\n // Handle both selection/deselection and free text creation the same way\n const values = (newVal || []).map(item => {\n return typeof item === 'string'\n ? parseFreeTextGivenJsonSchemaType(item, colType)\n : item.value\n })\n // Use clearValue when all items are removed\n setRowData(values.length === 0 ? clearValue : values)\n setLocalInputState('')\n }}\n disableCloseOnSelect={choices.length > 1}\n onBlur={() => {\n if (localInputState.trim()) {\n const parsedValue = parseFreeTextGivenJsonSchemaType(\n localInputState,\n colType,\n )\n setRowData([...safeRowData, parsedValue])\n setLocalInputState('')\n }\n }}\n renderValue={(tagValue, getTagProps) =>\n tagValue.map((option, index) => {\n const { key, ...tagProps } = getTagProps({ index })\n const optionValue =\n typeof option === 'string' ? option : option.value\n return (\n <GridAutocompleteChip\n key={key}\n option={optionValue}\n active={active}\n {...tagProps}\n />\n )\n })\n }\n renderInput={params => (\n <TextField\n {...params}\n slotProps={{\n input: {\n ...params.InputProps,\n disableUnderline: true,\n sx: TEXT_FIELD_SX,\n },\n }}\n />\n )}\n sx={autocompleteSx}\n />\n </div>\n </Tooltip>\n )\n}\n\n// Memoize the cell component to prevent unnecessary re-renders\n// Custom comparison function that ignores function prop identity changes\n// since the grid library recreates them on each render but their behavior is stable\nconst MemoizedAutocompleteMultipleEnumCell = memo(\n AutocompleteMultipleEnumCell,\n (prevProps, nextProps) => {\n // Compare all non-function props that represent actual state changes\n return (\n prevProps.active === nextProps.active &&\n prevProps.focus === nextProps.focus &&\n prevProps.rowData === nextProps.rowData &&\n prevProps.choices === nextProps.choices &&\n prevProps.colType === nextProps.colType &&\n prevProps.limitTags === nextProps.limitTags &&\n prevProps.clearValue === nextProps.clearValue\n // Note: We intentionally skip comparing stopEditing and setRowData\n // These are recreated by react-datasheet-grid on every render but their\n // behavior remains functionally identical for the same cell position.\n // Comparing them would defeat the purpose of memoization.\n )\n },\n)\n\nexport type AutocompleteMultipleEnumColumnProps = {\n choices: AutocompleteMultipleEnumOption[]\n colType?: JSONSchema7Type\n limitTags?: number\n dynamicHeight?: boolean\n clearValue?: undefined | null\n}\n\nexport function autocompleteMultipleEnumColumn({\n choices,\n colType,\n limitTags = 2,\n dynamicHeight = false,\n clearValue = undefined,\n}: AutocompleteMultipleEnumColumnProps): Partial<Column> {\n return {\n component: ((\n props: Omit<AutocompleteMultipleEnumCellProps, 'choices' | 'limitTags'>,\n ) => (\n <MemoizedAutocompleteMultipleEnumCell\n {...props}\n choices={choices}\n colType={colType}\n limitTags={limitTags}\n clearValue={clearValue}\n />\n )) as CellComponent,\n copyValue: ({ rowData }) => {\n // Convert array to comma-separated string\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.map(item => castCellValueToString(item)).join(',')\n },\n pasteValue: ({ value }) => {\n if (typeof value !== 'string') {\n return value\n }\n\n // Split by comma or tab and clean up values\n const delimiters = /[,\\t]/\n const parsedValues = value\n .split(delimiters)\n .map(item => item.trim())\n .filter(item => item.length > 0)\n .map(item => parseFreeTextGivenJsonSchemaType(item, colType))\n .filter(item => item !== null && item !== undefined)\n\n return parsedValues.length > 0 ? parsedValues : []\n },\n disableKeys: true,\n keepFocus: true,\n ...(dynamicHeight && {\n cellClassName: ({ rowData }) => {\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.length > 3\n ? 'multi-value-cell-large'\n : 'multi-value-cell'\n },\n }),\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutocompleteMultipleEnumColumn.js","names":["parseFreeTextGivenJsonSchemaType","Autocomplete","AutocompleteChangeReason","SxProps","TextField","Theme","Tooltip","JSONSchema7Type","memo","useCallback","useLayoutEffect","useMemo","useRef","useState","CellComponent","Column","areAutocompleteCellPropsEqual","AutocompleteCellProps","castCellValueToString","AutocompleteOption","GridAutocompleteChip","isNil","isEqual","useGridAutocompleteState","AUTOCOMPLETE_MULTIPLE_BASE_SX","width","height","margin","visibility","TEXT_FIELD_SX","padding","backgroundColor","borderRadius","AutocompleteMultipleEnumOption","AutocompleteMultipleEnumCellProps","Omit","choices","limitTags","clearValue","EnumOption","label","value","createOptionFromValue","createSafeRowData","rowData","Array","isArray","AutocompleteMultipleEnumCell","t0","$","_c","setRowData","colType","t1","active","focus","stopEditing","t2","undefined","setRowDataRef","t3","current","localInputState","setLocalInputState","t4","menuIsOpen","setMenuIsOpen","inputRef","activeRef","handleListboxMouseDown","notifyOptionCommitted","handleMenuOpen","handleClose","effectiveLimitTags","optionsWithLabels","safeRowData","selectedOptions","t5","t6","map","length","_temp","join","tooltipContent","hasValue","t7","t8","t9","t10","t11","t12","t13","Symbol","for","background","t14","pointerEvents","flexWrap","minHeight","maxHeight","overflowY","overflowX","t15","t16","t17","t18","t19","autocompleteSx","t20","_e","newVal","_reason","values","item_0","item","handleChange","t21","trim","parsedValue","handleBlur","t22","t23","overflow","t24","t25","t26","_","newInputValue","t27","t28","listbox","onMouseDown","t29","tagValue","getTagProps","option_1","index","key","tagProps","optionValue_0","option","optionValue","t30","params","input","InputProps","disableUnderline","sx","t31","_temp2","_temp3","t32","option_0","valueValue","areAutocompleteMultipleEnumCellPropsEqual","prevProps","nextProps","MemoizedAutocompleteMultipleEnumCell","AutocompleteMultipleEnumColumnProps","dynamicHeight","autocompleteMultipleEnumColumn","Partial","component","props","copyValue","pasteValue","delimiters","parsedValues","split","filter","disableKeys","keepFocus","cellClassName"],"sources":["../../../../src/components/DataGrid/columns/AutocompleteMultipleEnumColumn.tsx"],"sourcesContent":["import parseFreeTextGivenJsonSchemaType from '@/components/DataGrid/utils/parseFreeTextUsingJsonSchemaType'\nimport {\n Autocomplete,\n AutocompleteChangeReason,\n SxProps,\n TextField,\n Theme,\n Tooltip,\n} from '@mui/material'\nimport { JSONSchema7Type } from 'json-schema'\nimport {\n memo,\n useCallback,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\nimport { CellComponent, Column } from '@sage-bionetworks/react-datasheet-grid'\nimport {\n areAutocompleteCellPropsEqual,\n AutocompleteCellProps,\n castCellValueToString,\n AutocompleteOption,\n} from './AutocompleteColumn'\nimport { GridAutocompleteChip } from './GridAutocompleteChip'\nimport isNil from 'lodash-es/isNil'\nimport isEqual from 'lodash-es/isEqual'\nimport { useGridAutocompleteState } from './useGridAutocompleteState'\n\n// Static styles extracted to avoid recreation on every render\nconst AUTOCOMPLETE_MULTIPLE_BASE_SX: SxProps<Theme> = {\n width: '100%',\n height: '100%',\n '& .MuiFormControl-root': {\n height: '100%',\n },\n '& .MuiAutocomplete-tag': {\n margin: '1px',\n },\n '&:hover .MuiAutocomplete-clearIndicator': {\n visibility: 'visible',\n },\n '&:hover .MuiAutocomplete-popupIndicator': {\n visibility: 'visible',\n },\n}\n\nconst TEXT_FIELD_SX: SxProps<Theme> = {\n height: '100%',\n padding: '0 10px',\n backgroundColor: 'inherit',\n borderRadius: 0,\n}\n\nexport type AutocompleteMultipleEnumOption = AutocompleteOption\n\nexport type AutocompleteMultipleEnumCellProps = Omit<\n AutocompleteCellProps,\n 'choices'\n> & {\n choices: AutocompleteMultipleEnumOption[]\n limitTags?: number\n clearValue?: undefined | null\n}\n\ntype EnumOption = {\n label: string\n value: AutocompleteMultipleEnumOption\n}\n\nfunction createOptionFromValue(\n value: AutocompleteMultipleEnumOption,\n): EnumOption {\n return {\n label: castCellValueToString(value),\n value: value,\n }\n}\n\nfunction createSafeRowData(\n rowData: AutocompleteMultipleEnumOption,\n): AutocompleteMultipleEnumOption[] {\n if (Array.isArray(rowData)) {\n return rowData as AutocompleteMultipleEnumOption[]\n } else if (isNil(rowData)) {\n return []\n } else {\n return [rowData]\n }\n}\n\nfunction AutocompleteMultipleEnumCell({\n rowData,\n setRowData,\n choices,\n colType,\n limitTags = 2,\n active,\n focus,\n stopEditing,\n clearValue = undefined,\n}: AutocompleteMultipleEnumCellProps) {\n // Stable refs so memo(AutocompleteMultipleEnumCell) can use default shallow\n // comparison — react-datasheet-grid recreates these functions on every render,\n // but their behavior is stable for a given cell position.\n const setRowDataRef = useRef(setRowData)\n useLayoutEffect(() => {\n setRowDataRef.current = setRowData\n })\n const [localInputState, setLocalInputState] = useState<string>('')\n\n const {\n menuIsOpen,\n setMenuIsOpen,\n inputRef,\n activeRef,\n handleListboxMouseDown,\n notifyOptionCommitted,\n handleMenuOpen,\n handleClose,\n } = useGridAutocompleteState({ active, stopEditing })\n\n const safeRowData = createSafeRowData(rowData)\n const optionsWithLabels = choices.map(createOptionFromValue)\n const selectedOptions = safeRowData.map(createOptionFromValue)\n const effectiveLimitTags = active ? -1 : limitTags\n\n // Create tooltip content showing all values\n const tooltipContent =\n safeRowData.length > 0\n ? safeRowData.map(item => castCellValueToString(item)).join(',')\n : ''\n\n const hasValue = !isNil(rowData) && rowData !== ''\n\n // Memoize sx to avoid recreation — dynamic styles change based on active/focus state\n const autocompleteSx = useMemo<SxProps<Theme>>(\n () => ({\n ...AUTOCOMPLETE_MULTIPLE_BASE_SX,\n '& .MuiAutocomplete-inputRoot': {\n pointerEvents: focus ? undefined : 'none',\n padding: '0 10px',\n backgroundColor: 'inherit',\n // Allow tags to wrap and enable scrolling\n flexWrap: active ? 'wrap' : 'nowrap',\n minHeight: '100%',\n maxHeight: '100%',\n overflowY: active ? 'auto' : 'hidden',\n overflowX: 'hidden',\n '&::-webkit-scrollbar': {\n width: '6px',\n height: '6px',\n },\n '&::-webkit-scrollbar-track': {\n background: 'transparent',\n },\n '&::-webkit-scrollbar-thumb': {\n background: '#888',\n borderRadius: '3px',\n },\n '&::-webkit-scrollbar-thumb:hover': {\n background: '#555',\n },\n },\n '& .MuiAutocomplete-clearIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n '& .MuiAutocomplete-popupIndicator': {\n visibility: active ? 'visible' : 'hidden',\n pointerEvents: 'auto',\n },\n }),\n [active, focus],\n )\n\n const handleChange = useCallback(\n (\n _e: React.SyntheticEvent,\n newVal: (EnumOption | string)[],\n _reason: AutocompleteChangeReason,\n ) => {\n notifyOptionCommitted()\n const values = newVal.map(item => {\n return typeof item === 'string'\n ? parseFreeTextGivenJsonSchemaType(item, colType)\n : item.value\n })\n // Use clearValue when all items are removed\n setRowDataRef.current(values.length === 0 ? clearValue : values)\n setLocalInputState('')\n if (!activeRef.current) {\n // The cell was deactivated while the option click was in progress (portal\n // click was seen as an outside click by the grid). Now that the value is\n // committed, close the menu.\n setMenuIsOpen(false)\n }\n },\n [activeRef, clearValue, colType, notifyOptionCommitted, setMenuIsOpen],\n )\n\n const handleBlur = useCallback(() => {\n if (localInputState.trim()) {\n const parsedValue = parseFreeTextGivenJsonSchemaType(\n localInputState,\n colType,\n )\n setRowDataRef.current([...safeRowData, parsedValue])\n setLocalInputState('')\n }\n }, [localInputState, colType, safeRowData])\n\n return (\n <Tooltip\n title={tooltipContent}\n placement=\"top-start\"\n arrow\n enterDelay={500}\n disableHoverListener={active || safeRowData.length <= limitTags}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n }}\n >\n <Autocomplete\n forcePopupIcon={choices.length > 0}\n disableClearable={!hasValue}\n multiple\n freeSolo\n open={menuIsOpen}\n onOpen={handleMenuOpen}\n disablePortal={false}\n limitTags={effectiveLimitTags}\n options={optionsWithLabels}\n getOptionLabel={option => {\n // Handle both string (for freeSolo) and object options\n return typeof option === 'string' ? option : option.label\n }}\n isOptionEqualToValue={(option, value) => {\n // Compare the actual values, not labels\n const optionValue =\n typeof option === 'string' ? option : option.value\n const valueValue = typeof value === 'string' ? value : value.value\n return isEqual(optionValue, valueValue)\n }}\n value={selectedOptions}\n inputValue={localInputState}\n onInputChange={(_, newInputValue) => {\n setLocalInputState(newInputValue)\n }}\n onClose={handleClose}\n onChange={handleChange}\n disableCloseOnSelect={choices.length > 1}\n slotProps={{\n listbox: { onMouseDown: handleListboxMouseDown },\n }}\n onBlur={handleBlur}\n renderValue={(tagValue, getTagProps) =>\n tagValue.map((option, index) => {\n const { key, ...tagProps } = getTagProps({ index })\n const optionValue =\n typeof option === 'string' ? option : option.value\n return (\n <GridAutocompleteChip\n key={key}\n option={optionValue}\n active={active}\n {...tagProps}\n />\n )\n })\n }\n renderInput={params => (\n <TextField\n {...params}\n inputRef={inputRef}\n slotProps={{\n input: {\n ...params.InputProps,\n disableUnderline: true,\n sx: TEXT_FIELD_SX,\n },\n }}\n />\n )}\n sx={autocompleteSx}\n />\n </div>\n </Tooltip>\n )\n}\n\n// Memoize the cell component to prevent unnecessary re-renders.\n// react-datasheet-grid provides new setRowData/stopEditing function instances\n// on each render, so we must ignore those callback identities here and only\n// compare the props that affect rendering.\nexport function areAutocompleteMultipleEnumCellPropsEqual(\n prevProps: AutocompleteMultipleEnumCellProps,\n nextProps: AutocompleteMultipleEnumCellProps,\n) {\n return (\n areAutocompleteCellPropsEqual(prevProps, nextProps) &&\n prevProps.limitTags === nextProps.limitTags\n )\n}\n\nconst MemoizedAutocompleteMultipleEnumCell = memo(\n AutocompleteMultipleEnumCell,\n areAutocompleteMultipleEnumCellPropsEqual,\n)\n\nexport type AutocompleteMultipleEnumColumnProps = {\n choices: AutocompleteMultipleEnumOption[]\n colType?: JSONSchema7Type\n limitTags?: number\n dynamicHeight?: boolean\n clearValue?: undefined | null\n}\n\nexport function autocompleteMultipleEnumColumn({\n choices,\n colType,\n limitTags = 2,\n dynamicHeight = false,\n clearValue = undefined,\n}: AutocompleteMultipleEnumColumnProps): Partial<Column> {\n return {\n component: ((\n props: Omit<AutocompleteMultipleEnumCellProps, 'choices' | 'limitTags'>,\n ) => (\n <MemoizedAutocompleteMultipleEnumCell\n {...props}\n choices={choices}\n colType={colType}\n limitTags={limitTags}\n clearValue={clearValue}\n />\n )) as CellComponent,\n copyValue: ({ rowData }) => {\n // Convert array to comma-separated string\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.map(item => castCellValueToString(item)).join(',')\n },\n pasteValue: ({ value }) => {\n if (typeof value !== 'string') {\n return value\n }\n\n // Split by comma or tab and clean up values\n const delimiters = /[,\\t]/\n const parsedValues = value\n .split(delimiters)\n .map(item => item.trim())\n .filter(item => item.length > 0)\n .map(item => parseFreeTextGivenJsonSchemaType(item, colType))\n .filter(item => item !== null && item !== undefined)\n\n // When no values remain, use clearValue (null for required, undefined for\n // optional) so paste and the X-clear button converge on the same\n // in-model representation instead of [].\n // Note: columnFactory also wraps this pasteValue with\n // wrapPasteValueWithSchemaCoercion, which is a no-op here because\n // coerceModelCellValue does not coerce empty arrays — this layer is the\n // one responsible for the [] → clearValue conversion.\n return parsedValues.length > 0 ? parsedValues : clearValue\n },\n disableKeys: true,\n keepFocus: true,\n ...(dynamicHeight && {\n cellClassName: ({ rowData }) => {\n const safeRowData = createSafeRowData(rowData)\n return safeRowData.length > 3\n ? 'multi-value-cell-large'\n : 'multi-value-cell'\n },\n }),\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type UseGridAutocompleteStateProps = {
|
|
2
|
+
active: boolean;
|
|
3
|
+
/**
|
|
4
|
+
* `stopEditing` from react-datasheet-grid's CellProps. The hook ref-stabilizes
|
|
5
|
+
* this internally, so callers can pass it directly without memoizing.
|
|
6
|
+
*/
|
|
7
|
+
stopEditing?: (opts?: {
|
|
8
|
+
nextRow: boolean;
|
|
9
|
+
}) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Called when the cell transitions from active to inactive and there is no
|
|
12
|
+
* pending option click in progress (i.e. the portal-click guard is not set).
|
|
13
|
+
* Store any free-text commit logic here. The callback is ref-stabilized inside
|
|
14
|
+
* the hook, so it may freely capture local state without becoming a stale closure.
|
|
15
|
+
*/
|
|
16
|
+
onDeactivate?: () => void;
|
|
17
|
+
};
|
|
18
|
+
export type UseGridAutocompleteStateReturn = {
|
|
19
|
+
menuIsOpen: boolean;
|
|
20
|
+
setMenuIsOpen: (open: boolean) => void;
|
|
21
|
+
/** Ref to attach to the focusable input element for programmatic focus/blur. */
|
|
22
|
+
inputRef: React.RefObject<HTMLInputElement | null>;
|
|
23
|
+
/**
|
|
24
|
+
* Always reflects the current `active` value. Safe to read inside event
|
|
25
|
+
* handler closures (e.g. onChange) without a stale capture.
|
|
26
|
+
*/
|
|
27
|
+
activeRef: React.RefObject<boolean>;
|
|
28
|
+
/** Pass to `slotProps.listbox.onMouseDown` on the MUI Autocomplete. */
|
|
29
|
+
handleListboxMouseDown: (event: React.MouseEvent) => void;
|
|
30
|
+
/**
|
|
31
|
+
* Call at the top of every `onChange` handler to signal that a pending
|
|
32
|
+
* option click has been committed. Clears the portal-click guard so that
|
|
33
|
+
* subsequent active→false transitions can proceed normally.
|
|
34
|
+
*/
|
|
35
|
+
notifyOptionCommitted: () => void;
|
|
36
|
+
/** Pass to the Autocomplete `onOpen` prop. */
|
|
37
|
+
handleMenuOpen: () => void;
|
|
38
|
+
/**
|
|
39
|
+
* Pass to the Autocomplete `onClose` prop. Clears the portal-click guard and
|
|
40
|
+
* closes the menu, then stops editing without advancing to the next row.
|
|
41
|
+
*/
|
|
42
|
+
handleClose: () => void;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Manages the shared focus/blur/menu state needed by grid autocomplete cell
|
|
46
|
+
* components that are built on top of react-datasheet-grid.
|
|
47
|
+
*
|
|
48
|
+
* Both AutocompleteColumn and AutocompleteMultipleEnumColumn use the same
|
|
49
|
+
* three-part pattern:
|
|
50
|
+
* 1. When `active` becomes true → focus the input.
|
|
51
|
+
* 2. When `active` becomes false with no pending option click → blur + close menu.
|
|
52
|
+
* 3. The dropdown renders in a portal outside the grid cell. react-datasheet-grid
|
|
53
|
+
* sees the mousedown as an outside click and fires active=false before onClick
|
|
54
|
+
* → onChange. The `optionMouseDownRef` guard defers step 2 until the click
|
|
55
|
+
* completes and onChange resets the ref.
|
|
56
|
+
*/
|
|
57
|
+
export declare function useGridAutocompleteState({ active, stopEditing, onDeactivate, }: UseGridAutocompleteStateProps): UseGridAutocompleteStateReturn;
|
|
58
|
+
//# sourceMappingURL=useGridAutocompleteState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGridAutocompleteState.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/columns/useGridAutocompleteState.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,OAAO,CAAA;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACnD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,IAAI,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,OAAO,CAAA;IACnB,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,gFAAgF;IAChF,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAClD;;;OAGG;IACH,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IACnC,uEAAuE;IACvE,sBAAsB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACzD;;;;OAIG;IACH,qBAAqB,EAAE,MAAM,IAAI,CAAA;IACjC,8CAA8C;IAC9C,cAAc,EAAE,MAAM,IAAI,CAAA;IAC1B;;;OAGG;IACH,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,MAAM,EACN,WAAW,EACX,YAAY,GACb,EAAE,6BAA6B,GAAG,8BAA8B,CA2EhE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { useEffect as e, useLayoutEffect as t, useRef as n, useState as r } from "react";
|
|
2
|
+
import { c as i } from "react/compiler-runtime";
|
|
3
|
+
//#region src/components/DataGrid/columns/useGridAutocompleteState.ts
|
|
4
|
+
function a(a) {
|
|
5
|
+
let o = i(15), { active: s, stopEditing: c, onDeactivate: l } = a, u = n(null), [d, f] = r(!1), p = n(!1), m = n(s), h;
|
|
6
|
+
o[0] === s ? h = o[1] : (h = () => {
|
|
7
|
+
m.current = s;
|
|
8
|
+
}, o[0] = s, o[1] = h), t(h);
|
|
9
|
+
let g = n(l), _;
|
|
10
|
+
o[2] === l ? _ = o[3] : (_ = () => {
|
|
11
|
+
g.current = l;
|
|
12
|
+
}, o[2] = l, o[3] = _), t(_);
|
|
13
|
+
let v = n(c), y;
|
|
14
|
+
o[4] === c ? y = o[5] : (y = () => {
|
|
15
|
+
v.current = c;
|
|
16
|
+
}, o[4] = c, o[5] = y), t(y);
|
|
17
|
+
let b, x;
|
|
18
|
+
o[6] === s ? (b = o[7], x = o[8]) : (b = () => {
|
|
19
|
+
s ? u.current?.focus() : p.current || (f(!1), u.current?.blur(), g.current?.());
|
|
20
|
+
}, x = [s], o[6] = s, o[7] = b, o[8] = x), e(b, x);
|
|
21
|
+
let S;
|
|
22
|
+
o[9] === Symbol.for("react.memo_cache_sentinel") ? (S = (e) => {
|
|
23
|
+
e.preventDefault(), e.target.closest("[role=\"option\"]") && (p.current = !0);
|
|
24
|
+
}, o[9] = S) : S = o[9];
|
|
25
|
+
let C = S, w;
|
|
26
|
+
o[10] === Symbol.for("react.memo_cache_sentinel") ? (w = () => {
|
|
27
|
+
p.current = !1;
|
|
28
|
+
}, o[10] = w) : w = o[10];
|
|
29
|
+
let T = w, E;
|
|
30
|
+
o[11] === Symbol.for("react.memo_cache_sentinel") ? (E = () => {
|
|
31
|
+
f(!0);
|
|
32
|
+
}, o[11] = E) : E = o[11];
|
|
33
|
+
let D = E, O;
|
|
34
|
+
o[12] === Symbol.for("react.memo_cache_sentinel") ? (O = () => {
|
|
35
|
+
p.current = !1, f(!1), v.current?.({ nextRow: !1 });
|
|
36
|
+
}, o[12] = O) : O = o[12];
|
|
37
|
+
let k = O, A;
|
|
38
|
+
return o[13] === d ? A = o[14] : (A = {
|
|
39
|
+
menuIsOpen: d,
|
|
40
|
+
setMenuIsOpen: f,
|
|
41
|
+
inputRef: u,
|
|
42
|
+
activeRef: m,
|
|
43
|
+
handleListboxMouseDown: C,
|
|
44
|
+
notifyOptionCommitted: T,
|
|
45
|
+
handleMenuOpen: D,
|
|
46
|
+
handleClose: k
|
|
47
|
+
}, o[13] = d, o[14] = A), A;
|
|
48
|
+
}
|
|
49
|
+
//#endregion
|
|
50
|
+
export { a as useGridAutocompleteState };
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=useGridAutocompleteState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useGridAutocompleteState.js","names":["useCallback","useEffect","useLayoutEffect","useRef","useState","UseGridAutocompleteStateProps","active","stopEditing","opts","nextRow","onDeactivate","UseGridAutocompleteStateReturn","menuIsOpen","setMenuIsOpen","open","inputRef","React","RefObject","HTMLInputElement","activeRef","handleListboxMouseDown","event","MouseEvent","notifyOptionCommitted","handleMenuOpen","handleClose","useGridAutocompleteState","t0","$","_c","optionMouseDownRef","t1","current","onDeactivateRef","t2","stopEditingRef","t3","t4","t5","focus","blur","t6","Symbol","for","preventDefault","target","Element","closest","t7","t8","t9","t10"],"sources":["../../../../src/components/DataGrid/columns/useGridAutocompleteState.ts"],"sourcesContent":["import {\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react'\n\nexport type UseGridAutocompleteStateProps = {\n active: boolean\n /**\n * `stopEditing` from react-datasheet-grid's CellProps. The hook ref-stabilizes\n * this internally, so callers can pass it directly without memoizing.\n */\n stopEditing?: (opts?: { nextRow: boolean }) => void\n /**\n * Called when the cell transitions from active to inactive and there is no\n * pending option click in progress (i.e. the portal-click guard is not set).\n * Store any free-text commit logic here. The callback is ref-stabilized inside\n * the hook, so it may freely capture local state without becoming a stale closure.\n */\n onDeactivate?: () => void\n}\n\nexport type UseGridAutocompleteStateReturn = {\n menuIsOpen: boolean\n setMenuIsOpen: (open: boolean) => void\n /** Ref to attach to the focusable input element for programmatic focus/blur. */\n inputRef: React.RefObject<HTMLInputElement | null>\n /**\n * Always reflects the current `active` value. Safe to read inside event\n * handler closures (e.g. onChange) without a stale capture.\n */\n activeRef: React.RefObject<boolean>\n /** Pass to `slotProps.listbox.onMouseDown` on the MUI Autocomplete. */\n handleListboxMouseDown: (event: React.MouseEvent) => void\n /**\n * Call at the top of every `onChange` handler to signal that a pending\n * option click has been committed. Clears the portal-click guard so that\n * subsequent active→false transitions can proceed normally.\n */\n notifyOptionCommitted: () => void\n /** Pass to the Autocomplete `onOpen` prop. */\n handleMenuOpen: () => void\n /**\n * Pass to the Autocomplete `onClose` prop. Clears the portal-click guard and\n * closes the menu, then stops editing without advancing to the next row.\n */\n handleClose: () => void\n}\n\n/**\n * Manages the shared focus/blur/menu state needed by grid autocomplete cell\n * components that are built on top of react-datasheet-grid.\n *\n * Both AutocompleteColumn and AutocompleteMultipleEnumColumn use the same\n * three-part pattern:\n * 1. When `active` becomes true → focus the input.\n * 2. When `active` becomes false with no pending option click → blur + close menu.\n * 3. The dropdown renders in a portal outside the grid cell. react-datasheet-grid\n * sees the mousedown as an outside click and fires active=false before onClick\n * → onChange. The `optionMouseDownRef` guard defers step 2 until the click\n * completes and onChange resets the ref.\n */\nexport function useGridAutocompleteState({\n active,\n stopEditing,\n onDeactivate,\n}: UseGridAutocompleteStateProps): UseGridAutocompleteStateReturn {\n const inputRef = useRef<HTMLInputElement>(null)\n const [menuIsOpen, setMenuIsOpen] = useState(false)\n const optionMouseDownRef = useRef(false)\n\n // Always reflects the latest `active` value — safe to read in closures.\n const activeRef = useRef(active)\n useLayoutEffect(() => {\n activeRef.current = active\n })\n\n // Ref-stabilize callbacks so effects/handlers never need them in deps arrays,\n // yet always call the latest versions (avoiding stale closures).\n const onDeactivateRef = useRef(onDeactivate)\n useLayoutEffect(() => {\n onDeactivateRef.current = onDeactivate\n })\n const stopEditingRef = useRef(stopEditing)\n useLayoutEffect(() => {\n stopEditingRef.current = stopEditing\n })\n\n useEffect(() => {\n if (active) {\n inputRef.current?.focus()\n } else if (!optionMouseDownRef.current) {\n // Only close when there is no pending option click; if there is one,\n // onChange will reset optionMouseDownRef and handle cleanup itself.\n setMenuIsOpen(false)\n inputRef.current?.blur()\n onDeactivateRef.current?.()\n }\n // Intentionally only re-runs when `active` changes.\n }, [active])\n\n const handleListboxMouseDown = useCallback((event: React.MouseEvent) => {\n // Prevent the input from blurring when clicking inside the listbox. MUI's\n // internal listbox onMouseDown does the same, but our slotProps replaces it,\n // so we must call preventDefault() here to preserve that behavior.\n event.preventDefault()\n // Only signal a pending option click when the mousedown actually targets an\n // option element. Clicks on scrollbars or listbox padding would otherwise\n // leave the guard stuck true (onChange never fires for non-selections),\n // causing later active→false transitions to skip blur/onDeactivate cleanup.\n if ((event.target as Element).closest('[role=\"option\"]')) {\n optionMouseDownRef.current = true\n }\n }, [])\n\n const notifyOptionCommitted = useCallback(() => {\n optionMouseDownRef.current = false\n }, [])\n\n const handleMenuOpen = useCallback(() => {\n setMenuIsOpen(true)\n }, [])\n\n const handleClose = useCallback(() => {\n // Clear the guard in case a mousedown on an option was abandoned before\n // onChange could fire (e.g. drag-off).\n optionMouseDownRef.current = false\n setMenuIsOpen(false)\n stopEditingRef.current?.({ nextRow: false })\n }, [])\n\n return {\n menuIsOpen,\n setMenuIsOpen,\n inputRef,\n activeRef,\n handleListboxMouseDown,\n notifyOptionCommitted,\n handleMenuOpen,\n handleClose,\n }\n}\n"],"mappings":";;;AAgEA,SAAO0B,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAkC,EAAAvB,WAAAC,gBAAAG,oBAAAiB,GAKvCZ,IAAiBZ,EAAyB,KAAK,EAC/C,CAAAS,GAAAC,KAAoCT,EAAS,GAAM,EACnD0B,IAA2B3B,EAAO,GAAM,EAGxCgB,IAAkBhB,EAAOG,EAAO,EAAAyB;AAChC7B,CADgC0B,EAAA,OAAAtB,IAG/ByB,IAAAH,EAAA,MAFeG,UAAA;AACdZ,IAASa,UAAW1B;IACrBsB,EAAA,KAAAtB,GAAAsB,EAAA,KAAAG,IAFD7B,EAAgB6B,EAEd;CAIF,IAAAE,IAAwB9B,EAAOO,EAAa,EAAAwB;AAC5ChC,CAD4C0B,EAAA,OAAAlB,IAG3CwB,IAAAN,EAAA,MAFeM,UAAA;AACdD,IAAeD,UAAWtB;IAC3BkB,EAAA,KAAAlB,GAAAkB,EAAA,KAAAM,IAFDhC,EAAgBgC,EAEd;CACF,IAAAC,IAAuBhC,EAAOI,EAAY,EAAA6B;AAC1ClC,CAD0C0B,EAAA,OAAArB,IAGzC6B,IAAAR,EAAA,MAFeQ,UAAA;AACdD,IAAcH,UAAWzB;IAC1BqB,EAAA,KAAArB,GAAAqB,EAAA,KAAAQ,IAFDlC,EAAgBkC,EAEd;CAAA,IAAAC,GAAAC;AAEFrC,CAFE2B,EAAA,OAAAtB,KAaS+B,IAAAT,EAAA,IAAAU,IAAAV,EAAA,OAXDS,UAAA;AACR,EAAI/B,IACFS,EAAQiB,SAAeO,OAAE,GACfT,EAAkBE,YAG5BnB,EAAc,GAAM,EACpBE,EAAQiB,SAAcQ,MAAE,EACxBP,EAAeD,WAAY;IAG5BM,IAAA,CAAChC,EAAO,EAAAsB,EAAA,KAAAtB,GAAAsB,EAAA,KAAAS,GAAAT,EAAA,KAAAU,IAXXrC,EAAUoC,GAWPC,EAAS;CAAA,IAAAG;AAAA,CAAAb,EAAA,OAAAc,OAAAC,IAAA,4BAAA,IAE+BF,KAAApB,MAAA;AASzC,EALAA,EAAKuB,gBAAiB,EAKjBvB,EAAKwB,OAAkBE,QAAU,oBAAkB,KACtDjB,EAAkBE,UAAW;IAEhCJ,EAAA,KAAAa,KAAAA,IAAAb,EAAA;CAZD,IAAAR,IAA+BqB,GAYzBO;AAAA,CAAApB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAEoCK,UAAA;AACxClB,IAAkBE,UAAW;IAC9BJ,EAAA,MAAAoB,KAAAA,IAAApB,EAAA;CAFD,IAAAL,IAA8ByB,GAExBC;AAAA,CAAArB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAE6BM,UAAA;AACjCpC,IAAc,GAAK;IACpBe,EAAA,MAAAqB,KAAAA,IAAArB,EAAA;CAFD,IAAAJ,IAAuByB,GAEjBC;AAAA,CAAAtB,EAAA,QAAAc,OAAAC,IAAA,4BAAA,IAE0BO,UAAA;AAK9Bf,EAFAL,EAAkBE,UAAW,IAC7BnB,EAAc,GAAM,EACpBsB,EAAcH,UAAW,EAAAvB,SAAW,IAAO,CAAC;IAC7CmB,EAAA,MAAAsB,KAAAA,IAAAtB,EAAA;CAND,IAAAH,IAAoByB,GAMdC;AAWL,QAXKvB,EAAA,QAAAhB,IAWLuC,IAAAvB,EAAA,OATMuB,IAAA;EAAAvC;EAAAC;EAAAE;EAAAI;EAAAC;EAAAG;EAAAC;EAAAC;EASN,EAAAG,EAAA,MAAAhB,GAAAgB,EAAA,MAAAuB,IATMA"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { DataGridRow } from '../DataGridTypes';
|
|
2
2
|
type ValidationAlertProps = {
|
|
3
|
-
selectedRowIndex: number | null;
|
|
4
3
|
rowValues: DataGridRow[];
|
|
4
|
+
columnNames: string[];
|
|
5
|
+
columnOrder: number[];
|
|
6
|
+
onNavigateToCell: (rowIndex: number, colIndex: number) => void;
|
|
7
|
+
isLoading?: boolean;
|
|
5
8
|
};
|
|
6
|
-
export declare const ValidationAlert: ({
|
|
9
|
+
export declare const ValidationAlert: ({ rowValues, columnNames, columnOrder, onNavigateToCell, isLoading, }: ValidationAlertProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
10
|
export {};
|
|
8
11
|
//# sourceMappingURL=ValidationAlert.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidationAlert.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/components/ValidationAlert.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ValidationAlert.d.ts","sourceRoot":"","sources":["../../../../src/components/DataGrid/components/ValidationAlert.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AA0B9C,KAAK,oBAAoB,GAAG;IAC1B,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA;AAiOD,eAAO,MAAM,eAAe,GAAI,uEAM7B,oBAAoB,4CAwOtB,CAAA"}
|