@singi-labs/sifa-sdk 0.12.20 → 0.12.22

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 (43) hide show
  1. package/dist/{adult-content-B06bKHpA.d.cts → adult-content-DdY7S5nN.d.cts} +22 -1
  2. package/dist/{adult-content-B06bKHpA.d.ts → adult-content-DdY7S5nN.d.ts} +22 -1
  3. package/dist/{index-nBCabKk0.d.cts → index-4SE7Z9SK.d.cts} +2 -2
  4. package/dist/{index-DrOzgNB8.d.ts → index-BpEeBgRr.d.ts} +15 -3
  5. package/dist/{index-NMOaWN-G.d.cts → index-Bz0xL4us.d.cts} +15 -3
  6. package/dist/{index-QUCsiCnz.d.ts → index-M_BYlvDY.d.ts} +2 -2
  7. package/dist/index.cjs +44 -1
  8. package/dist/index.cjs.map +1 -1
  9. package/dist/index.d.cts +3 -2
  10. package/dist/index.d.ts +3 -2
  11. package/dist/index.js +44 -2
  12. package/dist/index.js.map +1 -1
  13. package/dist/{org-DKbNPMry.d.ts → org-CQMDMN58.d.ts} +1 -1
  14. package/dist/{org-UaNOo0ya.d.cts → org-DVIvsT_0.d.cts} +1 -1
  15. package/dist/profile-summary-B9SuY-EU.d.ts +39 -0
  16. package/dist/profile-summary-DjRf3Snf.d.cts +39 -0
  17. package/dist/query/fetchers/index.cjs +37 -0
  18. package/dist/query/fetchers/index.cjs.map +1 -1
  19. package/dist/query/fetchers/index.d.cts +4 -3
  20. package/dist/query/fetchers/index.d.ts +4 -3
  21. package/dist/query/fetchers/index.js +37 -1
  22. package/dist/query/fetchers/index.js.map +1 -1
  23. package/dist/query/hooks/index.d.cts +3 -3
  24. package/dist/query/hooks/index.d.ts +3 -3
  25. package/dist/query/index.cjs +37 -0
  26. package/dist/query/index.cjs.map +1 -1
  27. package/dist/query/index.d.cts +6 -5
  28. package/dist/query/index.d.ts +6 -5
  29. package/dist/query/index.js +37 -1
  30. package/dist/query/index.js.map +1 -1
  31. package/dist/schemas/index.cjs +23 -0
  32. package/dist/schemas/index.cjs.map +1 -1
  33. package/dist/schemas/index.d.cts +13 -0
  34. package/dist/schemas/index.d.ts +13 -0
  35. package/dist/schemas/index.js +23 -0
  36. package/dist/schemas/index.js.map +1 -1
  37. package/dist/schemas/write/index.cjs +15 -0
  38. package/dist/schemas/write/index.cjs.map +1 -1
  39. package/dist/schemas/write/index.d.cts +13 -7
  40. package/dist/schemas/write/index.d.ts +13 -7
  41. package/dist/schemas/write/index.js +15 -0
  42. package/dist/schemas/write/index.js.map +1 -1
  43. package/package.json +1 -1
@@ -456,6 +456,23 @@ interface ProfileOverrideSource {
456
456
  displayName?: string;
457
457
  avatarUrl?: string;
458
458
  }
459
+ /**
460
+ * A structured physical address on the org view. Mirrors
461
+ * `community.lexicon.location.address`; every field is optional.
462
+ */
463
+ interface OrgAddressView {
464
+ country: string | null;
465
+ postalCode: string | null;
466
+ region: string | null;
467
+ locality: string | null;
468
+ street: string | null;
469
+ name: string | null;
470
+ }
471
+ /** A featured link on the org view. Both `name` and `url` are present. */
472
+ interface OrgLinkView {
473
+ name: string;
474
+ url: string;
475
+ }
459
476
  /**
460
477
  * The org-profile fields exposed on the profile resolve when the org rendering
461
478
  * floor is met. Narrow on purpose: `contact` is never included (not rendered
@@ -468,6 +485,10 @@ interface OrgProfileView {
468
485
  /** Blob CID (or resolved URL) of the org logo, when present. */
469
486
  logoBlob: string | null;
470
487
  entityRefs: string[] | null;
488
+ addresses: OrgAddressView[] | null;
489
+ /** Self-selected headcount range (declared bucket, never calculated). */
490
+ companySize: string | null;
491
+ links: OrgLinkView[] | null;
471
492
  }
