synapse-react-client 4.0.7 → 4.0.8
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/DataGrid/DataGridTypes.d.ts +8 -2
- package/dist/components/DataGrid/DataGridTypes.d.ts.map +1 -1
- package/dist/components/DataGrid/DataGridTypes.js.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.d.ts.map +1 -1
- package/dist/components/DataGrid/SynapseGrid.js +190 -176
- package/dist/components/DataGrid/SynapseGrid.js.map +1 -1
- package/dist/components/DataGrid/hooks/useGridReplicaUsers.d.ts +15 -0
- package/dist/components/DataGrid/hooks/useGridReplicaUsers.d.ts.map +1 -0
- package/dist/components/DataGrid/hooks/useGridReplicaUsers.js +55 -0
- package/dist/components/DataGrid/hooks/useGridReplicaUsers.js.map +1 -0
- package/dist/components/DataGrid/utils/DataGridUtils.js +31 -31
- package/dist/components/DataGrid/utils/DataGridUtils.js.map +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.d.ts +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/applyModelChange.js +28 -23
- package/dist/components/DataGrid/utils/applyModelChange.js.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/columnFactory.js +90 -49
- package/dist/components/DataGrid/utils/columnFactory.js.map +1 -1
- package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.d.ts +14 -0
- package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.js +24 -0
- package/dist/components/DataGrid/utils/enrichRowsWithChangeInfo.js.map +1 -0
- package/dist/components/DataGrid/utils/getCellAuthorSid.d.ts +7 -0
- package/dist/components/DataGrid/utils/getCellAuthorSid.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/getCellAuthorSid.js +11 -0
- package/dist/components/DataGrid/utils/getCellAuthorSid.js.map +1 -0
- package/dist/components/DataGrid/utils/getCellClassName.d.ts +0 -1
- package/dist/components/DataGrid/utils/getCellClassName.d.ts.map +1 -1
- package/dist/components/DataGrid/utils/getCellClassName.js +19 -17
- package/dist/components/DataGrid/utils/getCellClassName.js.map +1 -1
- package/dist/components/DataGrid/utils/getChangeTooltipText.d.ts +7 -0
- package/dist/components/DataGrid/utils/getChangeTooltipText.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/getChangeTooltipText.js +18 -0
- package/dist/components/DataGrid/utils/getChangeTooltipText.js.map +1 -0
- package/dist/components/DataGrid/utils/getReplicaCategory.d.ts +12 -0
- package/dist/components/DataGrid/utils/getReplicaCategory.d.ts.map +1 -0
- package/dist/components/DataGrid/utils/getReplicaCategory.js +13 -0
- package/dist/components/DataGrid/utils/getReplicaCategory.js.map +1 -0
- package/dist/features/entity/metadata-task/utils/getCreateGridRequestForMetadataTask.d.ts.map +1 -1
- package/dist/features/entity/metadata-task/utils/getCreateGridRequestForMetadataTask.js +4 -8
- package/dist/features/entity/metadata-task/utils/getCreateGridRequestForMetadataTask.js.map +1 -1
- package/dist/style/components/_data-grid-extra.css +1 -1
- package/dist/style/components/_data-grid-extra.scss +33 -0
- package/dist/synapse-queries/index.js +42 -41
- package/dist/synapse-queries/user/index.js +17 -16
- package/dist/synapse-queries/user/useUserBundle.d.ts +9 -0
- package/dist/synapse-queries/user/useUserBundle.d.ts.map +1 -1
- package/dist/synapse-queries/user/useUserBundle.js +45 -37
- package/dist/synapse-queries/user/useUserBundle.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -9,6 +9,11 @@ $color-spinner: #e6c200;
|
|
|
9
9
|
$color-text-primary: #353a3f; // grey-900
|
|
10
10
|
$color-text-disabled: #71767f; // gray-700
|
|
11
11
|
|
|
12
|
+
// Cell change indicator colors (triangle badge — upper-right corner)
|
|
13
|
+
$color-change-self: #52c41a; // green
|
|
14
|
+
$color-change-own-agent: #13c2c2; // teal
|
|
15
|
+
$color-change-other-user: #1677ff; // blue
|
|
16
|
+
$color-change-other-agent: #9254de; // purple
|
|
12
17
|
// Remote selection palette (8 colors, semi-transparent tints)
|
|
13
18
|
$remote-selection-colors: #1677ff, #52c41a, #fa8c16, #eb2f96, #13c2c2, #9254de,
|
|
14
19
|
#f5222d, #faad14;
|
|
@@ -228,6 +233,34 @@ body.col-resizing {
|
|
|
228
233
|
}
|
|
229
234
|
}
|
|
230
235
|
|
|
236
|
+
// ── Cell change indicators ─────────────────────────────────────────────────
|
|
237
|
+
// A small triangle badge in the upper-right corner of any cell changed since
|
|
238
|
+
// the client joined the session. Color encodes attribution category.
|
|
239
|
+
@mixin change-triangle($color) {
|
|
240
|
+
&::after {
|
|
241
|
+
content: '';
|
|
242
|
+
position: absolute;
|
|
243
|
+
top: 0;
|
|
244
|
+
right: 0;
|
|
245
|
+
width: 0;
|
|
246
|
+
height: 0;
|
|
247
|
+
border-style: solid;
|
|
248
|
+
border-width: 0 7px 7px 0;
|
|
249
|
+
border-color: transparent $color transparent transparent;
|
|
250
|
+
z-index: 20;
|
|
251
|
+
pointer-events: none;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.dsg-cell {
|
|
256
|
+
&.cell-changed--self {
|
|
257
|
+
@include change-triangle($color-change-self);
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
&.cell-changed--other-user {
|
|
261
|
+
@include change-triangle($color-change-other-user);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
231
264
|
// ── Remote selection tints ─────────────────────────────────────────────────
|
|
232
265
|
// Cells within another connected replica's selection are tinted with one of
|
|
233
266
|
// 8 stable colors (replicaId % 8).
|
|
@@ -3,13 +3,13 @@ import { useConsentToOAuth2Request as u, useGetHasUserAuthorizedOAuthClient as o
|
|
|
3
3
|
import { useResetPassword as l } from "./auth/useResetPassword.js";
|
|
4
4
|
import { useDisableTwoFactorAuth as G, useDisableTwoFactorAuthWithResetToken as c, useFinishTwoFactorEnrollment as p, useGetTwoFactorEnrollmentStatus as f, useGetTwoFactorEnrollmentStatusWithAccessToken as d, useResetTwoFactorAuth as A, useStartTwoFactorEnrollment as y } from "./auth/useTwoFactorEnrollment.js";
|
|
5
5
|
import { useRegisterTeamForChallenge as h } from "./challenge/useChallenge.js";
|
|
6
|
-
import { useGetUserAccessApproval as
|
|
7
|
-
import { useSearchAccessSubmissionUserRequestsInfinite as T, useSearchAccessSubmissionsInfinite as E, useSubmitDataAccessRequest as F, useUpdateDataAccessSubmissionState as
|
|
6
|
+
import { useGetUserAccessApproval as x, useSearchAccessApprovalsInfinite as S } from "./dataaccess/useAccessApprovals.js";
|
|
7
|
+
import { useSearchAccessSubmissionUserRequestsInfinite as T, useSearchAccessSubmissionsInfinite as E, useSubmitDataAccessRequest as F, useUpdateDataAccessSubmissionState as g } from "./dataaccess/useDataAccessSubmission.js";
|
|
8
8
|
import { useCancelDataAccessRequest as P, useCreateAccessApproval as D, useCreateAccessRequirement as q, useCreateAccessRequirementACL as L, useCreateLockAccessRequirement as O, useDeleteAccessRequirementACL as b, useGetAccessRequirementACL as v, useGetAccessRequirementStatus as w, useGetAccessRequirementStatuses as Q, useGetAccessRequirementWikiPageKey as B, useGetAccessRequirements as M, useGetAccessRequirementsForEntity as k, useGetAccessRequirementsForTeam as W, useGetDataAccessRequestForUpdate as H, useGetResearchProject as j, useSearchAccessRequirementsInfinite as V, useSortAccessRequirementIdsByCompletion as J, useUpdateAccessRequirement as K, useUpdateAccessRequirementACL as z, useUpdateDataAccessRequest as N, useUpdateResearchProject as X } from "./dataaccess/useAccessRequirements.js";
|
|
9
9
|
import { useGetApprovedSubmissionInfoInfinite as Z } from "./dataaccess/useGetApprovedSubmissionInfo.js";
|
|
10
10
|
import { useGetRestrictionInformation as $, useGetRestrictionInformationBatch as ee } from "./dataaccess/useRestrictionInformation.js";
|
|
11
11
|
import { useAddFileBatchToDownloadList as se, useAddFileToDownloadList as re, useAddToDownloadList as ue, useGetAddToDownloadListStats as oe, useGetAllDownloadListActionsRequired as ie, useGetAvailableFilesToDownload as ne, useGetAvailableFilesToDownloadInfinite as ae, useGetDownloadListActionsRequiredInfinite as le, useGetDownloadListStatistics as me, useRemoveFilesFromDownloadList as Ge } from "./download/useDownloadList.js";
|
|
12
|
-
import { getStandardEntityFields as pe, removeStandardEntityFields as fe, useCreateEntity as de, useCreateEntityACL as Ae, useDeleteEntity as ye, useDeleteEntityACL as Ce, useGetEntities as he, useGetEntity as
|
|
12
|
+
import { getStandardEntityFields as pe, removeStandardEntityFields as fe, useCreateEntity as de, useCreateEntityACL as Ae, useDeleteEntity as ye, useDeleteEntityACL as Ce, useGetEntities as he, useGetEntity as Ue, useGetEntityACL as xe, useGetEntityAlias as Se, useGetEntityEvaluations as Re, useGetEntityLookupQueryOptions as Te, useGetEntityPath as Ee, useGetEntityPermissions as Fe, useGetEntityQueryOptions as ge, useGetJson as Ie, useGetVersions as Pe, useGetVersionsInfinite as De, useSuspenseGetEntityBenefactorACL as qe, useUpdateEntity as Le, useUpdateEntityACL as Oe, useUpdateTableColumns as be, useUpdateViaJson as ve } from "./entity/useEntity.js";
|
|
13
13
|
import { useGetSchemaBinding as Qe, useGetValidationResults as Be } from "./entity/useEntityBoundSchema.js";
|
|
14
14
|
import { default as ke, useGetEntityBundleQueryOptions as We, useGetEntityBundleSuspenseQueryOptions as He, useSuspenseGetEntityBundle as je } from "./entity/useEntityBundle.js";
|
|
15
15
|
import { useGetEntityActionsRequired as Je } from "./entity/useGetEntityActionsRequired.js";
|
|
@@ -21,10 +21,10 @@ import { getInfiniteQueryResultBundleOptions as rt, tableQueryUseQueryDefaults a
|
|
|
21
21
|
import { useGetSchema as mt } from "./entity/useSchema.js";
|
|
22
22
|
import { useProjectStorageUsage as ct } from "./entity/useProjectStorage.js";
|
|
23
23
|
import { useGetFeatureFlag as ft } from "./featureflags/useGetFeatureFlag.js";
|
|
24
|
-
import { useFileContent as At, useGetFileBatch as yt, useGetPresignedUrlContent as Ct, useGetPresignedUrlContentFromFHA as ht, useGetProfileImage as
|
|
24
|
+
import { useFileContent as At, useGetFileBatch as yt, useGetPresignedUrlContent as Ct, useGetPresignedUrlContentFromFHA as ht, useGetProfileImage as Ut, useGetStablePresignedUrl as xt } from "./file/useFiles.js";
|
|
25
25
|
import { useGetDefaultUploadDestination as Rt, useGetUploadDestinationForStorageLocation as Tt } from "./file/useUploadDestination.js";
|
|
26
26
|
import { KeyFactory as Ft } from "./KeyFactory.js";
|
|
27
|
-
import { useSendMessage as
|
|
27
|
+
import { useSendMessage as It, useSendMessageToEntityOwner as Pt } from "./message/useMessage.js";
|
|
28
28
|
import { useCreateOAuthClient as qt, useDeleteOAuthClient as Lt, useGetOAuthClientACL as Ot, useGetOAuthClientInfinite as bt, useUpdateOAuthClient as vt, useUpdateOAuthClientACL as wt } from "./oauth/useOAuthClient.js";
|
|
29
29
|
import { useListPortalsInfinite as Bt } from "./portal/useListPortals.js";
|
|
30
30
|
import { useCreatePortal as kt, useDeletePortal as Wt, useGetPortal as Ht, useGetPortalACL as jt, useGetUserPortalPermissions as Vt, useUpdatePortalACL as Jt } from "./portal/usePortal.js";
|
|
@@ -35,15 +35,15 @@ import { useSuggestion as ss } from "./search/useSuggestion.js";
|
|
|
35
35
|
import { useSignTermsOfService as us, useTermsOfServiceInfo as os, useTermsOfServiceStatus as is } from "./termsOfService/useTermsOfService.js";
|
|
36
36
|
import { useCreateTeam as as, useGetTeam as ls } from "./team/useTeam.js";
|
|
37
37
|
import { useGetChallengeTeamList as Gs, useGetTeamList as cs } from "./team/useTeamList.js";
|
|
38
|
-
import { getIsPrincipalIdUserOrMemberOfTeamQuery as fs, getIsUserMemberOfTeamQuery as ds, useAddMemberToTeam as As, useDeleteTeamMembership as ys, useGetAllOpenMembershipInvitations as Cs, useGetIsPrincipalIdUserOrMemberOfTeam as hs, useGetIsUserMemberOfTeam as
|
|
39
|
-
import { useAddFavorite as
|
|
38
|
+
import { getIsPrincipalIdUserOrMemberOfTeamQuery as fs, getIsUserMemberOfTeamQuery as ds, useAddMemberToTeam as As, useDeleteTeamMembership as ys, useGetAllOpenMembershipInvitations as Cs, useGetIsPrincipalIdUserOrMemberOfTeam as hs, useGetIsUserMemberOfTeam as Us, useGetMembershipStatus as xs, useGetTeamMemberCount as Ss, useGetTeamMembers as Rs, useInviteUserToTeam as Ts, useRequestToJoinTeam as Es } from "./team/useTeamMembers.js";
|
|
39
|
+
import { useAddFavorite as gs, useGetFavorites as Is, useGetFavoritesInfinite as Ps, useIsFavorite as Ds, useRemoveFavorite as qs } from "./user/useFavorites.js";
|
|
40
40
|
import { useGetUserChallenges as Os, useGetUserChallengesInfinite as bs } from "./user/useGetUserChallenges.js";
|
|
41
41
|
import { useGetUserProjectsInfinite as ws } from "./user/useGetUserProjects.js";
|
|
42
42
|
import { useGetUserSubmissionTeams as Bs, useGetUserTeamsInfinite as Ms } from "./user/useGetUserTeams.js";
|
|
43
43
|
import { useGetProjects as Ws, useGetProjectsInfinite as Hs } from "./user/useProjects.js";
|
|
44
|
-
import {
|
|
45
|
-
import { getUserGroupHeaderQuery as
|
|
46
|
-
import { useCreateWikiPage as
|
|
44
|
+
import { getUserProfileQuery as Vs, useGetCurrentUserBundle as Js, useGetCurrentUserProfile as Ks, useGetNotificationEmail as zs, useGetPrincipalIdForAlias as Ns, useGetUserBundle as Xs, useGetUserProfile as Ys, useIsCurrentUserACTMember as Zs, useSuspenseGetCurrentUserProfile as _s } from "./user/useUserBundle.js";
|
|
45
|
+
import { getUserGroupHeaderQuery as er, useGetUserGroupHeader as tr, useGetUserGroupHeaderWithAlias as sr, useGetUserGroupHeaders as rr, useSearchUserGroupHeaders as ur } from "./user/useUserGroupHeader.js";
|
|
46
|
+
import { useCreateWikiPage as ir, useGetRootWikiPageKey as nr, useGetWikiAttachments as ar, useGetWikiPage as lr, useUpdateWikiPage as mr } from "./wiki/useWiki.js";
|
|
47
47
|
export {
|
|
48
48
|
Ft as KeyFactory,
|
|
49
49
|
zt as getAllActionsRequiredQueryFilters,
|
|
@@ -51,11 +51,12 @@ export {
|
|
|
51
51
|
fs as getIsPrincipalIdUserOrMemberOfTeamQuery,
|
|
52
52
|
ds as getIsUserMemberOfTeamQuery,
|
|
53
53
|
pe as getStandardEntityFields,
|
|
54
|
-
|
|
54
|
+
er as getUserGroupHeaderQuery,
|
|
55
|
+
Vs as getUserProfileQuery,
|
|
55
56
|
Nt as invalidateAllQueriesForEntity,
|
|
56
57
|
fe as removeStandardEntityFields,
|
|
57
58
|
ut as tableQueryUseQueryDefaults,
|
|
58
|
-
|
|
59
|
+
gs as useAddFavorite,
|
|
59
60
|
se as useAddFileBatchToDownloadList,
|
|
60
61
|
re as useAddFileToDownloadList,
|
|
61
62
|
As as useAddMemberToTeam,
|
|
@@ -72,7 +73,7 @@ export {
|
|
|
72
73
|
qt as useCreateOAuthClient,
|
|
73
74
|
kt as useCreatePortal,
|
|
74
75
|
as as useCreateTeam,
|
|
75
|
-
|
|
76
|
+
ir as useCreateWikiPage,
|
|
76
77
|
b as useDeleteAccessRequirementACL,
|
|
77
78
|
ye as useDeleteEntity,
|
|
78
79
|
Ce as useDeleteEntityACL,
|
|
@@ -97,15 +98,15 @@ export {
|
|
|
97
98
|
ne as useGetAvailableFilesToDownload,
|
|
98
99
|
ae as useGetAvailableFilesToDownloadInfinite,
|
|
99
100
|
Gs as useGetChallengeTeamList,
|
|
100
|
-
|
|
101
|
-
|
|
101
|
+
Js as useGetCurrentUserBundle,
|
|
102
|
+
Ks as useGetCurrentUserProfile,
|
|
102
103
|
H as useGetDataAccessRequestForUpdate,
|
|
103
104
|
Rt as useGetDefaultUploadDestination,
|
|
104
105
|
le as useGetDownloadListActionsRequiredInfinite,
|
|
105
106
|
me as useGetDownloadListStatistics,
|
|
106
107
|
he as useGetEntities,
|
|
107
|
-
|
|
108
|
-
|
|
108
|
+
Ue as useGetEntity,
|
|
109
|
+
xe as useGetEntityACL,
|
|
109
110
|
Je as useGetEntityActionsRequired,
|
|
110
111
|
Se as useGetEntityAlias,
|
|
111
112
|
ke as useGetEntityBundle,
|
|
@@ -121,18 +122,18 @@ export {
|
|
|
121
122
|
Te as useGetEntityLookupQueryOptions,
|
|
122
123
|
Ee as useGetEntityPath,
|
|
123
124
|
Fe as useGetEntityPermissions,
|
|
124
|
-
|
|
125
|
-
|
|
125
|
+
ge as useGetEntityQueryOptions,
|
|
126
|
+
Is as useGetFavorites,
|
|
126
127
|
Ps as useGetFavoritesInfinite,
|
|
127
128
|
ft as useGetFeatureFlag,
|
|
128
129
|
yt as useGetFileBatch,
|
|
129
130
|
ot as useGetFullTableQueryResults,
|
|
130
131
|
o as useGetHasUserAuthorizedOAuthClient,
|
|
131
132
|
hs as useGetIsPrincipalIdUserOrMemberOfTeam,
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
133
|
+
Us as useGetIsUserMemberOfTeam,
|
|
134
|
+
Ie as useGetJson,
|
|
135
|
+
xs as useGetMembershipStatus,
|
|
136
|
+
zs as useGetNotificationEmail,
|
|
136
137
|
i as useGetOAuth2Client,
|
|
137
138
|
n as useGetOAuth2RequestDescription,
|
|
138
139
|
Ot as useGetOAuthClientACL,
|
|
@@ -142,8 +143,8 @@ export {
|
|
|
142
143
|
jt as useGetPortalACL,
|
|
143
144
|
Ct as useGetPresignedUrlContent,
|
|
144
145
|
ht as useGetPresignedUrlContentFromFHA,
|
|
145
|
-
|
|
146
|
-
|
|
146
|
+
Ns as useGetPrincipalIdForAlias,
|
|
147
|
+
Ut as useGetProfileImage,
|
|
147
148
|
Ws as useGetProjects,
|
|
148
149
|
Hs as useGetProjectsInfinite,
|
|
149
150
|
it as useGetQueryResultBundleWithAsyncStatus,
|
|
@@ -152,10 +153,10 @@ export {
|
|
|
152
153
|
j as useGetResearchProject,
|
|
153
154
|
$ as useGetRestrictionInformation,
|
|
154
155
|
ee as useGetRestrictionInformationBatch,
|
|
155
|
-
|
|
156
|
+
nr as useGetRootWikiPageKey,
|
|
156
157
|
mt as useGetSchema,
|
|
157
158
|
Qe as useGetSchemaBinding,
|
|
158
|
-
|
|
159
|
+
xt as useGetStablePresignedUrl,
|
|
159
160
|
ls as useGetTeam,
|
|
160
161
|
cs as useGetTeamList,
|
|
161
162
|
Ss as useGetTeamMemberCount,
|
|
@@ -163,25 +164,25 @@ export {
|
|
|
163
164
|
f as useGetTwoFactorEnrollmentStatus,
|
|
164
165
|
d as useGetTwoFactorEnrollmentStatusWithAccessToken,
|
|
165
166
|
Tt as useGetUploadDestinationForStorageLocation,
|
|
166
|
-
|
|
167
|
-
|
|
167
|
+
x as useGetUserAccessApproval,
|
|
168
|
+
Xs as useGetUserBundle,
|
|
168
169
|
Os as useGetUserChallenges,
|
|
169
170
|
bs as useGetUserChallengesInfinite,
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
171
|
+
tr as useGetUserGroupHeader,
|
|
172
|
+
sr as useGetUserGroupHeaderWithAlias,
|
|
173
|
+
rr as useGetUserGroupHeaders,
|
|
173
174
|
Vt as useGetUserPortalPermissions,
|
|
174
|
-
|
|
175
|
+
Ys as useGetUserProfile,
|
|
175
176
|
ws as useGetUserProjectsInfinite,
|
|
176
177
|
Bs as useGetUserSubmissionTeams,
|
|
177
178
|
Ms as useGetUserTeamsInfinite,
|
|
178
179
|
Be as useGetValidationResults,
|
|
179
180
|
Pe as useGetVersions,
|
|
180
181
|
De as useGetVersionsInfinite,
|
|
181
|
-
|
|
182
|
-
|
|
182
|
+
ar as useGetWikiAttachments,
|
|
183
|
+
lr as useGetWikiPage,
|
|
183
184
|
Ts as useInviteUserToTeam,
|
|
184
|
-
|
|
185
|
+
Zs as useIsCurrentUserACTMember,
|
|
185
186
|
Ds as useIsFavorite,
|
|
186
187
|
Bt as useListPortalsInfinite,
|
|
187
188
|
ct as useProjectStorageUsage,
|
|
@@ -198,15 +199,15 @@ export {
|
|
|
198
199
|
E as useSearchAccessSubmissionsInfinite,
|
|
199
200
|
es as useSearchInfinite,
|
|
200
201
|
Zt as useSearchRegistry,
|
|
201
|
-
|
|
202
|
-
|
|
202
|
+
ur as useSearchUserGroupHeaders,
|
|
203
|
+
It as useSendMessage,
|
|
203
204
|
Pt as useSendMessageToEntityOwner,
|
|
204
205
|
us as useSignTermsOfService,
|
|
205
206
|
J as useSortAccessRequirementIdsByCompletion,
|
|
206
207
|
y as useStartTwoFactorEnrollment,
|
|
207
208
|
F as useSubmitDataAccessRequest,
|
|
208
209
|
ss as useSuggestion,
|
|
209
|
-
|
|
210
|
+
_s as useSuspenseGetCurrentUserProfile,
|
|
210
211
|
qe as useSuspenseGetEntityBenefactorACL,
|
|
211
212
|
je as useSuspenseGetEntityBundle,
|
|
212
213
|
os as useTermsOfServiceInfo,
|
|
@@ -214,7 +215,7 @@ export {
|
|
|
214
215
|
K as useUpdateAccessRequirement,
|
|
215
216
|
z as useUpdateAccessRequirementACL,
|
|
216
217
|
N as useUpdateDataAccessRequest,
|
|
217
|
-
|
|
218
|
+
g as useUpdateDataAccessSubmissionState,
|
|
218
219
|
Le as useUpdateEntity,
|
|
219
220
|
Oe as useUpdateEntityACL,
|
|
220
221
|
vt as useUpdateOAuthClient,
|
|
@@ -223,6 +224,6 @@ export {
|
|
|
223
224
|
X as useUpdateResearchProject,
|
|
224
225
|
be as useUpdateTableColumns,
|
|
225
226
|
ve as useUpdateViaJson,
|
|
226
|
-
|
|
227
|
+
mr as useUpdateWikiPage
|
|
227
228
|
};
|
|
228
229
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,35 +1,36 @@
|
|
|
1
1
|
import { useAddFavorite as s, useGetFavorites as t, useGetFavoritesInfinite as u, useIsFavorite as o, useRemoveFavorite as i } from "./useFavorites.js";
|
|
2
2
|
import { useGetUserChallenges as n, useGetUserChallengesInfinite as a } from "./useGetUserChallenges.js";
|
|
3
3
|
import { useGetUserProjectsInfinite as U } from "./useGetUserProjects.js";
|
|
4
|
-
import { useGetUserSubmissionTeams as
|
|
5
|
-
import { useGetProjects as I, useGetProjectsInfinite as
|
|
6
|
-
import { useGetCurrentUserBundle as
|
|
7
|
-
import { getUserGroupHeaderQuery as
|
|
4
|
+
import { useGetUserSubmissionTeams as p, useGetUserTeamsInfinite as m } from "./useGetUserTeams.js";
|
|
5
|
+
import { useGetProjects as I, useGetProjectsInfinite as P } from "./useProjects.js";
|
|
6
|
+
import { getUserProfileQuery as C, useGetCurrentUserBundle as c, useGetCurrentUserProfile as v, useGetNotificationEmail as F, useGetPrincipalIdForAlias as H, useGetUserBundle as g, useGetUserProfile as h, useIsCurrentUserACTMember as A, useSuspenseGetCurrentUserProfile as j } from "./useUserBundle.js";
|
|
7
|
+
import { getUserGroupHeaderQuery as T, useGetUserGroupHeader as b, useGetUserGroupHeaderWithAlias as y, useGetUserGroupHeaders as B, useSearchUserGroupHeaders as Q } from "./useUserGroupHeader.js";
|
|
8
8
|
export {
|
|
9
|
-
|
|
9
|
+
T as getUserGroupHeaderQuery,
|
|
10
|
+
C as getUserProfileQuery,
|
|
10
11
|
s as useAddFavorite,
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
c as useGetCurrentUserBundle,
|
|
13
|
+
v as useGetCurrentUserProfile,
|
|
13
14
|
t as useGetFavorites,
|
|
14
15
|
u as useGetFavoritesInfinite,
|
|
15
|
-
|
|
16
|
-
|
|
16
|
+
F as useGetNotificationEmail,
|
|
17
|
+
H as useGetPrincipalIdForAlias,
|
|
17
18
|
I as useGetProjects,
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
P as useGetProjectsInfinite,
|
|
20
|
+
g as useGetUserBundle,
|
|
20
21
|
n as useGetUserChallenges,
|
|
21
22
|
a as useGetUserChallengesInfinite,
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
b as useGetUserGroupHeader,
|
|
24
|
+
y as useGetUserGroupHeaderWithAlias,
|
|
24
25
|
B as useGetUserGroupHeaders,
|
|
25
26
|
h as useGetUserProfile,
|
|
26
27
|
U as useGetUserProjectsInfinite,
|
|
27
|
-
|
|
28
|
+
p as useGetUserSubmissionTeams,
|
|
28
29
|
m as useGetUserTeamsInfinite,
|
|
29
30
|
A as useIsCurrentUserACTMember,
|
|
30
31
|
o as useIsFavorite,
|
|
31
32
|
i as useRemoveFavorite,
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
Q as useSearchUserGroupHeaders,
|
|
34
|
+
j as useSuspenseGetCurrentUserProfile
|
|
34
35
|
};
|
|
35
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError';
|
|
2
2
|
import { NotificationEmail, PrincipalAliasRequest, PrincipalAliasResponse, UserBundle, UserProfile } from '@sage-bionetworks/synapse-types';
|
|
3
3
|
import { UseQueryOptions } from '@tanstack/react-query';
|
|
4
|
+
import type { SynapseQueriesContext } from '../types';
|
|
4
5
|
export declare function useGetNotificationEmail(options?: Partial<UseQueryOptions<NotificationEmail, SynapseClientError>>): import("@tanstack/react-query").UseQueryResult<NotificationEmail, SynapseClientError>;
|
|
5
6
|
export declare function useGetCurrentUserProfile(options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>): import("@tanstack/react-query").UseQueryResult<UserProfile, SynapseClientError>;
|
|
6
7
|
export declare function useSuspenseGetCurrentUserProfile(options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>): import("@tanstack/react-query").UseSuspenseQueryResult<UserProfile, SynapseClientError>;
|
|
7
8
|
export declare function useGetUserBundle(userId: string, mask?: number, options?: Partial<UseQueryOptions<UserBundle, SynapseClientError>>): import("@tanstack/react-query").UseQueryResult<UserBundle, SynapseClientError>;
|
|
8
9
|
export declare function useGetCurrentUserBundle<TData = UserBundle>(mask?: number, options?: Partial<UseQueryOptions<UserBundle, SynapseClientError, TData>>): import("@tanstack/react-query").UseQueryResult<import("@tanstack/query-core").NoInfer<TData>, SynapseClientError>;
|
|
10
|
+
export declare function getUserProfileQuery(principalId: string, context: Pick<SynapseQueriesContext, 'accessToken' | 'keyFactory'>): import("@tanstack/query-core").OmitKeyof<UseQueryOptions<UserProfile, SynapseClientError, UserProfile, readonly unknown[]>, "queryFn"> & {
|
|
11
|
+
queryFn?: import("@tanstack/query-core").QueryFunction<UserProfile, readonly unknown[], never> | undefined;
|
|
12
|
+
} & {
|
|
13
|
+
queryKey: readonly unknown[] & {
|
|
14
|
+
[dataTagSymbol]: UserProfile;
|
|
15
|
+
[dataTagErrorSymbol]: SynapseClientError;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
9
18
|
export declare function useGetUserProfile(principalId: string, options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>): import("@tanstack/react-query").UseQueryResult<UserProfile, SynapseClientError>;
|
|
10
19
|
export declare function useGetPrincipalIdForAlias(request: PrincipalAliasRequest, options?: Partial<UseQueryOptions<PrincipalAliasResponse['principalId'], SynapseClientError>>): import("@tanstack/react-query").UseQueryResult<number, SynapseClientError>;
|
|
11
20
|
export declare function useIsCurrentUserACTMember(): import("@tanstack/react-query").UseQueryResult<boolean, SynapseClientError>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUserBundle.d.ts","sourceRoot":"","sources":["../../../src/synapse-queries/user/useUserBundle.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,WAAW,EACZ,MAAM,iCAAiC,CAAA;AACxC,OAAO,
|
|
1
|
+
{"version":3,"file":"useUserBundle.d.ts","sourceRoot":"","sources":["../../../src/synapse-queries/user/useUserBundle.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,UAAU,EACV,WAAW,EACZ,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAGL,eAAe,EAEhB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AAErD,wBAAgB,uBAAuB,CACrC,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,yFAQ1E;AAWD,wBAAgB,wBAAwB,CACtC,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,mFAOpE;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,2FAQpE;AAWD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,MAA+B,EACrC,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,kFAUnE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,GAAG,UAAU,EACxD,IAAI,GAAE,MAA+B,EACrC,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,UAAU,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC,qHAW1E;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,GAAG,YAAY,CAAC;;;;;;;EAOnE;AAED,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC,mFA2BpE;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,OAAO,CACf,eAAe,CAAC,sBAAsB,CAAC,aAAa,CAAC,EAAE,kBAAkB,CAAC,CAC3E,8EAeF;AAED,wBAAgB,yBAAyB,gFAIxC"}
|
|
@@ -4,20 +4,20 @@ import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResp
|
|
|
4
4
|
import "@sage-bionetworks/synapse-client/util/SynapseClientError";
|
|
5
5
|
import "@sage-bionetworks/synapse-types";
|
|
6
6
|
import "../../utils/functions/EntityTypeUtils.js";
|
|
7
|
-
import { USER_BUNDLE_MASK_USER_PROFILE as
|
|
7
|
+
import { USER_BUNDLE_MASK_USER_PROFILE as E, USER_BUNDLE_MASK_ORCID as S, USER_BUNDLE_MASK_VERIFICATION_SUBMISSION as _, USER_BUNDLE_MASK_IS_CERTIFIED as l, USER_BUNDLE_MASK_IS_VERIFIED as f, USER_BUNDLE_MASK_IS_ACT_MEMBER as p, USER_BUNDLE_MASK_IS_AR_REVIEWER as F } from "../../utils/SynapseConstants.js";
|
|
8
8
|
import "lodash-es";
|
|
9
9
|
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
|
|
10
10
|
import { useSynapseContext as u } from "../../utils/context/SynapseContext.js";
|
|
11
|
-
import { useQuery as
|
|
12
|
-
function
|
|
11
|
+
import { useQuery as y, queryOptions as I, useSuspenseQuery as K } from "@tanstack/react-query";
|
|
12
|
+
function k(e) {
|
|
13
13
|
const { accessToken: r, keyFactory: t } = u();
|
|
14
|
-
return
|
|
14
|
+
return y({
|
|
15
15
|
...e,
|
|
16
16
|
queryKey: t.getNotificationEmailQueryKey(),
|
|
17
17
|
queryFn: () => o.getNotificationEmail(r)
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
|
-
function
|
|
20
|
+
function a() {
|
|
21
21
|
const { accessToken: e, keyFactory: r } = u();
|
|
22
22
|
return {
|
|
23
23
|
queryKey: r.getCurrentUserProfileQueryKey(),
|
|
@@ -25,76 +25,84 @@ function E() {
|
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
function T(e) {
|
|
28
|
-
const r =
|
|
29
|
-
return
|
|
28
|
+
const r = a();
|
|
29
|
+
return y({
|
|
30
30
|
...e,
|
|
31
31
|
...r
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
-
function
|
|
35
|
-
const r =
|
|
36
|
-
return
|
|
34
|
+
function O(e) {
|
|
35
|
+
const r = a();
|
|
36
|
+
return K({
|
|
37
37
|
...e,
|
|
38
38
|
...r
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
-
const
|
|
42
|
-
function
|
|
43
|
-
const { accessToken: n, keyFactory: s } = u(),
|
|
44
|
-
return
|
|
41
|
+
const U = E | S | _ | l | f | p | F;
|
|
42
|
+
function d(e, r = U, t) {
|
|
43
|
+
const { accessToken: n, keyFactory: s } = u(), i = s.getUserBundleQueryKey(e, r);
|
|
44
|
+
return y({
|
|
45
45
|
...t,
|
|
46
|
-
queryKey:
|
|
46
|
+
queryKey: i,
|
|
47
47
|
queryFn: () => o.getUserBundle(e, r, n)
|
|
48
48
|
});
|
|
49
49
|
}
|
|
50
|
-
function
|
|
50
|
+
function R(e = U, r) {
|
|
51
51
|
const { accessToken: t, keyFactory: n } = u(), s = n.getUserBundleQueryKey("current", e);
|
|
52
|
-
return
|
|
52
|
+
return y({
|
|
53
53
|
...r,
|
|
54
54
|
queryKey: s,
|
|
55
55
|
queryFn: () => o.getMyUserBundle(e, t)
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
|
-
function
|
|
59
|
-
const { accessToken: t, keyFactory: n } =
|
|
60
|
-
return
|
|
58
|
+
function m(e, r) {
|
|
59
|
+
const { accessToken: t, keyFactory: n } = r;
|
|
60
|
+
return I({
|
|
61
|
+
queryKey: n.getUserProfileQueryKey(e),
|
|
62
|
+
queryFn: () => o.getUserProfileById(e, t)
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function Q(e, r) {
|
|
66
|
+
const { accessToken: t, keyFactory: n } = u(), s = `${e}_USER_PROFILE`, i = sessionStorage.getItem(s);
|
|
67
|
+
return y({
|
|
61
68
|
...r,
|
|
62
|
-
|
|
69
|
+
...m(e, { accessToken: t, keyFactory: n }),
|
|
63
70
|
queryFn: async () => {
|
|
64
|
-
const
|
|
71
|
+
const c = await o.getUserProfileById(
|
|
65
72
|
e,
|
|
66
73
|
t
|
|
67
74
|
);
|
|
68
75
|
return sessionStorage.setItem(
|
|
69
|
-
|
|
70
|
-
JSON.stringify(
|
|
71
|
-
),
|
|
76
|
+
s,
|
|
77
|
+
JSON.stringify(c)
|
|
78
|
+
), c;
|
|
72
79
|
},
|
|
73
80
|
// Use the sessionStorage cache to pre-populate profile data.
|
|
74
|
-
placeholderData:
|
|
81
|
+
placeholderData: i ? JSON.parse(i) : r?.placeholderData
|
|
75
82
|
});
|
|
76
83
|
}
|
|
77
|
-
function
|
|
84
|
+
function G(e, r) {
|
|
78
85
|
const { accessToken: t, keyFactory: n } = u(), s = n.getPrincipalAliasQueryKey(e);
|
|
79
|
-
return
|
|
86
|
+
return y({
|
|
80
87
|
...r,
|
|
81
88
|
queryKey: s,
|
|
82
89
|
queryFn: async () => (await o.getPrincipalAliasRequest(t, e)).principalId
|
|
83
90
|
});
|
|
84
91
|
}
|
|
85
|
-
function
|
|
86
|
-
return
|
|
92
|
+
function h() {
|
|
93
|
+
return R(void 0, {
|
|
87
94
|
select: (e) => e.isACTMember
|
|
88
95
|
});
|
|
89
96
|
}
|
|
90
97
|
export {
|
|
91
|
-
m as
|
|
98
|
+
m as getUserProfileQuery,
|
|
99
|
+
R as useGetCurrentUserBundle,
|
|
92
100
|
T as useGetCurrentUserProfile,
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
101
|
+
k as useGetNotificationEmail,
|
|
102
|
+
G as useGetPrincipalIdForAlias,
|
|
103
|
+
d as useGetUserBundle,
|
|
104
|
+
Q as useGetUserProfile,
|
|
105
|
+
h as useIsCurrentUserACTMember,
|
|
106
|
+
O as useSuspenseGetCurrentUserProfile
|
|
99
107
|
};
|
|
100
108
|
//# sourceMappingURL=useUserBundle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUserBundle.js","sources":["../../../src/synapse-queries/user/useUserBundle.ts"],"sourcesContent":["import SynapseClient from '@/synapse-client'\nimport { useSynapseContext } from '@/utils/context/SynapseContext'\nimport {\n USER_BUNDLE_MASK_IS_ACT_MEMBER,\n USER_BUNDLE_MASK_IS_AR_REVIEWER,\n USER_BUNDLE_MASK_IS_CERTIFIED,\n USER_BUNDLE_MASK_IS_VERIFIED,\n USER_BUNDLE_MASK_ORCID,\n USER_BUNDLE_MASK_USER_PROFILE,\n USER_BUNDLE_MASK_VERIFICATION_SUBMISSION,\n} from '@/utils/SynapseConstants'\nimport { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError'\nimport {\n NotificationEmail,\n PrincipalAliasRequest,\n PrincipalAliasResponse,\n UserBundle,\n UserProfile,\n} from '@sage-bionetworks/synapse-types'\nimport {\n useQuery,\n UseQueryOptions,\n useSuspenseQuery,\n} from '@tanstack/react-query'\n\nexport function useGetNotificationEmail(\n options?: Partial<UseQueryOptions<NotificationEmail, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n return useQuery({\n ...options,\n queryKey: keyFactory.getNotificationEmailQueryKey(),\n queryFn: () => SynapseClient.getNotificationEmail(accessToken),\n })\n}\n\nfunction useGetCurrentUserProfileQueryOptions() {\n const { accessToken, keyFactory } = useSynapseContext()\n const queryKey = keyFactory.getCurrentUserProfileQueryKey()\n return {\n queryKey: queryKey,\n queryFn: () => SynapseClient.getUserProfile(accessToken),\n }\n}\n\nexport function useGetCurrentUserProfile(\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const queryOptions = useGetCurrentUserProfileQueryOptions()\n return useQuery({\n ...options,\n ...queryOptions,\n })\n}\n\nexport function useSuspenseGetCurrentUserProfile(\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const queryOptions = useGetCurrentUserProfileQueryOptions()\n\n return useSuspenseQuery({\n ...options,\n ...queryOptions,\n })\n}\n\nconst ALL_USER_BUNDLE_FIELDS =\n USER_BUNDLE_MASK_USER_PROFILE |\n USER_BUNDLE_MASK_ORCID |\n USER_BUNDLE_MASK_VERIFICATION_SUBMISSION |\n USER_BUNDLE_MASK_IS_CERTIFIED |\n USER_BUNDLE_MASK_IS_VERIFIED |\n USER_BUNDLE_MASK_IS_ACT_MEMBER |\n USER_BUNDLE_MASK_IS_AR_REVIEWER\n\nexport function useGetUserBundle(\n userId: string,\n mask: number = ALL_USER_BUNDLE_FIELDS,\n options?: Partial<UseQueryOptions<UserBundle, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n const queryKey = keyFactory.getUserBundleQueryKey(userId, mask)\n\n return useQuery({\n ...options,\n queryKey: queryKey,\n queryFn: () => SynapseClient.getUserBundle(userId, mask, accessToken),\n })\n}\n\nexport function useGetCurrentUserBundle<TData = UserBundle>(\n mask: number = ALL_USER_BUNDLE_FIELDS,\n options?: Partial<UseQueryOptions<UserBundle, SynapseClientError, TData>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n\n const queryKey = keyFactory.getUserBundleQueryKey('current', mask)\n\n return useQuery({\n ...options,\n queryKey: queryKey,\n queryFn: () => SynapseClient.getMyUserBundle(mask, accessToken),\n })\n}\n\nexport function useGetUserProfile(\n principalId: string,\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n
|
|
1
|
+
{"version":3,"file":"useUserBundle.js","sources":["../../../src/synapse-queries/user/useUserBundle.ts"],"sourcesContent":["import SynapseClient from '@/synapse-client'\nimport { useSynapseContext } from '@/utils/context/SynapseContext'\nimport {\n USER_BUNDLE_MASK_IS_ACT_MEMBER,\n USER_BUNDLE_MASK_IS_AR_REVIEWER,\n USER_BUNDLE_MASK_IS_CERTIFIED,\n USER_BUNDLE_MASK_IS_VERIFIED,\n USER_BUNDLE_MASK_ORCID,\n USER_BUNDLE_MASK_USER_PROFILE,\n USER_BUNDLE_MASK_VERIFICATION_SUBMISSION,\n} from '@/utils/SynapseConstants'\nimport { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError'\nimport {\n NotificationEmail,\n PrincipalAliasRequest,\n PrincipalAliasResponse,\n UserBundle,\n UserProfile,\n} from '@sage-bionetworks/synapse-types'\nimport {\n queryOptions,\n useQuery,\n UseQueryOptions,\n useSuspenseQuery,\n} from '@tanstack/react-query'\nimport type { SynapseQueriesContext } from '../types'\n\nexport function useGetNotificationEmail(\n options?: Partial<UseQueryOptions<NotificationEmail, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n return useQuery({\n ...options,\n queryKey: keyFactory.getNotificationEmailQueryKey(),\n queryFn: () => SynapseClient.getNotificationEmail(accessToken),\n })\n}\n\nfunction useGetCurrentUserProfileQueryOptions() {\n const { accessToken, keyFactory } = useSynapseContext()\n const queryKey = keyFactory.getCurrentUserProfileQueryKey()\n return {\n queryKey: queryKey,\n queryFn: () => SynapseClient.getUserProfile(accessToken),\n }\n}\n\nexport function useGetCurrentUserProfile(\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const queryOptions = useGetCurrentUserProfileQueryOptions()\n return useQuery({\n ...options,\n ...queryOptions,\n })\n}\n\nexport function useSuspenseGetCurrentUserProfile(\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const queryOptions = useGetCurrentUserProfileQueryOptions()\n\n return useSuspenseQuery({\n ...options,\n ...queryOptions,\n })\n}\n\nconst ALL_USER_BUNDLE_FIELDS =\n USER_BUNDLE_MASK_USER_PROFILE |\n USER_BUNDLE_MASK_ORCID |\n USER_BUNDLE_MASK_VERIFICATION_SUBMISSION |\n USER_BUNDLE_MASK_IS_CERTIFIED |\n USER_BUNDLE_MASK_IS_VERIFIED |\n USER_BUNDLE_MASK_IS_ACT_MEMBER |\n USER_BUNDLE_MASK_IS_AR_REVIEWER\n\nexport function useGetUserBundle(\n userId: string,\n mask: number = ALL_USER_BUNDLE_FIELDS,\n options?: Partial<UseQueryOptions<UserBundle, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n const queryKey = keyFactory.getUserBundleQueryKey(userId, mask)\n\n return useQuery({\n ...options,\n queryKey: queryKey,\n queryFn: () => SynapseClient.getUserBundle(userId, mask, accessToken),\n })\n}\n\nexport function useGetCurrentUserBundle<TData = UserBundle>(\n mask: number = ALL_USER_BUNDLE_FIELDS,\n options?: Partial<UseQueryOptions<UserBundle, SynapseClientError, TData>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n\n const queryKey = keyFactory.getUserBundleQueryKey('current', mask)\n\n return useQuery({\n ...options,\n queryKey: queryKey,\n queryFn: () => SynapseClient.getMyUserBundle(mask, accessToken),\n })\n}\n\nexport function getUserProfileQuery(\n principalId: string,\n context: Pick<SynapseQueriesContext, 'accessToken' | 'keyFactory'>,\n) {\n const { accessToken, keyFactory } = context\n return queryOptions<UserProfile, SynapseClientError>({\n queryKey: keyFactory.getUserProfileQueryKey(principalId),\n queryFn: () => SynapseClient.getUserProfileById(principalId, accessToken),\n })\n}\n\nexport function useGetUserProfile(\n principalId: string,\n options?: Partial<UseQueryOptions<UserProfile, SynapseClientError>>,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n // We store the profile in a session storage cache used by SWC\n const sessionStorageCacheKey = `${principalId}_USER_PROFILE`\n const cachedValue = sessionStorage.getItem(sessionStorageCacheKey)\n\n return useQuery({\n ...options,\n ...getUserProfileQuery(principalId, { accessToken, keyFactory }),\n queryFn: async () => {\n const userProfile = await SynapseClient.getUserProfileById(\n principalId,\n accessToken,\n )\n // If the profile is re-fetched, save it to sessionStorage\n sessionStorage.setItem(\n sessionStorageCacheKey,\n JSON.stringify(userProfile),\n )\n return userProfile\n },\n // Use the sessionStorage cache to pre-populate profile data.\n placeholderData: cachedValue\n ? (JSON.parse(cachedValue) as UserProfile)\n : options?.placeholderData,\n })\n}\n\nexport function useGetPrincipalIdForAlias(\n request: PrincipalAliasRequest,\n options?: Partial<\n UseQueryOptions<PrincipalAliasResponse['principalId'], SynapseClientError>\n >,\n) {\n const { accessToken, keyFactory } = useSynapseContext()\n\n const queryKey = keyFactory.getPrincipalAliasQueryKey(request)\n\n return useQuery({\n ...options,\n queryKey: queryKey,\n queryFn: async () => {\n return (\n await SynapseClient.getPrincipalAliasRequest(accessToken, request)\n ).principalId\n },\n })\n}\n\nexport function useIsCurrentUserACTMember() {\n return useGetCurrentUserBundle<boolean>(undefined, {\n select: data => data.isACTMember!,\n })\n}\n"],"names":["useGetNotificationEmail","options","accessToken","keyFactory","useSynapseContext","useQuery","SynapseClient","useGetCurrentUserProfileQueryOptions","useGetCurrentUserProfile","queryOptions","useSuspenseGetCurrentUserProfile","useSuspenseQuery","ALL_USER_BUNDLE_FIELDS","USER_BUNDLE_MASK_USER_PROFILE","USER_BUNDLE_MASK_ORCID","USER_BUNDLE_MASK_VERIFICATION_SUBMISSION","USER_BUNDLE_MASK_IS_CERTIFIED","USER_BUNDLE_MASK_IS_VERIFIED","USER_BUNDLE_MASK_IS_ACT_MEMBER","USER_BUNDLE_MASK_IS_AR_REVIEWER","useGetUserBundle","userId","mask","queryKey","useGetCurrentUserBundle","getUserProfileQuery","principalId","context","useGetUserProfile","sessionStorageCacheKey","cachedValue","userProfile","useGetPrincipalIdForAlias","request","useIsCurrentUserACTMember","data"],"mappings":"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"}
|