@singi-labs/sifa-sdk 0.19.96 → 0.19.98
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/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/jev/index.cjs +20 -0
- package/dist/jev/index.cjs.map +1 -1
- package/dist/jev/index.d.cts +29 -1
- package/dist/jev/index.d.ts +29 -1
- package/dist/jev/index.js +20 -0
- package/dist/jev/index.js.map +1 -1
- package/dist/jev/issue.cjs.map +1 -1
- package/dist/query/fetchers/admin-review-queues.js +3 -1
- package/dist/query/fetchers/admin-review-queues.js.map +1 -1
- package/dist/query/fetchers/index.cjs +25 -2
- package/dist/query/fetchers/index.cjs.map +1 -1
- package/dist/query/fetchers/index.d.cts +1 -1
- package/dist/query/fetchers/index.d.ts +1 -1
- package/dist/query/fetchers/index.js +4 -0
- package/dist/query/fetchers/index.js.map +1 -1
- package/dist/query/fetchers/profile-completeness.js +21 -2
- package/dist/query/fetchers/profile-completeness.js.map +1 -1
- package/dist/query/fetchers/profile-emails.js +66 -0
- package/dist/query/fetchers/profile-emails.js.map +1 -0
- package/dist/query/hooks/index.cjs +164 -2
- package/dist/query/hooks/index.cjs.map +1 -1
- package/dist/query/hooks/index.d.cts +2 -2
- package/dist/query/hooks/index.d.ts +2 -2
- package/dist/query/hooks/index.js +17 -1
- package/dist/query/hooks/index.js.map +1 -1
- package/dist/query/hooks/use-profile-completeness.js +43 -1
- package/dist/query/hooks/use-profile-completeness.js.map +1 -1
- package/dist/query/hooks/use-profile-emails.js +73 -0
- package/dist/query/hooks/use-profile-emails.js.map +1 -0
- package/dist/query/index.cjs +169 -2
- package/dist/query/index.cjs.map +1 -1
- package/dist/query/index.d.cts +3 -3
- package/dist/query/index.d.ts +3 -3
- package/dist/query/index.js +33 -1
- package/dist/query/index.js.map +1 -1
- package/dist/query/keys.js +5 -0
- package/dist/query/keys.js.map +1 -1
- package/dist/{use-user-settings-CFhaGcAq.d.ts → use-user-settings-CrzlFn2d.d.ts} +100 -2
- package/dist/{use-user-settings-CBH1CeDP.d.cts → use-user-settings-DppxALpF.d.cts} +100 -2
- package/dist/{user-settings-D1zKOWa2.d.ts → user-settings-Bgm2xbpb.d.ts} +25 -1
- package/dist/{user-settings-ChPm0BFN.d.cts → user-settings-C-eXWC6X.d.cts} +25 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { A as AddFeatureAllowlistVariables, e as CreateReactionVariables, f as CreateRecordVariables, D as DeleteReactionVariables, g as DeleteRecordVariables,
|
|
2
|
-
export {
|
|
1
|
+
export { A as AddFeatureAllowlistVariables, e as CreateReactionVariables, f as CreateRecordVariables, D as DeleteReactionVariables, g as DeleteRecordVariables, j as FollowVariables, P as PositionSkillLinkVariables, R as RemoveFeatureAllowlistVariables, S as SifaProvider, r as SifaProviderProps, U as UnfollowVariables, s as UpdateEducationVariables, t as UpdateExternalAccountVariables, u as UpdatePositionVariables, v as UpdateProfileLocationVariables, w as UpdateRecordVariables, x as UpdateSkillSubCategoriesVariables, y as UpdateSkillVariables, z as UseEntitySearchOptions, B as UseMyGithubPullRequestsParams, a0 as useAccounts, a1 as useActivityFeed, a2 as useActivityPreferences, a3 as useActivityTeaser, a4 as useAddFeatureAllowlist, a5 as useAddOrgNotificationEmail, a6 as useAddProfileEmail, a7 as useAdminReviewQueues, a8 as useAppAccountCheck, a9 as useAppsRegistry, aa as useAtFundLink, ab as useAttestationRequests, ac as useBlueskySuggestions, ad as useBulkHideProfileItems, ae as useBulkHideStandardPublications, af as useBulkUnhideProfileItems, ag as useBulkUnhideStandardPublications, ah as useCanonicalSkillSearch, ai as useCastRoadmapVote, aj as useClearCompletenessDismissals, ak as useCreateConfirmation, al as useCreateEducation, am as useCreateEndorsement, an as useCreateExternalAccount, ao as useCreateOrgAttestation, ap as useCreatePosition, aq as useCreateProfileLocation, ar as useCreateReaction, as as useCreateRecord, at as useCreateSkill, au as useDebouncedValue, av as useDeleteAccount, aw as useDeleteAvatarOverride, ax as useDeleteEducation, ay as useDeleteExternalAccount, az as useDeleteNamePronunciationAudio, aA as useDeletePosition, aB as useDeleteProfileLocation, aC as useDeleteReaction, aD as useDeleteRecord, aE as useDeleteRepoRecords, aF as useDeleteSkill, aG as useDismissCompletenessSignal, aH as useDismissConfirmation, aI as useDismissUnlinkedPosition, aJ as useEndorsementCount, aK as useEntitySearch, aL as useExternalAccounts, aM as useFeatureAllowlist, aN as useFeaturedProfile, aO as useFollow, aP as useFollowers, aQ as useFollowing, aR as useFollowingFeed, aS as useFollowingFeedVersion, aT as useFollowingList, aU as useGetProfileView, aV as useGivenConfirmations, aW as useHeatmapData, aX as useHiddenActivityItems, aY as useHiddenApps, aZ as useHideActivityItem, a_ as useHideKeytraceClaim, a$ as useHideOrcidPublication, b0 as useHideProfileItem, b1 as useHideSifaPublication, b2 as useHideStandardPublication, b3 as useImportSearchEntities, b4 as useInboxCounts, b5 as useLinkSkillToPosition, b7 as useMutuals, b8 as useMyGithubPullRequests, b9 as useMyRoadmapVotes, ba as useNetworkStreamCount, bb as useOffboardOrgAttestation, bc as useOrgAttestations, bd as useOrgClaim, be as useOrgDomainChallenge, bf as useOrgDomainVerify, bg as useOrgProfile, bh as usePendingConfirmations, bi as useProfile, bj as useProfileCompleteness, bk as useProfileEmails, bl as useReactionStatus, bm as useRefreshOrcidPublications, bn as useRefreshPds, bo as useRejectAttestationRequest, bp as useRemoveFeatureAllowlist, bq as useRemoveOrgNotificationEmail, br as useRemoveProfileEmail, bs as useRepoInventory, bt as useRequestEmploymentConfirmation, bu as useResendProfileEmailVerification, bv as useResetProfile, bx as useRetractRoadmapVote, by as useRevealMarqueDomain, bz as useRevokeConfirmation, bA as useRevokeOrgAttestation, bB as useRoadmapVotes, bC as useRpgClaimable, bD as useRpgStatus, ck as useSearchCompanies, bE as useSearchFilters, bF as useSearchProfiles, bG as useSelectEntity, bH as useSetExternalAccountPrimary, bI as useSetPositionPrimary, bJ as useSetSectionPrimary, bK as useSifaConfig, bL as useSimilarProfiles, bM as useSiteActivityPreset, bN as useSkillSuggestions, bO as useStats, bP as useSuggestionCount, bQ as useSuggestions, bR as useUnfollow, bS as useUnhideActivityItem, bT as useUnhideKeytraceClaim, bU as useUnhideOrcidPublication, bV as useUnhideProfileItem, bW as useUnhideSifaPublication, bX as useUnhideStandardPublication, bY as useUnlinkSkillFromPosition, bZ as useUnlinkedPositions, b_ as useUnrevealMarqueDomain, b$ as useUnsetExternalAccountPrimary, c0 as useUnsetPositionPrimary, c1 as useUnsetSectionPrimary, c2 as useUpdateActivityPreferences, c3 as useUpdateEducation, c4 as useUpdateExternalAccount, c5 as useUpdateOrgProfile, c6 as useUpdatePosition, c7 as useUpdateProfileLocation, c8 as useUpdateProfileOverride, c9 as useUpdateProfileSelf, ca as useUpdateRecord, cb as useUpdateSkill, cc as useUpdateSkillSubCategories, cd as useUpdateUserSettings, ce as useUploadAvatar, cf as useUploadNamePronunciationAudio, cg as useUserSettings, ch as useVerificationLog, ci as useVerifyExternalAccount, cj as useWipePreview } from '../../use-user-settings-DppxALpF.cjs';
|
|
2
|
+
export { aX as SifaQueryKey, s as sifaQueryKeys } from '../../user-settings-C-eXWC6X.cjs';
|
|
3
3
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
4
4
|
import { UseMutationOptions } from '@tanstack/react-query';
|
|
5
5
|
import { a2 as CreateResult, a3 as WriteResult } from '../../types-Dd7UMXIz.cjs';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { A as AddFeatureAllowlistVariables, e as CreateReactionVariables, f as CreateRecordVariables, D as DeleteReactionVariables, g as DeleteRecordVariables,
|
|
2
|
-
export {
|
|
1
|
+
export { A as AddFeatureAllowlistVariables, e as CreateReactionVariables, f as CreateRecordVariables, D as DeleteReactionVariables, g as DeleteRecordVariables, j as FollowVariables, P as PositionSkillLinkVariables, R as RemoveFeatureAllowlistVariables, S as SifaProvider, r as SifaProviderProps, U as UnfollowVariables, s as UpdateEducationVariables, t as UpdateExternalAccountVariables, u as UpdatePositionVariables, v as UpdateProfileLocationVariables, w as UpdateRecordVariables, x as UpdateSkillSubCategoriesVariables, y as UpdateSkillVariables, z as UseEntitySearchOptions, B as UseMyGithubPullRequestsParams, a0 as useAccounts, a1 as useActivityFeed, a2 as useActivityPreferences, a3 as useActivityTeaser, a4 as useAddFeatureAllowlist, a5 as useAddOrgNotificationEmail, a6 as useAddProfileEmail, a7 as useAdminReviewQueues, a8 as useAppAccountCheck, a9 as useAppsRegistry, aa as useAtFundLink, ab as useAttestationRequests, ac as useBlueskySuggestions, ad as useBulkHideProfileItems, ae as useBulkHideStandardPublications, af as useBulkUnhideProfileItems, ag as useBulkUnhideStandardPublications, ah as useCanonicalSkillSearch, ai as useCastRoadmapVote, aj as useClearCompletenessDismissals, ak as useCreateConfirmation, al as useCreateEducation, am as useCreateEndorsement, an as useCreateExternalAccount, ao as useCreateOrgAttestation, ap as useCreatePosition, aq as useCreateProfileLocation, ar as useCreateReaction, as as useCreateRecord, at as useCreateSkill, au as useDebouncedValue, av as useDeleteAccount, aw as useDeleteAvatarOverride, ax as useDeleteEducation, ay as useDeleteExternalAccount, az as useDeleteNamePronunciationAudio, aA as useDeletePosition, aB as useDeleteProfileLocation, aC as useDeleteReaction, aD as useDeleteRecord, aE as useDeleteRepoRecords, aF as useDeleteSkill, aG as useDismissCompletenessSignal, aH as useDismissConfirmation, aI as useDismissUnlinkedPosition, aJ as useEndorsementCount, aK as useEntitySearch, aL as useExternalAccounts, aM as useFeatureAllowlist, aN as useFeaturedProfile, aO as useFollow, aP as useFollowers, aQ as useFollowing, aR as useFollowingFeed, aS as useFollowingFeedVersion, aT as useFollowingList, aU as useGetProfileView, aV as useGivenConfirmations, aW as useHeatmapData, aX as useHiddenActivityItems, aY as useHiddenApps, aZ as useHideActivityItem, a_ as useHideKeytraceClaim, a$ as useHideOrcidPublication, b0 as useHideProfileItem, b1 as useHideSifaPublication, b2 as useHideStandardPublication, b3 as useImportSearchEntities, b4 as useInboxCounts, b5 as useLinkSkillToPosition, b7 as useMutuals, b8 as useMyGithubPullRequests, b9 as useMyRoadmapVotes, ba as useNetworkStreamCount, bb as useOffboardOrgAttestation, bc as useOrgAttestations, bd as useOrgClaim, be as useOrgDomainChallenge, bf as useOrgDomainVerify, bg as useOrgProfile, bh as usePendingConfirmations, bi as useProfile, bj as useProfileCompleteness, bk as useProfileEmails, bl as useReactionStatus, bm as useRefreshOrcidPublications, bn as useRefreshPds, bo as useRejectAttestationRequest, bp as useRemoveFeatureAllowlist, bq as useRemoveOrgNotificationEmail, br as useRemoveProfileEmail, bs as useRepoInventory, bt as useRequestEmploymentConfirmation, bu as useResendProfileEmailVerification, bv as useResetProfile, bx as useRetractRoadmapVote, by as useRevealMarqueDomain, bz as useRevokeConfirmation, bA as useRevokeOrgAttestation, bB as useRoadmapVotes, bC as useRpgClaimable, bD as useRpgStatus, ck as useSearchCompanies, bE as useSearchFilters, bF as useSearchProfiles, bG as useSelectEntity, bH as useSetExternalAccountPrimary, bI as useSetPositionPrimary, bJ as useSetSectionPrimary, bK as useSifaConfig, bL as useSimilarProfiles, bM as useSiteActivityPreset, bN as useSkillSuggestions, bO as useStats, bP as useSuggestionCount, bQ as useSuggestions, bR as useUnfollow, bS as useUnhideActivityItem, bT as useUnhideKeytraceClaim, bU as useUnhideOrcidPublication, bV as useUnhideProfileItem, bW as useUnhideSifaPublication, bX as useUnhideStandardPublication, bY as useUnlinkSkillFromPosition, bZ as useUnlinkedPositions, b_ as useUnrevealMarqueDomain, b$ as useUnsetExternalAccountPrimary, c0 as useUnsetPositionPrimary, c1 as useUnsetSectionPrimary, c2 as useUpdateActivityPreferences, c3 as useUpdateEducation, c4 as useUpdateExternalAccount, c5 as useUpdateOrgProfile, c6 as useUpdatePosition, c7 as useUpdateProfileLocation, c8 as useUpdateProfileOverride, c9 as useUpdateProfileSelf, ca as useUpdateRecord, cb as useUpdateSkill, cc as useUpdateSkillSubCategories, cd as useUpdateUserSettings, ce as useUploadAvatar, cf as useUploadNamePronunciationAudio, cg as useUserSettings, ch as useVerificationLog, ci as useVerifyExternalAccount, cj as useWipePreview } from '../../use-user-settings-CrzlFn2d.js';
|
|
2
|
+
export { aX as SifaQueryKey, s as sifaQueryKeys } from '../../user-settings-Bgm2xbpb.js';
|
|
3
3
|
import * as _tanstack_react_query from '@tanstack/react-query';
|
|
4
4
|
import { UseMutationOptions } from '@tanstack/react-query';
|
|
5
5
|
import { a2 as CreateResult, a3 as WriteResult } from '../../types-BqxbmLY6.js';
|
|
@@ -61,6 +61,12 @@ import {
|
|
|
61
61
|
} from "./use-confirmations.js";
|
|
62
62
|
import { useInboxCounts } from "./use-inbox.js";
|
|
63
63
|
import { useVerificationLog } from "./use-verification.js";
|
|
64
|
+
import {
|
|
65
|
+
useProfileEmails,
|
|
66
|
+
useAddProfileEmail,
|
|
67
|
+
useResendProfileEmailVerification,
|
|
68
|
+
useRemoveProfileEmail
|
|
69
|
+
} from "./use-profile-emails.js";
|
|
64
70
|
import {
|
|
65
71
|
useOrgAttestations,
|
|
66
72
|
useAttestationRequests,
|
|
@@ -71,7 +77,11 @@ import {
|
|
|
71
77
|
useRequestEmploymentConfirmation
|
|
72
78
|
} from "./use-org-attestations.js";
|
|
73
79
|
import { useUnlinkedPositions, useDismissUnlinkedPosition } from "./use-unlinked-positions.js";
|
|
74
|
-
import {
|
|
80
|
+
import {
|
|
81
|
+
useProfileCompleteness,
|
|
82
|
+
useDismissCompletenessSignal,
|
|
83
|
+
useClearCompletenessDismissals
|
|
84
|
+
} from "./use-profile-completeness.js";
|
|
75
85
|
import { useRpgClaimable } from "./use-rpg-claimable.js";
|
|
76
86
|
import { useRpgStatus } from "./use-rpg-status.js";
|
|
77
87
|
import { useHideKeytraceClaim, useUnhideKeytraceClaim } from "./use-keytrace-claims.js";
|
|
@@ -178,6 +188,7 @@ export {
|
|
|
178
188
|
useActivityTeaser,
|
|
179
189
|
useAddFeatureAllowlist,
|
|
180
190
|
useAddOrgNotificationEmail,
|
|
191
|
+
useAddProfileEmail,
|
|
181
192
|
useAdminReviewQueues,
|
|
182
193
|
useAppAccountCheck,
|
|
183
194
|
useAppsRegistry,
|
|
@@ -190,6 +201,7 @@ export {
|
|
|
190
201
|
useBulkUnhideStandardPublications,
|
|
191
202
|
useCanonicalSkillSearch,
|
|
192
203
|
useCastRoadmapVote,
|
|
204
|
+
useClearCompletenessDismissals,
|
|
193
205
|
useCreateConfirmation,
|
|
194
206
|
useCreateEducation,
|
|
195
207
|
useCreateEndorsement,
|
|
@@ -214,6 +226,7 @@ export {
|
|
|
214
226
|
useDeleteRecord,
|
|
215
227
|
useDeleteRepoRecords,
|
|
216
228
|
useDeleteSkill,
|
|
229
|
+
useDismissCompletenessSignal,
|
|
217
230
|
useDismissConfirmation,
|
|
218
231
|
useDismissUnlinkedPosition,
|
|
219
232
|
useEndorsementCount,
|
|
@@ -254,14 +267,17 @@ export {
|
|
|
254
267
|
usePendingConfirmations,
|
|
255
268
|
useProfile,
|
|
256
269
|
useProfileCompleteness,
|
|
270
|
+
useProfileEmails,
|
|
257
271
|
useReactionStatus,
|
|
258
272
|
useRefreshOrcidPublications,
|
|
259
273
|
useRefreshPds,
|
|
260
274
|
useRejectAttestationRequest,
|
|
261
275
|
useRemoveFeatureAllowlist,
|
|
262
276
|
useRemoveOrgNotificationEmail,
|
|
277
|
+
useRemoveProfileEmail,
|
|
263
278
|
useRepoInventory,
|
|
264
279
|
useRequestEmploymentConfirmation,
|
|
280
|
+
useResendProfileEmailVerification,
|
|
265
281
|
useResetProfile,
|
|
266
282
|
useRetractRoadmapVote,
|
|
267
283
|
useRevealMarqueDomain,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/query/hooks/index.ts"],"sourcesContent":["/**\n * Hook-only barrel for `@singi-labs/sifa-sdk/query/hooks`.\n *\n * Re-exports every hook plus the Provider so consumers can do\n * `import { useFollow, SifaProvider } from '@singi-labs/sifa-sdk/query/hooks'`.\n * The full `/query` barrel re-exports these plus the fetcher layer; this\n * subpath is for callers who want the hook surface only.\n *\n * Keep in sync with `../index.ts` — every hook exported there should\n * also be exported here.\n */\n\nexport { SifaProvider, useSifaConfig, type SifaProviderProps } from '../config.js';\n\nexport { useAtFundLink, useProfile } from './use-profile.js';\nexport { useGetProfileView } from './use-get-profile-view.js';\nexport {\n useDeleteAvatarOverride,\n useDeleteNamePronunciationAudio,\n useRefreshPds,\n useUpdateProfileOverride,\n useUpdateProfileSelf,\n useUploadAvatar,\n useUploadNamePronunciationAudio,\n} from './use-profile-mutations.js';\nexport { useCreatePosition } from './use-create-position.js';\nexport {\n useDeletePosition,\n useLinkSkillToPosition,\n useSetPositionPrimary,\n useUnlinkSkillFromPosition,\n useUnsetPositionPrimary,\n useUpdatePosition,\n type PositionSkillLinkVariables,\n type UpdatePositionVariables,\n} from './use-position-mutations.js';\nexport {\n useCreateEducation,\n useDeleteEducation,\n useUpdateEducation,\n type UpdateEducationVariables,\n} from './use-education-mutations.js';\nexport { useSetSectionPrimary, useUnsetSectionPrimary } from './use-section-primary-mutations.js';\nexport {\n useCreateSkill,\n useDeleteSkill,\n useUpdateSkill,\n useUpdateSkillSubCategories,\n type UpdateSkillVariables,\n type UpdateSkillSubCategoriesVariables,\n} from './use-skill-mutations.js';\nexport {\n useCreateRecord,\n useDeleteRecord,\n useUpdateRecord,\n type CreateRecordVariables,\n type DeleteRecordVariables,\n type UpdateRecordVariables,\n} from './use-record-mutations.js';\nexport {\n useCreateProfileLocation,\n useDeleteProfileLocation,\n useUpdateProfileLocation,\n type UpdateProfileLocationVariables,\n} from './use-location-mutations.js';\nexport {\n useCreateExternalAccount,\n useDeleteExternalAccount,\n useExternalAccounts,\n useSetExternalAccountPrimary,\n useUnsetExternalAccountPrimary,\n useUpdateExternalAccount,\n useVerifyExternalAccount,\n type UpdateExternalAccountVariables,\n} from './use-external-accounts.js';\nexport { useCreateEndorsement } from './use-endorsement-mutations.js';\nexport {\n usePendingConfirmations,\n useGivenConfirmations,\n useCreateConfirmation,\n useDismissConfirmation,\n useRevokeConfirmation,\n} from './use-confirmations.js';\nexport { useInboxCounts } from './use-inbox.js';\nexport { useVerificationLog } from './use-verification.js';\nexport {\n useOrgAttestations,\n useAttestationRequests,\n useCreateOrgAttestation,\n useOffboardOrgAttestation,\n useRevokeOrgAttestation,\n useRejectAttestationRequest,\n useRequestEmploymentConfirmation,\n} from './use-org-attestations.js';\nexport { useUnlinkedPositions, useDismissUnlinkedPosition } from './use-unlinked-positions.js';\nexport {
|
|
1
|
+
{"version":3,"sources":["../../../src/query/hooks/index.ts"],"sourcesContent":["/**\n * Hook-only barrel for `@singi-labs/sifa-sdk/query/hooks`.\n *\n * Re-exports every hook plus the Provider so consumers can do\n * `import { useFollow, SifaProvider } from '@singi-labs/sifa-sdk/query/hooks'`.\n * The full `/query` barrel re-exports these plus the fetcher layer; this\n * subpath is for callers who want the hook surface only.\n *\n * Keep in sync with `../index.ts` — every hook exported there should\n * also be exported here.\n */\n\nexport { SifaProvider, useSifaConfig, type SifaProviderProps } from '../config.js';\n\nexport { useAtFundLink, useProfile } from './use-profile.js';\nexport { useGetProfileView } from './use-get-profile-view.js';\nexport {\n useDeleteAvatarOverride,\n useDeleteNamePronunciationAudio,\n useRefreshPds,\n useUpdateProfileOverride,\n useUpdateProfileSelf,\n useUploadAvatar,\n useUploadNamePronunciationAudio,\n} from './use-profile-mutations.js';\nexport { useCreatePosition } from './use-create-position.js';\nexport {\n useDeletePosition,\n useLinkSkillToPosition,\n useSetPositionPrimary,\n useUnlinkSkillFromPosition,\n useUnsetPositionPrimary,\n useUpdatePosition,\n type PositionSkillLinkVariables,\n type UpdatePositionVariables,\n} from './use-position-mutations.js';\nexport {\n useCreateEducation,\n useDeleteEducation,\n useUpdateEducation,\n type UpdateEducationVariables,\n} from './use-education-mutations.js';\nexport { useSetSectionPrimary, useUnsetSectionPrimary } from './use-section-primary-mutations.js';\nexport {\n useCreateSkill,\n useDeleteSkill,\n useUpdateSkill,\n useUpdateSkillSubCategories,\n type UpdateSkillVariables,\n type UpdateSkillSubCategoriesVariables,\n} from './use-skill-mutations.js';\nexport {\n useCreateRecord,\n useDeleteRecord,\n useUpdateRecord,\n type CreateRecordVariables,\n type DeleteRecordVariables,\n type UpdateRecordVariables,\n} from './use-record-mutations.js';\nexport {\n useCreateProfileLocation,\n useDeleteProfileLocation,\n useUpdateProfileLocation,\n type UpdateProfileLocationVariables,\n} from './use-location-mutations.js';\nexport {\n useCreateExternalAccount,\n useDeleteExternalAccount,\n useExternalAccounts,\n useSetExternalAccountPrimary,\n useUnsetExternalAccountPrimary,\n useUpdateExternalAccount,\n useVerifyExternalAccount,\n type UpdateExternalAccountVariables,\n} from './use-external-accounts.js';\nexport { useCreateEndorsement } from './use-endorsement-mutations.js';\nexport {\n usePendingConfirmations,\n useGivenConfirmations,\n useCreateConfirmation,\n useDismissConfirmation,\n useRevokeConfirmation,\n} from './use-confirmations.js';\nexport { useInboxCounts } from './use-inbox.js';\nexport { useVerificationLog } from './use-verification.js';\nexport {\n useProfileEmails,\n useAddProfileEmail,\n useResendProfileEmailVerification,\n useRemoveProfileEmail,\n} from './use-profile-emails.js';\nexport {\n useOrgAttestations,\n useAttestationRequests,\n useCreateOrgAttestation,\n useOffboardOrgAttestation,\n useRevokeOrgAttestation,\n useRejectAttestationRequest,\n useRequestEmploymentConfirmation,\n} from './use-org-attestations.js';\nexport { useUnlinkedPositions, useDismissUnlinkedPosition } from './use-unlinked-positions.js';\nexport {\n useProfileCompleteness,\n useDismissCompletenessSignal,\n useClearCompletenessDismissals,\n} from './use-profile-completeness.js';\nexport { useRpgClaimable } from './use-rpg-claimable.js';\nexport { useRpgStatus } from './use-rpg-status.js';\nexport { useHideKeytraceClaim, useUnhideKeytraceClaim } from './use-keytrace-claims.js';\nexport { useRevealMarqueDomain, useUnrevealMarqueDomain } from './use-marque-domains.js';\nexport {\n useBulkHideStandardPublications,\n useBulkUnhideStandardPublications,\n useHideOrcidPublication,\n useHideSifaPublication,\n useHideStandardPublication,\n useRefreshOrcidPublications,\n useUnhideOrcidPublication,\n useUnhideSifaPublication,\n useUnhideStandardPublication,\n} from './use-publication-mutations.js';\nexport {\n useBulkHideProfileItems,\n useBulkUnhideProfileItems,\n useHideProfileItem,\n useUnhideProfileItem,\n} from './use-profile-items-hide.js';\nexport {\n useHiddenActivityItems,\n useHideActivityItem,\n useUnhideActivityItem,\n} from './use-activity-items-hide.js';\nexport {\n useActivityPreferences,\n useSiteActivityPreset,\n useUpdateActivityPreferences,\n} from './use-activity-preferences.js';\nexport { useStats } from './use-stats.js';\nexport { useAppsRegistry, useHiddenApps } from './use-apps.js';\nexport { useAccounts } from './use-accounts.js';\nexport {\n useCanonicalSkillSearch,\n useSearchCompanies,\n useSearchFilters,\n useSearchProfiles,\n useSkillSuggestions,\n} from './use-search.js';\nexport {\n useFeaturedProfile,\n useSimilarProfiles,\n useSuggestionCount,\n useSuggestions,\n} from './use-discovery.js';\nexport {\n useFollow,\n useFollowers,\n useFollowing,\n useFollowingFeed,\n useFollowingFeedVersion,\n useFollowingList,\n useUnfollow,\n type FollowVariables,\n type UnfollowVariables,\n} from './use-follow.js';\nexport { useBlueskySuggestions, useMutuals } from './use-follow-extras.js';\nexport {\n useAddFeatureAllowlist,\n useFeatureAllowlist,\n useRemoveFeatureAllowlist,\n type AddFeatureAllowlistVariables,\n type RemoveFeatureAllowlistVariables,\n} from './use-feature-allowlist.js';\nexport { useAdminReviewQueues } from './use-admin-review-queues.js';\nexport { useActivityFeed, useActivityTeaser, useHeatmapData } from './use-activity.js';\nexport { useMyGithubPullRequests, type UseMyGithubPullRequestsParams } from './use-github-prs.js';\nexport { useEndorsementCount } from './use-endorsement.js';\nexport { useNetworkStreamCount } from './use-stream.js';\nexport { useAppAccountCheck, useReactionStatus } from './use-reactions.js';\nexport {\n useCreateReaction,\n useDeleteReaction,\n type CreateReactionVariables,\n type DeleteReactionVariables,\n} from './use-reaction-mutations.js';\nexport { useMyRoadmapVotes, useRoadmapVotes } from './use-roadmap.js';\nexport { useCastRoadmapVote, useRetractRoadmapVote } from './use-roadmap-mutations.js';\nexport { useDeleteAccount, useResetProfile, useWipePreview } from './use-destructive.js';\nexport { useDeleteRepoRecords, useRepoInventory } from './use-repo-inventory.js';\n\nexport {\n useEntitySearch,\n useSelectEntity,\n useImportSearchEntities,\n useDebouncedValue,\n type UseEntitySearchOptions,\n} from './use-entity-search.js';\n\nexport { useOrgProfile } from './use-org-profile.js';\nexport { useOrgClaim } from './use-org-claim.js';\nexport { useUpdateOrgProfile } from './use-org-profile-settings.js';\nexport { useOrgDomainChallenge, useOrgDomainVerify } from './use-org-domains.js';\nexport {\n useAddOrgNotificationEmail,\n useRemoveOrgNotificationEmail,\n} from './use-org-notification-emails.js';\n\nexport { sifaQueryKeys, type SifaQueryKey } from '../keys.js';\nexport {\n useCreateInvestment,\n useUpdateInvestment,\n useDeleteInvestment,\n} from './use-investment-mutations.js';\nexport { useUpdateUserSettings, useUserSettings } from './use-user-settings.js';\n"],"mappings":"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","names":[]}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
// src/query/hooks/use-profile-completeness.ts
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
useMutation,
|
|
6
|
+
useQuery,
|
|
7
|
+
useQueryClient
|
|
8
|
+
} from "@tanstack/react-query";
|
|
9
|
+
import "../client.js";
|
|
5
10
|
import { useSifaConfig } from "../config.js";
|
|
6
11
|
import {
|
|
12
|
+
clearCompletenessDismissals,
|
|
13
|
+
dismissCompletenessSignal,
|
|
7
14
|
fetchProfileCompleteness
|
|
8
15
|
} from "../fetchers/profile-completeness.js";
|
|
9
16
|
import { sifaQueryKeys } from "../keys.js";
|
|
@@ -15,7 +22,42 @@ function useProfileCompleteness(options) {
|
|
|
15
22
|
...options
|
|
16
23
|
});
|
|
17
24
|
}
|
|
25
|
+
function useDismissCompletenessSignal(options) {
|
|
26
|
+
const config = useSifaConfig();
|
|
27
|
+
const queryClient = useQueryClient();
|
|
28
|
+
return useMutation({
|
|
29
|
+
// Spread first: a consumer-supplied handler would otherwise replace the
|
|
30
|
+
// one below and silently drop cache invalidation (#453).
|
|
31
|
+
...options,
|
|
32
|
+
mutationFn: (data) => dismissCompletenessSignal(config, data),
|
|
33
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
34
|
+
if (result.success) {
|
|
35
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profile.completeness() });
|
|
36
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.inbox.counts() });
|
|
37
|
+
}
|
|
38
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function useClearCompletenessDismissals(options) {
|
|
43
|
+
const config = useSifaConfig();
|
|
44
|
+
const queryClient = useQueryClient();
|
|
45
|
+
return useMutation({
|
|
46
|
+
// Spread first, as above.
|
|
47
|
+
...options,
|
|
48
|
+
mutationFn: () => clearCompletenessDismissals(config),
|
|
49
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
50
|
+
if (result.success) {
|
|
51
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profile.completeness() });
|
|
52
|
+
await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.inbox.counts() });
|
|
53
|
+
}
|
|
54
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
18
58
|
export {
|
|
59
|
+
useClearCompletenessDismissals,
|
|
60
|
+
useDismissCompletenessSignal,
|
|
19
61
|
useProfileCompleteness
|
|
20
62
|
};
|
|
21
63
|
//# sourceMappingURL=use-profile-completeness.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/query/hooks/use-profile-completeness.ts"],"sourcesContent":["'use client';\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../src/query/hooks/use-profile-completeness.ts"],"sourcesContent":["'use client';\n\nimport {\n useMutation,\n useQuery,\n useQueryClient,\n type UseMutationOptions,\n type UseQueryOptions,\n} from '@tanstack/react-query';\n\nimport { type WriteResult } from '../client.js';\n\nimport { useSifaConfig } from '../config.js';\nimport {\n clearCompletenessDismissals,\n dismissCompletenessSignal,\n fetchProfileCompleteness,\n type DismissCompletenessSignalInput,\n type ProfileCompleteness,\n} from '../fetchers/profile-completeness.js';\nimport { sifaQueryKeys } from '../keys.js';\n\n/**\n * Completeness of the signed-in user's own profile (which tracked signals are\n * missing), for the unified Inbox checklist. Returns a complete result when\n * signed out or on error.\n */\nexport function useProfileCompleteness(\n options?: Omit<\n UseQueryOptions<\n ProfileCompleteness,\n Error,\n ProfileCompleteness,\n ReturnType<typeof sifaQueryKeys.profile.completeness>\n >,\n 'queryKey' | 'queryFn'\n >,\n) {\n const config = useSifaConfig();\n return useQuery({\n queryKey: sifaQueryKeys.profile.completeness(),\n queryFn: () => fetchProfileCompleteness(config),\n ...options,\n });\n}\n\n/**\n * Hide one \"complete your profile\" item. On success the item leaves the\n * checklist and the bell count, so completeness and inbox counts are\n * invalidated.\n */\nexport function useDismissCompletenessSignal(\n options?: Omit<\n UseMutationOptions<WriteResult, Error, DismissCompletenessSignalInput>,\n 'mutationFn'\n >,\n) {\n const config = useSifaConfig();\n const queryClient = useQueryClient();\n return useMutation({\n // Spread first: a consumer-supplied handler would otherwise replace the\n // one below and silently drop cache invalidation (#453).\n ...options,\n mutationFn: (data: DismissCompletenessSignalInput) => dismissCompletenessSignal(config, data),\n onSuccess: async (result, variables, onMutateResult, context) => {\n if (result.success) {\n await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profile.completeness() });\n await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.inbox.counts() });\n }\n await options?.onSuccess?.(result, variables, onMutateResult, context);\n },\n });\n}\n\n/**\n * Show every hidden \"complete your profile\" item again. Invalidates the same\n * queries as {@link useDismissCompletenessSignal}.\n */\nexport function useClearCompletenessDismissals(\n options?: Omit<UseMutationOptions<WriteResult, Error, void>, 'mutationFn'>,\n) {\n const config = useSifaConfig();\n const queryClient = useQueryClient();\n return useMutation({\n // Spread first, as above.\n ...options,\n mutationFn: () => clearCompletenessDismissals(config),\n onSuccess: async (result, variables, onMutateResult, context) => {\n if (result.success) {\n await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profile.completeness() });\n await queryClient.invalidateQueries({ queryKey: sifaQueryKeys.inbox.counts() });\n }\n await options?.onSuccess?.(result, variables, onMutateResult, context);\n },\n });\n}\n"],"mappings":";;;AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AAEP,OAAiC;AAEjC,SAAS,qBAAqB;AAC9B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AACP,SAAS,qBAAqB;AAOvB,SAAS,uBACd,SASA;AACA,QAAM,SAAS,cAAc;AAC7B,SAAO,SAAS;AAAA,IACd,UAAU,cAAc,QAAQ,aAAa;AAAA,IAC7C,SAAS,MAAM,yBAAyB,MAAM;AAAA,IAC9C,GAAG;AAAA,EACL,CAAC;AACH;AAOO,SAAS,6BACd,SAIA;AACA,QAAM,SAAS,cAAc;AAC7B,QAAM,cAAc,eAAe;AACnC,SAAO,YAAY;AAAA;AAAA;AAAA,IAGjB,GAAG;AAAA,IACH,YAAY,CAAC,SAAyC,0BAA0B,QAAQ,IAAI;AAAA,IAC5F,WAAW,OAAO,QAAQ,WAAW,gBAAgB,YAAY;AAC/D,UAAI,OAAO,SAAS;AAClB,cAAM,YAAY,kBAAkB,EAAE,UAAU,cAAc,QAAQ,aAAa,EAAE,CAAC;AACtF,cAAM,YAAY,kBAAkB,EAAE,UAAU,cAAc,MAAM,OAAO,EAAE,CAAC;AAAA,MAChF;AACA,YAAM,SAAS,YAAY,QAAQ,WAAW,gBAAgB,OAAO;AAAA,IACvE;AAAA,EACF,CAAC;AACH;AAMO,SAAS,+BACd,SACA;AACA,QAAM,SAAS,cAAc;AAC7B,QAAM,cAAc,eAAe;AACnC,SAAO,YAAY;AAAA;AAAA,IAEjB,GAAG;AAAA,IACH,YAAY,MAAM,4BAA4B,MAAM;AAAA,IACpD,WAAW,OAAO,QAAQ,WAAW,gBAAgB,YAAY;AAC/D,UAAI,OAAO,SAAS;AAClB,cAAM,YAAY,kBAAkB,EAAE,UAAU,cAAc,QAAQ,aAAa,EAAE,CAAC;AACtF,cAAM,YAAY,kBAAkB,EAAE,UAAU,cAAc,MAAM,OAAO,EAAE,CAAC;AAAA,MAChF;AACA,YAAM,SAAS,YAAY,QAAQ,WAAW,gBAAgB,OAAO;AAAA,IACvE;AAAA,EACF,CAAC;AACH;","names":[]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/query/hooks/use-profile-emails.ts
|
|
4
|
+
import {
|
|
5
|
+
useMutation,
|
|
6
|
+
useQuery,
|
|
7
|
+
useQueryClient
|
|
8
|
+
} from "@tanstack/react-query";
|
|
9
|
+
import "../client.js";
|
|
10
|
+
import { useSifaConfig } from "../config.js";
|
|
11
|
+
import {
|
|
12
|
+
addProfileEmail,
|
|
13
|
+
fetchProfileEmails,
|
|
14
|
+
removeProfileEmail,
|
|
15
|
+
resendProfileEmailVerification
|
|
16
|
+
} from "../fetchers/profile-emails.js";
|
|
17
|
+
import { sifaQueryKeys } from "../keys.js";
|
|
18
|
+
function useProfileEmails(options) {
|
|
19
|
+
const config = useSifaConfig();
|
|
20
|
+
return useQuery({
|
|
21
|
+
queryKey: sifaQueryKeys.profileEmails.list(),
|
|
22
|
+
queryFn: () => fetchProfileEmails(config),
|
|
23
|
+
...options
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function useInvalidate() {
|
|
27
|
+
const queryClient = useQueryClient();
|
|
28
|
+
return () => queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profileEmails.all() });
|
|
29
|
+
}
|
|
30
|
+
function useAddProfileEmail(options) {
|
|
31
|
+
const config = useSifaConfig();
|
|
32
|
+
const invalidate = useInvalidate();
|
|
33
|
+
return useMutation({
|
|
34
|
+
// Spread first so a consumer handler cannot drop the invalidation.
|
|
35
|
+
...options,
|
|
36
|
+
mutationFn: (email) => addProfileEmail(config, email),
|
|
37
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
38
|
+
if (result.success) await invalidate();
|
|
39
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function useResendProfileEmailVerification(options) {
|
|
44
|
+
const config = useSifaConfig();
|
|
45
|
+
const invalidate = useInvalidate();
|
|
46
|
+
return useMutation({
|
|
47
|
+
...options,
|
|
48
|
+
mutationFn: (id) => resendProfileEmailVerification(config, id),
|
|
49
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
50
|
+
if (result.success) await invalidate();
|
|
51
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
function useRemoveProfileEmail(options) {
|
|
56
|
+
const config = useSifaConfig();
|
|
57
|
+
const invalidate = useInvalidate();
|
|
58
|
+
return useMutation({
|
|
59
|
+
...options,
|
|
60
|
+
mutationFn: (id) => removeProfileEmail(config, id),
|
|
61
|
+
onSuccess: async (result, variables, onMutateResult, context) => {
|
|
62
|
+
if (result.success) await invalidate();
|
|
63
|
+
await options?.onSuccess?.(result, variables, onMutateResult, context);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
useAddProfileEmail,
|
|
69
|
+
useProfileEmails,
|
|
70
|
+
useRemoveProfileEmail,
|
|
71
|
+
useResendProfileEmailVerification
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=use-profile-emails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/query/hooks/use-profile-emails.ts"],"sourcesContent":["'use client';\n\nimport {\n useMutation,\n useQuery,\n useQueryClient,\n type UseMutationOptions,\n type UseQueryOptions,\n} from '@tanstack/react-query';\n\nimport { type WriteResult } from '../client.js';\nimport { useSifaConfig } from '../config.js';\nimport {\n addProfileEmail,\n fetchProfileEmails,\n removeProfileEmail,\n resendProfileEmailVerification,\n type ProfileEmail,\n type ProfileEmails,\n type ProfileEmailSendStatus,\n} from '../fetchers/profile-emails.js';\nimport { sifaQueryKeys } from '../keys.js';\n\n/** The signed-in account's email addresses. */\nexport function useProfileEmails(\n options?: Omit<\n UseQueryOptions<\n ProfileEmails,\n Error,\n ProfileEmails,\n ReturnType<typeof sifaQueryKeys.profileEmails.list>\n >,\n 'queryKey' | 'queryFn'\n >,\n) {\n const config = useSifaConfig();\n return useQuery({\n queryKey: sifaQueryKeys.profileEmails.list(),\n queryFn: () => fetchProfileEmails(config),\n ...options,\n });\n}\n\nfunction useInvalidate() {\n const queryClient = useQueryClient();\n return () => queryClient.invalidateQueries({ queryKey: sifaQueryKeys.profileEmails.all() });\n}\n\nexport function useAddProfileEmail(\n options?: Omit<\n UseMutationOptions<\n WriteResult<ProfileEmail & { sendStatus: ProfileEmailSendStatus }>,\n Error,\n string\n >,\n 'mutationFn'\n >,\n) {\n const config = useSifaConfig();\n const invalidate = useInvalidate();\n return useMutation({\n // Spread first so a consumer handler cannot drop the invalidation.\n ...options,\n mutationFn: (email: string) => addProfileEmail(config, email),\n onSuccess: async (result, variables, onMutateResult, context) => {\n if (result.success) await invalidate();\n await options?.onSuccess?.(result, variables, onMutateResult, context);\n },\n });\n}\n\nexport function useResendProfileEmailVerification(\n options?: Omit<\n UseMutationOptions<WriteResult<{ sendStatus: ProfileEmailSendStatus }>, Error, number>,\n 'mutationFn'\n >,\n) {\n const config = useSifaConfig();\n const invalidate = useInvalidate();\n return useMutation({\n ...options,\n mutationFn: (id: number) => resendProfileEmailVerification(config, id),\n onSuccess: async (result, variables, onMutateResult, context) => {\n if (result.success) await invalidate();\n await options?.onSuccess?.(result, variables, onMutateResult, context);\n },\n });\n}\n\nexport function useRemoveProfileEmail(\n options?: Omit<UseMutationOptions<WriteResult, Error, number>, 'mutationFn'>,\n) {\n const config = useSifaConfig();\n const invalidate = useInvalidate();\n return useMutation({\n ...options,\n mutationFn: (id: number) => removeProfileEmail(config, id),\n onSuccess: async (result, variables, onMutateResult, context) => {\n if (result.success) await invalidate();\n await options?.onSuccess?.(result, variables, onMutateResult, context);\n },\n });\n}\n"],"mappings":";;;AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AAEP,OAAiC;AACjC,SAAS,qBAAqB;AAC9B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAIK;AACP,SAAS,qBAAqB;AAGvB,SAAS,iBACd,SASA;AACA,QAAM,SAAS,cAAc;AAC7B,SAAO,SAAS;AAAA,IACd,UAAU,cAAc,cAAc,KAAK;AAAA,IAC3C,SAAS,MAAM,mBAAmB,MAAM;AAAA,IACxC,GAAG;AAAA,EACL,CAAC;AACH;AAEA,SAAS,gBAAgB;AACvB,QAAM,cAAc,eAAe;AACnC,SAAO,MAAM,YAAY,kBAAkB,EAAE,UAAU,cAAc,cAAc,IAAI,EAAE,CAAC;AAC5F;AAEO,SAAS,mBACd,SAQA;AACA,QAAM,SAAS,cAAc;AAC7B,QAAM,aAAa,cAAc;AACjC,SAAO,YAAY;AAAA;AAAA,IAEjB,GAAG;AAAA,IACH,YAAY,CAAC,UAAkB,gBAAgB,QAAQ,KAAK;AAAA,IAC5D,WAAW,OAAO,QAAQ,WAAW,gBAAgB,YAAY;AAC/D,UAAI,OAAO,QAAS,OAAM,WAAW;AACrC,YAAM,SAAS,YAAY,QAAQ,WAAW,gBAAgB,OAAO;AAAA,IACvE;AAAA,EACF,CAAC;AACH;AAEO,SAAS,kCACd,SAIA;AACA,QAAM,SAAS,cAAc;AAC7B,QAAM,aAAa,cAAc;AACjC,SAAO,YAAY;AAAA,IACjB,GAAG;AAAA,IACH,YAAY,CAAC,OAAe,+BAA+B,QAAQ,EAAE;AAAA,IACrE,WAAW,OAAO,QAAQ,WAAW,gBAAgB,YAAY;AAC/D,UAAI,OAAO,QAAS,OAAM,WAAW;AACrC,YAAM,SAAS,YAAY,QAAQ,WAAW,gBAAgB,OAAO;AAAA,IACvE;AAAA,EACF,CAAC;AACH;AAEO,SAAS,sBACd,SACA;AACA,QAAM,SAAS,cAAc;AAC7B,QAAM,aAAa,cAAc;AACjC,SAAO,YAAY;AAAA,IACjB,GAAG;AAAA,IACH,YAAY,CAAC,OAAe,mBAAmB,QAAQ,EAAE;AAAA,IACzD,WAAW,OAAO,QAAQ,WAAW,gBAAgB,YAAY;AAC/D,UAAI,OAAO,QAAS,OAAM,WAAW;AACrC,YAAM,SAAS,YAAY,QAAQ,WAAW,gBAAgB,OAAO;AAAA,IACvE;AAAA,EACF,CAAC;AACH;","names":[]}
|