472
493
  /**
473
494
  * A company entity recognized purely from the handle's registrable domain
@@ -918,4 +939,4 @@ declare function hasAdultContent(item: {
918
939
  labels?: ActivityLabel[];
919
940
  }): boolean;
920
941
 
921
- export { type ProfileVolunteering as $, type AdultContentLabel as A, type InvolvementView as B, type CoSpeaker as C, type DurationView as D, type ExternalAccount as E, type FeedItem as F, type LanguageProficiency as G, type HonorView as H, type IndustryDomain as I, type LanguageView as J, type OrgProfileView as K, type LocationValue as L, type PositionView as M, type PresentationDeliveryView as N, type OrgFloorVerdict as O, type ProfileSkill as P, type PresentationLinkView as Q, type PresentationView as R, type SkillSuggestion as S, type ProfileCourse as T, type ProfileIndustry as U, type ProfileInvolvementLink as V, type ProfileLocation as W, type ProfileLocationView as X, type ProfileOverrideSource as Y, type ProfilePresentation as Z, type ProfileView as _, type ActivityLabel as a, type ProjectView as a0, type PublicationContributor as a1, type PublicationView as a2, type RecognizedEntity as a3, type SkillRef as a4, type SkillView as a5, type TrustStat as a6, type VerifiedAccount as a7, type VolunteeringView as a8, hasAdultContent as a9, type ProfilePresentationDelivery as b, type PdsProviderInfo as c, type Profile as d, type ProfilePosition as e, type ProfileCertification as f, type ProfileEducation as g, type ProfileHonor as h, type ProfileLanguage as i, type ProfileProject as j, type ProfilePublication as k, type ProfileInvolvement as l, ADULT_CONTENT_LABELS as m, type ActiveApp as n, type ActiveAppView as o, type AtfundLinkView as p, type CertificationView as q, type CoSpeakerView as r, type ContributorView as s, type CourseView as t, type EducationView as u, type Endorsement as v, type EndorsementData as w, type ExternalAccountKeytraceClaim as x, type ExternalAccountView as y, type InvolvementLinkView as z };
942
+ export { type ProfileOverrideSource as $, type AdultContentLabel as A, type InvolvementLinkView as B, type CoSpeaker as C, type DurationView as D, type ExternalAccount as E, type FeedItem as F, type InvolvementView as G, type HonorView as H, type IndustryDomain as I, type LanguageProficiency as J, type LanguageView as K, type LocationValue as L, type OrgFloorVerdict as M, type OrgLinkView as N, type OrgAddressView as O, type ProfileView as P, type OrgProfileView as Q, type PositionView as R, type SkillSuggestion as S, type PresentationDeliveryView as T, type PresentationLinkView as U, type PresentationView as V, type ProfileCourse as W, type ProfileIndustry as X, type ProfileInvolvementLink as Y, type ProfileLocation as Z, type ProfileLocationView as _, type ActivityLabel as a, type ProfilePresentation as a0, type ProfileVolunteering as a1, type ProjectView as a2, type PublicationContributor as a3, type PublicationView as a4, type RecognizedEntity as a5, type SkillRef as a6, type SkillView as a7, type TrustStat as a8, type VerifiedAccount as a9, type VolunteeringView as aa, hasAdultContent as ab, type ProfileSkill as b, type ProfilePresentationDelivery as c, type PdsProviderInfo as d, type Profile as e, type ProfilePosition as f, type ProfileCertification as g, type ProfileEducation as h, type ProfileHonor as i, type ProfileLanguage as j, type ProfileProject as k, type ProfilePublication as l, type ProfileInvolvement as m, ADULT_CONTENT_LABELS as n, type ActiveApp as o, type ActiveAppView as p, type AtfundLinkView as q, type CertificationView as r, type CoSpeakerView as s, type ContributorView as t, type CourseView as u, type EducationView as v, type Endorsement as w, type EndorsementData as x, type ExternalAccountKeytraceClaim as y, type ExternalAccountView as z };
@@ -456,6 +456,23 @@ interface ProfileOverrideSource {
456
456
  displayName?: string;
457
457
  avatarUrl?: string;
458
458
  }
459
+ /**
460
+ * A structured physical address on the org view. Mirrors
461
+ * `community.lexicon.location.address`; every field is optional.
462
+ */
463
+ interface OrgAddressView {
464
+ country: string | null;
465
+ postalCode: string | null;
466
+ region: string | null;
467
+ locality: string | null;
468
+ street: string | null;
469
+ name: string | null;
470
+ }
471
+ /** A featured link on the org view. Both `name` and `url` are present. */
472
+ interface OrgLinkView {
473
+ name: string;
474
+ url: string;
475
+ }
459
476
  /**
460
477
  * The org-profile fields exposed on the profile resolve when the org rendering
461
478
  * floor is met. Narrow on purpose: `contact` is never included (not rendered
@@ -468,6 +485,10 @@ interface OrgProfileView {
468
485
  /** Blob CID (or resolved URL) of the org logo, when present. */
