@singi-labs/sifa-sdk 0.12.77 → 0.12.78

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.
Files changed (39) hide show
  1. package/dist/{index-a3xqWsNm.d.cts → index-Uj1NC0QC.d.cts} +28 -1
  2. package/dist/{index-a3xqWsNm.d.ts → index-Uj1NC0QC.d.ts} +28 -1
  3. package/dist/index.cjs +1 -1
  4. package/dist/index.cjs.map +1 -1
  5. package/dist/index.d.cts +4 -4
  6. package/dist/index.d.ts +4 -4
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/jsonld/index.d.cts +1 -1
  10. package/dist/jsonld/index.d.ts +1 -1
  11. package/dist/{network-map-D5PJAs_l.d.cts → network-map-DMpXK9rM.d.cts} +30 -5
  12. package/dist/{network-map-BFjdjlj3.d.ts → network-map-kR4Ndke4.d.ts} +30 -5
  13. package/dist/{org-Co9muK52.d.ts → org-CnAMbO63.d.ts} +4 -3
  14. package/dist/{org-BOivj-0M.d.cts → org-DQyVyZ65.d.cts} +4 -3
  15. package/dist/{profile-summary-BTZAwG1z.d.cts → profile-summary-CbzSrQoE.d.cts} +1 -1
  16. package/dist/{profile-summary-Do5FY7Q0.d.ts → profile-summary-Yq3_odUX.d.ts} +1 -1
  17. package/dist/query/fetchers/index.cjs +24 -1
  18. package/dist/query/fetchers/index.cjs.map +1 -1
  19. package/dist/query/fetchers/index.d.cts +6 -6
  20. package/dist/query/fetchers/index.d.ts +6 -6
  21. package/dist/query/fetchers/index.js +24 -2
  22. package/dist/query/fetchers/index.js.map +1 -1
  23. package/dist/query/hooks/index.cjs +4 -1
  24. package/dist/query/hooks/index.cjs.map +1 -1
  25. package/dist/query/hooks/index.d.cts +5 -5
  26. package/dist/query/hooks/index.d.ts +5 -5
  27. package/dist/query/hooks/index.js +4 -1
  28. package/dist/query/hooks/index.js.map +1 -1
  29. package/dist/query/index.cjs +33 -1
  30. package/dist/query/index.cjs.map +1 -1
  31. package/dist/query/index.d.cts +19 -10
  32. package/dist/query/index.d.ts +19 -10
  33. package/dist/query/index.js +32 -2
  34. package/dist/query/index.js.map +1 -1
  35. package/dist/{types-D0LWpGtY.d.cts → types-B3KOVEYy.d.cts} +1 -1
  36. package/dist/{types-C3xxTGUE.d.ts → types-Ct7WNyn9.d.ts} +1 -1
  37. package/dist/{use-org-notification-emails-Do-Zjtf8.d.cts → use-org-notification-emails-C45soS39.d.cts} +3 -3
  38. package/dist/{use-org-notification-emails-Cz6OldEp.d.ts → use-org-notification-emails-DaZqJMfA.d.ts} +3 -3
  39. package/package.json +1 -2
@@ -1,4 +1,4 @@
1
- import { L as LocationValue } from '../index-a3xqWsNm.cjs';
1
+ import { L as LocationValue } from '../index-Uj1NC0QC.cjs';
2
2
 
