synapse-react-client 4.0.3 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/SWC.index.js +1 -1
- package/dist/components/AccessRequirement/AddConditionsForUseButton/AddConditionsForUseButton.js +1 -1
- package/dist/components/AccessRequirementList/AccessRequirementList.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.d.ts.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js +8 -7
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/DataAccessRequestAccessorsEditor.js.map +1 -1
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementFormWikiWrapper.js +4 -4
- package/dist/components/AccessRequirementList/ManagedACTAccessRequirementRequestFlow/ManagedACTAccessRequirementItem.js +11 -11
- package/dist/components/AccessRequirementList/RequirementItem/RequirementItem.js +1 -1
- package/dist/components/AccessRequirementList/RequirementItem/SelfSignAccessRequirementItem.js +9 -9
- package/dist/components/AccessRequirementList/RequirementItem/UnmanagedACTAccessRequirementItem.js +5 -5
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.d.ts.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +33 -32
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.js +8 -8
- package/dist/components/AclEditor/AclEditor.js.map +1 -1
- package/dist/components/AclEditor/AclEditor.test-utils.js +34 -34
- package/dist/components/AclEditor/AclEditor.test-utils.js.map +1 -1
- package/dist/components/Authentication/AuthenticationMethodSelection.js +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.d.ts.map +1 -1
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js +6 -5
- package/dist/components/Authentication/TwoFactorEnrollmentForm.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss +6 -0
- package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.css +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +7 -7
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss +13 -5
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.module.scss.js +5 -5
- package/dist/components/CardContainer/CardLink.d.ts +12 -0
- package/dist/components/CardContainer/CardLink.d.ts.map +1 -1
- package/dist/components/ChallengeSubmission/AvailableEvaluationQueueList.js +12 -12
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.d.ts.map +1 -1
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js +7 -7
- package/dist/components/ChallengeTeamWizard/CreateChallengeTeam.js.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.d.ts.map +1 -1
- package/dist/components/CitationPopover/CitationPopoverContent.js +13 -12
- package/dist/components/CitationPopover/CitationPopoverContent.js.map +1 -1
- package/dist/components/CookiesNotification/CookiesNotification.js +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +3 -4
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +2 -2
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +35 -35
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +2 -2
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.d.ts.map +1 -1
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js +9 -7
- package/dist/components/DataGrid/hooks/useExportDataGridToCsv.js.map +1 -1
- package/dist/components/DownloadCart/ActionRequiredCard/ActionRequiredCard.js +1 -1
- package/dist/components/DownloadCart/RequestDownloadCard.js +1 -1
- package/dist/components/Ecosystem/EcosystemSkeleton.js +2 -2
- package/dist/components/Ecosystem/TableQueryEcosystem.js +1 -1
- package/dist/components/EntityAclEditor/EntityAclEditorModal.js +1 -1
- package/dist/components/EntityAclEditor/OpenData.js +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.d.ts.map +1 -1
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js +113 -127
- package/dist/components/EntityBadgeIcons/EntityBadgeIcons.js.map +1 -1
- package/dist/components/EntityCitation/EntityCitation.js +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/CreatedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/EntityNameCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntityMD5Cell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/FileEntitySizeCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedByCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ModifiedOnCell.js +1 -1
- package/dist/components/EntityFinder/details/view/table/ParentProjectCell.js +1 -1
- package/dist/components/EntityFinder/tree/EntityTree.js +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.d.ts.map +1 -1
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js +39 -39
- package/dist/components/EntityHeaderTable/EntityHeaderTable.js.map +1 -1
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts +8 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.d.ts.map +1 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js +46 -0
- package/dist/components/Evaluation/DeleteEvaluationQueueConfirmationDialog.js.map +1 -0
- package/dist/components/Evaluation/EvaluationCard.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationCard.js +35 -41
- package/dist/components/Evaluation/EvaluationCard.js.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationEditor.js +95 -90
- package/dist/components/Evaluation/EvaluationEditor.js.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.d.ts.map +1 -1
- package/dist/components/Evaluation/EvaluationRoundEditor.js +133 -124
- package/dist/components/Evaluation/EvaluationRoundEditor.js.map +1 -1
- package/dist/components/FilePreview/EntityPreview.js +1 -1
- package/dist/components/Forum/DiscussionReply.js +10 -10
- package/dist/components/Forum/DiscussionThread.js +21 -21
- package/dist/components/GenericCard/CardUtils.d.ts.map +1 -1
- package/dist/components/GenericCard/CardUtils.js +36 -36
- package/dist/components/GenericCard/CardUtils.js.map +1 -1
- package/dist/components/GenericCard/CollapsibleDescription.js +25 -25
- package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js +72 -67
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts +4 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +98 -96
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.d.ts.map +1 -1
- package/dist/components/GoalsV2/GoalsV2.Desktop.js +14 -15
- package/dist/components/GoalsV2/GoalsV2.Desktop.js.map +1 -1
- package/dist/components/GoogleAnalytics/GoogleAnalytics.js +1 -1
- package/dist/components/HasAccess/HasAccessV2.js +1 -1
- package/dist/components/HasAccess/useHasAccess.js +1 -1
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js +23 -23
- package/dist/components/IDUReport/IDUReportSubmissionInfo.js.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.d.ts +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.d.ts.map +1 -1
- package/dist/components/JSONArrayEditor/useParseCsv.js +9 -9
- package/dist/components/JSONArrayEditor/useParseCsv.js.map +1 -1
- package/dist/components/Markdown/MarkdownCollapse.js +7 -7
- package/dist/components/Markdown/MarkdownEditor.js +11 -11
- package/dist/components/Markdown/MarkdownGithub.js +1 -1
- package/dist/components/Markdown/MarkdownPopover.js +6 -6
- package/dist/components/Markdown/MarkdownPopover.js.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownSynapse.js +139 -135
- package/dist/components/Markdown/MarkdownSynapse.js.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.d.ts +8 -0
- package/dist/components/Markdown/MarkdownUtils.d.ts.map +1 -1
- package/dist/components/Markdown/MarkdownUtils.js +139 -65
- package/dist/components/Markdown/MarkdownUtils.js.map +1 -1
- package/dist/components/Markdown/UserMentionModal.js +18 -18
- package/dist/components/Markdown/UserMentionModal.js.map +1 -1
- package/dist/components/Markdown/widget/MarkdownButton.js +3 -3
- package/dist/components/Markdown/widget/MarkdownButton.js.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.d.ts.map +1 -1
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js +9 -8
- package/dist/components/MissingQueryResultsWarning/MissingQueryResultsWarning.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.css +1 -0
- package/dist/components/Plot/SynapsePlot.d.ts +2 -0
- package/dist/components/Plot/SynapsePlot.d.ts.map +1 -1
- package/dist/components/Plot/SynapsePlot.js +43 -39
- package/dist/components/Plot/SynapsePlot.js.map +1 -1
- package/dist/components/Plot/SynapsePlot.scss +8 -0
- package/dist/components/QueryVisualizationWrapper/QueryVisualizationWrapper.js +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +114 -113
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperSynapsePlot.js.map +1 -1
- package/dist/components/Resources/Resources.Desktop.js +7 -7
- package/dist/components/Resources/Resources.Mobile.js +6 -6
- package/dist/components/SubsectionRowRenderer/SubsectionRowRenderer.js +3 -3
- package/dist/components/SustainabilityScorecard/SustainabilityScorecardSummary.js +10 -10
- package/dist/components/SynapseChat/SynapseChatInteraction.js +5 -5
- package/dist/components/SynapseForm/WarningDialog.d.ts +1 -0
- package/dist/components/SynapseForm/WarningDialog.d.ts.map +1 -1
- package/dist/components/SynapseForm/WarningDialog.js +18 -16
- package/dist/components/SynapseForm/WarningDialog.js.map +1 -1
- package/dist/components/SynapseHomepageV2/SynapseHomepageNavBar.js +1 -1
- package/dist/components/SynapseSearchPageResults/HasAccessChip.js +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.d.ts.map +1 -1
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js +12 -13
- package/dist/components/SynapseSearchPageResults/SearchPagePortalBanners.js.map +1 -1
- package/dist/components/SynapseSearchPageResults/SynapseSearchResultsCard.js +5 -5
- package/dist/components/SynapseTable/ExpandableTableDataCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js +3 -1
- package/dist/components/SynapseTable/ExpandableTableDataCell.js.map +1 -1
- package/dist/components/SynapseTable/SynapseTable.js +4 -4
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.d.ts.map +1 -1
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js +122 -122
- package/dist/components/SynapseTable/SynapseTableCell/SynapseTableCell.js.map +1 -1
- package/dist/components/SynapseTable/datasets/DatasetItemsEditor.js +5 -5
- package/dist/components/TableColumnSchemaEditor/ColumnModelForm.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaEditor.js +1 -1
- package/dist/components/TableColumnSchemaEditor/TableColumnSchemaForm.js +1 -1
- package/dist/components/TableFeedCards/TableFeedCards.js +9 -9
- package/dist/components/TermsAndConditions/TermsAndConditionsItem.js +10 -10
- package/dist/components/TimelinePlot/TimelinePlotSpeciesSelector.js +9 -9
- package/dist/components/UserSearchBox/UserSearchBox.d.ts +23 -0
- package/dist/components/UserSearchBox/UserSearchBox.d.ts.map +1 -0
- package/dist/components/UserSearchBox/UserSearchBox.js +146 -0
- package/dist/components/UserSearchBox/UserSearchBox.js.map +1 -0
- package/dist/components/WikiMarkdownEditorButton/WikiMarkdownEditorButton.js +13 -13
- package/dist/components/WizardChoiceButton/WizardChoiceButton.js +3 -3
- package/dist/components/dataaccess/AccessHistoryDashboard.js +5 -5
- package/dist/components/dataaccess/AccessHistoryDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessRequirementDashboard.js +4 -4
- package/dist/components/dataaccess/AccessRequirementDashboard.js.map +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js +1 -1
- package/dist/components/dataaccess/AccessSubmissionDashboard.js.map +1 -1
- package/dist/components/dataaccess/SubmissionPage/SubmissionPage.js +5 -5
- package/dist/components/dataaccess/UseAccessRequirementTable.js +3 -3
- package/dist/components/dataaccess/UseAccessRequirementTable.js.map +1 -1
- package/dist/components/doi/CreateOrUpdateDoiModal.js +1 -1
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +2 -2
- package/dist/components/entity/metadata/EntityModal.js +1 -1
- package/dist/components/entity/metadata/MetadataTable.js +1 -1
- package/dist/components/entity/page/title_bar/EntityPageTitleBar.js +1 -1
- package/dist/components/entity/page/title_bar/EntityTitleBarVersionInfo.js +1 -1
- package/dist/components/entity/page/title_bar/TitleBarProperties.js +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.d.ts.map +1 -1
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js +27 -26
- package/dist/components/entity/page/title_bar/useGetEntityTitleBarProperties.js.map +1 -1
- package/dist/components/index.js +109 -107
- package/dist/components/index.js.map +1 -1
- package/dist/components/layout/InfiniteTableLayout.js +1 -1
- package/dist/components/styled/HoverPopover.css +1 -0
- package/dist/components/styled/HoverPopover.d.ts +28 -0
- package/dist/components/styled/HoverPopover.d.ts.map +1 -0
- package/dist/components/styled/HoverPopover.js +103 -0
- package/dist/components/styled/HoverPopover.js.map +1 -0
- package/dist/components/styled/HoverPopover.module.scss +9 -0
- package/dist/components/styled/HoverPopover.module.scss.js +10 -0
- package/dist/components/styled/HoverPopover.module.scss.js.map +1 -0
- package/dist/components/styled/index.d.ts +2 -0
- package/dist/components/styled/index.d.ts.map +1 -1
- package/dist/components/styled/index.js +11 -9
- package/dist/components/styled/index.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +2 -2
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js +2 -2
- package/dist/components/widgets/Range.js +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/FacetNavPanel.js +35 -32
- package/dist/components/widgets/facet-nav/FacetNavPanel.js.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/PlotsContainer.js +69 -68
- package/dist/components/widgets/facet-nav/PlotsContainer.js.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.d.ts.map +1 -1
- package/dist/components/widgets/facet-nav/useFacetPlots.js +24 -21
- package/dist/components/widgets/facet-nav/useFacetPlots.js.map +1 -1
- package/dist/components/widgets/query-filter/FacetFilterControls.js +3 -3
- package/dist/features/curator/GridPage/GridPage.js +2 -2
- package/dist/features/curator/GridPage/components/GridPageTitle.js +2 -2
- package/dist/features/entity/metadata-task/hooks/useMetadataTaskTable.js +1 -1
- package/dist/index.js +157 -155
- package/dist/index.js.map +1 -1
- package/dist/mocks/msw/handlers/accessRequirementHandlers.js +5 -5
- package/dist/mocks/msw/handlers/projectStorageHandlers.js +5 -5
- package/dist/mocks/msw/handlers/wikiHandlers.js +1 -1
- package/dist/mocks/msw/handlers.d.ts.map +1 -1
- package/dist/mocks/msw/handlers.js +67 -59
- package/dist/mocks/msw/handlers.js.map +1 -1
- package/dist/style/base/_core.scss +0 -1
- package/dist/style/components/_all.scss +0 -1
- package/dist/style/components/_entity-badge.scss +0 -2
- package/dist/style/components/_expandable_table_data.scss +3 -3
- package/dist/style/components/facet_nav/_facet-nav-panel.scss +3 -0
- package/dist/style/components/facet_nav/_facet-nav.scss +4 -0
- package/dist/style/main.css +1 -1
- package/dist/synapse-client/SynapseClient.js +118 -118
- package/dist/synapse-client/SynapseClient.js.map +1 -1
- package/dist/synapse-queries/auth/useOIDC.js +1 -1
- package/dist/synapse-queries/auth/useTwoFactorEnrollment.js +1 -1
- package/dist/synapse-queries/entity/index.js +6 -6
- package/dist/synapse-queries/grid/useEstablishWebsocketConnection.js +1 -1
- package/dist/synapse-queries/index.js +1 -1
- package/dist/synapse-queries/user/usePersonalAccessToken.js +1 -1
- package/dist/testutils/vitest.setup.js +10 -11
- package/dist/testutils/vitest.setup.js.map +1 -1
- package/dist/theme/DefaultTheme.js +1 -1
- package/dist/theme/ThemeProvider.d.ts +2 -1
- package/dist/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/theme/ThemeProvider.js +11 -10
- package/dist/theme/ThemeProvider.js.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/mergeTheme.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/AppUtils/AppUtils.js +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.d.ts.map +1 -1
- package/dist/utils/functions/SanitizeHtmlUtils.js +34 -40
- package/dist/utils/functions/SanitizeHtmlUtils.js.map +1 -1
- package/dist/utils/functions/deepLinkingUtils.js +10 -10
- package/dist/utils/functions/deepLinkingUtils.js.map +1 -1
- package/dist/utils/hooks/index.js +6 -6
- package/dist/utils/hooks/useDetectSSOCode.js +3 -3
- package/dist/utils/hooks/useGetEntityMetadata.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.d.ts.map +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js +1 -1
- package/dist/utils/hooks/useNativeSearchParams.js.map +1 -1
- package/dist/utils/hooks/useOneSageURL.d.ts.map +1 -1
- package/dist/utils/hooks/useOneSageURL.js +15 -15
- package/dist/utils/hooks/useOneSageURL.js.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.d.ts +1 -0
- package/dist/utils/hooks/useSourceAppConfigs.d.ts.map +1 -1
- package/dist/utils/hooks/useSourceAppConfigs.js +79 -77
- package/dist/utils/hooks/useSourceAppConfigs.js.map +1 -1
- package/dist/utils/index.js +4 -4
- package/package.json +14 -15
- package/dist/_virtual/index.js +0 -6
- package/dist/_virtual/index.js.map +0 -1
- package/dist/_virtual/index2.js +0 -5
- package/dist/_virtual/index2.js.map +0 -1
- package/dist/_virtual/index3.js +0 -5
- package/dist/_virtual/index3.js.map +0 -1
- package/dist/_virtual/index4.js +0 -5
- package/dist/_virtual/index4.js.map +0 -1
- package/dist/_virtual/index5.js +0 -5
- package/dist/_virtual/index5.js.map +0 -1
- package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts +0 -21
- package/dist/components/UserSearchBox/UserSearchBoxV2.d.ts.map +0 -1
- package/dist/components/UserSearchBox/UserSearchBoxV2.js +0 -144
- package/dist/components/UserSearchBox/UserSearchBoxV2.js.map +0 -1
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js +0 -53
- package/dist/node_modules/.pnpm/base64-js@1.5.1/node_modules/base64-js/index.js.map +0 -1
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js +0 -948
- package/dist/node_modules/.pnpm/buffer@6.0.3/node_modules/buffer/index.js.map +0 -1
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js +0 -30
- package/dist/node_modules/.pnpm/ieee754@1.2.1/node_modules/ieee754/index.js.map +0 -1
- package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js +0 -15
- package/dist/node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js.map +0 -1
- package/dist/style/components/_user-search-box.scss +0 -30
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import
|
|
3
|
-
import * as
|
|
1
|
+
import { jsx as U, Fragment as M } from "react/jsx-runtime";
|
|
2
|
+
import T from "../../components/SourceAppImage.js";
|
|
3
|
+
import * as k from "../../synapse-client/SynapseClient.js";
|
|
4
4
|
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
5
5
|
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
6
6
|
import "@sage-bionetworks/synapse-client/util/SynapseClientError";
|
|
7
7
|
import "@sage-bionetworks/synapse-types";
|
|
8
8
|
import "../functions/EntityTypeUtils.js";
|
|
9
|
-
import { BUNDLE_MASK_QUERY_RESULTS as
|
|
9
|
+
import { BUNDLE_MASK_QUERY_RESULTS as D } from "../SynapseConstants.js";
|
|
10
10
|
import "lodash-es";
|
|
11
11
|
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
|
|
12
|
-
import
|
|
13
|
-
import { useMemo as
|
|
14
|
-
import { useSuspenseQuery as
|
|
15
|
-
import { useSynapseContext as
|
|
12
|
+
import l from "../../theme/palette/Palettes.js";
|
|
13
|
+
import { useMemo as L } from "react";
|
|
14
|
+
import { useSuspenseQuery as G, useQueries as H } from "@tanstack/react-query";
|
|
15
|
+
import { useSynapseContext as W } from "../context/SynapseContext.js";
|
|
16
16
|
import "../PermissionLevelToAccessType.js";
|
|
17
17
|
import "use-deep-compare-effect";
|
|
18
18
|
import "@mui/material";
|
|
@@ -29,42 +29,42 @@ import "lodash-es/xorWith";
|
|
|
29
29
|
import "react-router";
|
|
30
30
|
import "@sage-bionetworks/synapse-client";
|
|
31
31
|
import "../types/IsType.js";
|
|
32
|
-
import { tableQueryUseQueryDefaults as
|
|
33
|
-
import { getRealmByIdQueryOptions as
|
|
34
|
-
const
|
|
32
|
+
import { tableQueryUseQueryDefaults as j } from "../../synapse-queries/entity/useGetQueryResultBundle.js";
|
|
33
|
+
import { getRealmByIdQueryOptions as J } from "../../synapse-queries/realm/useRealmPrincipals.js";
|
|
34
|
+
const V = {
|
|
35
35
|
appId: "synapse.org",
|
|
36
36
|
appURL: "",
|
|
37
37
|
description: "",
|
|
38
38
|
friendlyName: "Synapse",
|
|
39
39
|
requestAffiliation: !1,
|
|
40
|
-
logo: /* @__PURE__ */
|
|
40
|
+
logo: /* @__PURE__ */ U(M, {}),
|
|
41
41
|
isPublicized: !0,
|
|
42
|
-
palette: { ...
|
|
42
|
+
palette: { ...l.palette },
|
|
43
43
|
shortDescription: "",
|
|
44
44
|
defaultRealm: {
|
|
45
45
|
id: "0",
|
|
46
46
|
name: "Synapse"
|
|
47
47
|
}
|
|
48
|
-
},
|
|
49
|
-
const { synapseClient:
|
|
50
|
-
entityId:
|
|
48
|
+
}, Y = [V], he = (n, _) => {
|
|
49
|
+
const { synapseClient: h, keyFactory: R } = W(), S = {
|
|
50
|
+
entityId: n,
|
|
51
51
|
query: {
|
|
52
|
-
sql: `SELECT * FROM ${
|
|
52
|
+
sql: `SELECT * FROM ${n}`,
|
|
53
53
|
limit: 75,
|
|
54
|
-
additionalFilters:
|
|
54
|
+
additionalFilters: _
|
|
55
55
|
},
|
|
56
|
-
partMask:
|
|
56
|
+
partMask: D,
|
|
57
57
|
concreteType: "org.sagebionetworks.repo.model.table.QueryBundleRequest"
|
|
58
|
-
}, { data:
|
|
59
|
-
...
|
|
60
|
-
queryKey:
|
|
61
|
-
|
|
58
|
+
}, { data: d } = G({
|
|
59
|
+
...j,
|
|
60
|
+
queryKey: R.getEntityTableQueryResultWithAsyncStatusQueryKey(
|
|
61
|
+
S,
|
|
62
62
|
!1
|
|
63
63
|
),
|
|
64
64
|
queryFn: async () => {
|
|
65
65
|
try {
|
|
66
|
-
return await
|
|
67
|
-
|
|
66
|
+
return await k.getQueryTableAsyncJobResults(
|
|
67
|
+
S,
|
|
68
68
|
void 0
|
|
69
69
|
// use an undefined access token to query a table in the default realm
|
|
70
70
|
);
|
|
@@ -72,94 +72,96 @@ const j = {
|
|
|
72
72
|
return null;
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
-
}),
|
|
75
|
+
}), r = d?.responseBody?.queryResult?.queryResults, o = r?.headers, m = o?.findIndex(
|
|
76
76
|
(e) => e.name == "appId"
|
|
77
|
-
),
|
|
77
|
+
), p = o?.findIndex(
|
|
78
78
|
(e) => e.name == "appURL"
|
|
79
|
-
),
|
|
79
|
+
), q = o?.findIndex(
|
|
80
80
|
(e) => e.name == "friendlyName"
|
|
81
|
-
),
|
|
81
|
+
), u = o?.findIndex(
|
|
82
82
|
(e) => e.name == "description"
|
|
83
|
-
),
|
|
83
|
+
), g = o?.findIndex(
|
|
84
84
|
(e) => e.name == "logo"
|
|
85
|
-
),
|
|
85
|
+
), c = o?.findIndex(
|
|
86
86
|
(e) => e.name == "requestAffiliation"
|
|
87
|
-
), g = o?.findIndex(
|
|
88
|
-
(e) => e.name == "primaryColor"
|
|
89
87
|
), P = o?.findIndex(
|
|
88
|
+
(e) => e.name == "primaryColor"
|
|
89
|
+
), Q = o?.findIndex(
|
|
90
90
|
(e) => e.name == "secondaryColor"
|
|
91
|
-
), c = o?.findIndex(
|
|
92
|
-
(e) => e.name == "isPublicized"
|
|
93
91
|
), y = o?.findIndex(
|
|
94
|
-
(e) => e.name == "
|
|
92
|
+
(e) => e.name == "isPublicized"
|
|
95
93
|
), f = o?.findIndex(
|
|
94
|
+
(e) => e.name == "shortDescription"
|
|
95
|
+
), I = o?.findIndex(
|
|
96
96
|
(e) => e.name == "realmId"
|
|
97
|
-
),
|
|
98
|
-
() =>
|
|
99
|
-
const t = e.values,
|
|
100
|
-
|
|
97
|
+
), s = o?.findIndex((e) => e.name == "area") ?? -1, A = r?.rows, i = L(
|
|
98
|
+
() => A?.map((e) => {
|
|
99
|
+
const t = e.values, C = t[g], a = t[q] ?? "", b = /* @__PURE__ */ U(
|
|
100
|
+
T,
|
|
101
101
|
{
|
|
102
|
-
sourceAppConfigTableID:
|
|
103
|
-
fileHandleId:
|
|
104
|
-
friendlyName:
|
|
102
|
+
sourceAppConfigTableID: n,
|
|
103
|
+
fileHandleId: C,
|
|
104
|
+
friendlyName: a
|
|
105
105
|
}
|
|
106
|
-
),
|
|
107
|
-
...
|
|
108
|
-
primary:
|
|
109
|
-
t[g] ?? ""
|
|
110
|
-
),
|
|
111
|
-
secondary: a.generatePalette(
|
|
106
|
+
), E = {
|
|
107
|
+
...l.palette,
|
|
108
|
+
primary: l.generatePalette(
|
|
112
109
|
t[P] ?? ""
|
|
110
|
+
),
|
|
111
|
+
secondary: l.generatePalette(
|
|
112
|
+
t[Q] ?? ""
|
|
113
113
|
)
|
|
114
|
-
},
|
|
114
|
+
}, F = t[m] == null ? "" : t[m], N = t[p] == null ? "" : t[p], v = t[u] == null ? "" : t[u], w = t[f] == null ? "" : t[f], B = t[c] == null ? !1 : t[c] == "true", O = t[y] == null ? !0 : t[y] == "true", z = t[I] == null ? "0" : t[I], K = s >= 0 && t[s] != null ? t[s] : void 0;
|
|
115
115
|
return {
|
|
116
|
-
appId:
|
|
117
|
-
appURL:
|
|
118
|
-
description:
|
|
119
|
-
friendlyName:
|
|
116
|
+
appId: F,
|
|
117
|
+
appURL: N,
|
|
118
|
+
description: v,
|
|
119
|
+
friendlyName: a,
|
|
120
120
|
requestAffiliation: B,
|
|
121
|
-
logo:
|
|
121
|
+
logo: b,
|
|
122
122
|
isPublicized: O,
|
|
123
|
-
palette:
|
|
123
|
+
palette: E,
|
|
124
124
|
shortDescription: w,
|
|
125
|
-
realmId:
|
|
125
|
+
realmId: z,
|
|
126
|
+
area: K
|
|
126
127
|
};
|
|
127
128
|
}),
|
|
128
129
|
[
|
|
129
|
-
|
|
130
|
-
q,
|
|
131
|
-
S,
|
|
132
|
-
r,
|
|
130
|
+
A,
|
|
133
131
|
g,
|
|
132
|
+
q,
|
|
133
|
+
n,
|
|
134
134
|
P,
|
|
135
|
+
Q,
|
|
135
136
|
m,
|
|
136
|
-
d,
|
|
137
137
|
p,
|
|
138
|
-
y,
|
|
139
138
|
u,
|
|
139
|
+
f,
|
|
140
140
|
c,
|
|
141
|
-
|
|
141
|
+
y,
|
|
142
|
+
I,
|
|
143
|
+
s
|
|
142
144
|
]
|
|
143
|
-
),
|
|
144
|
-
queries:
|
|
145
|
-
(e) =>
|
|
145
|
+
), x = H({
|
|
146
|
+
queries: i?.map(
|
|
147
|
+
(e) => J(e.realmId, R, h)
|
|
146
148
|
) ?? []
|
|
147
149
|
});
|
|
148
|
-
return
|
|
149
|
-
if (!
|
|
150
|
-
return
|
|
151
|
-
if (!(!
|
|
152
|
-
return
|
|
153
|
-
const
|
|
150
|
+
return L(() => {
|
|
151
|
+
if (!d || !r)
|
|
152
|
+
return Y;
|
|
153
|
+
if (!(!i || !x.every((t) => t.isSuccess)))
|
|
154
|
+
return i.map((t, C) => {
|
|
155
|
+
const a = x[C].data;
|
|
154
156
|
return {
|
|
155
157
|
...t,
|
|
156
|
-
defaultRealm:
|
|
158
|
+
defaultRealm: a
|
|
157
159
|
};
|
|
158
160
|
});
|
|
159
|
-
}, [
|
|
161
|
+
}, [i, x, d, r]);
|
|
160
162
|
};
|
|
161
163
|
export {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
+
V as STATIC_SOURCE_APP_CONFIG,
|
|
165
|
+
he as useSourceAppConfigs
|
|
164
166
|
};
|
|
165
167
|
//# sourceMappingURL=useSourceAppConfigs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSourceAppConfigs.js","sources":["../../../src/utils/hooks/useSourceAppConfigs.tsx"],"sourcesContent":["import SourceAppImage from '@/components/SourceAppImage'\nimport SynapseClient from '@/synapse-client'\nimport Palettes from '@/theme/palette/Palettes'\nimport { Realm } from '@sage-bionetworks/synapse-client'\nimport { PaletteOptions } from '@mui/material'\nimport { ReactNode, useMemo } from 'react'\nimport { BUNDLE_MASK_QUERY_RESULTS } from '../SynapseConstants'\nimport { QueryFilter } from '@sage-bionetworks/synapse-types'\nimport { useQueries, useSuspenseQuery } from '@tanstack/react-query'\nimport { useSynapseContext } from '../context/SynapseContext'\nimport { tableQueryUseQueryDefaults } from '@/synapse-queries'\nimport { getRealmByIdQueryOptions } from '@/synapse-queries/realm/useRealmPrincipals'\n\nexport type SourceAppConfig = {\n appId: string // app ID used in the query params\n appURL: string // URL that points to the production version of this app\n friendlyName: string\n logo: ReactNode\n palette: PaletteOptions\n description: string\n requestAffiliation: boolean // If set to true, a special screen is shown requesting the user to fill out UserProfile.company\n isPublicized: boolean // If set to true, this will be included in the list of the available Sage Resources\n shortDescription: string\n defaultRealm: Realm\n}\n\n// A static SourceAppConfig to use as a fallback in case the request to get source app configs fails\nexport const STATIC_SOURCE_APP_CONFIG: SourceAppConfig = {\n appId: 'synapse.org',\n appURL: '',\n description: '',\n friendlyName: 'Synapse',\n requestAffiliation: false,\n logo: <></>,\n isPublicized: true,\n palette: { ...Palettes.palette },\n shortDescription: '',\n defaultRealm: {\n id: '0',\n name: 'Synapse',\n },\n}\n\n// Stable array reference to prevent infinite re-renders\nconst FALLBACK_SOURCE_APP_CONFIGS = [STATIC_SOURCE_APP_CONFIG]\n\ntype SourceAppConfigWithRealmId = Omit<SourceAppConfig, 'defaultRealm'> & {\n realmId: string\n}\n\nexport const useSourceAppConfigs = (\n sourceAppConfigTableID: string,\n additionalFilters?: QueryFilter[],\n): SourceAppConfig[] | undefined => {\n const { synapseClient, keyFactory } = useSynapseContext()\n\n const queryBundleRequest = {\n entityId: sourceAppConfigTableID,\n query: {\n sql: `SELECT * FROM ${sourceAppConfigTableID}`,\n limit: 75,\n additionalFilters,\n },\n partMask: BUNDLE_MASK_QUERY_RESULTS,\n concreteType:\n 'org.sagebionetworks.repo.model.table.QueryBundleRequest' as const,\n }\n\n const { data: tableQueryResult } = useSuspenseQuery({\n ...tableQueryUseQueryDefaults,\n queryKey: keyFactory.getEntityTableQueryResultWithAsyncStatusQueryKey(\n queryBundleRequest,\n false,\n ),\n queryFn: async () => {\n try {\n return await SynapseClient.getQueryTableAsyncJobResults(\n queryBundleRequest,\n undefined, // use an undefined access token to query a table in the default realm\n )\n } catch (_error) {\n // Return null on error to signal fallback behavior\n return null\n }\n },\n })\n\n const rowSet = tableQueryResult?.responseBody?.queryResult?.queryResults\n\n // transform row data to SourceAppConfigWithRealmId[]\n const headers = rowSet?.headers\n const appIdColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'appId',\n )!\n const appURLColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'appURL',\n )!\n const friendlyNameColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'friendlyName',\n )!\n const descriptionColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'description',\n )!\n const logoFileHandleColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'logo',\n )!\n const requestAffiliationColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'requestAffiliation',\n )!\n const primaryColorColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'primaryColor',\n )!\n const secondaryColorColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'secondaryColor',\n )!\n const isPublicizedColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'isPublicized',\n )!\n const shortDescriptionColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'shortDescription',\n )!\n const realmIdColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'realmId',\n )!\n\n const rows = rowSet?.rows\n\n // Extract configs with realmIds first\n const configsWithRealmId: SourceAppConfigWithRealmId[] | undefined = useMemo(\n () =>\n rows?.map(row => {\n const rowVals = row.values\n const fileHandleId = rowVals[logoFileHandleColIndex]\n const friendlyName = rowVals[friendlyNameColIndex] ?? ''\n const logo = (\n <SourceAppImage\n sourceAppConfigTableID={sourceAppConfigTableID}\n fileHandleId={fileHandleId}\n friendlyName={friendlyName}\n />\n )\n const appPalette: PaletteOptions = {\n ...Palettes.palette,\n primary: Palettes.generatePalette(\n rowVals[primaryColorColIndex] ?? '',\n ),\n secondary: Palettes.generatePalette(\n rowVals[secondaryColorColIndex] ?? '',\n ),\n }\n const appId =\n rowVals[appIdColIndex] == null ? '' : rowVals[appIdColIndex]\n const appURL =\n rowVals[appURLColIndex] == null ? '' : rowVals[appURLColIndex]\n const description =\n rowVals[descriptionColIndex] == null\n ? ''\n : rowVals[descriptionColIndex]\n const shortDescription =\n rowVals[shortDescriptionColIndex] == null\n ? ''\n : rowVals[shortDescriptionColIndex]\n const requestAffiliation =\n rowVals[requestAffiliationColIndex] == null\n ? false\n : rowVals[requestAffiliationColIndex] == 'true'\n const isPublicized =\n rowVals[isPublicizedColIndex] == null\n ? true\n : rowVals[isPublicizedColIndex] == 'true'\n const realmId =\n rowVals[realmIdColIndex] == null ? '0' : rowVals[realmIdColIndex]\n return {\n appId,\n appURL,\n description,\n friendlyName,\n requestAffiliation,\n logo,\n isPublicized,\n palette: appPalette,\n shortDescription,\n realmId,\n }\n }),\n [\n rows,\n logoFileHandleColIndex,\n friendlyNameColIndex,\n sourceAppConfigTableID,\n primaryColorColIndex,\n secondaryColorColIndex,\n appIdColIndex,\n appURLColIndex,\n descriptionColIndex,\n shortDescriptionColIndex,\n requestAffiliationColIndex,\n isPublicizedColIndex,\n realmIdColIndex,\n ],\n )\n\n // Fetch all realms in parallel\n const realmQueries = useQueries({\n queries:\n configsWithRealmId?.map(config =>\n getRealmByIdQueryOptions(config.realmId, keyFactory, synapseClient),\n ) ?? [],\n })\n\n // Combine configs with realm data\n return useMemo(() => {\n // If query returned null (error case) or no rowSet, return static config fallback\n if (!tableQueryResult || !rowSet) {\n return FALLBACK_SOURCE_APP_CONFIGS\n }\n\n if (!configsWithRealmId) return undefined\n\n // Check if all realm queries have succeeded\n const allRealmsLoaded = realmQueries.every(query => query.isSuccess)\n if (!allRealmsLoaded) return undefined\n\n return configsWithRealmId.map((config, index) => {\n const realm = realmQueries[index].data\n return {\n ...config,\n defaultRealm: realm,\n }\n })\n }, [configsWithRealmId, realmQueries, tableQueryResult, rowSet])\n}\n"],"names":["STATIC_SOURCE_APP_CONFIG","jsx","Fragment","Palettes","FALLBACK_SOURCE_APP_CONFIGS","useSourceAppConfigs","sourceAppConfigTableID","additionalFilters","synapseClient","keyFactory","useSynapseContext","queryBundleRequest","BUNDLE_MASK_QUERY_RESULTS","tableQueryResult","useSuspenseQuery","tableQueryUseQueryDefaults","SynapseClient","rowSet","headers","appIdColIndex","selectColumn","appURLColIndex","friendlyNameColIndex","descriptionColIndex","logoFileHandleColIndex","requestAffiliationColIndex","primaryColorColIndex","secondaryColorColIndex","isPublicizedColIndex","shortDescriptionColIndex","realmIdColIndex","rows","configsWithRealmId","useMemo","row","rowVals","fileHandleId","friendlyName","logo","SourceAppImage","appPalette","appId","appURL","description","shortDescription","requestAffiliation","isPublicized","realmId","realmQueries","useQueries","config","getRealmByIdQueryOptions","query","index","realm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useSourceAppConfigs.js","sources":["../../../src/utils/hooks/useSourceAppConfigs.tsx"],"sourcesContent":["import SourceAppImage from '@/components/SourceAppImage'\nimport SynapseClient from '@/synapse-client'\nimport Palettes from '@/theme/palette/Palettes'\nimport { Realm } from '@sage-bionetworks/synapse-client'\nimport { PaletteOptions } from '@mui/material'\nimport { ReactNode, useMemo } from 'react'\nimport { BUNDLE_MASK_QUERY_RESULTS } from '../SynapseConstants'\nimport { QueryFilter } from '@sage-bionetworks/synapse-types'\nimport { useQueries, useSuspenseQuery } from '@tanstack/react-query'\nimport { useSynapseContext } from '../context/SynapseContext'\nimport { tableQueryUseQueryDefaults } from '@/synapse-queries'\nimport { getRealmByIdQueryOptions } from '@/synapse-queries/realm/useRealmPrincipals'\n\nexport type SourceAppConfig = {\n appId: string // app ID used in the query params\n appURL: string // URL that points to the production version of this app\n friendlyName: string\n logo: ReactNode\n palette: PaletteOptions\n description: string\n requestAffiliation: boolean // If set to true, a special screen is shown requesting the user to fill out UserProfile.company\n isPublicized: boolean // If set to true, this will be included in the list of the available Sage Resources\n shortDescription: string\n defaultRealm: Realm\n area?: string\n}\n\n// A static SourceAppConfig to use as a fallback in case the request to get source app configs fails\nexport const STATIC_SOURCE_APP_CONFIG: SourceAppConfig = {\n appId: 'synapse.org',\n appURL: '',\n description: '',\n friendlyName: 'Synapse',\n requestAffiliation: false,\n logo: <></>,\n isPublicized: true,\n palette: { ...Palettes.palette },\n shortDescription: '',\n defaultRealm: {\n id: '0',\n name: 'Synapse',\n },\n}\n\n// Stable array reference to prevent infinite re-renders\nconst FALLBACK_SOURCE_APP_CONFIGS = [STATIC_SOURCE_APP_CONFIG]\n\ntype SourceAppConfigWithRealmId = Omit<SourceAppConfig, 'defaultRealm'> & {\n realmId: string\n}\n\nexport const useSourceAppConfigs = (\n sourceAppConfigTableID: string,\n additionalFilters?: QueryFilter[],\n): SourceAppConfig[] | undefined => {\n const { synapseClient, keyFactory } = useSynapseContext()\n\n const queryBundleRequest = {\n entityId: sourceAppConfigTableID,\n query: {\n sql: `SELECT * FROM ${sourceAppConfigTableID}`,\n limit: 75,\n additionalFilters,\n },\n partMask: BUNDLE_MASK_QUERY_RESULTS,\n concreteType:\n 'org.sagebionetworks.repo.model.table.QueryBundleRequest' as const,\n }\n\n const { data: tableQueryResult } = useSuspenseQuery({\n ...tableQueryUseQueryDefaults,\n queryKey: keyFactory.getEntityTableQueryResultWithAsyncStatusQueryKey(\n queryBundleRequest,\n false,\n ),\n queryFn: async () => {\n try {\n return await SynapseClient.getQueryTableAsyncJobResults(\n queryBundleRequest,\n undefined, // use an undefined access token to query a table in the default realm\n )\n } catch (_error) {\n // Return null on error to signal fallback behavior\n return null\n }\n },\n })\n\n const rowSet = tableQueryResult?.responseBody?.queryResult?.queryResults\n\n // transform row data to SourceAppConfigWithRealmId[]\n const headers = rowSet?.headers\n const appIdColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'appId',\n )!\n const appURLColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'appURL',\n )!\n const friendlyNameColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'friendlyName',\n )!\n const descriptionColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'description',\n )!\n const logoFileHandleColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'logo',\n )!\n const requestAffiliationColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'requestAffiliation',\n )!\n const primaryColorColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'primaryColor',\n )!\n const secondaryColorColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'secondaryColor',\n )!\n const isPublicizedColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'isPublicized',\n )!\n const shortDescriptionColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'shortDescription',\n )!\n const realmIdColIndex = headers?.findIndex(\n selectColumn => selectColumn.name == 'realmId',\n )!\n const areaColIndex =\n headers?.findIndex(selectColumn => selectColumn.name == 'area') ?? -1\n\n const rows = rowSet?.rows\n\n // Extract configs with realmIds first\n const configsWithRealmId: SourceAppConfigWithRealmId[] | undefined = useMemo(\n () =>\n rows?.map(row => {\n const rowVals = row.values\n const fileHandleId = rowVals[logoFileHandleColIndex]\n const friendlyName = rowVals[friendlyNameColIndex] ?? ''\n const logo = (\n <SourceAppImage\n sourceAppConfigTableID={sourceAppConfigTableID}\n fileHandleId={fileHandleId}\n friendlyName={friendlyName}\n />\n )\n const appPalette: PaletteOptions = {\n ...Palettes.palette,\n primary: Palettes.generatePalette(\n rowVals[primaryColorColIndex] ?? '',\n ),\n secondary: Palettes.generatePalette(\n rowVals[secondaryColorColIndex] ?? '',\n ),\n }\n const appId =\n rowVals[appIdColIndex] == null ? '' : rowVals[appIdColIndex]\n const appURL =\n rowVals[appURLColIndex] == null ? '' : rowVals[appURLColIndex]\n const description =\n rowVals[descriptionColIndex] == null\n ? ''\n : rowVals[descriptionColIndex]\n const shortDescription =\n rowVals[shortDescriptionColIndex] == null\n ? ''\n : rowVals[shortDescriptionColIndex]\n const requestAffiliation =\n rowVals[requestAffiliationColIndex] == null\n ? false\n : rowVals[requestAffiliationColIndex] == 'true'\n const isPublicized =\n rowVals[isPublicizedColIndex] == null\n ? true\n : rowVals[isPublicizedColIndex] == 'true'\n const realmId =\n rowVals[realmIdColIndex] == null ? '0' : rowVals[realmIdColIndex]\n const area =\n areaColIndex >= 0 && rowVals[areaColIndex] != null\n ? rowVals[areaColIndex]\n : undefined\n return {\n appId,\n appURL,\n description,\n friendlyName,\n requestAffiliation,\n logo,\n isPublicized,\n palette: appPalette,\n shortDescription,\n realmId,\n area,\n }\n }),\n [\n rows,\n logoFileHandleColIndex,\n friendlyNameColIndex,\n sourceAppConfigTableID,\n primaryColorColIndex,\n secondaryColorColIndex,\n appIdColIndex,\n appURLColIndex,\n descriptionColIndex,\n shortDescriptionColIndex,\n requestAffiliationColIndex,\n isPublicizedColIndex,\n realmIdColIndex,\n areaColIndex,\n ],\n )\n\n // Fetch all realms in parallel\n const realmQueries = useQueries({\n queries:\n configsWithRealmId?.map(config =>\n getRealmByIdQueryOptions(config.realmId, keyFactory, synapseClient),\n ) ?? [],\n })\n\n // Combine configs with realm data\n return useMemo(() => {\n // If query returned null (error case) or no rowSet, return static config fallback\n if (!tableQueryResult || !rowSet) {\n return FALLBACK_SOURCE_APP_CONFIGS\n }\n\n if (!configsWithRealmId) return undefined\n\n // Check if all realm queries have succeeded\n const allRealmsLoaded = realmQueries.every(query => query.isSuccess)\n if (!allRealmsLoaded) return undefined\n\n return configsWithRealmId.map((config, index) => {\n const realm = realmQueries[index].data\n return {\n ...config,\n defaultRealm: realm,\n }\n })\n }, [configsWithRealmId, realmQueries, tableQueryResult, rowSet])\n}\n"],"names":["STATIC_SOURCE_APP_CONFIG","jsx","Fragment","Palettes","FALLBACK_SOURCE_APP_CONFIGS","useSourceAppConfigs","sourceAppConfigTableID","additionalFilters","synapseClient","keyFactory","useSynapseContext","queryBundleRequest","BUNDLE_MASK_QUERY_RESULTS","tableQueryResult","useSuspenseQuery","tableQueryUseQueryDefaults","SynapseClient","rowSet","headers","appIdColIndex","selectColumn","appURLColIndex","friendlyNameColIndex","descriptionColIndex","logoFileHandleColIndex","requestAffiliationColIndex","primaryColorColIndex","secondaryColorColIndex","isPublicizedColIndex","shortDescriptionColIndex","realmIdColIndex","areaColIndex","rows","configsWithRealmId","useMemo","row","rowVals","fileHandleId","friendlyName","logo","SourceAppImage","appPalette","appId","appURL","description","shortDescription","requestAffiliation","isPublicized","realmId","area","realmQueries","useQueries","config","getRealmByIdQueryOptions","query","index","realm"],"mappings":"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"}
|
package/dist/utils/index.js
CHANGED
|
@@ -15,8 +15,8 @@ import { FullContextProvider as w, defaultQueryClientConfig as B } from "./conte
|
|
|
15
15
|
import { SynapseContext as X, SynapseContextConsumer as Z, SynapseContextProvider as ee, useSynapseContext as oe } from "./context/SynapseContext.js";
|
|
16
16
|
import { DocumentMetadataProvider as re, useDocumentMetadata as ie } from "./context/DocumentMetadataContext.js";
|
|
17
17
|
import { SynapseClientError as se } from "@sage-bionetworks/synapse-client/util/SynapseClientError";
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
18
|
+
import { createTableUpdateTransactionRequest as pe } from "./functions/TableColumnSchemaUtils.js";
|
|
19
|
+
import { hex2ascii as le } from "./functions/StringUtils.js";
|
|
20
20
|
export {
|
|
21
21
|
s as ACCESS_TOKEN_COOKIE_KEY,
|
|
22
22
|
f as ApplicationSessionContextConsumer,
|
|
@@ -37,10 +37,10 @@ export {
|
|
|
37
37
|
t as SynapseHookUtils,
|
|
38
38
|
R as SynapseSessionManager,
|
|
39
39
|
r as SynapseUtilityFunctions,
|
|
40
|
-
|
|
40
|
+
pe as createTableUpdateTransactionRequest,
|
|
41
41
|
B as defaultQueryClientConfig,
|
|
42
42
|
l as getCookieDomain,
|
|
43
|
-
|
|
43
|
+
le as hex2ascii,
|
|
44
44
|
k as implementsCloudProviderFileHandleInterface,
|
|
45
45
|
M as implementsExternalFileHandleInterface,
|
|
46
46
|
U as isColumnMultiValueFunctionQueryFilter,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "synapse-react-client",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
},
|
|
17
17
|
"./package.json": "./package.json",
|
|
18
18
|
"./style/*": "./dist/style/*",
|
|
19
|
-
"./synapse-react-client.css": "./dist/synapse-react-client.css",
|
|
20
19
|
"./template_style/*": "./dist/template_style/*",
|
|
21
20
|
"./ThemeTypes": "./dist/types/ThemeTypes.d.ts"
|
|
22
21
|
},
|
|
@@ -31,7 +30,7 @@
|
|
|
31
30
|
},
|
|
32
31
|
"dependencies": {
|
|
33
32
|
"@apidevtools/json-schema-ref-parser": "^14.1.1",
|
|
34
|
-
"@aws-sdk/client-s3": "^3.
|
|
33
|
+
"@aws-sdk/client-s3": "^3.1019.0",
|
|
35
34
|
"@aws-sdk/lib-storage": "^3.803.0",
|
|
36
35
|
"@emotion/react": "^11.14.0",
|
|
37
36
|
"@emotion/styled": "^11.14.0",
|
|
@@ -63,8 +62,8 @@
|
|
|
63
62
|
"clickable-json": "^1.15.1",
|
|
64
63
|
"dagre": "^0.8.5",
|
|
65
64
|
"dayjs": "^1.11.13",
|
|
66
|
-
"
|
|
67
|
-
"
|
|
65
|
+
"immutable": "4.3.8",
|
|
66
|
+
"isomorphic-dompurify": "^3.7.1",
|
|
68
67
|
"jotai": "^2.12.4",
|
|
69
68
|
"json-joy": "^17.65.0",
|
|
70
69
|
"json-rules-engine": "^4.1.0",
|
|
@@ -96,7 +95,7 @@
|
|
|
96
95
|
"react-mailchimp-subscribe": "^2.1.3",
|
|
97
96
|
"react-plotly.js": "^2.6.0",
|
|
98
97
|
"react-reflex": "^4.2.7",
|
|
99
|
-
"react-router": "^7.
|
|
98
|
+
"react-router": "^7.13.1",
|
|
100
99
|
"react-select": "^5.10.1",
|
|
101
100
|
"react-share": "^5.2.2",
|
|
102
101
|
"react-switch": "^7.1.0",
|
|
@@ -107,7 +106,7 @@
|
|
|
107
106
|
"react-window": "^1.8.11",
|
|
108
107
|
"reactflow": "^11.11.4",
|
|
109
108
|
"rss-parser": "^3.13.0",
|
|
110
|
-
"sass": "^1.
|
|
109
|
+
"sass": "^1.98.0",
|
|
111
110
|
"schema-dts": "^1.1.5",
|
|
112
111
|
"shortid": "^2.2.17",
|
|
113
112
|
"spark-md5": "^3.0.2",
|
|
@@ -120,9 +119,9 @@
|
|
|
120
119
|
"zod": "^3.24.4",
|
|
121
120
|
"@sage-bionetworks/markdown-it-container": "4.0.1",
|
|
122
121
|
"@sage-bionetworks/synapse-client": "0.0.13",
|
|
122
|
+
"@sage-bionetworks/synapse-types": "0.0.6",
|
|
123
123
|
"markdown-it-synapse": "1.1.17",
|
|
124
|
-
"markdown-it-synapse-table": "1.0.8"
|
|
125
|
-
"@sage-bionetworks/synapse-types": "0.0.6"
|
|
124
|
+
"markdown-it-synapse-table": "1.0.8"
|
|
126
125
|
},
|
|
127
126
|
"peerDependencies": {
|
|
128
127
|
"@sage-bionetworks/aridhia-client": "*",
|
|
@@ -139,11 +138,11 @@
|
|
|
139
138
|
"@googlemaps/jest-mocks": "^2.22.6",
|
|
140
139
|
"@juggle/resize-observer": "^3.4.0",
|
|
141
140
|
"@open-draft/deferred-promise": "^2.2.0",
|
|
142
|
-
"@storybook/addon-a11y": "10.
|
|
143
|
-
"@storybook/addon-designs": "^11.1.
|
|
144
|
-
"@storybook/addon-links": "10.
|
|
145
|
-
"@storybook/addon-themes": "10.
|
|
146
|
-
"@storybook/react-vite": "10.
|
|
141
|
+
"@storybook/addon-a11y": "10.3.3",
|
|
142
|
+
"@storybook/addon-designs": "^11.1.3",
|
|
143
|
+
"@storybook/addon-links": "10.3.3",
|
|
144
|
+
"@storybook/addon-themes": "10.3.3",
|
|
145
|
+
"@storybook/react-vite": "10.3.3",
|
|
147
146
|
"@svgr/plugin-jsx": "^8.1.0",
|
|
148
147
|
"@testing-library/dom": "^10.4.0",
|
|
149
148
|
"@testing-library/jest-dom": "^6.9.1",
|
|
@@ -204,7 +203,7 @@
|
|
|
204
203
|
"react-dom": "^19.1.0",
|
|
205
204
|
"react-select-event": "^5.5.1",
|
|
206
205
|
"react-test-renderer": "^19.1.0",
|
|
207
|
-
"storybook": "10.
|
|
206
|
+
"storybook": "10.3.3",
|
|
208
207
|
"stream-browserify": "^3.0.0",
|
|
209
208
|
"stream-http": "^3.2.0",
|
|
210
209
|
"timers-browserify": "^2.0.12",
|
package/dist/_virtual/index.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { __require as r } from "../node_modules/.pnpm/vite-plugin-node-polyfills@0.17.0_rollup@4.55.1_vite@7.3.1_@types_node@22.19.13_sass@1._2da6e8f78437c36f3eb7db51bdd4d89e/node_modules/vite-plugin-node-polyfills/shims/dist/index.js";
|
|
2
|
-
var i = r();
|
|
3
|
-
export {
|
|
4
|
-
i as d
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
package/dist/_virtual/index2.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/_virtual/index3.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index3.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/_virtual/index4.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index4.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/_virtual/index5.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index5.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { TYPE_FILTER, UserGroupHeader } from '@sage-bionetworks/synapse-types';
|
|
2
|
-
import { PropsValue } from 'react-select';
|
|
3
|
-
type UserSearchBoxValueType = {
|
|
4
|
-
id: string;
|
|
5
|
-
value: string;
|
|
6
|
-
label: string;
|
|
7
|
-
header: UserGroupHeader;
|
|
8
|
-
} | null;
|
|
9
|
-
export type UserSearchBoxProps = {
|
|
10
|
-
inputId?: string;
|
|
11
|
-
defaultValue?: string;
|
|
12
|
-
onChange?: (principalId: string | null, header: UserGroupHeader | null) => void;
|
|
13
|
-
typeFilter?: TYPE_FILTER;
|
|
14
|
-
filterPredicate?: (item: UserGroupHeader) => boolean;
|
|
15
|
-
placeholder?: string;
|
|
16
|
-
focusOnSelect?: boolean;
|
|
17
|
-
value?: PropsValue<UserSearchBoxValueType> | undefined;
|
|
18
|
-
};
|
|
19
|
-
declare function UserSearchBoxV2(props: UserSearchBoxProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
-
export default UserSearchBoxV2;
|
|
21
|
-
//# sourceMappingURL=UserSearchBoxV2.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UserSearchBoxV2.d.ts","sourceRoot":"","sources":["../../../src/components/UserSearchBox/UserSearchBoxV2.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAE9E,OAAe,EAGb,UAAU,EAEX,MAAM,cAAc,CAAA;AAGrB,KAAK,sBAAsB,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,eAAe,CAAA;CACxB,GAAG,IAAI,CAAA;AAER,MAAM,MAAM,kBAAkB,GAAG;IAE/B,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,CACT,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,MAAM,EAAE,eAAe,GAAG,IAAI,KAC3B,IAAI,CAAA;IACT,UAAU,CAAC,EAAE,WAAW,CAAA;IACxB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAA;IACpD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IAEvB,KAAK,CAAC,EAAE,UAAU,CAAC,sBAAsB,CAAC,GAAG,SAAS,CAAA;CACvD,CAAA;AAqCD,iBAAS,eAAe,CAAC,KAAK,EAAE,kBAAkB,2CAyHjD;AAED,eAAe,eAAe,CAAA"}
|
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
import { jsx as s } from "react/jsx-runtime";
|
|
2
|
-
import { useState as c, useRef as x, useEffect as y, useMemo as f, createElement as h } from "react";
|
|
3
|
-
import "../../synapse-client/SynapseClient.js";
|
|
4
|
-
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
5
|
-
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
6
|
-
import "@sage-bionetworks/synapse-client/util/SynapseClientError";
|
|
7
|
-
import { TYPE_FILTER as S } from "@sage-bionetworks/synapse-types";
|
|
8
|
-
import "../../utils/functions/EntityTypeUtils.js";
|
|
9
|
-
import "../../utils/SynapseConstants.js";
|
|
10
|
-
import "lodash-es";
|
|
11
|
-
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
|
|
12
|
-
import "@tanstack/react-query";
|
|
13
|
-
import "../../utils/PermissionLevelToAccessType.js";
|
|
14
|
-
import { useDebouncedEffect as F } from "../../utils/hooks/useDebouncedEffect.js";
|
|
15
|
-
import "../../utils/context/SynapseContext.js";
|
|
16
|
-
import L from "../../utils/hooks/useGetInfoFromIds.js";
|
|
17
|
-
import { useTheme as R, Skeleton as k } from "@mui/material";
|
|
18
|
-
import "../../utils/hooks/useCookiePreferences.js";
|
|
19
|
-
import "../../utils/hooks/useSourceAppConfigs.js";
|
|
20
|
-
import "universal-cookie";
|
|
21
|
-
import "../../utils/AppUtils/session/ApplicationSessionContext.js";
|
|
22
|
-
import "../../utils/context/FullContextProvider.js";
|
|
23
|
-
import "../../utils/context/DocumentMetadataContext.js";
|
|
24
|
-
import '../../style/components/_spinner.css';/* empty css */
|
|
25
|
-
import "@tanstack/query-core";
|
|
26
|
-
import "lodash-es/isEmpty";
|
|
27
|
-
import "lodash-es/isEqual";
|
|
28
|
-
import "lodash-es/xorWith";
|
|
29
|
-
import "react-router";
|
|
30
|
-
import "@sage-bionetworks/synapse-client";
|
|
31
|
-
import "../../utils/types/IsType.js";
|
|
32
|
-
import { useSearchUserGroupHeaders as G } from "../../synapse-queries/user/useUserGroupHeader.js";
|
|
33
|
-
import M, { components as g } from "react-select";
|
|
34
|
-
import I from "../UserOrTeamBadge/UserOrTeamBadge.js";
|
|
35
|
-
const _ = {
|
|
36
|
-
SingleValue: (t) => {
|
|
37
|
-
const { data: r } = t;
|
|
38
|
-
return /* @__PURE__ */ h(g.SingleValue, { ...t, key: r?.id }, /* @__PURE__ */ s(
|
|
39
|
-
I,
|
|
40
|
-
{
|
|
41
|
-
userGroupHeader: r?.header,
|
|
42
|
-
disableHref: !0,
|
|
43
|
-
showFullName: !0
|
|
44
|
-
},
|
|
45
|
-
r?.header.ownerId
|
|
46
|
-
));
|
|
47
|
-
},
|
|
48
|
-
Option: (t) => {
|
|
49
|
-
const { data: r } = t;
|
|
50
|
-
return /* @__PURE__ */ h(g.Option, { ...t, key: r?.id }, /* @__PURE__ */ s(
|
|
51
|
-
I,
|
|
52
|
-
{
|
|
53
|
-
userGroupHeader: r?.header,
|
|
54
|
-
disableHref: !0,
|
|
55
|
-
showFullName: !0,
|
|
56
|
-
showCardOnHover: !1
|
|
57
|
-
}
|
|
58
|
-
));
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
function be(t) {
|
|
62
|
-
const {
|
|
63
|
-
inputId: r,
|
|
64
|
-
defaultValue: o = null,
|
|
65
|
-
onChange: d,
|
|
66
|
-
filterPredicate: b,
|
|
67
|
-
typeFilter: a,
|
|
68
|
-
placeholder: l,
|
|
69
|
-
focusOnSelect: O = !1,
|
|
70
|
-
value: E
|
|
71
|
-
} = t, { palette: N } = R(), [n, v] = c(""), [i, C] = c("");
|
|
72
|
-
F(
|
|
73
|
-
() => {
|
|
74
|
-
C(n);
|
|
75
|
-
},
|
|
76
|
-
[n],
|
|
77
|
-
500
|
|
78
|
-
);
|
|
79
|
-
const [m = void 0] = L({
|
|
80
|
-
ids: o ? [o] : [],
|
|
81
|
-
type: "USER_PROFILE"
|
|
82
|
-
}), V = !!i, { data: w, isLoading: u } = G(
|
|
83
|
-
i,
|
|
84
|
-
a,
|
|
85
|
-
{
|
|
86
|
-
enabled: V
|
|
87
|
-
}
|
|
88
|
-
), p = x(null);
|
|
89
|
-
y(() => {
|
|
90
|
-
O && p.current && p.current.focus();
|
|
91
|
-
});
|
|
92
|
-
const H = f(
|
|
93
|
-
() => u || n !== i ? () => "Loading…" : void 0,
|
|
94
|
-
[u, i, n]
|
|
95
|
-
), T = (w ?? []).filter(b ?? (() => !0)).map((e) => ({
|
|
96
|
-
id: e.ownerId.toString(),
|
|
97
|
-
value: e.ownerId.toString(),
|
|
98
|
-
label: e.userName,
|
|
99
|
-
header: e
|
|
100
|
-
})), U = f(() => l !== void 0 ? l : a == S.USERS_ONLY ? "Name (first and last)" : a == S.TEAMS_ONLY ? "Team name" : "Name (first and last) or team name", [l, a]);
|
|
101
|
-
return o && m == null ? /* @__PURE__ */ s(k, { width: "100%" }) : /* @__PURE__ */ s(
|
|
102
|
-
M,
|
|
103
|
-
{
|
|
104
|
-
className: "UserSearchBoxV2",
|
|
105
|
-
ref: p,
|
|
106
|
-
inputValue: n,
|
|
107
|
-
onInputChange: v,
|
|
108
|
-
filterOption: () => !0,
|
|
109
|
-
isLoading: u,
|
|
110
|
-
options: !u && T || [],
|
|
111
|
-
noOptionsMessage: H,
|
|
112
|
-
openMenuOnClick: !1,
|
|
113
|
-
placeholder: U,
|
|
114
|
-
defaultValue: o ? {
|
|
115
|
-
id: o,
|
|
116
|
-
value: o,
|
|
117
|
-
label: m.userName,
|
|
118
|
-
header: m
|
|
119
|
-
} : void 0,
|
|
120
|
-
inputId: r,
|
|
121
|
-
isClearable: !0,
|
|
122
|
-
value: E,
|
|
123
|
-
styles: {
|
|
124
|
-
control: (e) => ({ ...e, backgroundColor: N.grey[200] }),
|
|
125
|
-
input: (e) => ({
|
|
126
|
-
...e,
|
|
127
|
-
// SWC-6327 - Adjust the input style so a right-click focuses on the input field
|
|
128
|
-
input: {
|
|
129
|
-
gridArea: "1 / 2 / 4 / 4 !important"
|
|
130
|
-
}
|
|
131
|
-
}),
|
|
132
|
-
menu: (e) => ({ ...e, zIndex: 2 })
|
|
133
|
-
},
|
|
134
|
-
components: _,
|
|
135
|
-
onChange: (e) => {
|
|
136
|
-
d && d(e?.id ?? null, e?.header ?? null);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
export {
|
|
142
|
-
be as default
|
|
143
|
-
};
|
|
144
|
-
//# sourceMappingURL=UserSearchBoxV2.js.map
|