469
486
  logoBlob: string | null;
470
487
  entityRefs: string[] | null;
488
+ addresses: OrgAddressView[] | null;
489
+ /** Self-selected headcount range (declared bucket, never calculated). */
490
+ companySize: string | null;
491
+ links: OrgLinkView[] | null;
471
492
  }
472
493
  /**
473
494
  * A company entity recognized purely from the handle's registrable domain
@@ -918,4 +939,4 @@ declare function hasAdultContent(item: {
918
939
  labels?: ActivityLabel[];
919
940
  }): boolean;
920
941
 
921
- export { type ProfileVolunteering as $, type AdultContentLabel as A, type InvolvementView as B, type CoSpeaker as C, type DurationView as D, type ExternalAccount as E, type FeedItem as F, type LanguageProficiency as G, type HonorView as H, type IndustryDomain as I, type LanguageView as J, type OrgProfileView as K, type LocationValue as L, type PositionView as M, type PresentationDeliveryView as N, type OrgFloorVerdict as O, type ProfileSkill as P, type PresentationLinkView as Q, type PresentationView as R, type SkillSuggestion as S, type ProfileCourse as T, type ProfileIndustry as U, type ProfileInvolvementLink as V, type ProfileLocation as W, type ProfileLocationView as X, type ProfileOverrideSource as Y, type ProfilePresentation as Z, type ProfileView as _, type ActivityLabel as a, type ProjectView as a0, type PublicationContributor as a1, type PublicationView as a2, type RecognizedEntity as a3, type SkillRef as a4, type SkillView as a5, type TrustStat as a6, type VerifiedAccount as a7, type VolunteeringView as a8, hasAdultContent as a9, type ProfilePresentationDelivery as b, type PdsProviderInfo as c, type Profile as d, type ProfilePosition as e, type ProfileCertification as f, type ProfileEducation as g, type ProfileHonor as h, type ProfileLanguage as i, type ProfileProject as j, type ProfilePublication as k, type ProfileInvolvement as l, ADULT_CONTENT_LABELS as m, type ActiveApp as n, type ActiveAppView as o, type AtfundLinkView as p, type CertificationView as q, type CoSpeakerView as r, type ContributorView as s, type CourseView as t, type EducationView as u, type Endorsement as v, type EndorsementData as w, type ExternalAccountKeytraceClaim as x, type ExternalAccountView as y, type InvolvementLinkView as z };
942
+ export { type ProfileOverrideSource as $, type AdultContentLabel as A, type InvolvementLinkView as B, type CoSpeaker as C, type DurationView as D, type ExternalAccount as E, type FeedItem as F, type InvolvementView as G, type HonorView as H, type IndustryDomain as I, type LanguageProficiency as J, type LanguageView as K, type LocationValue as L, type OrgFloorVerdict as M, type OrgLinkView as N, type OrgAddressView as O, type ProfileView as P, type OrgProfileView as Q, type PositionView as R, type SkillSuggestion as S, type PresentationDeliveryView as T, type PresentationLinkView as U, type PresentationView as V, type ProfileCourse as W, type ProfileIndustry as X, type ProfileInvolvementLink as Y, type ProfileLocation as Z, type ProfileLocationView as _, type ActivityLabel as a, type ProfilePresentation as a0, type ProfileVolunteering as a1, type ProjectView as a2, type PublicationContributor as a3, type PublicationView as a4, type RecognizedEntity as a5, type SkillRef as a6, type SkillView as a7, type TrustStat as a8, type VerifiedAccount as a9, type VolunteeringView as aa, hasAdultContent as ab, type ProfileSkill as b, type ProfilePresentationDelivery as c, type PdsProviderInfo as d, type Profile as e, type ProfilePosition as f, type ProfileCertification as g, type ProfileEducation as h, type ProfileHonor as i, type ProfileLanguage as j, type ProfileProject as k, type ProfilePublication as l, type ProfileInvolvement as m, ADULT_CONTENT_LABELS as n, type ActiveApp as o, type ActiveAppView as p, type AtfundLinkView as q, type CertificationView as r, type CoSpeakerView as s, type ContributorView as t, type CourseView as u, type EducationView as v, type Endorsement as w, type EndorsementData as x, type ExternalAccountKeytraceClaim as y, type ExternalAccountView as z };
@@ -1,9 +1,9 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { S as SifaApiConfig, s as sifaQueryKeys, W as WriteResult, ae as RefreshPdsResult, at as UpdateProfileOverrideInput, au as UpdateProfileSelfInput, av as UploadAvatarResult, j as CreateResult, a2 as ProfileLocationInput, k as ExternalAccountInput, i as CreateExternalAccountResult, aw as VerifyExternalAccountResult, E as EndorsementInput, ad as RefreshOrcidPublicationsResult, B as BulkHideProfileItemInput, P as HideProfileItemInput, aq as StatsResponse, g as AppRegistryEntry, M as HiddenApp, w as FilterOptions, al as SearchFilters, am as SearchResponse, ap as SkillSearchResult, l as FeaturedProfile, ao as SimilarProfile, v as FetchSuggestionsOptions, as as SuggestionsResponse, G as FollowUserResult, o as FetchFollowListOptions, x as FollowListPage, H as FollowingResponse, q as FetchFollowingFeedOptions, p as FetchFollowProfilePageOptions, z as FollowProfilePageResponse, F as FeatureAllowlistResponse, m as FetchActivityFeedOptions, b as ActivityFeedResponse, e as ActivityTeaserResponse, L as HeatmapResponse, a as AccountCheckResult, ac as ReactionStatus, ab as ReactionResult, aa as ReactionError, ak as RoadmapVotesResponse, C as CastRoadmapVoteResult, D as DeleteAccountResult, af as ResetProfileResult, T as OrgClaimResult, _ as OrgProfileUpdateResult, U as OrgDomainChallengeResult, V as OrgDomainVerifyResult, X as OrgNotificationEmailAddResult, Y as OrgNotificationEmailRemoveResult } from './org-UaNOo0ya.cjs';
3
+ import { S as SifaApiConfig, s as sifaQueryKeys, W as WriteResult, ae as RefreshPdsResult, at as UpdateProfileOverrideInput, au as UpdateProfileSelfInput, av as UploadAvatarResult, j as CreateResult, a2 as ProfileLocationInput, k as ExternalAccountInput, i as CreateExternalAccountResult, aw as VerifyExternalAccountResult, E as EndorsementInput, ad as RefreshOrcidPublicationsResult, B as BulkHideProfileItemInput, P as HideProfileItemInput, aq as StatsResponse, g as AppRegistryEntry, M as HiddenApp, w as FilterOptions, al as SearchFilters, am as SearchResponse, ap as SkillSearchResult, l as FeaturedProfile, ao as SimilarProfile, v as FetchSuggestionsOptions, as as SuggestionsResponse, G as FollowUserResult, o as FetchFollowListOptions, x as FollowListPage, H as FollowingResponse, q as FetchFollowingFeedOptions, p as FetchFollowProfilePageOptions, z as FollowProfilePageResponse, F as FeatureAllowlistResponse, m as FetchActivityFeedOptions, b as ActivityFeedResponse, e as ActivityTeaserResponse, L as HeatmapResponse, a as AccountCheckResult, ac as ReactionStatus, ab as ReactionResult, aa as ReactionError, ak as RoadmapVotesResponse, C as CastRoadmapVoteResult, D as DeleteAccountResult, af as ResetProfileResult, T as OrgClaimResult, _ as OrgProfileUpdateResult, U as OrgDomainChallengeResult, V as OrgDomainVerifyResult, X as OrgNotificationEmailAddResult, Y as OrgNotificationEmailRemoveResult } from './org-DVIvsT_0.cjs';
4
4
  import * as _tanstack_react_query from '@tanstack/react-query';
5
5
  import { UseQueryOptions, UseMutationOptions, UseInfiniteQueryOptions, InfiniteData } from '@tanstack/react-query';
6
- import { d as Profile, _ as ProfileView, e as ProfilePosition, a4 as SkillRef, E as ExternalAccount, S as SkillSuggestion, O as OrgFloorVerdict } from './adult-content-B06bKHpA.cjs';
6
+ import { e as Profile, P as ProfileView, f as ProfilePosition, a6 as SkillRef, E as ExternalAccount, S as SkillSuggestion, M as OrgFloorVerdict } from './adult-content-DdY7S5nN.cjs';
7
7
  import { m as EntitySearchResponse, E as EntitySearchResult, g as EntityMintDomainResponse, k as EntityResolveDomainResponse, r as EntitySelectResponse, p as EntitySelectRequest, F as FollowFeedPage, c as FeatureFlag } from './feed-D2ZV8Eaj.cjs';
8
8
  import { O as OrgClaimRequestInput, h as OrgProfileUpdateRequestInput, b as OrgDomainChallengeRequestInput, d as OrgDomainVerifyRequestInput, f as OrgNotificationEmailRequestInput } from './org-settings-CmaSX5ZI.cjs';
9
9
 
@@ -1,6 +1,7 @@
1
- import { S as SifaApiConfig, A as ApiFetchOptions, j as CreateResult, W as WriteResult } from './org-DKbNPMry.js';
2
- import { d as Profile, _ as ProfileView, e as ProfilePosition, a4 as SkillRef } from './adult-content-B06bKHpA.js';
1
+ import { S as SifaApiConfig, A as ApiFetchOptions, j as CreateResult, W as WriteResult } from './org-CQMDMN58.js';
2
+ import { e as Profile, P as ProfileView, f as ProfilePosition, a6 as SkillRef } from './adult-content-DdY7S5nN.js';
3
3
  import { m as EntitySearchResponse, E as EntitySearchResult, g as EntityMintDomainResponse, k as EntityResolveDomainResponse, p as EntitySelectRequest, r as EntitySelectResponse } from './feed-D2ZV8Eaj.js';
4
+ import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-B9SuY-EU.js';
4
5
 
5
6
  /**
6
7
  * Read the aggregated profile for a handle or DID.
@@ -31,6 +32,17 @@ declare function fetchAtFundLink(config: SifaApiConfig, did: string, options?: A
31
32
  */