3
3
  var vocabularies = {
4
4
  schema: "https://schema.org/",
@@ -1,4 +1,4 @@
1
- import { L as LocationValue } from '../index-a3xqWsNm.js';
1
+ import { L as LocationValue } from '../index-Uj1NC0QC.js';
2
2
 
3
3
  var vocabularies = {
4
4
  schema: "https://schema.org/",
@@ -1,7 +1,7 @@
1
- import { c as Profile, d as ProfilePosition, S as SkillRef } from './index-a3xqWsNm.cjs';
2
- import { S as SifaApiConfig, A as ApiFetchOptions, C as CreateResult, W as WriteResult } from './org-BOivj-0M.cjs';
3
- import { n as ProfileView } from './types-D0LWpGtY.cjs';
4
- import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-BTZAwG1z.cjs';
1
+ import { c as Profile, d as ProfilePosition, S as SkillRef } from './index-Uj1NC0QC.cjs';
2
+ import { S as SifaApiConfig, A as ApiFetchOptions, C as CreateResult, W as WriteResult } from './org-DQyVyZ65.cjs';
3
+ import { n as ProfileView } from './types-B3KOVEYy.cjs';
4
+ import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-CbzSrQoE.cjs';
5
5
  import { j as EntitySearchResponse, E as EntitySearchResult, d as EntityMintDomainResponse, h as EntityResolveDomainResponse, m as EntitySelectRequest, o as EntitySelectResponse } from './feed-BMm9Pkew.cjs';
6
6
 
7
7
  /**
@@ -102,6 +102,31 @@ declare function updateRecord(config: SifaApiConfig, collection: string, rkey: s
102
102
  /** Generic record-delete escape hatch. See {@link createRecord}. */
103
103
  declare function deleteRecord(config: SifaApiConfig, collection: string, rkey: string, options?: ApiFetchOptions): Promise<WriteResult>;
104
104
 
105
+ interface ReciprocitySkill {
106
+ name: string;
107
+ uri: string;
108
+ /** Absent until the firehose indexes the skill; the AppView resolves it. */
109
+ cid?: string;
110
+ }
111
+ interface ReciprocityCandidate {
112
+ did: string;
113
+ handle: string;
114
+ displayName?: string;
115
+ avatar?: string;
116
+ skills: ReciprocitySkill[];
117
+ }
118
+ /**
119
+ * Someone the signed-in user follows on Sifa whose skills they could endorse.
120
+ *
121
+ * The AppView picks: it filters people already dismissed and anyone blocked,
122
+ * requires at least one skill, and rotates the choice every twelve hours so
123
+ * the same person is not offered indefinitely.
124
+ *
125
+ * `null` means there is nobody left to suggest -- a real state, not an error.
126
+ * Failures also yield `null` so a broken suggestion never breaks the homepage.
127
+ */
128
+ declare function fetchReciprocityCandidate(config: SifaApiConfig, options?: ApiFetchOptions): Promise<ReciprocityCandidate | null>;
129
+
105
130
  /** A received endorsement the subject has neither confirmed nor dismissed. */
106
131
  interface PendingEndorsement {
107
132
  endorserDid: string;
@@ -336,4 +361,4 @@ declare function checkNetworkMapJobStatus(config: SifaApiConfig, jobId: string,
336
361
  */
337
362
  declare function fetchNetworkMap(config: SifaApiConfig, options?: ApiFetchOptions): Promise<NetworkMapResponse | null>;
338
363
 
339
- export { isNetworkMapResponse as A, linkSkillToPosition as B, mintEntityDomain as C, type DismissEndorsementInput as D, resolveEntityDomain as E, type FetchNetworkStreamCountOptions as F, revealMarqueDomain as G, selectEntity as H, setPositionPrimary as I, unhideKeytraceClaim as J, unlinkSkillFromPosition as K, unrevealMarqueDomain as L, unsetPositionPrimary as M, type NetworkMapEdge as N, updateEducation as O, type PendingEndorsementsPage as P, updatePosition as Q, updateRecord as R, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, type PendingEndorsement as f, checkNetworkMapJobStatus as g, createEducation as h, createPosition as i, createRecord as j, deleteEducation as k, deletePosition as l, deleteRecord as m, dismissEndorsement as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchPendingEndorsements as u, fetchProfile as v, fetchProfileSummary as w, hideKeytraceClaim as x, importSearchEntities as y, initiateNetworkMapGeneration as z };
364
+ export { importSearchEntities as A, initiateNetworkMapGeneration as B, isNetworkMapResponse as C, type DismissEndorsementInput as D, linkSkillToPosition as E, type FetchNetworkStreamCountOptions as F, mintEntityDomain as G, resolveEntityDomain as H, revealMarqueDomain as I, selectEntity as J, setPositionPrimary as K, unhideKeytraceClaim as L, unlinkSkillFromPosition as M, type NetworkMapEdge as N, unrevealMarqueDomain as O, type PendingEndorsementsPage as P, unsetPositionPrimary as Q, type ReciprocityCandidate as R, updateEducation as S, updatePosition as T, updateRecord as U, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, type PendingEndorsement as f, type ReciprocitySkill as g, checkNetworkMapJobStatus as h, createEducation as i, createPosition as j, createRecord as k, deleteEducation as l, deletePosition as m, deleteRecord as n, dismissEndorsement as o, fetchAtFundLink as p, fetchEndorsementCount as q, fetchEntitySearch as r, fetchGetProfileView as s, fetchNetworkMap as t, fetchNetworkStreamCount as u, fetchPendingEndorsements as v, fetchProfile as w, fetchProfileSummary as x, fetchReciprocityCandidate as y, hideKeytraceClaim as z };
@@ -1,7 +1,7 @@
1
- import { c as Profile, d as ProfilePosition, S as SkillRef } from './index-a3xqWsNm.js';
2
- import { S as SifaApiConfig, A as ApiFetchOptions, C as CreateResult, W as WriteResult } from './org-Co9muK52.js';
3
- import { n as ProfileView } from './types-C3xxTGUE.js';
4
- import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-Do5FY7Q0.js';
1
+ import { c as Profile, d as ProfilePosition, S as SkillRef } from './index-Uj1NC0QC.js';
2
+ import { S as SifaApiConfig, A as ApiFetchOptions, C as CreateResult, W as WriteResult } from './org-CnAMbO63.js';
3
+ import { n as ProfileView } from './types-Ct7WNyn9.js';
4
+ import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-Yq3_odUX.js';
5
5
  import { j as EntitySearchResponse, E as EntitySearchResult, d as EntityMintDomainResponse, h as EntityResolveDomainResponse, m as EntitySelectRequest, o as EntitySelectResponse } from './feed-BMm9Pkew.js';
6
6
 
7
7
  /**
@@ -102,6 +102,31 @@ declare function updateRecord(config: SifaApiConfig, collection: string, rkey: s
102
102
  /** Generic record-delete escape hatch. See {@link createRecord}. */
103
103
  declare function deleteRecord(config: SifaApiConfig, collection: string, rkey: string, options?: ApiFetchOptions): Promise<WriteResult>;
104
104
 
105
+ interface ReciprocitySkill {
106
+ name: string;
107
+ uri: string;
108
+ /** Absent until the firehose indexes the skill; the AppView resolves it. */
109
+ cid?: string;
110
+ }
111
+ interface ReciprocityCandidate {
112
+ did: string;
113
+ handle: string;
114
+ displayName?: string;
115
+ avatar?: string;
116
+ skills: ReciprocitySkill[];
117
+ }
118
+ /**
119
+ * Someone the signed-in user follows on Sifa whose skills they could endorse.
120
+ *
121
+ * The AppView picks: it filters people already dismissed and anyone blocked,
122
+ * requires at least one skill, and rotates the choice every twelve hours so
123
+ * the same person is not offered indefinitely.
124
+ *
125
+ * `null` means there is nobody left to suggest -- a real state, not an error.
126
+ * Failures also yield `null` so a broken suggestion never breaks the homepage.
127
+ */
128
+ declare function fetchReciprocityCandidate(config: SifaApiConfig, options?: ApiFetchOptions): Promise<ReciprocityCandidate | null>;
129
+
105
130
  /** A received endorsement the subject has neither confirmed nor dismissed. */
106
131
  interface PendingEndorsement {
107
132
  endorserDid: string;
@@ -336,4 +361,4 @@ declare function checkNetworkMapJobStatus(config: SifaApiConfig, jobId: string,
336
361
  */
337
362
  declare function fetchNetworkMap(config: SifaApiConfig, options?: ApiFetchOptions): Promise<NetworkMapResponse | null>;
338
363
 
339
- export { isNetworkMapResponse as A, linkSkillToPosition as B, mintEntityDomain as C, type DismissEndorsementInput as D, resolveEntityDomain as E, type FetchNetworkStreamCountOptions as F, revealMarqueDomain as G, selectEntity as H, setPositionPrimary as I, unhideKeytraceClaim as J, unlinkSkillFromPosition as K, unrevealMarqueDomain as L, unsetPositionPrimary as M, type NetworkMapEdge as N, updateEducation as O, type PendingEndorsementsPage as P, updatePosition as Q, updateRecord as R, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, type PendingEndorsement as f, checkNetworkMapJobStatus as g, createEducation as h, createPosition as i, createRecord as j, deleteEducation as k, deletePosition as l, deleteRecord as m, dismissEndorsement as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchPendingEndorsements as u, fetchProfile as v, fetchProfileSummary as w, hideKeytraceClaim as x, importSearchEntities as y, initiateNetworkMapGeneration as z };
364
+ export { importSearchEntities as A, initiateNetworkMapGeneration as B, isNetworkMapResponse as C, type DismissEndorsementInput as D, linkSkillToPosition as E, type FetchNetworkStreamCountOptions as F, mintEntityDomain as G, resolveEntityDomain as H, revealMarqueDomain as I, selectEntity as J, setPositionPrimary as K, unhideKeytraceClaim as L, unlinkSkillFromPosition as M, type NetworkMapEdge as N, unrevealMarqueDomain as O, type PendingEndorsementsPage as P, unsetPositionPrimary as Q, type ReciprocityCandidate as R, updateEducation as S, updatePosition as T, updateRecord as U, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, type PendingEndorsement as f, type ReciprocitySkill as g, checkNetworkMapJobStatus as h, createEducation as i, createPosition as j, createRecord as k, deleteEducation as l, deletePosition as m, deleteRecord as n, dismissEndorsement as o, fetchAtFundLink as p, fetchEndorsementCount as q, fetchEntitySearch as r, fetchGetProfileView as s, fetchNetworkMap as t, fetchNetworkStreamCount as u, fetchPendingEndorsements as v, fetchProfile as w, fetchProfileSummary as x, fetchReciprocityCandidate as y, hideKeytraceClaim as z };
@@ -1,6 +1,6 @@
1
- import { o as ExternalAccount, N as SkillSuggestion } from './index-a3xqWsNm.js';
1
+ import { p as ExternalAccount, Q as SkillSuggestion } from './index-Uj1NC0QC.js';
2
2
  import { y as FollowFeedPage, B as FollowProfileItem, q as FeatureAllowlistEntry, s as FeatureFlag } from './feed-BMm9Pkew.js';
3
- import { b as ActivityLabel, t as RepoDeleteResult, w as RepoInventory } from './types-C3xxTGUE.js';
3
+ import { b as ActivityLabel, t as RepoDeleteResult, w as RepoInventory } from './types-Ct7WNyn9.js';
4
4
  import { z } from 'zod';
5
5
  import { d as OrgNotificationEmailRequestInput, b as OrgDomainChallengeRequestInput, O as OrgClaimRequestInput, a as OrgProfileUpdateRequestInput, c as OrgDomainVerifyRequestInput } from './org-settings-CZ_tmAYl.js';
6
6
 
@@ -1535,6 +1535,7 @@ declare const sifaQueryKeys: {
1535
1535
  readonly all: () => readonly ["sifa", "endorsement"];
1536
1536
  readonly count: (did: string) => readonly ["sifa", "endorsement", "count", string];
1537
1537
  readonly pending: () => readonly ["sifa", "endorsement", "pending"];
1538
+ readonly reciprocity: () => readonly ["sifa", "endorsement", "reciprocity"];
1538
1539
  };
1539
1540
  readonly confirmation: {
1540
1541
  readonly all: () => readonly ["sifa", "confirmation"];
@@ -1569,7 +1570,7 @@ declare const sifaQueryKeys: {
1569
1570
  readonly wipePreview: () => readonly ["sifa", "destructive", "wipe-preview"];
1570
1571
  };
1571
1572
  };
1572
- type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.profile.atFundLink> | ReturnType<typeof sifaQueryKeys.profile.externalAccounts> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.canonicalSkills> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.entity.all> | ReturnType<typeof sifaQueryKeys.entity.search> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following> | ReturnType<typeof sifaQueryKeys.follow.followers> | ReturnType<typeof sifaQueryKeys.follow.followingOf> | ReturnType<typeof sifaQueryKeys.follow.feed> | ReturnType<typeof sifaQueryKeys.follow.mutuals> | ReturnType<typeof sifaQueryKeys.follow.blueskySuggestions> | ReturnType<typeof sifaQueryKeys.admin.all> | ReturnType<typeof sifaQueryKeys.admin.featureAllowlist> | ReturnType<typeof sifaQueryKeys.admin.reviewQueues> | ReturnType<typeof sifaQueryKeys.stats.all> | ReturnType<typeof sifaQueryKeys.stats.homepage> | ReturnType<typeof sifaQueryKeys.apps.all> | ReturnType<typeof sifaQueryKeys.apps.registry> | ReturnType<typeof sifaQueryKeys.apps.hidden> | ReturnType<typeof sifaQueryKeys.activity.all> | ReturnType<typeof sifaQueryKeys.activity.heatmap> | ReturnType<typeof sifaQueryKeys.activity.teaser> | ReturnType<typeof sifaQueryKeys.activity.feed> | ReturnType<typeof sifaQueryKeys.endorsement.all> | ReturnType<typeof sifaQueryKeys.endorsement.count> | ReturnType<typeof sifaQueryKeys.endorsement.pending> | ReturnType<typeof sifaQueryKeys.confirmation.all> | ReturnType<typeof sifaQueryKeys.confirmation.pending> | ReturnType<typeof sifaQueryKeys.confirmation.given> | ReturnType<typeof sifaQueryKeys.stream.all> | ReturnType<typeof sifaQueryKeys.stream.networkCount> | ReturnType<typeof sifaQueryKeys.reactions.all> | ReturnType<typeof sifaQueryKeys.reactions.status> | ReturnType<typeof sifaQueryKeys.reactions.accountCheck> | ReturnType<typeof sifaQueryKeys.roadmap.all> | ReturnType<typeof sifaQueryKeys.roadmap.votes> | ReturnType<typeof sifaQueryKeys.roadmap.myVotes> | ReturnType<typeof sifaQueryKeys.bskyPreferences.all> | ReturnType<typeof sifaQueryKeys.bskyPreferences.contentLabels> | ReturnType<typeof sifaQueryKeys.destructive.all> | ReturnType<typeof sifaQueryKeys.destructive.wipePreview> | ReturnType<typeof sifaQueryKeys.repoInventory.all> | ReturnType<typeof sifaQueryKeys.repoInventory.list>;
1573
+ type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.profile.atFundLink> | ReturnType<typeof sifaQueryKeys.profile.externalAccounts> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.canonicalSkills> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.entity.all> | ReturnType<typeof sifaQueryKeys.entity.search> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following> | ReturnType<typeof sifaQueryKeys.follow.followers> | ReturnType<typeof sifaQueryKeys.follow.followingOf> | ReturnType<typeof sifaQueryKeys.follow.feed> | ReturnType<typeof sifaQueryKeys.follow.mutuals> | ReturnType<typeof sifaQueryKeys.follow.blueskySuggestions> | ReturnType<typeof sifaQueryKeys.admin.all> | ReturnType<typeof sifaQueryKeys.admin.featureAllowlist> | ReturnType<typeof sifaQueryKeys.admin.reviewQueues> | ReturnType<typeof sifaQueryKeys.stats.all> | ReturnType<typeof sifaQueryKeys.stats.homepage> | ReturnType<typeof sifaQueryKeys.apps.all> | ReturnType<typeof sifaQueryKeys.apps.registry> | ReturnType<typeof sifaQueryKeys.apps.hidden> | ReturnType<typeof sifaQueryKeys.activity.all> | ReturnType<typeof sifaQueryKeys.activity.heatmap> | ReturnType<typeof sifaQueryKeys.activity.teaser> | ReturnType<typeof sifaQueryKeys.activity.feed> | ReturnType<typeof sifaQueryKeys.endorsement.all> | ReturnType<typeof sifaQueryKeys.endorsement.count> | ReturnType<typeof sifaQueryKeys.endorsement.pending> | ReturnType<typeof sifaQueryKeys.endorsement.reciprocity> | ReturnType<typeof sifaQueryKeys.confirmation.all> | ReturnType<typeof sifaQueryKeys.confirmation.pending> | ReturnType<typeof sifaQueryKeys.confirmation.given> | ReturnType<typeof sifaQueryKeys.stream.all> | ReturnType<typeof sifaQueryKeys.stream.networkCount> | ReturnType<typeof sifaQueryKeys.reactions.all> | ReturnType<typeof sifaQueryKeys.reactions.status> | ReturnType<typeof sifaQueryKeys.reactions.accountCheck> | ReturnType<typeof sifaQueryKeys.roadmap.all> | ReturnType<typeof sifaQueryKeys.roadmap.votes> | ReturnType<typeof sifaQueryKeys.roadmap.myVotes> | ReturnType<typeof sifaQueryKeys.bskyPreferences.all> | ReturnType<typeof sifaQueryKeys.bskyPreferences.contentLabels> | ReturnType<typeof sifaQueryKeys.destructive.all> | ReturnType<typeof sifaQueryKeys.destructive.wipePreview> | ReturnType<typeof sifaQueryKeys.repoInventory.all> | ReturnType<typeof sifaQueryKeys.repoInventory.list>;
1573
1574
 
1574
1575
  /** How a single entity binding was resolved during a claim. */
1575
1576
  interface OrgClaimBinding {
@@ -1,6 +1,6 @@
1
- import { o as ExternalAccount, N as SkillSuggestion } from './index-a3xqWsNm.cjs';
1
+ import { p as ExternalAccount, Q as SkillSuggestion } from './index-Uj1NC0QC.cjs';
2
2
  import { y as FollowFeedPage, B as FollowProfileItem, q as FeatureAllowlistEntry, s as FeatureFlag } from './feed-BMm9Pkew.cjs';
3
- import { b as ActivityLabel, t as RepoDeleteResult, w as RepoInventory } from './types-D0LWpGtY.cjs';
3
+ import { b as ActivityLabel, t as RepoDeleteResult, w as RepoInventory } from './types-B3KOVEYy.cjs';
4
4
  import { z } from 'zod';
5
5
  import { d as OrgNotificationEmailRequestInput, b as OrgDomainChallengeRequestInput, O as OrgClaimRequestInput, a as OrgProfileUpdateRequestInput, c as OrgDomainVerifyRequestInput } from './org-settings-CZ_tmAYl.cjs';
6
6
 
@@ -1535,6 +1535,7 @@ declare const sifaQueryKeys: {
1535
1535
  readonly all: () => readonly ["sifa", "endorsement"];
1536
1536
  readonly count: (did: string) => readonly ["sifa", "endorsement", "count", string];
1537
1537
  readonly pending: () => readonly ["sifa", "endorsement", "pending"];
1538
+ readonly reciprocity: () => readonly ["sifa", "endorsement", "reciprocity"];
1538
1539
  };
1539
1540
  readonly confirmation: {
1540
1541
  readonly all: () => readonly ["sifa", "confirmation"];
@@ -1569,7 +1570,7 @@ declare const sifaQueryKeys: {
1569
1570
  readonly wipePreview: () => readonly ["sifa", "destructive", "wipe-preview"];
1570
1571
  };
1571
1572
  };
1572
- type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.profile.atFundLink> | ReturnType<typeof sifaQueryKeys.profile.externalAccounts> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.canonicalSkills> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.entity.all> | ReturnType<typeof sifaQueryKeys.entity.search> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following> | ReturnType<typeof sifaQueryKeys.follow.followers> | ReturnType<typeof sifaQueryKeys.follow.followingOf> | ReturnType<typeof sifaQueryKeys.follow.feed> | ReturnType<typeof sifaQueryKeys.follow.mutuals> | ReturnType<typeof sifaQueryKeys.follow.blueskySuggestions> | ReturnType<typeof sifaQueryKeys.admin.all> | ReturnType<typeof sifaQueryKeys.admin.featureAllowlist> | ReturnType<typeof sifaQueryKeys.admin.reviewQueues> | ReturnType<typeof sifaQueryKeys.stats.all> | ReturnType<typeof sifaQueryKeys.stats.homepage> | ReturnType<typeof sifaQueryKeys.apps.all> | ReturnType<typeof sifaQueryKeys.apps.registry> | ReturnType<typeof sifaQueryKeys.apps.hidden> | ReturnType<typeof sifaQueryKeys.activity.all> | ReturnType<typeof sifaQueryKeys.activity.heatmap> | ReturnType<typeof sifaQueryKeys.activity.teaser> | ReturnType<typeof sifaQueryKeys.activity.feed> | ReturnType<typeof sifaQueryKeys.endorsement.all> | ReturnType<typeof sifaQueryKeys.endorsement.count> | ReturnType<typeof sifaQueryKeys.endorsement.pending> | ReturnType<typeof sifaQueryKeys.confirmation.all> | ReturnType<typeof sifaQueryKeys.confirmation.pending> | ReturnType<typeof sifaQueryKeys.confirmation.given> | ReturnType<typeof sifaQueryKeys.stream.all> | ReturnType<typeof sifaQueryKeys.stream.networkCount> | ReturnType<typeof sifaQueryKeys.reactions.all> | ReturnType<typeof sifaQueryKeys.reactions.status> | ReturnType<typeof sifaQueryKeys.reactions.accountCheck> | ReturnType<typeof sifaQueryKeys.roadmap.all> | ReturnType<typeof sifaQueryKeys.roadmap.votes> | ReturnType<typeof sifaQueryKeys.roadmap.myVotes> | ReturnType<typeof sifaQueryKeys.bskyPreferences.all> | ReturnType<typeof sifaQueryKeys.bskyPreferences.contentLabels> | ReturnType<typeof sifaQueryKeys.destructive.all> | ReturnType<typeof sifaQueryKeys.destructive.wipePreview> | ReturnType<typeof sifaQueryKeys.repoInventory.all> | ReturnType<typeof sifaQueryKeys.repoInventory.list>;
1573
+ type SifaQueryKey = ReturnType<typeof sifaQueryKeys.all> | ReturnType<typeof sifaQueryKeys.profile.all> | ReturnType<typeof sifaQueryKeys.profile.byHandle> | ReturnType<typeof sifaQueryKeys.profile.atFundLink> | ReturnType<typeof sifaQueryKeys.profile.externalAccounts> | ReturnType<typeof sifaQueryKeys.position.all> | ReturnType<typeof sifaQueryKeys.position.byOwner> | ReturnType<typeof sifaQueryKeys.search.all> | ReturnType<typeof sifaQueryKeys.search.profiles> | ReturnType<typeof sifaQueryKeys.search.canonicalSkills> | ReturnType<typeof sifaQueryKeys.search.skills> | ReturnType<typeof sifaQueryKeys.search.filters> | ReturnType<typeof sifaQueryKeys.entity.all> | ReturnType<typeof sifaQueryKeys.entity.search> | ReturnType<typeof sifaQueryKeys.discovery.all> | ReturnType<typeof sifaQueryKeys.discovery.similar> | ReturnType<typeof sifaQueryKeys.discovery.suggestions> | ReturnType<typeof sifaQueryKeys.discovery.suggestionCount> | ReturnType<typeof sifaQueryKeys.discovery.featured> | ReturnType<typeof sifaQueryKeys.follow.all> | ReturnType<typeof sifaQueryKeys.follow.following> | ReturnType<typeof sifaQueryKeys.follow.followers> | ReturnType<typeof sifaQueryKeys.follow.followingOf> | ReturnType<typeof sifaQueryKeys.follow.feed> | ReturnType<typeof sifaQueryKeys.follow.mutuals> | ReturnType<typeof sifaQueryKeys.follow.blueskySuggestions> | ReturnType<typeof sifaQueryKeys.admin.all> | ReturnType<typeof sifaQueryKeys.admin.featureAllowlist> | ReturnType<typeof sifaQueryKeys.admin.reviewQueues> | ReturnType<typeof sifaQueryKeys.stats.all> | ReturnType<typeof sifaQueryKeys.stats.homepage> | ReturnType<typeof sifaQueryKeys.apps.all> | ReturnType<typeof sifaQueryKeys.apps.registry> | ReturnType<typeof sifaQueryKeys.apps.hidden> | ReturnType<typeof sifaQueryKeys.activity.all> | ReturnType<typeof sifaQueryKeys.activity.heatmap> | ReturnType<typeof sifaQueryKeys.activity.teaser> | ReturnType<typeof sifaQueryKeys.activity.feed> | ReturnType<typeof sifaQueryKeys.endorsement.all> | ReturnType<typeof sifaQueryKeys.endorsement.count> | ReturnType<typeof sifaQueryKeys.endorsement.pending> | ReturnType<typeof sifaQueryKeys.endorsement.reciprocity> | ReturnType<typeof sifaQueryKeys.confirmation.all> | ReturnType<typeof sifaQueryKeys.confirmation.pending> | ReturnType<typeof sifaQueryKeys.confirmation.given> | ReturnType<typeof sifaQueryKeys.stream.all> | ReturnType<typeof sifaQueryKeys.stream.networkCount> | ReturnType<typeof sifaQueryKeys.reactions.all> | ReturnType<typeof sifaQueryKeys.reactions.status> | ReturnType<typeof sifaQueryKeys.reactions.accountCheck> | ReturnType<typeof sifaQueryKeys.roadmap.all> | ReturnType<typeof sifaQueryKeys.roadmap.votes> | ReturnType<typeof sifaQueryKeys.roadmap.myVotes> | ReturnType<typeof sifaQueryKeys.bskyPreferences.all> | ReturnType<typeof sifaQueryKeys.bskyPreferences.contentLabels> | ReturnType<typeof sifaQueryKeys.destructive.all> | ReturnType<typeof sifaQueryKeys.destructive.wipePreview> | ReturnType<typeof sifaQueryKeys.repoInventory.all> | ReturnType<typeof sifaQueryKeys.repoInventory.list>;
1573
1574
 
1574
1575
  /** How a single entity binding was resolved during a claim. */
1575
1576
  interface OrgClaimBinding {
@@ -1,4 +1,4 @@
1
- import { n as ProfileView } from './types-D0LWpGtY.cjs';
1
+ import { n as ProfileView } from './types-B3KOVEYy.cjs';
2
2
 
3
3
  /**
4
4
  * Compact professional summary derived from a {@link ProfileView}.
@@ -1,4 +1,4 @@
1
- import { n as ProfileView } from './types-C3xxTGUE.js';
1
+ import { n as ProfileView } from './types-Ct7WNyn9.js';
2
2
 
3
3
  /**
4
4
  * Compact professional summary derived from a {@link ProfileView}.
@@ -389,6 +389,25 @@ function confirmEndorsement(config, data, options = {}) {
389
389
  );
390
390
  }
391
391
 
392
+ // src/query/fetchers/reciprocity.ts
393
+ async function fetchReciprocityCandidate(config, options = {}) {
394
+ try {
395
+ const data = await apiFetch(
396
+ config,
397
+ "/api/endorsements/reciprocity-candidate",
398
+ {
399
+ cache: "no-store",
400
+ credentials: "include",
401
+ timeoutMs: 5e3,
402
+ ...options
403
+ }
404
+ );
405
+ return data?.candidate ?? null;
406
+ } catch {
407
+ return null;
408
+ }
409
+ }
410
+
392
411
  // src/query/fetchers/endorsement-inbox.ts
393
412
  async function fetchPendingEndorsements(config, options = {}) {
394
413
  try {
@@ -1524,7 +1543,10 @@ var sifaQueryKeys = {
1524
1543
  count: (did) => ["sifa", "endorsement", "count", did],
1525
1544
  // Scoped to the session rather than a DID -- the AppView reads the subject
1526
1545
  // from the session cookie, so there is only ever one inbox per client.
1527
- pending: () => ["sifa", "endorsement", "pending"]
1546
+ pending: () => ["sifa", "endorsement", "pending"],
1547
+ // Also session-scoped: the AppView picks the candidate from the viewer's
1548
+ // own follows, dismissals and blocks.
1549
+ reciprocity: () => ["sifa", "endorsement", "reciprocity"]
1528
1550
  },
1529
1551
  confirmation: {
1530
1552
  all: () => ["sifa", "confirmation"],
@@ -1761,6 +1783,7 @@ exports.fetchPendingEndorsements = fetchPendingEndorsements;
1761
1783
  exports.fetchProfile = fetchProfile;
1762
1784
  exports.fetchProfileSummary = fetchProfileSummary;
1763
1785
  exports.fetchReactionStatus = fetchReactionStatus;
1786
+ exports.fetchReciprocityCandidate = fetchReciprocityCandidate;
1764
1787
  exports.fetchRepoInventory = fetchRepoInventory;
1765
1788
  exports.fetchRoadmapVotes = fetchRoadmapVotes;
1766
1789
  exports.fetchSearchCompanies = fetchSearchCompanies;