synapse-react-client 4.0.2 → 4.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/SWC.index.js +1 -1
- package/dist/assets/icons/AwardScroll.d.ts +5 -0
- package/dist/assets/icons/AwardScroll.d.ts.map +1 -0
- package/dist/assets/icons/AwardScroll.js +78 -0
- package/dist/assets/icons/AwardScroll.js.map +1 -0
- package/dist/assets/icons/Baseline.d.ts +5 -0
- package/dist/assets/icons/Baseline.d.ts.map +1 -0
- package/dist/assets/icons/Baseline.js +43 -0
- package/dist/assets/icons/Baseline.js.map +1 -0
- package/dist/assets/icons/Challenge.svg +13 -0
- package/dist/assets/icons/Challenge.svg.js +7 -0
- package/dist/assets/icons/Challenge.svg.js.map +1 -0
- package/dist/assets/icons/ClappingHands.d.ts +5 -0
- package/dist/assets/icons/ClappingHands.d.ts.map +1 -0
- package/dist/assets/icons/ClappingHands.js +106 -0
- package/dist/assets/icons/ClappingHands.js.map +1 -0
- package/dist/assets/icons/HandWithMoney.d.ts +5 -0
- package/dist/assets/icons/HandWithMoney.d.ts.map +1 -0
- package/dist/assets/icons/HandWithMoney.js +15 -0
- package/dist/assets/icons/HandWithMoney.js.map +1 -0
- package/dist/assets/icons/MultiFile.d.ts +5 -0
- package/dist/assets/icons/MultiFile.d.ts.map +1 -0
- package/dist/assets/icons/MultiFile.js +8 -0
- package/dist/assets/icons/MultiFile.js.map +1 -0
- package/dist/assets/icons/MultiFile.svg +4 -0
- package/dist/assets/icons/MultiFile.svg.js +7 -0
- package/dist/assets/icons/MultiFile.svg.js.map +1 -0
- package/dist/assets/icons/OpenBook.d.ts +5 -0
- package/dist/assets/icons/OpenBook.d.ts.map +1 -0
- package/dist/assets/icons/OpenBook.js +99 -0
- package/dist/assets/icons/OpenBook.js.map +1 -0
- package/dist/assets/icons/Podium.d.ts +5 -0
- package/dist/assets/icons/Podium.d.ts.map +1 -0
- package/dist/assets/icons/Podium.js +36 -0
- package/dist/assets/icons/Podium.js.map +1 -0
- package/dist/assets/icons/RosetteRibbon.d.ts +5 -0
- package/dist/assets/icons/RosetteRibbon.d.ts.map +1 -0
- package/dist/assets/icons/RosetteRibbon.js +36 -0
- package/dist/assets/icons/RosetteRibbon.js.map +1 -0
- package/dist/assets/icons/StarTrophy.d.ts +5 -0
- package/dist/assets/icons/StarTrophy.d.ts.map +1 -0
- package/dist/assets/icons/StarTrophy.js +99 -0
- package/dist/assets/icons/StarTrophy.js.map +1 -0
- package/dist/assets/icons/ThreeStars.d.ts +5 -0
- package/dist/assets/icons/ThreeStars.d.ts.map +1 -0
- package/dist/assets/icons/ThreeStars.js +71 -0
- package/dist/assets/icons/ThreeStars.js.map +1 -0
- package/dist/assets/icons/UnpackagableFile.d.ts +5 -0
- package/dist/assets/icons/UnpackagableFile.d.ts.map +1 -0
- package/dist/assets/icons/UnpackagableFile.js +8 -0
- package/dist/assets/icons/UnpackagableFile.js.map +1 -0
- package/dist/assets/icons/UnpackagableFile.svg +4 -0
- package/dist/assets/icons/UnpackagableFile.svg.js +7 -0
- package/dist/assets/icons/UnpackagableFile.svg.js.map +1 -0
- package/dist/assets/mui_components/PackagableFile.d.ts.map +1 -1
- package/dist/assets/mui_components/PackagableFile.js +5 -4
- package/dist/assets/mui_components/PackagableFile.js.map +1 -1
- package/dist/assets/mui_components/PackagableFile.svg +3 -0
- package/dist/assets/mui_components/PackagableFile.svg.js +7 -0
- package/dist/assets/mui_components/PackagableFile.svg.js.map +1 -0
- package/dist/assets/themed_icons/index.d.ts +1 -2
- package/dist/assets/themed_icons/index.d.ts.map +1 -1
- package/dist/assets/themed_icons/index.js +8 -10
- package/dist/assets/themed_icons/index.js.map +1 -1
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js +4 -4
- package/dist/components/AcknowledgementsPage/AcknowledgementsPage.js.map +1 -1
- package/dist/components/AddToDownloadListV2.js +10 -10
- package/dist/components/AddToDownloadListV2.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.css +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.d.ts +1 -2
- package/dist/components/BasePortalCard/BasePortalCard.d.ts.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.js +21 -28
- package/dist/components/BasePortalCard/BasePortalCard.js.map +1 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss +7 -1
- package/dist/components/BasePortalCard/BasePortalCard.module.scss.js +11 -11
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.d.ts.map +1 -1
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js +24 -24
- package/dist/components/BasePortalCard/ColorfulPortalCardWithChips/ColorfulPortalCardWithChips.js.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts +5 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.d.ts.map +1 -1
- package/dist/components/CardContainerLogic/CardContainerLogic.js.map +1 -1
- package/dist/components/CardContainerLogic/index.d.ts +1 -1
- package/dist/components/CardContainerLogic/index.d.ts.map +1 -1
- package/dist/components/CardDeck/TableQueryCardDeck.js +12 -9
- package/dist/components/CardDeck/TableQueryCardDeck.js.map +1 -1
- package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js +33 -33
- package/dist/components/ChallengeDataDownload/ChallengeDataDownload.js.map +1 -1
- package/dist/components/ChangePassword/useChangePasswordFormState.js +5 -2
- package/dist/components/ChangePassword/useChangePasswordFormState.js.map +1 -1
- package/dist/components/ComponentCollapse.d.ts +6 -10
- package/dist/components/ComponentCollapse.d.ts.map +1 -1
- package/dist/components/ComponentCollapse.js +31 -35
- package/dist/components/ComponentCollapse.js.map +1 -1
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js +12 -9
- package/dist/components/CreateOrUpdateAccessRequirementWizard/CreateOrUpdateAccessRequirementWizard.js.map +1 -1
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js +8 -3
- package/dist/components/DataGrid/MergeGridWithSourceTableButton.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +8 -3
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js +8 -3
- package/dist/components/DataGrid/components/UploadCsvToGridDialog.js.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.d.ts.map +1 -1
- package/dist/components/DirectDownload/DirectDownload.js +23 -23
- package/dist/components/DirectDownload/DirectDownload.js.map +1 -1
- package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts +6 -2
- package/dist/components/DownloadCart/AvailableForDownloadTable.d.ts.map +1 -1
- package/dist/components/DownloadCart/AvailableForDownloadTable.js +10 -8
- package/dist/components/DownloadCart/AvailableForDownloadTable.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.css +1 -0
- package/dist/components/DownloadCart/CreatePackageV2.d.ts.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.js +50 -46
- package/dist/components/DownloadCart/CreatePackageV2.js.map +1 -1
- package/dist/components/DownloadCart/CreatePackageV2.module.scss +38 -0
- package/dist/components/DownloadCart/CreatePackageV2.module.scss.js +14 -0
- package/dist/components/DownloadCart/CreatePackageV2.module.scss.js.map +1 -0
- package/dist/components/DownloadCart/DownloadCartPage.css +1 -0
- package/dist/components/DownloadCart/DownloadCartPage.d.ts.map +1 -1
- package/dist/components/DownloadCart/DownloadCartPage.js +316 -186
- package/dist/components/DownloadCart/DownloadCartPage.js.map +1 -1
- package/dist/components/DownloadCart/DownloadCartPage.module.scss +217 -0
- package/dist/components/DownloadCart/DownloadCartPage.module.scss.js +48 -0
- package/dist/components/DownloadCart/DownloadCartPage.module.scss.js.map +1 -0
- package/dist/components/DownloadCart/DownloadDetails.js +1 -1
- package/dist/components/DownloadCart/DownloadDetails.js.map +1 -1
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js +33 -33
- package/dist/components/DownloadCart/DownloadIneligibleForPackagingFilesFromListButton.js.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.d.ts +4 -1
- package/dist/components/DownloadCart/DownloadListTable.d.ts.map +1 -1
- package/dist/components/DownloadCart/DownloadListTable.js +156 -236
- package/dist/components/DownloadCart/DownloadListTable.js.map +1 -1
- package/dist/components/DownloadCart/ShowDownloadV2.js +5 -5
- package/dist/components/DownloadCart/ShowDownloadV2.js.map +1 -1
- package/dist/components/Ecosystem/EcosystemSkeleton.js +8 -3
- package/dist/components/Ecosystem/EcosystemSkeleton.js.map +1 -1
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js +20 -20
- package/dist/components/EntityDownloadButton/EntityDownloadButton.js.map +1 -1
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js +3 -3
- package/dist/components/EntityFinder/details/view/table/AddToDownloadListCell.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FacetPlotsCard.js +6 -2
- package/dist/components/FeaturedDataTabs/FacetPlotsCard.js.map +1 -1
- package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js +11 -8
- package/dist/components/FeaturedDataTabs/FeaturedDataTabs.js.map +1 -1
- package/dist/components/FullWidthAlert/FullWidthAlert.d.ts +2 -2
- package/dist/components/FullWidthAlert/FullWidthAlert.js.map +1 -1
- package/dist/components/GenericCard/GenericCard.d.ts +5 -5
- package/dist/components/GenericCard/GenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/GenericCard.js +117 -103
- package/dist/components/GenericCard/GenericCard.js.map +1 -1
- package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts +10 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.d.ts.map +1 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.js +33 -0
- package/dist/components/GenericCard/LabelMaybeWithIcon.js.map +1 -0
- package/dist/components/GenericCard/SynapseCardLabel.d.ts +2 -1
- package/dist/components/GenericCard/SynapseCardLabel.d.ts.map +1 -1
- package/dist/components/GenericCard/SynapseCardLabel.js +86 -81
- package/dist/components/GenericCard/SynapseCardLabel.js.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts +7 -1
- package/dist/components/GenericCard/TableRowGenericCard.d.ts.map +1 -1
- package/dist/components/GenericCard/TableRowGenericCard.js +239 -202
- package/dist/components/GenericCard/TableRowGenericCard.js.map +1 -1
- package/dist/components/HeaderCard.js +17 -13
- package/dist/components/HeaderCard.js.map +1 -1
- package/dist/components/Icon/Icon.js +52 -52
- package/dist/components/Icon/Icon.js.map +1 -1
- package/dist/components/IconSvg/IconSvg.d.ts +1 -1
- package/dist/components/IconSvg/IconSvg.d.ts.map +1 -1
- package/dist/components/IconSvg/IconSvg.js +215 -171
- package/dist/components/IconSvg/IconSvg.js.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts +1 -0
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.d.ts.map +1 -1
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js +103 -102
- package/dist/components/QueryWrapperPlotNav/QueryWrapperPlotNav.js.map +1 -1
- package/dist/components/StorybookComponentWrapper.js +6 -3
- package/dist/components/StorybookComponentWrapper.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChat.d.ts +7 -1
- package/dist/components/SynapseChat/SynapseChat.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChat.js +76 -67
- package/dist/components/SynapseChat/SynapseChat.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.d.ts +2 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChatInteraction.js +83 -58
- package/dist/components/SynapseChat/SynapseChatInteraction.js.map +1 -1
- package/dist/components/SynapseChat/SynapseChatMessage.d.ts +1 -0
- package/dist/components/SynapseChat/SynapseChatMessage.d.ts.map +1 -1
- package/dist/components/SynapseChat/SynapseChatMessage.js +16 -15
- package/dist/components/SynapseChat/SynapseChatMessage.js.map +1 -1
- package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts +12 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.d.ts.map +1 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.js +30 -0
- package/dist/components/SynapseChat/SynapsePortalChatDialog.js.map +1 -0
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.d.ts.map +1 -1
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.js +22 -16
- package/dist/components/SynapseChat/extractMessageFromTraceEvent.js.map +1 -1
- package/dist/components/SynapseChat/index.d.ts +2 -0
- package/dist/components/SynapseChat/index.d.ts.map +1 -1
- package/dist/components/SynapseChat/index.js +5 -3
- package/dist/components/SynapseChat/index.js.map +1 -1
- package/dist/components/SynapseChat/useChatState.d.ts +1 -1
- package/dist/components/SynapseChat/useChatState.d.ts.map +1 -1
- package/dist/components/SynapseChat/useChatState.js +10 -7
- package/dist/components/SynapseChat/useChatState.js.map +1 -1
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js +25 -25
- package/dist/components/SynapseNavDrawer/SynapseNavDrawer.js.map +1 -1
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js +13 -13
- package/dist/components/SynapseTable/RowSelection/RowSelectionControls.js.map +1 -1
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js +9 -9
- package/dist/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.js.map +1 -1
- package/dist/components/TextToComponentCollapse.d.ts +16 -0
- package/dist/components/TextToComponentCollapse.d.ts.map +1 -0
- package/dist/components/TextToComponentCollapse.js +29 -0
- package/dist/components/TextToComponentCollapse.js.map +1 -0
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js +8 -3
- package/dist/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUI.d.ts +1 -1
- package/dist/components/download_list/DownloadConfirmationUI.js +22 -22
- package/dist/components/download_list/DownloadConfirmationUI.js.map +1 -1
- package/dist/components/download_list/DownloadConfirmationUtils.js +4 -4
- package/dist/components/download_list/DownloadConfirmationUtils.js.map +1 -1
- package/dist/components/index.js +85 -83
- package/dist/components/index.js.map +1 -1
- package/dist/components/row_renderers/ObservationCard.js +12 -11
- package/dist/components/row_renderers/ObservationCard.js.map +1 -1
- package/dist/components/row_renderers/utils/CardFooter.d.ts +1 -3
- package/dist/components/row_renderers/utils/CardFooter.d.ts.map +1 -1
- package/dist/components/row_renderers/utils/CardFooter.js +31 -45
- package/dist/components/row_renderers/utils/CardFooter.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreview.js +8 -3
- package/dist/components/table/CsvPreview/CsvPreview.js.map +1 -1
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js +8 -3
- package/dist/components/table/CsvPreview/CsvPreviewDialog.js.map +1 -1
- package/dist/features/curator/GridPage/GridPage.js +8 -3
- package/dist/features/curator/GridPage/GridPage.js.map +1 -1
- package/dist/features/curator/GridPage/components/GridPageTitle.js +8 -3
- package/dist/features/curator/GridPage/components/GridPageTitle.js.map +1 -1
- package/dist/index.js +137 -135
- package/dist/index.js.map +1 -1
- package/dist/style/components/_all.scss +0 -1
- package/dist/style/components/_cards.scss +22 -0
- package/dist/style/components/_download-list-v2.scss +1 -1
- package/dist/style/components/_query-wrapper-plot-nav.scss +13 -0
- package/dist/style/main.css +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.d.ts.map +1 -1
- package/dist/utils/AppUtils/session/ApplicationSessionManager.js.map +1 -1
- package/dist/utils/context/FullContextProvider.js +9 -9
- package/dist/utils/context/FullContextProvider.js.map +1 -1
- package/dist/utils/context/SynapseContext.d.ts.map +1 -1
- package/dist/utils/context/SynapseContext.js +1 -0
- package/dist/utils/context/SynapseContext.js.map +1 -1
- package/dist/utils/functions/SqlFunctions.d.ts +4 -0
- package/dist/utils/functions/SqlFunctions.d.ts.map +1 -1
- package/dist/utils/functions/SqlFunctions.js +25 -23
- package/dist/utils/functions/SqlFunctions.js.map +1 -1
- package/package.json +5 -5
- package/dist/assets/themed_icons/Challenge.d.ts +0 -3
- package/dist/assets/themed_icons/Challenge.d.ts.map +0 -1
- package/dist/assets/themed_icons/Challenge.js +0 -25
- package/dist/assets/themed_icons/Challenge.js.map +0 -1
- package/dist/style/components/_download-cart-page.scss +0 -204
|
@@ -62,7 +62,7 @@ const We = (r) => {
|
|
|
62
62
|
queryTerm: r
|
|
63
63
|
};
|
|
64
64
|
return encodeURIComponent(JSON.stringify(o));
|
|
65
|
-
},
|
|
65
|
+
}, l = (r) => {
|
|
66
66
|
const {
|
|
67
67
|
tooltip: o,
|
|
68
68
|
iconName: d,
|
|
@@ -122,7 +122,7 @@ function Je({
|
|
|
122
122
|
);
|
|
123
123
|
let y = D?.pages[0].results.length ?? 0;
|
|
124
124
|
D?.pages[0].nextPageToken && (y = `${y}+`);
|
|
125
|
-
const
|
|
125
|
+
const s = (i) => {
|
|
126
126
|
f(!0), h(i);
|
|
127
127
|
}, n = () => {
|
|
128
128
|
f(!1), h(void 0);
|
|
@@ -154,18 +154,18 @@ function Je({
|
|
|
154
154
|
/* @__PURE__ */ t(x, { children: [
|
|
155
155
|
S && a && /* @__PURE__ */ t(p, { children: [
|
|
156
156
|
/* @__PURE__ */ e(
|
|
157
|
-
|
|
157
|
+
l,
|
|
158
158
|
{
|
|
159
159
|
tooltip: "Projects",
|
|
160
160
|
iconName: "dashboard",
|
|
161
161
|
onClickOpenNavMenu: 0,
|
|
162
162
|
isCurrentlySelectedItem: c == 0,
|
|
163
163
|
handleDrawerClose: n,
|
|
164
|
-
handleDrawerOpen:
|
|
164
|
+
handleDrawerOpen: s
|
|
165
165
|
}
|
|
166
166
|
),
|
|
167
167
|
/* @__PURE__ */ e(
|
|
168
|
-
|
|
168
|
+
l,
|
|
169
169
|
{
|
|
170
170
|
tooltip: "Favorites",
|
|
171
171
|
iconName: "favTwoTone",
|
|
@@ -173,21 +173,21 @@ function Je({
|
|
|
173
173
|
`/Profile:${a.ownerId}/favorites`
|
|
174
174
|
),
|
|
175
175
|
handleDrawerClose: n,
|
|
176
|
-
handleDrawerOpen:
|
|
176
|
+
handleDrawerOpen: s
|
|
177
177
|
}
|
|
178
178
|
),
|
|
179
179
|
/* @__PURE__ */ e(
|
|
180
|
-
|
|
180
|
+
l,
|
|
181
181
|
{
|
|
182
182
|
tooltip: "Teams",
|
|
183
183
|
iconName: "peopleTwoTone",
|
|
184
184
|
onClickGoToPlace: () => o(`/Profile:${a.ownerId}/teams`),
|
|
185
185
|
handleDrawerClose: n,
|
|
186
|
-
handleDrawerOpen:
|
|
186
|
+
handleDrawerOpen: s
|
|
187
187
|
}
|
|
188
188
|
),
|
|
189
189
|
/* @__PURE__ */ e(
|
|
190
|
-
|
|
190
|
+
l,
|
|
191
191
|
{
|
|
192
192
|
tooltip: "Challenges",
|
|
193
193
|
iconName: "challengesTwoTone",
|
|
@@ -195,57 +195,57 @@ function Je({
|
|
|
195
195
|
`/Profile:${a.ownerId}/challenges`
|
|
196
196
|
),
|
|
197
197
|
handleDrawerClose: n,
|
|
198
|
-
handleDrawerOpen:
|
|
198
|
+
handleDrawerOpen: s
|
|
199
199
|
}
|
|
200
200
|
),
|
|
201
201
|
/* @__PURE__ */ e(
|
|
202
|
-
|
|
202
|
+
l,
|
|
203
203
|
{
|
|
204
|
-
tooltip: "Download
|
|
204
|
+
tooltip: "Download List",
|
|
205
205
|
iconName: "download",
|
|
206
206
|
onClickGoToPlace: () => o("/DownloadCart:0"),
|
|
207
207
|
badgeContent: _,
|
|
208
208
|
handleDrawerClose: n,
|
|
209
|
-
handleDrawerOpen:
|
|
209
|
+
handleDrawerOpen: s
|
|
210
210
|
}
|
|
211
211
|
),
|
|
212
212
|
/* @__PURE__ */ e(
|
|
213
|
-
|
|
213
|
+
l,
|
|
214
214
|
{
|
|
215
215
|
tooltip: "Trash Can",
|
|
216
216
|
iconName: "delete",
|
|
217
217
|
onClickGoToPlace: () => o("/Trash:0"),
|
|
218
218
|
handleDrawerClose: n,
|
|
219
|
-
handleDrawerOpen:
|
|
219
|
+
handleDrawerOpen: s
|
|
220
220
|
}
|
|
221
221
|
),
|
|
222
222
|
T?.isARReviewer && /* @__PURE__ */ e(
|
|
223
|
-
|
|
223
|
+
l,
|
|
224
224
|
{
|
|
225
225
|
tooltip: "Data Access Management",
|
|
226
226
|
iconName: "accessManagement",
|
|
227
227
|
onClickGoToPlace: () => o("/DataAccessManagement:default/Submissions"),
|
|
228
228
|
badgeContent: y,
|
|
229
229
|
handleDrawerClose: n,
|
|
230
|
-
handleDrawerOpen:
|
|
230
|
+
handleDrawerOpen: s
|
|
231
231
|
}
|
|
232
232
|
)
|
|
233
233
|
] }),
|
|
234
234
|
/* @__PURE__ */ e(
|
|
235
|
-
|
|
235
|
+
l,
|
|
236
236
|
{
|
|
237
237
|
tooltip: "Search",
|
|
238
238
|
iconName: "search",
|
|
239
239
|
onClickGoToPlace: () => o("/SearchV2:default"),
|
|
240
240
|
handleDrawerClose: n,
|
|
241
|
-
handleDrawerOpen:
|
|
241
|
+
handleDrawerOpen: s
|
|
242
242
|
}
|
|
243
243
|
)
|
|
244
244
|
] }),
|
|
245
245
|
/* @__PURE__ */ e("div", { className: "filler" }),
|
|
246
246
|
/* @__PURE__ */ t(x, { children: [
|
|
247
247
|
S && a && /* @__PURE__ */ e(
|
|
248
|
-
|
|
248
|
+
l,
|
|
249
249
|
{
|
|
250
250
|
tooltip: "Your Account",
|
|
251
251
|
onClickOpenNavMenu: 6,
|
|
@@ -259,11 +259,11 @@ function Je({
|
|
|
259
259
|
),
|
|
260
260
|
isCurrentlySelectedItem: c == 6,
|
|
261
261
|
handleDrawerClose: n,
|
|
262
|
-
handleDrawerOpen:
|
|
262
|
+
handleDrawerOpen: s
|
|
263
263
|
}
|
|
264
264
|
),
|
|
265
265
|
!S && /* @__PURE__ */ e(
|
|
266
|
-
|
|
266
|
+
l,
|
|
267
267
|
{
|
|
268
268
|
tooltip: "Sign in",
|
|
269
269
|
iconName: "login",
|
|
@@ -271,18 +271,18 @@ function Je({
|
|
|
271
271
|
M.toString()
|
|
272
272
|
),
|
|
273
273
|
handleDrawerClose: n,
|
|
274
|
-
handleDrawerOpen:
|
|
274
|
+
handleDrawerOpen: s
|
|
275
275
|
}
|
|
276
276
|
),
|
|
277
277
|
/* @__PURE__ */ e(
|
|
278
|
-
|
|
278
|
+
l,
|
|
279
279
|
{
|
|
280
280
|
tooltip: "Help",
|
|
281
281
|
iconName: "helpOutlined",
|
|
282
282
|
onClickOpenNavMenu: 7,
|
|
283
283
|
isCurrentlySelectedItem: c == 7,
|
|
284
284
|
handleDrawerClose: n,
|
|
285
|
-
handleDrawerOpen:
|
|
285
|
+
handleDrawerOpen: s
|
|
286
286
|
}
|
|
287
287
|
)
|
|
288
288
|
] })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SynapseNavDrawer.js","sources":["../../../src/components/SynapseNavDrawer/SynapseNavDrawer.tsx"],"sourcesContent":["import React from 'react'\nimport SynapseIconWhite from '@/assets/icons/SynapseIconWhite'\nimport SynapseLogoName from '@/assets/icons/SynapseLogoName'\nimport {\n useGetCurrentUserBundle,\n useGetDownloadListStatistics,\n useSearchAccessSubmissionsInfinite,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useApplicationSessionContext,\n useSynapseContext,\n} from '@/utils'\nimport { useOneSageURL } from '@/utils/hooks/useOneSageURL'\nimport {\n Badge,\n Drawer,\n InputAdornment,\n List,\n ListItemButton,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport {\n Direction,\n SubmissionSortField,\n SubmissionState,\n} from '@sage-bionetworks/synapse-types'\nimport { KeyboardEvent, ReactNode, useState } from 'react'\nimport { CreateProjectModal } from '../CreateProjectModal/CreateProjectModal'\nimport IconSvg, { IconName } from '../IconSvg/IconSvg'\nimport { PLANS_LINK } from '../SynapseHomepageV2/SynapseHomepageNavBar'\nimport UserCard from '../UserCard/UserCard'\nimport { DEFAULT_SEARCH_QUERY } from '@/utils/searchDefaults'\n\nexport type SynapseNavDrawerProps = {\n initIsOpen?: boolean\n gotoPlace: (href: string) => void\n}\n\ntype MenuItemParams = {\n tooltip: string\n iconName?: IconName\n onClickOpenNavMenu?: NavItem\n onClickGoToPlace?: () => void\n additionalChildren?: ReactNode\n badgeContent?: string | number\n isCurrentlySelectedItem?: boolean\n handleDrawerClose: () => void\n handleDrawerOpen: (navItem?: NavItem) => void\n}\n\nexport enum NavItem {\n PROJECTS,\n FAVORITES,\n TEAMS,\n CHALLENGES,\n DOWNLOADS,\n SEARCH,\n PROFILE,\n HELP,\n}\n\nexport const getSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...DEFAULT_SEARCH_QUERY,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst projectSearchJson = {\n // To support project search, we send this json object in the url.\n // We update the queryTerm array based on user input.\n ...DEFAULT_SEARCH_QUERY,\n booleanQuery: [\n {\n key: 'node_type',\n value: 'project',\n },\n ],\n}\nconst getProjectSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...projectSearchJson,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst NavDrawerListItem = (props: MenuItemParams): React.ReactNode => {\n const {\n tooltip,\n iconName,\n onClickOpenNavMenu,\n onClickGoToPlace,\n additionalChildren,\n badgeContent,\n isCurrentlySelectedItem = false,\n handleDrawerClose,\n handleDrawerOpen,\n } = props\n const handler =\n isCurrentlySelectedItem || onClickGoToPlace\n ? handleDrawerClose\n : () => {\n handleDrawerOpen(onClickOpenNavMenu)\n }\n const item = iconName ? (\n <>\n <IconSvg icon={iconName} /> {additionalChildren}{' '}\n </>\n ) : (\n additionalChildren\n )\n\n const listItem = (\n <Tooltip title={tooltip} placement=\"right\">\n <ListItemButton\n key={iconName}\n onClick={handler}\n className=\"SRC-whiteText\"\n selected={isCurrentlySelectedItem}\n >\n <Badge badgeContent={badgeContent} color=\"secondary\">\n {item}\n </Badge>\n </ListItemButton>\n </Tooltip>\n )\n\n return onClickGoToPlace ? (\n <li>\n <a\n onClick={onClickGoToPlace}\n rel=\"noopener noreferrer\"\n className=\"SRC-whiteText\"\n >\n {listItem}\n </a>\n </li>\n ) : (\n <li>{listItem}</li>\n )\n}\n\n/**\n * Displays the Synapse navigational drawer on the left side of the page. Has links to various areas if logged in.\n */\nexport function SynapseNavDrawer({\n initIsOpen = false,\n gotoPlace,\n}: SynapseNavDrawerProps) {\n const [isOpen, setOpen] = useState(initIsOpen)\n const [selectedItem, setSelectedItem] = useState<NavItem>()\n const [projectSearchText, setProjectSearchText] = useState<string>('')\n const [docSiteSearchText, setDocSiteSearchText] = useState<string>('')\n const [isShowingCreateProjectModal, setIsShowingCreateProjectModal] =\n useState<boolean>(false)\n\n const { clearSession } = useApplicationSessionContext()\n\n const { isAuthenticated } = useSynapseContext()\n\n const { data: currentUserBundle } = useGetCurrentUserBundle()\n\n // If the user is logged out, the UserBundle provides an \"anonymous\" user profile, so override that case with undefined\n const currentUserProfile =\n isAuthenticated && currentUserBundle\n ? currentUserBundle.userProfile\n : undefined\n\n const { data: downloadListStatistics } = useGetDownloadListStatistics({\n enabled: isAuthenticated,\n })\n\n const numberOfFilesInDownloadList = downloadListStatistics?.totalNumberOfFiles\n\n const { data: openSubmissionData } = useSearchAccessSubmissionsInfinite(\n {\n submissionState: SubmissionState.SUBMITTED,\n sort: [\n {\n field: SubmissionSortField.CREATED_ON,\n direction: Direction.DESC,\n },\n ],\n },\n {\n enabled: currentUserBundle?.isARReviewer,\n },\n )\n\n let countOfOpenSubmissionsForReview: number | string =\n openSubmissionData?.pages[0].results.length ?? 0\n if (openSubmissionData?.pages[0].nextPageToken) {\n countOfOpenSubmissionsForReview = `${countOfOpenSubmissionsForReview}+`\n }\n\n const handleDrawerOpen = (navItem?: NavItem) => {\n setOpen(true)\n setSelectedItem(navItem)\n }\n\n const handleDrawerClose = () => {\n setOpen(false)\n setSelectedItem(undefined)\n }\n\n const onProjectSearch = (searchTerm: string) => {\n gotoPlace(\n `/SearchV2:default?query=${getProjectSearchToken(\n searchTerm.split(/[ ,]+/),\n )}`,\n )\n }\n\n const oneSageURL = useOneSageURL()\n const accountSettingsURL = useOneSageURL('/authenticated/myaccount')\n\n return (\n <>\n <div className=\"SynapseNavDrawer\">\n <Drawer\n variant=\"permanent\"\n className={`SynapseNavDrawerMenu ${isOpen ? 'tempDrawerOpen' : ''}`}\n >\n <div onClick={handleDrawerClose}>\n <a\n className=\"synapseIcon\"\n rel=\"noopener noreferrer\"\n onClick={() => gotoPlace('/Home:x')}\n aria-label=\"Synapse Home\"\n >\n <SynapseIconWhite />\n </a>\n </div>\n <List>\n {isAuthenticated && currentUserProfile && (\n <>\n <NavDrawerListItem\n tooltip=\"Projects\"\n iconName=\"dashboard\"\n onClickOpenNavMenu={NavItem.PROJECTS}\n isCurrentlySelectedItem={selectedItem == NavItem.PROJECTS}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Favorites\"\n iconName=\"favTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/favorites`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Teams\"\n iconName=\"peopleTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(`/Profile:${currentUserProfile.ownerId}/teams`)\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Challenges\"\n iconName=\"challengesTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/challenges`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Download Cart\"\n iconName=\"download\"\n onClickGoToPlace={() => gotoPlace('/DownloadCart:0')}\n badgeContent={numberOfFilesInDownloadList}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Trash Can\"\n iconName=\"delete\"\n onClickGoToPlace={() => gotoPlace('/Trash:0')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n {currentUserBundle?.isARReviewer && (\n <NavDrawerListItem\n tooltip=\"Data Access Management\"\n iconName=\"accessManagement\"\n onClickGoToPlace={() =>\n gotoPlace('/DataAccessManagement:default/Submissions')\n }\n badgeContent={countOfOpenSubmissionsForReview}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n </>\n )}\n <NavDrawerListItem\n tooltip=\"Search\"\n iconName=\"search\"\n onClickGoToPlace={() => gotoPlace('/SearchV2:default')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n <div className=\"filler\" />\n <List>\n {isAuthenticated && currentUserProfile && (\n <NavDrawerListItem\n tooltip=\"Your Account\"\n onClickOpenNavMenu={NavItem.PROFILE}\n additionalChildren={\n <UserCard\n userProfile={currentUserProfile}\n size=\"AVATAR\"\n avatarSize=\"SMALL\"\n />\n }\n isCurrentlySelectedItem={selectedItem == NavItem.PROFILE}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n {!isAuthenticated && (\n <NavDrawerListItem\n tooltip=\"Sign in\"\n iconName=\"login\"\n onClickGoToPlace={() =>\n storeRedirectURLForOneSageLoginAndGotoURL(\n oneSageURL.toString(),\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n <NavDrawerListItem\n tooltip=\"Help\"\n iconName=\"helpOutlined\"\n onClickOpenNavMenu={NavItem.HELP}\n isCurrentlySelectedItem={selectedItem == NavItem.HELP}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n </Drawer>\n <Drawer\n variant=\"temporary\"\n open={isOpen}\n className={`SynapseNavContentDrawer`}\n onClose={handleDrawerClose}\n >\n <div className=\"synapseLogoNameContainer\">\n <SynapseLogoName />\n </div>\n <div className=\"navContentContainer\">\n {selectedItem == NavItem.PROJECTS && (\n <>\n <div className=\"header projectHeader\">Projects</div>\n <Tooltip title=\"Create a New Project\" placement=\"right\">\n <a\n className=\"createProjectLink\"\n onClick={() => {\n setIsShowingCreateProjectModal(true)\n handleDrawerClose()\n }}\n >\n <IconSvg icon=\"addCircleOutline\" />\n </a>\n </Tooltip>\n <TextField\n type=\"search\"\n placeholder=\"Search All Projects\"\n value={projectSearchText}\n onChange={event => {\n setProjectSearchText(event.target.value)\n }}\n onKeyDown={(event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n setProjectSearchText('')\n handleDrawerClose()\n onProjectSearch(\n (event.target as HTMLInputElement).value,\n )\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n All\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/created_by_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Created By Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/favorites`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Favorite Projects\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/shared_directly_with_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Shared With Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all_my_team_projects`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Team Projects\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.PROFILE && (\n <>\n <div className=\"header\">\n Welcome Back,\n <br />\n {currentUserProfile?.userName}!\n </div>\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/profile`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n View Profile\n </a>\n <a\n className=\"SRC-whiteText\"\n href={accountSettingsURL.toString()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Account Settings\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/RequestHistory:default`)}\n rel=\"noopener noreferrer\"\n >\n Access Requests\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/Following:0`)}\n rel=\"noopener noreferrer\"\n >\n Following\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => {\n void clearSession()\n }}\n rel=\"noopener noreferrer\"\n >\n Sign Out\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.HELP && (\n <>\n <div className=\"header\">Help</div>\n <TextField\n type=\"search\"\n placeholder=\"Search Documentation\"\n value={docSiteSearchText}\n onChange={event => {\n setDocSiteSearchText(event.target.value)\n }}\n onKeyDown={event => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n window.open(\n `https://help.synapse.org/search.html?max=10&s=docs&q=${encodeURI(\n (event.target as HTMLInputElement).value,\n )}`,\n )\n setDocSiteSearchText('')\n handleDrawerClose()\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/Getting-Started.2055471150.html\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Getting Started\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(PLANS_LINK)}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Plans\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Synapse Web Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://python-docs.synapse.org/en/stable/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Python Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://r-docs.synapse.org/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n R Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://blog.synapse.org/\"\n rel=\"noopener noreferrer\"\n >\n Blog\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://sagebionetworks.jira.com/servicedesk/customer/portals/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Contact Us\n </a>\n </div>\n </>\n )}\n </div>\n </Drawer>\n </div>\n <CreateProjectModal\n onClose={() => setIsShowingCreateProjectModal(false)}\n isShowingModal={isShowingCreateProjectModal}\n />\n </>\n )\n}\n\nexport default SynapseNavDrawer\n"],"names":["NavItem","getSearchToken","queryTerm","searchQuery","DEFAULT_SEARCH_QUERY","projectSearchJson","getProjectSearchToken","NavDrawerListItem","props","tooltip","iconName","onClickOpenNavMenu","onClickGoToPlace","additionalChildren","badgeContent","isCurrentlySelectedItem","handleDrawerClose","handleDrawerOpen","listItem","jsx","Tooltip","ListItemButton","Badge","jsxs","Fragment","IconSvg","SynapseNavDrawer","initIsOpen","gotoPlace","isOpen","setOpen","useState","selectedItem","setSelectedItem","projectSearchText","setProjectSearchText","docSiteSearchText","setDocSiteSearchText","isShowingCreateProjectModal","setIsShowingCreateProjectModal","clearSession","useApplicationSessionContext","isAuthenticated","useSynapseContext","currentUserBundle","useGetCurrentUserBundle","currentUserProfile","downloadListStatistics","useGetDownloadListStatistics","numberOfFilesInDownloadList","openSubmissionData","useSearchAccessSubmissionsInfinite","SubmissionState","SubmissionSortField","Direction","countOfOpenSubmissionsForReview","navItem","onProjectSearch","searchTerm","oneSageURL","useOneSageURL","accountSettingsURL","Drawer","SynapseIconWhite","List","UserCard","storeRedirectURLForOneSageLoginAndGotoURL","SynapseLogoName","TextField","event","InputAdornment","PLANS_LINK","CreateProjectModal"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SynapseNavDrawer.js","sources":["../../../src/components/SynapseNavDrawer/SynapseNavDrawer.tsx"],"sourcesContent":["import React from 'react'\nimport SynapseIconWhite from '@/assets/icons/SynapseIconWhite'\nimport SynapseLogoName from '@/assets/icons/SynapseLogoName'\nimport {\n useGetCurrentUserBundle,\n useGetDownloadListStatistics,\n useSearchAccessSubmissionsInfinite,\n} from '@/synapse-queries'\nimport {\n storeRedirectURLForOneSageLoginAndGotoURL,\n useApplicationSessionContext,\n useSynapseContext,\n} from '@/utils'\nimport { useOneSageURL } from '@/utils/hooks/useOneSageURL'\nimport {\n Badge,\n Drawer,\n InputAdornment,\n List,\n ListItemButton,\n TextField,\n Tooltip,\n} from '@mui/material'\nimport {\n Direction,\n SubmissionSortField,\n SubmissionState,\n} from '@sage-bionetworks/synapse-types'\nimport { KeyboardEvent, ReactNode, useState } from 'react'\nimport { CreateProjectModal } from '../CreateProjectModal/CreateProjectModal'\nimport IconSvg, { IconName } from '../IconSvg/IconSvg'\nimport { PLANS_LINK } from '../SynapseHomepageV2/SynapseHomepageNavBar'\nimport UserCard from '../UserCard/UserCard'\nimport { DEFAULT_SEARCH_QUERY } from '@/utils/searchDefaults'\n\nexport type SynapseNavDrawerProps = {\n initIsOpen?: boolean\n gotoPlace: (href: string) => void\n}\n\ntype MenuItemParams = {\n tooltip: string\n iconName?: IconName\n onClickOpenNavMenu?: NavItem\n onClickGoToPlace?: () => void\n additionalChildren?: ReactNode\n badgeContent?: string | number\n isCurrentlySelectedItem?: boolean\n handleDrawerClose: () => void\n handleDrawerOpen: (navItem?: NavItem) => void\n}\n\nexport enum NavItem {\n PROJECTS,\n FAVORITES,\n TEAMS,\n CHALLENGES,\n DOWNLOADS,\n SEARCH,\n PROFILE,\n HELP,\n}\n\nexport const getSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...DEFAULT_SEARCH_QUERY,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst projectSearchJson = {\n // To support project search, we send this json object in the url.\n // We update the queryTerm array based on user input.\n ...DEFAULT_SEARCH_QUERY,\n booleanQuery: [\n {\n key: 'node_type',\n value: 'project',\n },\n ],\n}\nconst getProjectSearchToken = (queryTerm: string[]) => {\n const searchQuery = {\n ...projectSearchJson,\n queryTerm,\n }\n return encodeURIComponent(JSON.stringify(searchQuery))\n}\n\nconst NavDrawerListItem = (props: MenuItemParams): React.ReactNode => {\n const {\n tooltip,\n iconName,\n onClickOpenNavMenu,\n onClickGoToPlace,\n additionalChildren,\n badgeContent,\n isCurrentlySelectedItem = false,\n handleDrawerClose,\n handleDrawerOpen,\n } = props\n const handler =\n isCurrentlySelectedItem || onClickGoToPlace\n ? handleDrawerClose\n : () => {\n handleDrawerOpen(onClickOpenNavMenu)\n }\n const item = iconName ? (\n <>\n <IconSvg icon={iconName} /> {additionalChildren}{' '}\n </>\n ) : (\n additionalChildren\n )\n\n const listItem = (\n <Tooltip title={tooltip} placement=\"right\">\n <ListItemButton\n key={iconName}\n onClick={handler}\n className=\"SRC-whiteText\"\n selected={isCurrentlySelectedItem}\n >\n <Badge badgeContent={badgeContent} color=\"secondary\">\n {item}\n </Badge>\n </ListItemButton>\n </Tooltip>\n )\n\n return onClickGoToPlace ? (\n <li>\n <a\n onClick={onClickGoToPlace}\n rel=\"noopener noreferrer\"\n className=\"SRC-whiteText\"\n >\n {listItem}\n </a>\n </li>\n ) : (\n <li>{listItem}</li>\n )\n}\n\n/**\n * Displays the Synapse navigational drawer on the left side of the page. Has links to various areas if logged in.\n */\nexport function SynapseNavDrawer({\n initIsOpen = false,\n gotoPlace,\n}: SynapseNavDrawerProps) {\n const [isOpen, setOpen] = useState(initIsOpen)\n const [selectedItem, setSelectedItem] = useState<NavItem>()\n const [projectSearchText, setProjectSearchText] = useState<string>('')\n const [docSiteSearchText, setDocSiteSearchText] = useState<string>('')\n const [isShowingCreateProjectModal, setIsShowingCreateProjectModal] =\n useState<boolean>(false)\n\n const { clearSession } = useApplicationSessionContext()\n\n const { isAuthenticated } = useSynapseContext()\n\n const { data: currentUserBundle } = useGetCurrentUserBundle()\n\n // If the user is logged out, the UserBundle provides an \"anonymous\" user profile, so override that case with undefined\n const currentUserProfile =\n isAuthenticated && currentUserBundle\n ? currentUserBundle.userProfile\n : undefined\n\n const { data: downloadListStatistics } = useGetDownloadListStatistics({\n enabled: isAuthenticated,\n })\n\n const numberOfFilesInDownloadList = downloadListStatistics?.totalNumberOfFiles\n\n const { data: openSubmissionData } = useSearchAccessSubmissionsInfinite(\n {\n submissionState: SubmissionState.SUBMITTED,\n sort: [\n {\n field: SubmissionSortField.CREATED_ON,\n direction: Direction.DESC,\n },\n ],\n },\n {\n enabled: currentUserBundle?.isARReviewer,\n },\n )\n\n let countOfOpenSubmissionsForReview: number | string =\n openSubmissionData?.pages[0].results.length ?? 0\n if (openSubmissionData?.pages[0].nextPageToken) {\n countOfOpenSubmissionsForReview = `${countOfOpenSubmissionsForReview}+`\n }\n\n const handleDrawerOpen = (navItem?: NavItem) => {\n setOpen(true)\n setSelectedItem(navItem)\n }\n\n const handleDrawerClose = () => {\n setOpen(false)\n setSelectedItem(undefined)\n }\n\n const onProjectSearch = (searchTerm: string) => {\n gotoPlace(\n `/SearchV2:default?query=${getProjectSearchToken(\n searchTerm.split(/[ ,]+/),\n )}`,\n )\n }\n\n const oneSageURL = useOneSageURL()\n const accountSettingsURL = useOneSageURL('/authenticated/myaccount')\n\n return (\n <>\n <div className=\"SynapseNavDrawer\">\n <Drawer\n variant=\"permanent\"\n className={`SynapseNavDrawerMenu ${isOpen ? 'tempDrawerOpen' : ''}`}\n >\n <div onClick={handleDrawerClose}>\n <a\n className=\"synapseIcon\"\n rel=\"noopener noreferrer\"\n onClick={() => gotoPlace('/Home:x')}\n aria-label=\"Synapse Home\"\n >\n <SynapseIconWhite />\n </a>\n </div>\n <List>\n {isAuthenticated && currentUserProfile && (\n <>\n <NavDrawerListItem\n tooltip=\"Projects\"\n iconName=\"dashboard\"\n onClickOpenNavMenu={NavItem.PROJECTS}\n isCurrentlySelectedItem={selectedItem == NavItem.PROJECTS}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Favorites\"\n iconName=\"favTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/favorites`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Teams\"\n iconName=\"peopleTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(`/Profile:${currentUserProfile.ownerId}/teams`)\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Challenges\"\n iconName=\"challengesTwoTone\"\n onClickGoToPlace={() =>\n gotoPlace(\n `/Profile:${currentUserProfile.ownerId}/challenges`,\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Download List\"\n iconName=\"download\"\n onClickGoToPlace={() => gotoPlace('/DownloadCart:0')}\n badgeContent={numberOfFilesInDownloadList}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n <NavDrawerListItem\n tooltip=\"Trash Can\"\n iconName=\"delete\"\n onClickGoToPlace={() => gotoPlace('/Trash:0')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n {currentUserBundle?.isARReviewer && (\n <NavDrawerListItem\n tooltip=\"Data Access Management\"\n iconName=\"accessManagement\"\n onClickGoToPlace={() =>\n gotoPlace('/DataAccessManagement:default/Submissions')\n }\n badgeContent={countOfOpenSubmissionsForReview}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n </>\n )}\n <NavDrawerListItem\n tooltip=\"Search\"\n iconName=\"search\"\n onClickGoToPlace={() => gotoPlace('/SearchV2:default')}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n <div className=\"filler\" />\n <List>\n {isAuthenticated && currentUserProfile && (\n <NavDrawerListItem\n tooltip=\"Your Account\"\n onClickOpenNavMenu={NavItem.PROFILE}\n additionalChildren={\n <UserCard\n userProfile={currentUserProfile}\n size=\"AVATAR\"\n avatarSize=\"SMALL\"\n />\n }\n isCurrentlySelectedItem={selectedItem == NavItem.PROFILE}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n {!isAuthenticated && (\n <NavDrawerListItem\n tooltip=\"Sign in\"\n iconName=\"login\"\n onClickGoToPlace={() =>\n storeRedirectURLForOneSageLoginAndGotoURL(\n oneSageURL.toString(),\n )\n }\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n )}\n <NavDrawerListItem\n tooltip=\"Help\"\n iconName=\"helpOutlined\"\n onClickOpenNavMenu={NavItem.HELP}\n isCurrentlySelectedItem={selectedItem == NavItem.HELP}\n handleDrawerClose={handleDrawerClose}\n handleDrawerOpen={handleDrawerOpen}\n />\n </List>\n </Drawer>\n <Drawer\n variant=\"temporary\"\n open={isOpen}\n className={`SynapseNavContentDrawer`}\n onClose={handleDrawerClose}\n >\n <div className=\"synapseLogoNameContainer\">\n <SynapseLogoName />\n </div>\n <div className=\"navContentContainer\">\n {selectedItem == NavItem.PROJECTS && (\n <>\n <div className=\"header projectHeader\">Projects</div>\n <Tooltip title=\"Create a New Project\" placement=\"right\">\n <a\n className=\"createProjectLink\"\n onClick={() => {\n setIsShowingCreateProjectModal(true)\n handleDrawerClose()\n }}\n >\n <IconSvg icon=\"addCircleOutline\" />\n </a>\n </Tooltip>\n <TextField\n type=\"search\"\n placeholder=\"Search All Projects\"\n value={projectSearchText}\n onChange={event => {\n setProjectSearchText(event.target.value)\n }}\n onKeyDown={(event: KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n setProjectSearchText('')\n handleDrawerClose()\n onProjectSearch(\n (event.target as HTMLInputElement).value,\n )\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n All\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/created_by_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Created By Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/favorites`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Favorite Projects\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/shared_directly_with_me`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Shared With Me\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/projects/all_my_team_projects`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n Team Projects\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.PROFILE && (\n <>\n <div className=\"header\">\n Welcome Back,\n <br />\n {currentUserProfile?.userName}!\n </div>\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n onClick={() =>\n gotoPlace(\n `/Profile:${currentUserProfile?.ownerId}/profile`,\n )\n }\n rel=\"noopener noreferrer\"\n >\n View Profile\n </a>\n <a\n className=\"SRC-whiteText\"\n href={accountSettingsURL.toString()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n Account Settings\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/RequestHistory:default`)}\n rel=\"noopener noreferrer\"\n >\n Access Requests\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(`/Following:0`)}\n rel=\"noopener noreferrer\"\n >\n Following\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => {\n void clearSession()\n }}\n rel=\"noopener noreferrer\"\n >\n Sign Out\n </a>\n </div>\n </>\n )}\n {selectedItem == NavItem.HELP && (\n <>\n <div className=\"header\">Help</div>\n <TextField\n type=\"search\"\n placeholder=\"Search Documentation\"\n value={docSiteSearchText}\n onChange={event => {\n setDocSiteSearchText(event.target.value)\n }}\n onKeyDown={event => {\n if (event.key === 'Enter') {\n if ((event.target as HTMLInputElement).value !== '') {\n window.open(\n `https://help.synapse.org/search.html?max=10&s=docs&q=${encodeURI(\n (event.target as HTMLInputElement).value,\n )}`,\n )\n setDocSiteSearchText('')\n handleDrawerClose()\n }\n }\n }}\n slotProps={{\n input: {\n startAdornment: (\n <InputAdornment position=\"start\">\n <IconSvg icon=\"searchOutlined\" />\n </InputAdornment>\n ),\n },\n }}\n />\n\n <div className=\"linkList\" onClick={handleDrawerClose}>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/Getting-Started.2055471150.html\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Getting Started\n </a>\n <a\n className=\"SRC-whiteText\"\n onClick={() => gotoPlace(PLANS_LINK)}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Plans\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://help.synapse.org/docs/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Synapse Web Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://python-docs.synapse.org/en/stable/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Python Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://r-docs.synapse.org/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n R Client Documentation\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://blog.synapse.org/\"\n rel=\"noopener noreferrer\"\n >\n Blog\n </a>\n <a\n className=\"SRC-whiteText\"\n href=\"https://sagebionetworks.jira.com/servicedesk/customer/portals/\"\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n Contact Us\n </a>\n </div>\n </>\n )}\n </div>\n </Drawer>\n </div>\n <CreateProjectModal\n onClose={() => setIsShowingCreateProjectModal(false)}\n isShowingModal={isShowingCreateProjectModal}\n />\n </>\n )\n}\n\nexport default SynapseNavDrawer\n"],"names":["NavItem","getSearchToken","queryTerm","searchQuery","DEFAULT_SEARCH_QUERY","projectSearchJson","getProjectSearchToken","NavDrawerListItem","props","tooltip","iconName","onClickOpenNavMenu","onClickGoToPlace","additionalChildren","badgeContent","isCurrentlySelectedItem","handleDrawerClose","handleDrawerOpen","listItem","jsx","Tooltip","ListItemButton","Badge","jsxs","Fragment","IconSvg","SynapseNavDrawer","initIsOpen","gotoPlace","isOpen","setOpen","useState","selectedItem","setSelectedItem","projectSearchText","setProjectSearchText","docSiteSearchText","setDocSiteSearchText","isShowingCreateProjectModal","setIsShowingCreateProjectModal","clearSession","useApplicationSessionContext","isAuthenticated","useSynapseContext","currentUserBundle","useGetCurrentUserBundle","currentUserProfile","downloadListStatistics","useGetDownloadListStatistics","numberOfFilesInDownloadList","openSubmissionData","useSearchAccessSubmissionsInfinite","SubmissionState","SubmissionSortField","Direction","countOfOpenSubmissionsForReview","navItem","onProjectSearch","searchTerm","oneSageURL","useOneSageURL","accountSettingsURL","Drawer","SynapseIconWhite","List","UserCard","storeRedirectURLForOneSageLoginAndGotoURL","SynapseLogoName","TextField","event","InputAdornment","PLANS_LINK","CreateProjectModal"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsx as o, jsxs as x, Fragment as
|
|
2
|
-
import
|
|
3
|
-
import { useGetAddToDownloadListRequestForCurrentQuery as
|
|
1
|
+
import { jsx as o, jsxs as x, Fragment as L } from "react/jsx-runtime";
|
|
2
|
+
import M from "../../download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert.js";
|
|
3
|
+
import { useGetAddToDownloadListRequestForCurrentQuery as _ } from "../../QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery.js";
|
|
4
4
|
import "../../../synapse-client/SynapseClient.js";
|
|
5
5
|
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
|
|
6
6
|
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
|
|
@@ -12,8 +12,8 @@ import "lodash-es";
|
|
|
12
12
|
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
|
|
13
13
|
import "@tanstack/react-query";
|
|
14
14
|
import "../../../utils/PermissionLevelToAccessType.js";
|
|
15
|
-
import { useState as
|
|
16
|
-
import { useSynapseContext as
|
|
15
|
+
import { useState as g } from "react";
|
|
16
|
+
import { useSynapseContext as D } from "../../../utils/context/SynapseContext.js";
|
|
17
17
|
import "use-deep-compare-effect";
|
|
18
18
|
import { Button as a, Box as E } from "@mui/material";
|
|
19
19
|
import "../../../utils/hooks/useCookiePreferences.js";
|
|
@@ -45,12 +45,12 @@ import { RowSelectionUI as j } from "./RowSelectionUI.js";
|
|
|
45
45
|
import { SignInRequiredModal as U } from "../../SignInRequiredModal/SignInRequiredModal.js";
|
|
46
46
|
const Y = "SendToAnalysisPlatformRowSelectionControlButton";
|
|
47
47
|
function Qo(d) {
|
|
48
|
-
const { customControls: p = [], remount: e } = d, { isAuthenticated: u } =
|
|
48
|
+
const { customControls: p = [], remount: e } = d, { isAuthenticated: u } = D(), [c, n] = g(!1), { entityId: i, versionNumber: f, getCurrentQueryRequest: A } = q(), { data: w } = N(i, f), { data: s } = G(), [r, m] = b(F), S = _(), {
|
|
49
49
|
setIsShowingExportToAnalysisPlatformModal: C,
|
|
50
50
|
enabledExternalAnalysisPlatforms: T
|
|
51
51
|
} = Q(), y = T.length > 0, h = () => {
|
|
52
|
-
|
|
53
|
-
}, I = O(
|
|
52
|
+
m([]), e && e();
|
|
53
|
+
}, I = O(s?.columnModels), R = B(
|
|
54
54
|
w,
|
|
55
55
|
I
|
|
56
56
|
);
|
|
@@ -59,15 +59,15 @@ function Qo(d) {
|
|
|
59
59
|
{
|
|
60
60
|
show: r.length > 0,
|
|
61
61
|
selectedRowCount: r.length,
|
|
62
|
-
onClearSelection: () =>
|
|
63
|
-
customControls: /* @__PURE__ */ x(
|
|
62
|
+
onClearSelection: () => m([]),
|
|
63
|
+
customControls: /* @__PURE__ */ x(L, { children: [
|
|
64
64
|
p.map((t) => /* @__PURE__ */ o(
|
|
65
65
|
k,
|
|
66
66
|
{
|
|
67
67
|
variant: "contained",
|
|
68
68
|
callbackData: {
|
|
69
69
|
tableId: i,
|
|
70
|
-
queryMetadata:
|
|
70
|
+
queryMetadata: s,
|
|
71
71
|
selectedRows: r,
|
|
72
72
|
refresh: h,
|
|
73
73
|
request: A()
|
|
@@ -108,7 +108,7 @@ function Qo(d) {
|
|
|
108
108
|
width: "100%"
|
|
109
109
|
},
|
|
110
110
|
children: /* @__PURE__ */ o(
|
|
111
|
-
|
|
111
|
+
M,
|
|
112
112
|
{
|
|
113
113
|
addToDownloadListRequest: S,
|
|
114
114
|
onClose: () => {
|
|
@@ -124,7 +124,7 @@ function Qo(d) {
|
|
|
124
124
|
);
|
|
125
125
|
},
|
|
126
126
|
startIcon: /* @__PURE__ */ o(P, {}),
|
|
127
|
-
children: "Add to Download
|
|
127
|
+
children: "Add to Download List"
|
|
128
128
|
}
|
|
129
129
|
)
|
|
130
130
|
] })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RowSelectionControls.js","sources":["../../../../src/components/SynapseTable/RowSelection/RowSelectionControls.tsx"],"sourcesContent":["import AddToDownloadListConfirmationAlert from '@/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert'\nimport { useGetAddToDownloadListRequestForCurrentQuery } from '@/components/QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery'\nimport { useGetEntity } from '@/synapse-queries'\nimport { canTableQueryBeAddedToDownloadList } from '@/utils/functions/queryUtils'\nimport { GetAppTwoTone } from '@mui/icons-material'\nimport { Box, Button } from '@mui/material'\nimport { Table } from '@sage-bionetworks/synapse-types'\nimport { useAtom } from 'jotai'\nimport { useState } from 'react'\nimport { toast } from 'react-hot-toast'\nimport { useSynapseContext } from '@/utils'\nimport { useQueryContext } from '../../QueryContext'\nimport { useQueryVisualizationContext } from '../../QueryVisualizationWrapper'\nimport { selectedRowsAtom } from '../../QueryWrapper/TableRowSelectionState'\nimport { useGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport {\n getFileColumnModelId,\n SEND_TO_ANALYSIS_PLATFORM_SIGN_IN_MESSAGE,\n} from '../SynapseTableUtils'\nimport { CustomControlButton } from '../CustomControls/CustomControlButton'\nimport { CustomControl } from '../TopLevelControls/TopLevelControls'\nimport { RowSelectionUI } from './RowSelectionUI'\nimport { SignInRequiredModal } from '@/components/SignInRequiredModal/SignInRequiredModal'\n\nconst SEND_TO_ANALYSIS_PLATFORM_BUTTON_ID =\n 'SendToAnalysisPlatformRowSelectionControlButton'\n\nexport type RowSelectionControlsProps = {\n customControls?: CustomControl[]\n remount?: () => void\n}\n\n/**\n * This component is responsible for rendering the RowSelectionUI and the custom controls. Must be wrapped in a\n * QueryContext and a QueryVisualizationContext.\n * @param props\n * @constructor\n */\nexport function RowSelectionControls(props: RowSelectionControlsProps) {\n const { customControls = [], remount } = props\n const { isAuthenticated } = useSynapseContext()\n const [showLoginModal, setShowLoginModal] = useState(false)\n const { entityId, versionNumber, getCurrentQueryRequest } = useQueryContext()\n const { data: entity } = useGetEntity<Table>(entityId, versionNumber)\n const { data: queryMetadata } = useGetQueryMetadata()\n const [selectedRows, setSelectedRows] = useAtom(selectedRowsAtom)\n\n const addToDownloadListRequest =\n useGetAddToDownloadListRequestForCurrentQuery()\n\n const {\n setIsShowingExportToAnalysisPlatformModal,\n enabledExternalAnalysisPlatforms,\n } = useQueryVisualizationContext()\n\n const showExportToAnalysisPlatformButton =\n enabledExternalAnalysisPlatforms.length > 0\n\n const refresh = () => {\n // clear selection\n setSelectedRows([])\n if (remount) {\n remount()\n }\n }\n const fileColumnId = getFileColumnModelId(queryMetadata?.columnModels)\n const showAddToDownloadCart = canTableQueryBeAddedToDownloadList(\n entity,\n fileColumnId,\n )\n\n return (\n <RowSelectionUI\n show={selectedRows.length > 0}\n selectedRowCount={selectedRows.length}\n onClearSelection={() => setSelectedRows([])}\n customControls={\n <>\n {customControls.map(customControl => {\n return (\n <CustomControlButton\n key={customControl.buttonText}\n variant=\"contained\"\n callbackData={{\n tableId: entityId!,\n queryMetadata: queryMetadata,\n selectedRows,\n refresh,\n request: getCurrentQueryRequest(),\n }}\n control={customControl}\n startIcon={customControl.icon}\n />\n )\n })}\n {/* TODO: Generic button */}\n {showExportToAnalysisPlatformButton && (\n <Button\n variant=\"outlined\"\n onClick={() => {\n if (isAuthenticated) {\n setIsShowingExportToAnalysisPlatformModal(true)\n } else {\n setShowLoginModal(true)\n }\n }}\n id={SEND_TO_ANALYSIS_PLATFORM_BUTTON_ID}\n >\n Send to Analysis Platform\n </Button>\n )}\n {showLoginModal && (\n <SignInRequiredModal\n onHide={() => setShowLoginModal(false)}\n content={SEND_TO_ANALYSIS_PLATFORM_SIGN_IN_MESSAGE}\n />\n )}\n {showAddToDownloadCart && (\n <Button\n variant=\"contained\"\n onClick={() => {\n const toastId = toast.custom(\n <Box\n sx={{\n width: '100%',\n }}\n >\n <AddToDownloadListConfirmationAlert\n addToDownloadListRequest={addToDownloadListRequest}\n onClose={() => {\n toast.dismiss(toastId)\n }}\n />\n </Box>,\n {\n duration: Infinity,\n },\n )\n }}\n startIcon={<GetAppTwoTone />}\n >\n Add to Download
|
|
1
|
+
{"version":3,"file":"RowSelectionControls.js","sources":["../../../../src/components/SynapseTable/RowSelection/RowSelectionControls.tsx"],"sourcesContent":["import AddToDownloadListConfirmationAlert from '@/components/download_list/AddToDownloadListConfirmationAlert/AddToDownloadListConfirmationAlert'\nimport { useGetAddToDownloadListRequestForCurrentQuery } from '@/components/QueryWrapper/useGetAddToDownloadListRequestForCurrentQuery'\nimport { useGetEntity } from '@/synapse-queries'\nimport { canTableQueryBeAddedToDownloadList } from '@/utils/functions/queryUtils'\nimport { GetAppTwoTone } from '@mui/icons-material'\nimport { Box, Button } from '@mui/material'\nimport { Table } from '@sage-bionetworks/synapse-types'\nimport { useAtom } from 'jotai'\nimport { useState } from 'react'\nimport { toast } from 'react-hot-toast'\nimport { useSynapseContext } from '@/utils'\nimport { useQueryContext } from '../../QueryContext'\nimport { useQueryVisualizationContext } from '../../QueryVisualizationWrapper'\nimport { selectedRowsAtom } from '../../QueryWrapper/TableRowSelectionState'\nimport { useGetQueryMetadata } from '../../QueryWrapper/useGetQueryMetadata'\nimport {\n getFileColumnModelId,\n SEND_TO_ANALYSIS_PLATFORM_SIGN_IN_MESSAGE,\n} from '../SynapseTableUtils'\nimport { CustomControlButton } from '../CustomControls/CustomControlButton'\nimport { CustomControl } from '../TopLevelControls/TopLevelControls'\nimport { RowSelectionUI } from './RowSelectionUI'\nimport { SignInRequiredModal } from '@/components/SignInRequiredModal/SignInRequiredModal'\n\nconst SEND_TO_ANALYSIS_PLATFORM_BUTTON_ID =\n 'SendToAnalysisPlatformRowSelectionControlButton'\n\nexport type RowSelectionControlsProps = {\n customControls?: CustomControl[]\n remount?: () => void\n}\n\n/**\n * This component is responsible for rendering the RowSelectionUI and the custom controls. Must be wrapped in a\n * QueryContext and a QueryVisualizationContext.\n * @param props\n * @constructor\n */\nexport function RowSelectionControls(props: RowSelectionControlsProps) {\n const { customControls = [], remount } = props\n const { isAuthenticated } = useSynapseContext()\n const [showLoginModal, setShowLoginModal] = useState(false)\n const { entityId, versionNumber, getCurrentQueryRequest } = useQueryContext()\n const { data: entity } = useGetEntity<Table>(entityId, versionNumber)\n const { data: queryMetadata } = useGetQueryMetadata()\n const [selectedRows, setSelectedRows] = useAtom(selectedRowsAtom)\n\n const addToDownloadListRequest =\n useGetAddToDownloadListRequestForCurrentQuery()\n\n const {\n setIsShowingExportToAnalysisPlatformModal,\n enabledExternalAnalysisPlatforms,\n } = useQueryVisualizationContext()\n\n const showExportToAnalysisPlatformButton =\n enabledExternalAnalysisPlatforms.length > 0\n\n const refresh = () => {\n // clear selection\n setSelectedRows([])\n if (remount) {\n remount()\n }\n }\n const fileColumnId = getFileColumnModelId(queryMetadata?.columnModels)\n const showAddToDownloadCart = canTableQueryBeAddedToDownloadList(\n entity,\n fileColumnId,\n )\n\n return (\n <RowSelectionUI\n show={selectedRows.length > 0}\n selectedRowCount={selectedRows.length}\n onClearSelection={() => setSelectedRows([])}\n customControls={\n <>\n {customControls.map(customControl => {\n return (\n <CustomControlButton\n key={customControl.buttonText}\n variant=\"contained\"\n callbackData={{\n tableId: entityId!,\n queryMetadata: queryMetadata,\n selectedRows,\n refresh,\n request: getCurrentQueryRequest(),\n }}\n control={customControl}\n startIcon={customControl.icon}\n />\n )\n })}\n {/* TODO: Generic button */}\n {showExportToAnalysisPlatformButton && (\n <Button\n variant=\"outlined\"\n onClick={() => {\n if (isAuthenticated) {\n setIsShowingExportToAnalysisPlatformModal(true)\n } else {\n setShowLoginModal(true)\n }\n }}\n id={SEND_TO_ANALYSIS_PLATFORM_BUTTON_ID}\n >\n Send to Analysis Platform\n </Button>\n )}\n {showLoginModal && (\n <SignInRequiredModal\n onHide={() => setShowLoginModal(false)}\n content={SEND_TO_ANALYSIS_PLATFORM_SIGN_IN_MESSAGE}\n />\n )}\n {showAddToDownloadCart && (\n <Button\n variant=\"contained\"\n onClick={() => {\n const toastId = toast.custom(\n <Box\n sx={{\n width: '100%',\n }}\n >\n <AddToDownloadListConfirmationAlert\n addToDownloadListRequest={addToDownloadListRequest}\n onClose={() => {\n toast.dismiss(toastId)\n }}\n />\n </Box>,\n {\n duration: Infinity,\n },\n )\n }}\n startIcon={<GetAppTwoTone />}\n >\n Add to Download List\n </Button>\n )}\n </>\n }\n />\n )\n}\n"],"names":["SEND_TO_ANALYSIS_PLATFORM_BUTTON_ID","RowSelectionControls","props","customControls","remount","isAuthenticated","useSynapseContext","showLoginModal","setShowLoginModal","useState","entityId","versionNumber","getCurrentQueryRequest","useQueryContext","entity","useGetEntity","queryMetadata","useGetQueryMetadata","selectedRows","setSelectedRows","useAtom","selectedRowsAtom","addToDownloadListRequest","useGetAddToDownloadListRequestForCurrentQuery","setIsShowingExportToAnalysisPlatformModal","enabledExternalAnalysisPlatforms","useQueryVisualizationContext","showExportToAnalysisPlatformButton","refresh","fileColumnId","getFileColumnModelId","showAddToDownloadCart","canTableQueryBeAddedToDownloadList","jsx","RowSelectionUI","jsxs","Fragment","customControl","CustomControlButton","Button","SignInRequiredModal","SEND_TO_ANALYSIS_PLATFORM_SIGN_IN_MESSAGE","toastId","toast","Box","AddToDownloadListConfirmationAlert","GetAppTwoTone"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAMA,IACJ;AAaK,SAASC,GAAqBC,GAAkC;AACrE,QAAM,EAAE,gBAAAC,IAAiB,IAAI,SAAAC,MAAYF,GACnC,EAAE,iBAAAG,EAAA,IAAoBC,EAAA,GACtB,CAACC,GAAgBC,CAAiB,IAAIC,EAAS,EAAK,GACpD,EAAE,UAAAC,GAAU,eAAAC,GAAe,wBAAAC,EAAA,IAA2BC,EAAA,GACtD,EAAE,MAAMC,EAAA,IAAWC,EAAoBL,GAAUC,CAAa,GAC9D,EAAE,MAAMK,EAAA,IAAkBC,EAAA,GAC1B,CAACC,GAAcC,CAAe,IAAIC,EAAQC,CAAgB,GAE1DC,IACJC,EAAA,GAEI;AAAA,IACJ,2CAAAC;AAAA,IACA,kCAAAC;AAAA,EAAA,IACEC,EAAA,GAEEC,IACJF,EAAiC,SAAS,GAEtCG,IAAU,MAAM;AAEpB,IAAAT,EAAgB,CAAA,CAAE,GACdf,KACFA,EAAA;AAAA,EAEJ,GACMyB,IAAeC,EAAqBd,GAAe,YAAY,GAC/De,IAAwBC;AAAA,IAC5BlB;AAAA,IACAe;AAAA,EAAA;AAGF,SACE,gBAAAI;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMhB,EAAa,SAAS;AAAA,MAC5B,kBAAkBA,EAAa;AAAA,MAC/B,kBAAkB,MAAMC,EAAgB,EAAE;AAAA,MAC1C,gBACE,gBAAAgB,EAAAC,GAAA,EACG,UAAA;AAAA,QAAAjC,EAAe,IAAI,CAAAkC,MAEhB,gBAAAJ;AAAA,UAACK;AAAA,UAAA;AAAA,YAEC,SAAQ;AAAA,YACR,cAAc;AAAA,cACZ,SAAS5B;AAAA,cACT,eAAAM;AAAA,cACA,cAAAE;AAAA,cACA,SAAAU;AAAA,cACA,SAAShB,EAAA;AAAA,YAAuB;AAAA,YAElC,SAASyB;AAAA,YACT,WAAWA,EAAc;AAAA,UAAA;AAAA,UAVpBA,EAAc;AAAA,QAAA,CAaxB;AAAA,QAEAV,KACC,gBAAAM;AAAA,UAACM;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,SAAS,MAAM;AACb,cAAIlC,IACFmB,EAA0C,EAAI,IAE9ChB,EAAkB,EAAI;AAAA,YAE1B;AAAA,YACA,IAAIR;AAAA,YACL,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAIFO,KACC,gBAAA0B;AAAA,UAACO;AAAA,UAAA;AAAA,YACC,QAAQ,MAAMhC,EAAkB,EAAK;AAAA,YACrC,SAASiC;AAAA,UAAA;AAAA,QAAA;AAAA,QAGZV,KACC,gBAAAE;AAAA,UAACM;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,SAAS,MAAM;AACb,oBAAMG,IAAUC,EAAM;AAAA,gBACpB,gBAAAV;AAAA,kBAACW;AAAA,kBAAA;AAAA,oBACC,IAAI;AAAA,sBACF,OAAO;AAAA,oBAAA;AAAA,oBAGT,UAAA,gBAAAX;AAAA,sBAACY;AAAA,sBAAA;AAAA,wBACC,0BAAAvB;AAAA,wBACA,SAAS,MAAM;AACb,0BAAAqB,EAAM,QAAQD,CAAO;AAAA,wBACvB;AAAA,sBAAA;AAAA,oBAAA;AAAA,kBACF;AAAA,gBAAA;AAAA,gBAEF;AAAA,kBACE,UAAU;AAAA,gBAAA;AAAA,cACZ;AAAA,YAEJ;AAAA,YACA,6BAAYI,GAAA,EAAc;AAAA,YAC3B,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED,EAAA,CAEJ;AAAA,IAAA;AAAA,EAAA;AAIR;"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import u from "pluralize";
|
|
2
2
|
import { upperFirst as A } from "lodash-es";
|
|
3
|
-
const f = "to Download
|
|
4
|
-
function
|
|
3
|
+
const f = "to Download List";
|
|
4
|
+
function i(r, o, e) {
|
|
5
5
|
return r ? o.length : e;
|
|
6
6
|
}
|
|
7
|
-
function
|
|
7
|
+
function s(r, o, e, l, n) {
|
|
8
8
|
if (!r && !o)
|
|
9
9
|
return `all ${u(n)}`;
|
|
10
|
-
const t =
|
|
10
|
+
const t = i(
|
|
11
11
|
o,
|
|
12
12
|
e,
|
|
13
13
|
l
|
|
@@ -17,12 +17,12 @@ function $(r, o, e, l, n) {
|
|
|
17
17
|
t
|
|
18
18
|
)}` : u(n);
|
|
19
19
|
}
|
|
20
|
-
function
|
|
20
|
+
function $(r, o, e, l, n) {
|
|
21
21
|
if (!r && !o)
|
|
22
22
|
return `Add All ${A(
|
|
23
23
|
u(n)
|
|
24
24
|
)} ${f}`;
|
|
25
|
-
const t =
|
|
25
|
+
const t = i(
|
|
26
26
|
o,
|
|
27
27
|
e,
|
|
28
28
|
l
|
|
@@ -32,8 +32,8 @@ function c(r, o, e, l, n) {
|
|
|
32
32
|
)} ${f}` : `Add ${f}`;
|
|
33
33
|
}
|
|
34
34
|
export {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
35
|
+
$ as getNumberOfResultsToAddToDownloadListCopy,
|
|
36
|
+
i as getNumberOfResultsToInvokeAction,
|
|
37
|
+
s as getNumberOfResultsToInvokeActionCopy
|
|
38
38
|
};
|
|
39
39
|
//# sourceMappingURL=TopLevelControlsUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TopLevelControlsUtils.js","sources":["../../../../src/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.ts"],"sourcesContent":["import { QueryContextType } from '../../QueryContext'\nimport { QueryVisualizationContextType } from '../../QueryVisualizationWrapper'\nimport pluralize from 'pluralize'\nimport { upperFirst } from 'lodash-es'\nimport { Row } from '@sage-bionetworks/synapse-types'\n\nconst TO_DOWNLOAD_CART = 'to Download
|
|
1
|
+
{"version":3,"file":"TopLevelControlsUtils.js","sources":["../../../../src/components/SynapseTable/TopLevelControls/TopLevelControlsUtils.ts"],"sourcesContent":["import { QueryContextType } from '../../QueryContext'\nimport { QueryVisualizationContextType } from '../../QueryVisualizationWrapper'\nimport pluralize from 'pluralize'\nimport { upperFirst } from 'lodash-es'\nimport { Row } from '@sage-bionetworks/synapse-types'\n\nconst TO_DOWNLOAD_CART = 'to Download List'\n\n/**\n * If the user invokes an action on the table (such as \"Send to CAVATICA\"), we want to tell the user how many rows they\n * will perform the action on.\n *\n * If selection is enabled and rows have been selected, return the number of selected rows.\n * If no rows have been selected, return the total number of query results.\n * If the total number of query results is unknown, return undefined.\n * @param hasSelectedRows\n * @param selectedRows\n * @param totalNumberOfRows\n */\nexport function getNumberOfResultsToInvokeAction(\n hasSelectedRows: boolean,\n selectedRows: Row[],\n totalNumberOfRows?: number,\n) {\n return hasSelectedRows ? selectedRows.length : totalNumberOfRows\n}\n\n/**\n * Returns copy for how to reference the number of results that will be affected by an action, such as \"Send to CAVATICA\".\n * Utilizes the unit description to return a count and pluralized unit description.\n *\n * If the user has not selected rows or applied any filters, return \"all <unit>s\".\n * If the user has applied filters but not selected rows, return the total number of query results to indicate that the filtered result set is used. e.g. '2 <unit>s'\n * - If the total number of query results is unknown, the count is not included. e.g. '<unit>s'\n * If the user has selected rows, return the number of selected rows. e.g. '2 <unit>s'\n * @param hasResettableFilters\n * @param hasSelectedRows\n * @param selectedRows\n * @param totalNumberOfRows\n * @param unitDescription\n */\nexport function getNumberOfResultsToInvokeActionCopy(\n hasResettableFilters: QueryContextType['hasResettableFilters'],\n hasSelectedRows: boolean,\n selectedRows: Row[],\n totalNumberOfRows: number | undefined,\n unitDescription: QueryVisualizationContextType['unitDescription'],\n) {\n if (!hasResettableFilters && !hasSelectedRows) {\n return `all ${pluralize(unitDescription)}`\n }\n\n const numberOfResultsToInvokeAction = getNumberOfResultsToInvokeAction(\n hasSelectedRows,\n selectedRows,\n totalNumberOfRows,\n )\n if (numberOfResultsToInvokeAction != null) {\n return `${numberOfResultsToInvokeAction.toLocaleString()} ${pluralize(\n unitDescription,\n numberOfResultsToInvokeAction,\n )}`\n }\n // Null count, so just return the pluralized unit description\n return pluralize(unitDescription)\n}\n\n/**\n * Returns copy for how to reference the number of results that will be sent to the download list.\n * Utilizes the unit description to return a count and pluralized unit description.\n * @param hasResettableFilters\n * @param hasSelectedRows\n * @param selectedRows\n * @param totalNumberOfRows\n * @param unitDescription\n */\nexport function getNumberOfResultsToAddToDownloadListCopy(\n hasResettableFilters: QueryContextType['hasResettableFilters'],\n hasSelectedRows: boolean,\n selectedRows: Row[],\n totalNumberOfRows: number | undefined,\n unitDescription: QueryVisualizationContextType['unitDescription'],\n) {\n if (!hasResettableFilters && !hasSelectedRows) {\n return `Add All ${upperFirst(\n pluralize(unitDescription),\n )} ${TO_DOWNLOAD_CART}`\n }\n\n const numberOfResultsToInvokeAction = getNumberOfResultsToInvokeAction(\n hasSelectedRows,\n selectedRows,\n totalNumberOfRows,\n )\n if (numberOfResultsToInvokeAction != null) {\n return `Add ${numberOfResultsToInvokeAction.toLocaleString()} Selected ${upperFirst(\n pluralize(unitDescription, numberOfResultsToInvokeAction),\n )} ${TO_DOWNLOAD_CART}`\n }\n // Null count\n return `Add ${TO_DOWNLOAD_CART}`\n}\n"],"names":["TO_DOWNLOAD_CART","getNumberOfResultsToInvokeAction","hasSelectedRows","selectedRows","totalNumberOfRows","getNumberOfResultsToInvokeActionCopy","hasResettableFilters","unitDescription","pluralize","numberOfResultsToInvokeAction","getNumberOfResultsToAddToDownloadListCopy","upperFirst"],"mappings":";;AAMA,MAAMA,IAAmB;AAalB,SAASC,EACdC,GACAC,GACAC,GACA;AACA,SAAOF,IAAkBC,EAAa,SAASC;AACjD;AAgBO,SAASC,EACdC,GACAJ,GACAC,GACAC,GACAG,GACA;AACA,MAAI,CAACD,KAAwB,CAACJ;AAC5B,WAAO,OAAOM,EAAUD,CAAe,CAAC;AAG1C,QAAME,IAAgCR;AAAA,IACpCC;AAAA,IACAC;AAAA,IACAC;AAAA,EAAA;AAEF,SAAIK,KAAiC,OAC5B,GAAGA,EAA8B,eAAA,CAAgB,IAAID;AAAA,IAC1DD;AAAA,IACAE;AAAA,EAAA,CACD,KAGID,EAAUD,CAAe;AAClC;AAWO,SAASG,EACdJ,GACAJ,GACAC,GACAC,GACAG,GACA;AACA,MAAI,CAACD,KAAwB,CAACJ;AAC5B,WAAO,WAAWS;AAAA,MAChBH,EAAUD,CAAe;AAAA,IAAA,CAC1B,IAAIP,CAAgB;AAGvB,QAAMS,IAAgCR;AAAA,IACpCC;AAAA,IACAC;AAAA,IACAC;AAAA,EAAA;AAEF,SAAIK,KAAiC,OAC5B,OAAOA,EAA8B,eAAA,CAAgB,aAAaE;AAAA,IACvEH,EAAUD,GAAiBE,CAA6B;AAAA,EAAA,CACzD,IAAIT,CAAgB,KAGhB,OAAOA,CAAgB;AAChC;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SxProps, TypographyOwnProps } from '@mui/material';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
export type TextToComponentCollapseProps = PropsWithChildren<{
|
|
4
|
+
text: string;
|
|
5
|
+
defaultVisible?: boolean;
|
|
6
|
+
textVariant?: TypographyOwnProps['variant'];
|
|
7
|
+
textSx?: SxProps;
|
|
8
|
+
textContainerSx?: SxProps;
|
|
9
|
+
collapseBoxSx?: SxProps;
|
|
10
|
+
iconSx?: SxProps;
|
|
11
|
+
}>;
|
|
12
|
+
/**
|
|
13
|
+
* Wrap any child components in a collapse, using a Typography as the trigger
|
|
14
|
+
*/
|
|
15
|
+
export default function TextToComponentCollapse({ text, defaultVisible, textVariant, textSx, textContainerSx, collapseBoxSx, iconSx, children, }: TextToComponentCollapseProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
//# sourceMappingURL=TextToComponentCollapse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextToComponentCollapse.d.ts","sourceRoot":"","sources":["../../src/components/TextToComponentCollapse.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAc,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAGzC,MAAM,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC3D,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAC9C,IAAI,EACJ,cAAc,EACd,WAAyB,EACzB,MAAM,EACN,eAAe,EACf,aAAa,EACb,MAAM,EACN,QAAQ,GACT,EAAE,4BAA4B,2CAgB9B"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { Typography as l } from "@mui/material";
|
|
3
|
+
import s from "./ComponentCollapse.js";
|
|
4
|
+
function c({
|
|
5
|
+
text: n,
|
|
6
|
+
defaultVisible: t,
|
|
7
|
+
textVariant: r = "smallLink",
|
|
8
|
+
textSx: e,
|
|
9
|
+
textContainerSx: p,
|
|
10
|
+
collapseBoxSx: m,
|
|
11
|
+
iconSx: a,
|
|
12
|
+
children: i
|
|
13
|
+
}) {
|
|
14
|
+
return /* @__PURE__ */ o(
|
|
15
|
+
s,
|
|
16
|
+
{
|
|
17
|
+
component: /* @__PURE__ */ o(l, { variant: r, sx: e, children: n }),
|
|
18
|
+
componentContainerSx: p,
|
|
19
|
+
defaultVisible: t,
|
|
20
|
+
collapseBoxSx: m,
|
|
21
|
+
iconSx: a,
|
|
22
|
+
children: i
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
c as default
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=TextToComponentCollapse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextToComponentCollapse.js","sources":["../../src/components/TextToComponentCollapse.tsx"],"sourcesContent":["import { SxProps, Typography, TypographyOwnProps } from '@mui/material'\nimport { PropsWithChildren } from 'react'\nimport ComponentCollapse from './ComponentCollapse'\n\nexport type TextToComponentCollapseProps = PropsWithChildren<{\n text: string\n defaultVisible?: boolean // default to false (collapsed)\n textVariant?: TypographyOwnProps['variant']\n textSx?: SxProps\n textContainerSx?: SxProps\n collapseBoxSx?: SxProps\n iconSx?: SxProps\n}>\n\n/**\n * Wrap any child components in a collapse, using a Typography as the trigger\n */\nexport default function TextToComponentCollapse({\n text,\n defaultVisible,\n textVariant = 'smallLink',\n textSx,\n textContainerSx,\n collapseBoxSx,\n iconSx,\n children,\n}: TextToComponentCollapseProps) {\n return (\n <ComponentCollapse\n component={\n <Typography variant={textVariant} sx={textSx}>\n {text}\n </Typography>\n }\n componentContainerSx={textContainerSx}\n defaultVisible={defaultVisible}\n collapseBoxSx={collapseBoxSx}\n iconSx={iconSx}\n >\n {children}\n </ComponentCollapse>\n )\n}\n"],"names":["TextToComponentCollapse","text","defaultVisible","textVariant","textSx","textContainerSx","collapseBoxSx","iconSx","children","jsx","ComponentCollapse","Typography"],"mappings":";;;AAiBA,SAAwBA,EAAwB;AAAA,EAC9C,MAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,QAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC;AACF,GAAiC;AAC/B,SACE,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WACE,gBAAAD,EAACE,GAAA,EAAW,SAASR,GAAa,IAAIC,GACnC,UAAAH,GACH;AAAA,MAEF,sBAAsBI;AAAA,MACtB,gBAAAH;AAAA,MACA,eAAAI;AAAA,MACA,QAAAC;AAAA,MAEC,UAAAC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|