32
33
  declare function fetchGetProfileView(config: SifaApiConfig, actor: string, options?: ApiFetchOptions): Promise<ProfileView | null>;
33
34
 
35
+ /**
36
+ * Fetch the aggregated public profile via `id.sifa.getProfileView` and reduce it
37
+ * to a compact {@link ProfileSummary} (identity, headline, current role/employer,
38
+ * top skills). Convenience over `fetchGetProfileView` + `summarizeProfileView`,
39
+ * for third-party surfaces that only want the headline facts.
40
+ *
41
+ * Returns `null` when the AppView has no profile for the actor. Server-callable
42
+ * (Next.js RSC) and client-callable (Expo, browser).
43
+ */
44
+ declare function fetchProfileSummary(config: SifaApiConfig, actor: string, options?: SummarizeProfileViewOptions & ApiFetchOptions): Promise<ProfileSummary | null>;
45
+
34
46
  /**
35
47
  * Create a new `id.sifa.profile.position` record on the authenticated
36
48
  * user's PDS. The AppView signs and writes via the user's OAuth session.
@@ -271,4 +283,4 @@ declare function checkNetworkMapJobStatus(config: SifaApiConfig, jobId: string,
271
283
  */
272
284
  declare function fetchNetworkMap(config: SifaApiConfig, options?: ApiFetchOptions): Promise<NetworkMapResponse | null>;
273
285
 
274
- export { mintEntityDomain as A, resolveEntityDomain as B, revealMarqueDomain as C, selectEntity as D, setPositionPrimary as E, type FetchNetworkStreamCountOptions as F, unhideKeytraceClaim as G, unlinkSkillFromPosition as H, unrevealMarqueDomain as I, unsetPositionPrimary as J, updateEducation as K, updatePosition as L, updateRecord as M, type NetworkMapEdge as N, updateSkill as O, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, checkNetworkMapJobStatus as f, createEducation as g, createPosition as h, createRecord as i, createSkill as j, deleteEducation as k, deletePosition as l, deleteRecord as m, deleteSkill as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchProfile as u, hideKeytraceClaim as v, importSearchEntities as w, initiateNetworkMapGeneration as x, isNetworkMapResponse as y, linkSkillToPosition as z };
286
+ export { linkSkillToPosition as A, mintEntityDomain as B, resolveEntityDomain as C, revealMarqueDomain as D, selectEntity as E, type FetchNetworkStreamCountOptions as F, setPositionPrimary as G, unhideKeytraceClaim as H, unlinkSkillFromPosition as I, unrevealMarqueDomain as J, unsetPositionPrimary as K, updateEducation as L, updatePosition as M, type NetworkMapEdge as N, updateRecord as O, updateSkill as P, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, checkNetworkMapJobStatus as f, createEducation as g, createPosition as h, createRecord as i, createSkill as j, deleteEducation as k, deletePosition as l, deleteRecord as m, deleteSkill as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchProfile as u, fetchProfileSummary as v, hideKeytraceClaim as w, importSearchEntities as x, initiateNetworkMapGeneration as y, isNetworkMapResponse as z };
@@ -1,6 +1,7 @@
1
- import { S as SifaApiConfig, A as ApiFetchOptions, j as CreateResult, W as WriteResult } from './org-UaNOo0ya.cjs';
2
- import { d as Profile, _ as ProfileView, e as ProfilePosition, a4 as SkillRef } from './adult-content-B06bKHpA.cjs';
1
+ import { S as SifaApiConfig, A as ApiFetchOptions, j as CreateResult, W as WriteResult } from './org-DVIvsT_0.cjs';
2
+ import { e as Profile, P as ProfileView, f as ProfilePosition, a6 as SkillRef } from './adult-content-DdY7S5nN.cjs';
3
3
  import { m as EntitySearchResponse, E as EntitySearchResult, g as EntityMintDomainResponse, k as EntityResolveDomainResponse, p as EntitySelectRequest, r as EntitySelectResponse } from './feed-D2ZV8Eaj.cjs';
4
+ import { S as SummarizeProfileViewOptions, P as ProfileSummary } from './profile-summary-DjRf3Snf.cjs';
4
5
 
5
6
  /**
6
7
  * Read the aggregated profile for a handle or DID.
@@ -31,6 +32,17 @@ declare function fetchAtFundLink(config: SifaApiConfig, did: string, options?: A
31
32
  */
32
33
  declare function fetchGetProfileView(config: SifaApiConfig, actor: string, options?: ApiFetchOptions): Promise<ProfileView | null>;
33
34
 
35
+ /**
36
+ * Fetch the aggregated public profile via `id.sifa.getProfileView` and reduce it
37
+ * to a compact {@link ProfileSummary} (identity, headline, current role/employer,
38
+ * top skills). Convenience over `fetchGetProfileView` + `summarizeProfileView`,
39
+ * for third-party surfaces that only want the headline facts.
40
+ *
41
+ * Returns `null` when the AppView has no profile for the actor. Server-callable
42
+ * (Next.js RSC) and client-callable (Expo, browser).
43
+ */
44
+ declare function fetchProfileSummary(config: SifaApiConfig, actor: string, options?: SummarizeProfileViewOptions & ApiFetchOptions): Promise<ProfileSummary | null>;
45
+
34
46
  /**
35
47
  * Create a new `id.sifa.profile.position` record on the authenticated
36
48
  * user's PDS. The AppView signs and writes via the user's OAuth session.
@@ -271,4 +283,4 @@ declare function checkNetworkMapJobStatus(config: SifaApiConfig, jobId: string,
271
283
  */
272
284
  declare function fetchNetworkMap(config: SifaApiConfig, options?: ApiFetchOptions): Promise<NetworkMapResponse | null>;
273
285
 
274
- export { mintEntityDomain as A, resolveEntityDomain as B, revealMarqueDomain as C, selectEntity as D, setPositionPrimary as E, type FetchNetworkStreamCountOptions as F, unhideKeytraceClaim as G, unlinkSkillFromPosition as H, unrevealMarqueDomain as I, unsetPositionPrimary as J, updateEducation as K, updatePosition as L, updateRecord as M, type NetworkMapEdge as N, updateSkill as O, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, checkNetworkMapJobStatus as f, createEducation as g, createPosition as h, createRecord as i, createSkill as j, deleteEducation as k, deletePosition as l, deleteRecord as m, deleteSkill as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchProfile as u, hideKeytraceClaim as v, importSearchEntities as w, initiateNetworkMapGeneration as x, isNetworkMapResponse as y, linkSkillToPosition as z };
286
+ export { linkSkillToPosition as A, mintEntityDomain as B, resolveEntityDomain as C, revealMarqueDomain as D, selectEntity as E, type FetchNetworkStreamCountOptions as F, setPositionPrimary as G, unhideKeytraceClaim as H, unlinkSkillFromPosition as I, unrevealMarqueDomain as J, unsetPositionPrimary as K, updateEducation as L, updatePosition as M, type NetworkMapEdge as N, updateRecord as O, updateSkill as P, type NetworkMapGenerationJob as a, type NetworkMapGraphData as b, type NetworkMapNode as c, type NetworkMapPendingJob as d, type NetworkMapResponse as e, checkNetworkMapJobStatus as f, createEducation as g, createPosition as h, createRecord as i, createSkill as j, deleteEducation as k, deletePosition as l, deleteRecord as m, deleteSkill as n, fetchAtFundLink as o, fetchEndorsementCount as p, fetchEntitySearch as q, fetchGetProfileView as r, fetchNetworkMap as s, fetchNetworkStreamCount as t, fetchProfile as u, fetchProfileSummary as v, hideKeytraceClaim as w, importSearchEntities as x, initiateNetworkMapGeneration as y, isNetworkMapResponse as z };
@@ -1,9 +1,9 @@
1
1
  import * as react from 'react';
2
2
  import { ReactNode } from 'react';
3
- import { S as SifaApiConfig, s as sifaQueryKeys, W as WriteResult, ae as RefreshPdsResult, at as UpdateProfileOverrideInput, au as UpdateProfileSelfInput, av as UploadAvatarResult, j as CreateResult, a2 as ProfileLocationInput, k as ExternalAccountInput, i as CreateExternalAccountResult, aw as VerifyExternalAccountResult, E as EndorsementInput, ad as RefreshOrcidPublicationsResult, B as BulkHideProfileItemInput, P as HideProfileItemInput, aq as StatsResponse, g as AppRegistryEntry, M as HiddenApp, w as FilterOptions, al as SearchFilters, am as SearchResponse, ap as SkillSearchResult, l as FeaturedProfile, ao as SimilarProfile, v as FetchSuggestionsOptions, as as SuggestionsResponse, G as FollowUserResult, o as FetchFollowListOptions, x as FollowListPage, H as FollowingResponse, q as FetchFollowingFeedOptions, p as FetchFollowProfilePageOptions, z as FollowProfilePageResponse, F as FeatureAllowlistResponse, m as FetchActivityFeedOptions, b as ActivityFeedResponse, e as ActivityTeaserResponse, L as HeatmapResponse, a as AccountCheckResult, ac as ReactionStatus, ab as ReactionResult, aa as ReactionError, ak as RoadmapVotesResponse, C as CastRoadmapVoteResult, D as DeleteAccountResult, af as ResetProfileResult, T as OrgClaimResult, _ as OrgProfileUpdateResult, U as OrgDomainChallengeResult, V as OrgDomainVerifyResult, X as OrgNotificationEmailAddResult, Y as OrgNotificationEmailRemoveResult } from './org-DKbNPMry.js';
3
+ import { S as SifaApiConfig, s as sifaQueryKeys, W as WriteResult, ae as RefreshPdsResult, at as UpdateProfileOverrideInput, au as UpdateProfileSelfInput, av as UploadAvatarResult, j as CreateResult, a2 as ProfileLocationInput, k as ExternalAccountInput, i as CreateExternalAccountResult, aw as VerifyExternalAccountResult, E as EndorsementInput, ad as RefreshOrcidPublicationsResult, B as BulkHideProfileItemInput, P as HideProfileItemInput, aq as StatsResponse, g as AppRegistryEntry, M as HiddenApp, w as FilterOptions, al as SearchFilters, am as SearchResponse, ap as SkillSearchResult, l as FeaturedProfile, ao as SimilarProfile, v as FetchSuggestionsOptions, as as SuggestionsResponse, G as FollowUserResult, o as FetchFollowListOptions, x as FollowListPage, H as FollowingResponse, q as FetchFollowingFeedOptions, p as FetchFollowProfilePageOptions, z as FollowProfilePageResponse, F as FeatureAllowlistResponse, m as FetchActivityFeedOptions, b as ActivityFeedResponse, e as ActivityTeaserResponse, L as HeatmapResponse, a as AccountCheckResult, ac as ReactionStatus, ab as ReactionResult, aa as ReactionError, ak as RoadmapVotesResponse, C as CastRoadmapVoteResult, D as DeleteAccountResult, af as ResetProfileResult, T as OrgClaimResult, _ as OrgProfileUpdateResult, U as OrgDomainChallengeResult, V as OrgDomainVerifyResult, X as OrgNotificationEmailAddResult, Y as OrgNotificationEmailRemoveResult } from './org-CQMDMN58.js';
4
4
  import * as _tanstack_react_query from '@tanstack/react-query';
5
5
  import { UseQueryOptions, UseMutationOptions, UseInfiniteQueryOptions, InfiniteData } from '@tanstack/react-query';
6
- import { d as Profile, _ as ProfileView, e as ProfilePosition, a4 as SkillRef, E as ExternalAccount, S as SkillSuggestion, O as OrgFloorVerdict } from './adult-content-B06bKHpA.js';
6
+ import { e as Profile, P as ProfileView, f as ProfilePosition, a6 as SkillRef, E as ExternalAccount, S as SkillSuggestion, M as OrgFloorVerdict } from './adult-content-DdY7S5nN.js';
7
7
  import { m as EntitySearchResponse, E as EntitySearchResult, g as EntityMintDomainResponse, k as EntityResolveDomainResponse, r as EntitySelectResponse, p as EntitySelectRequest, F as FollowFeedPage, c as FeatureFlag } from './feed-D2ZV8Eaj.js';
8
8
  import { O as OrgClaimRequestInput, h as OrgProfileUpdateRequestInput, b as OrgDomainChallengeRequestInput, d as OrgDomainVerifyRequestInput, f as OrgNotificationEmailRequestInput } from './org-settings-CmaSX5ZI.js';
9
9
 
package/dist/index.cjs CHANGED
@@ -3848,6 +3848,25 @@ function pickPrimaryPosition(positions) {
3848
3848
  return [...active].sort((a, b) => (b.startedAt ?? "").localeCompare(a.startedAt ?? ""))[0];
3849
3849
  }
3850
3850
 
3851
+ // src/logic/profile-summary.ts
3852
+ var DEFAULT_MAX_SKILLS = 5;
3853
+ function summarizeProfileView(view, options = {}) {
3854
+ const limit = Math.max(0, options.maxSkills ?? DEFAULT_MAX_SKILLS);
3855
+ const primary = pickPrimaryPosition(view.positions);
3856
+ return {
3857
+ did: view.did,
3858
+ handle: view.handle,
3859
+ displayName: view.displayName,
3860
+ avatar: view.avatar,
3861
+ pronouns: view.pronouns,
3862
+ headline: view.headline,
3863
+ currentTitle: primary?.title,
3864
+ currentCompany: primary ? primary.entityName ?? primary.company : void 0,
3865
+ topSkills: (view.skills ?? []).slice(0, limit).map((s) => s.name),
3866
+ claimed: view.claimed ?? false
3867
+ };
3868
+ }
3869
+
3851
3870
  // src/logic/pseudo-employer.ts
3852
3871
  var PSEUDO_EMPLOYERS = /* @__PURE__ */ new Set([
3853
3872
  "self",
@@ -4254,6 +4273,18 @@ var EndorsementRecordSchema = zod.z.object({
4254
4273
  comment: zod.z.string().refine(maxGraphemes(300)).max(3e3).optional(),
4255
4274
  createdAt: datetimeSchema
4256
4275
  });
4276
+ var orgAddressSchema = zod.z.object({
4277
+ country: zod.z.string().optional(),
4278
+ postalCode: zod.z.string().optional(),
4279
+ region: zod.z.string().optional(),
4280
+ locality: zod.z.string().optional(),
4281
+ street: zod.z.string().optional(),
4282
+ name: zod.z.string().optional()
4283
+ });
4284
+ var orgLinkSchema = zod.z.object({
4285
+ name: zod.z.string().refine(maxGraphemes(60)).max(600),
4286
+ url: uriSchema.max(2048)
4287
+ });
4257
4288
  var OrgProfileRecordSchema = zod.z.object({
4258
4289
  name: zod.z.string().min(1).refine(maxGraphemes(200)).max(2e3),
4259
4290
  description: zod.z.string().refine(maxGraphemes(5e3)).max(5e4).optional(),
@@ -4263,6 +4294,17 @@ var OrgProfileRecordSchema = zod.z.object({
4263
4294
  entityRefs: zod.z.array(uriSchema).max(20).optional(),
4264
4295
  /** Contact email. NOT rendered publicly; validated as email at the app layer. */
4265
4296
  contact: zod.z.string().optional(),
4297
+ /** Physical addresses (headquarters, offices). */
4298
+ addresses: zod.z.array(orgAddressSchema).max(10).optional(),
4299
+ /**
4300
+ * Self-selected headcount range (a declared bucket, never a calculated count).
4301
+ * Open enum (bare-string knownValues in the lexicon): `1-10`, `11-50`,
4302
+ * `51-200`, `201-500`, `501-1000`, `1001-5000`, `5001-10000`, `10001+`. Any
4303
+ * string is accepted so future ranges do not break older records.
4304
+ */
4305
+ companySize: zod.z.string().optional(),
4306
+ /** Featured links or content surfaced on the org profile. */
4307
+ links: zod.z.array(orgLinkSchema).max(10).optional(),
4266
4308
  labels: selfLabelsSchema.optional(),
4267
4309
  createdAt: datetimeSchema
4268
4310
  });
@@ -4597,7 +4639,7 @@ var ProfileVolunteeringRecordSchema = zod.z.object({
4597
4639
  });
4598
4640
 
4599
4641
  // src/index.ts
4600
- var SIFA_SDK_VERSION = "0.12.20";
4642
+ var SIFA_SDK_VERSION = "0.12.22";
4601
4643
 
4602
4644
  exports.ACTIVITY_TIERS = ACTIVITY_TIERS;
4603
4645
  exports.ACTIVITY_VERBS = ACTIVITY_VERBS;
@@ -4836,6 +4878,7 @@ exports.streamVerbSchema = streamVerbSchema;
4836
4878
  exports.stripHtmlToText = stripHtmlToText;
4837
4879
  exports.strongRefSchema = strongRefSchema;
4838
4880
  exports.summarizePresentationDeliveries = summarizePresentationDeliveries;
4881
+ exports.summarizeProfileView = summarizeProfileView;
4839
4882
  exports.toStreamCardVM = toStreamCardVM;
4840
4883
  exports.toStreamCardVMs = toStreamCardVMs;
4841
4884
  exports.truncateGraphemes = truncateGraphemes;