@singi-labs/sifa-sdk 0.11.10 → 0.11.12
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/{adult-content-B5hAdi76.d.cts → adult-content-BpZD_3ow.d.cts} +15 -1
- package/dist/{adult-content-B5hAdi76.d.ts → adult-content-BpZD_3ow.d.ts} +15 -1
- package/dist/index.cjs +44 -34
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +38 -12
- package/dist/index.d.ts +38 -12
- package/dist/index.js +44 -35
- package/dist/index.js.map +1 -1
- package/dist/{keys-_UjR-zwC.d.ts → keys-DuICaiIq.d.ts} +9 -6
- package/dist/{keys-qoNpril5.d.cts → keys-K8kCuA5J.d.cts} +9 -6
- package/dist/query/fetchers/index.cjs.map +1 -1
- package/dist/query/fetchers/index.d.cts +3 -3
- package/dist/query/fetchers/index.d.ts +3 -3
- package/dist/query/fetchers/index.js.map +1 -1
- package/dist/query/hooks/index.cjs.map +1 -1
- package/dist/query/hooks/index.d.cts +3 -3
- package/dist/query/hooks/index.d.ts +3 -3
- package/dist/query/hooks/index.js.map +1 -1
- package/dist/query/index.cjs +11 -0
- package/dist/query/index.cjs.map +1 -1
- package/dist/query/index.d.cts +12 -4
- package/dist/query/index.d.ts +12 -4
- package/dist/query/index.js +11 -1
- package/dist/query/index.js.map +1 -1
- package/dist/schemas/index.cjs +2 -0
- package/dist/schemas/index.cjs.map +1 -1
- package/dist/schemas/index.d.cts +1 -0
- package/dist/schemas/index.d.ts +1 -0
- package/dist/schemas/index.js +2 -0
- package/dist/schemas/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { P as ProfileSkill, b as ProfilePresentationDelivery, L as LocationValue, c as PdsProviderInfo, d as Profile } from './adult-content-
|
|
2
|
-
export { e as ADULT_CONTENT_LABELS, f as ActiveApp, a as ActivityLabel, A as AdultContentLabel, g as Endorsement, h as EndorsementData, E as ExternalAccount, i as ExternalAccountKeytraceClaim, F as FeedItem, j as LanguageProficiency, k as PresentationLinkView, l as ProfileCertification, m as ProfileCourse, n as ProfileEducation, o as ProfileHonor, p as ProfileIndustry, q as ProfileLanguage, r as ProfileLocation, s as ProfileOverrideSource, t as ProfilePosition, u as ProfilePresentation, v as ProfileProject, w as ProfilePublication, x as ProfileVolunteering, y as PublicationContributor, z as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, B as hasAdultContent } from './adult-content-
|
|
1
|
+
import { P as ProfileSkill, b as ProfilePresentationDelivery, L as LocationValue, c as PdsProviderInfo, d as Profile } from './adult-content-BpZD_3ow.cjs';
|
|
2
|
+
export { e as ADULT_CONTENT_LABELS, f as ActiveApp, a as ActivityLabel, A as AdultContentLabel, C as CoSpeaker, g as Endorsement, h as EndorsementData, E as ExternalAccount, i as ExternalAccountKeytraceClaim, F as FeedItem, j as LanguageProficiency, k as PresentationLinkView, l as ProfileCertification, m as ProfileCourse, n as ProfileEducation, o as ProfileHonor, p as ProfileIndustry, q as ProfileLanguage, r as ProfileLocation, s as ProfileOverrideSource, t as ProfilePosition, u as ProfilePresentation, v as ProfileProject, w as ProfilePublication, x as ProfileVolunteering, y as PublicationContributor, z as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, B as hasAdultContent } from './adult-content-BpZD_3ow.cjs';
|
|
3
3
|
import { PresentationDuration, ProfilePresentationDeliveryRecord, ProfilePresentationRecord } from './schemas/index.cjs';
|
|
4
4
|
export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, PresentationDurationSchema, PresentationLink, PresentationLinkSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecordSchema, ProfileProjectRecord, ProfileProjectRecordSchema, ProfilePublicationRecord, ProfilePublicationRecordSchema, ProfileSelfRecord, ProfileSelfRecordSchema, ProfileSkillRecord, ProfileSkillRecordSchema, ProfileVolunteeringRecord, ProfileVolunteeringRecordSchema, PublicationAuthor, PublicationAuthorSchema, atUriSchema, cidSchema, datetimeSchema, didSchema, externalRecordRefSchema, languageTagSchema, makeGraphFollowRecordSchema, maxGraphemes, selfLabelsSchema, strongRefSchema, uriSchema } from './schemas/index.cjs';
|
|
5
5
|
export { A as AtmosphereFeedItem, d as AtmosphereFeedItemSchema, e as FEATURE_FLAGS, b as FeatureAllowlistEntry, f as FeatureAllowlistEntrySchema, c as FeatureFlag, g as FeedActor, h as FeedActorSchema, i as FeedCursor, j as FollowFeedItem, k as FollowFeedItemSchema, F as FollowFeedPage, l as FollowFeedPageSchema, a as FollowProfileItem, m as FollowProfilePage, n as FollowProfilePageSchema, o as FollowProfileSchema, S as SifaFeedItem, p as SifaFeedItemSchema, q as decodeFeedCursor, r as encodeFeedCursor } from './feed-DHTy7fUN.cjs';
|
|
@@ -762,16 +762,36 @@ interface ActivityItemForUrl {
|
|
|
762
762
|
*/
|
|
763
763
|
declare function getAppIdForCollection(collection: string): string;
|
|
764
764
|
/**
|
|
765
|
-
*
|
|
766
|
-
*
|
|
767
|
-
*
|
|
768
|
-
*
|
|
769
|
-
*
|
|
765
|
+
* How the activity-card health scanner should verify a card is still live.
|
|
766
|
+
*
|
|
767
|
+
* - `record`: the URL is a first-party permalink that renders THIS record
|
|
768
|
+
* (e.g. a Bluesky post at bsky.app, a tangled repo, a smokesignal event).
|
|
769
|
+
* The authoritative liveness check is "does the record still exist on its
|
|
770
|
+
* PDS" — `com.atproto.repo.getRecord` on the item's own at-uri — NOT an
|
|
771
|
+
* HTTP probe of the rendering app. Rendering apps (bsky.app, tangled.sh)
|
|
772
|
+
* frequently answer HEAD with 404/405 while serving GET fine, which
|
|
773
|
+
* false-positives every permalink as broken.
|
|
774
|
+
* - `url`: the URL is a foreign or derived target — a bookmarked page, an
|
|
775
|
+
* external publisher, a *different* record's page, or a profile page.
|
|
776
|
+
* Its reachability is independent of this record, so probe the URL.
|
|
777
|
+
* - `none`: the card has no clickable URL; nothing to check.
|
|
778
|
+
*/
|
|
779
|
+
type CardHealthStrategy = 'record' | 'url' | 'none';
|
|
780
|
+
interface CardHealth {
|
|
781
|
+
/** The clickable URL the card renders. Null when non-clickable. */
|
|
782
|
+
url: string | null;
|
|
783
|
+
/** How the scanner should verify liveness. See {@link CardHealthStrategy}. */
|
|
784
|
+
strategy: CardHealthStrategy;
|
|
785
|
+
}
|
|
786
|
+
/**
|
|
787
|
+
* Resolve the canonical clickable URL for an activity item **and** how its
|
|
788
|
+
* liveness should be checked — the single source of truth shared by:
|
|
789
|
+
* - sifa-web activity cards (which render `.url`), and
|
|
790
|
+
* - the sifa-api link-health scanner (which switches on `.strategy`: probe the
|
|
791
|
+
* record's PDS for `record`-strategy cards, probe the URL for `url`).
|
|
770
792
|
*
|
|
771
|
-
*
|
|
772
|
-
*
|
|
773
|
-
* - sifa-api external-URL health scanner (must match what the UI links to,
|
|
774
|
-
* so broken-link detection lines up with what users actually click)
|
|
793
|
+
* See {@link CardHealthStrategy} for why self-permalinks (bsky posts, etc.)
|
|
794
|
+
* must be verified by record existence rather than an HTTP probe of the app.
|
|
775
795
|
*
|
|
776
796
|
* Resolution order:
|
|
777
797
|
* 1. Per-collection bespoke logic (tangled, kipclip, margin, smokesignal
|
|
@@ -780,6 +800,12 @@ declare function getAppIdForCollection(collection: string): string;
|
|
|
780
800
|
* 2. Generic `record.url` field (used by hyperboards and similar).
|
|
781
801
|
* 3. Pattern-based per-item / profile URL from the registry.
|
|
782
802
|
*/
|
|
803
|
+
declare function resolveCardHealth(item: ActivityItemForUrl): CardHealth;
|
|
804
|
+
/**
|
|
805
|
+
* Resolve the canonical clickable URL for an activity item — the same URL
|
|
806
|
+
* the activity-card UI in sifa-web renders. Thin wrapper over
|
|
807
|
+
* {@link resolveCardHealth}; returns `null` when no link is appropriate.
|
|
808
|
+
*/
|
|
783
809
|
declare function resolveCardUrl(item: ActivityItemForUrl): string | null;
|
|
784
810
|
|
|
785
811
|
/**
|
|
@@ -993,4 +1019,4 @@ declare function pickPrimaryPosition<T extends PrimaryPositionCandidate>(positio
|
|
|
993
1019
|
*/
|
|
994
1020
|
declare const SIFA_SDK_VERSION: string;
|
|
995
1021
|
|
|
996
|
-
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, type ActivityItemForUrl, type ActivityTaxonomy, type ActivityTier, type AppCategoryId, type AppUrlPatterns, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type ContinentCode, type CsvRow, DIMENSIONS_MAX_SCORE, type DimensionKey, type DimensionMap, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, type EmploymentTypeGroup, type EmploymentTypeOption, INDUSTRY_OPTIONS, type IndustryOption, type KnownAppId, type LexiconEntry, LocationValue, MIN_SKILLS, type MergedProfileSkill, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, type OpenToGroup, type OpenToOption, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, type ParsedDelivery, type ParsedPresentation, type PdsProvider, PdsProviderInfo, type PlatformId, type PresentationDeliverySummary, PresentationDuration, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, ProfilePresentationDelivery, ProfilePresentationDeliveryRecord, ProfilePresentationRecord, ProfileSkill, type Publisher, type RgbColor, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, type SkillCategory, type TierMeta, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, type WorkplaceTypeOption, categoryForApp, certDateExtractor, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, dedupeSkills, detectPdsProvider, dimensionsFromInputs, durationFromMinutes, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, stripHtmlToText, summarizePresentationDeliveries, truncateGraphemes };
|
|
1022
|
+
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, type ActivityItemForUrl, type ActivityTaxonomy, type ActivityTier, type AppCategoryId, type AppUrlPatterns, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type CardHealth, type CardHealthStrategy, type ContinentCode, type CsvRow, DIMENSIONS_MAX_SCORE, type DimensionKey, type DimensionMap, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, type EmploymentTypeGroup, type EmploymentTypeOption, INDUSTRY_OPTIONS, type IndustryOption, type KnownAppId, type LexiconEntry, LocationValue, MIN_SKILLS, type MergedProfileSkill, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, type OpenToGroup, type OpenToOption, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, type ParsedDelivery, type ParsedPresentation, type PdsProvider, PdsProviderInfo, type PlatformId, type PresentationDeliverySummary, PresentationDuration, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, ProfilePresentationDelivery, ProfilePresentationDeliveryRecord, ProfilePresentationRecord, ProfileSkill, type Publisher, type RgbColor, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, type SkillCategory, type TierMeta, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, type WorkplaceTypeOption, categoryForApp, certDateExtractor, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, dedupeSkills, detectPdsProvider, dimensionsFromInputs, durationFromMinutes, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardHealth, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, stripHtmlToText, summarizePresentationDeliveries, truncateGraphemes };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { P as ProfileSkill, b as ProfilePresentationDelivery, L as LocationValue, c as PdsProviderInfo, d as Profile } from './adult-content-
|
|
2
|
-
export { e as ADULT_CONTENT_LABELS, f as ActiveApp, a as ActivityLabel, A as AdultContentLabel, g as Endorsement, h as EndorsementData, E as ExternalAccount, i as ExternalAccountKeytraceClaim, F as FeedItem, j as LanguageProficiency, k as PresentationLinkView, l as ProfileCertification, m as ProfileCourse, n as ProfileEducation, o as ProfileHonor, p as ProfileIndustry, q as ProfileLanguage, r as ProfileLocation, s as ProfileOverrideSource, t as ProfilePosition, u as ProfilePresentation, v as ProfileProject, w as ProfilePublication, x as ProfileVolunteering, y as PublicationContributor, z as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, B as hasAdultContent } from './adult-content-
|
|
1
|
+
import { P as ProfileSkill, b as ProfilePresentationDelivery, L as LocationValue, c as PdsProviderInfo, d as Profile } from './adult-content-BpZD_3ow.js';
|
|
2
|
+
export { e as ADULT_CONTENT_LABELS, f as ActiveApp, a as ActivityLabel, A as AdultContentLabel, C as CoSpeaker, g as Endorsement, h as EndorsementData, E as ExternalAccount, i as ExternalAccountKeytraceClaim, F as FeedItem, j as LanguageProficiency, k as PresentationLinkView, l as ProfileCertification, m as ProfileCourse, n as ProfileEducation, o as ProfileHonor, p as ProfileIndustry, q as ProfileLanguage, r as ProfileLocation, s as ProfileOverrideSource, t as ProfilePosition, u as ProfilePresentation, v as ProfileProject, w as ProfilePublication, x as ProfileVolunteering, y as PublicationContributor, z as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, B as hasAdultContent } from './adult-content-BpZD_3ow.js';
|
|
3
3
|
import { PresentationDuration, ProfilePresentationDeliveryRecord, ProfilePresentationRecord } from './schemas/index.js';
|
|
4
4
|
export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, PresentationDurationSchema, PresentationLink, PresentationLinkSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecordSchema, ProfileProjectRecord, ProfileProjectRecordSchema, ProfilePublicationRecord, ProfilePublicationRecordSchema, ProfileSelfRecord, ProfileSelfRecordSchema, ProfileSkillRecord, ProfileSkillRecordSchema, ProfileVolunteeringRecord, ProfileVolunteeringRecordSchema, PublicationAuthor, PublicationAuthorSchema, atUriSchema, cidSchema, datetimeSchema, didSchema, externalRecordRefSchema, languageTagSchema, makeGraphFollowRecordSchema, maxGraphemes, selfLabelsSchema, strongRefSchema, uriSchema } from './schemas/index.js';
|
|
5
5
|
export { A as AtmosphereFeedItem, d as AtmosphereFeedItemSchema, e as FEATURE_FLAGS, b as FeatureAllowlistEntry, f as FeatureAllowlistEntrySchema, c as FeatureFlag, g as FeedActor, h as FeedActorSchema, i as FeedCursor, j as FollowFeedItem, k as FollowFeedItemSchema, F as FollowFeedPage, l as FollowFeedPageSchema, a as FollowProfileItem, m as FollowProfilePage, n as FollowProfilePageSchema, o as FollowProfileSchema, S as SifaFeedItem, p as SifaFeedItemSchema, q as decodeFeedCursor, r as encodeFeedCursor } from './feed-DHTy7fUN.js';
|
|
@@ -762,16 +762,36 @@ interface ActivityItemForUrl {
|
|
|
762
762
|
*/
|
|
763
763
|
declare function getAppIdForCollection(collection: string): string;
|
|
764
764
|
/**
|
|
765
|
-
*
|
|
766
|
-
*
|
|
767
|
-
*
|
|
768
|
-
*
|
|
769
|
-
*
|
|
765
|
+
* How the activity-card health scanner should verify a card is still live.
|
|
766
|
+
*
|
|
767
|
+
* - `record`: the URL is a first-party permalink that renders THIS record
|
|
768
|
+
* (e.g. a Bluesky post at bsky.app, a tangled repo, a smokesignal event).
|
|
769
|
+
* The authoritative liveness check is "does the record still exist on its
|
|
770
|
+
* PDS" — `com.atproto.repo.getRecord` on the item's own at-uri — NOT an
|
|
771
|
+
* HTTP probe of the rendering app. Rendering apps (bsky.app, tangled.sh)
|
|
772
|
+
* frequently answer HEAD with 404/405 while serving GET fine, which
|
|
773
|
+
* false-positives every permalink as broken.
|
|
774
|
+
* - `url`: the URL is a foreign or derived target — a bookmarked page, an
|
|
775
|
+
* external publisher, a *different* record's page, or a profile page.
|
|
776
|
+
* Its reachability is independent of this record, so probe the URL.
|
|
777
|
+
* - `none`: the card has no clickable URL; nothing to check.
|
|
778
|
+
*/
|
|
779
|
+
type CardHealthStrategy = 'record' | 'url' | 'none';
|
|
780
|
+
interface CardHealth {
|
|
781
|
+
/** The clickable URL the card renders. Null when non-clickable. */
|
|
782
|
+
url: string | null;
|
|
783
|
+
/** How the scanner should verify liveness. See {@link CardHealthStrategy}. */
|
|
784
|
+
strategy: CardHealthStrategy;
|
|
785
|
+
}
|
|
786
|
+
/**
|
|
787
|
+
* Resolve the canonical clickable URL for an activity item **and** how its
|
|
788
|
+
* liveness should be checked — the single source of truth shared by:
|
|
789
|
+
* - sifa-web activity cards (which render `.url`), and
|
|
790
|
+
* - the sifa-api link-health scanner (which switches on `.strategy`: probe the
|
|
791
|
+
* record's PDS for `record`-strategy cards, probe the URL for `url`).
|
|
770
792
|
*
|
|
771
|
-
*
|
|
772
|
-
*
|
|
773
|
-
* - sifa-api external-URL health scanner (must match what the UI links to,
|
|
774
|
-
* so broken-link detection lines up with what users actually click)
|
|
793
|
+
* See {@link CardHealthStrategy} for why self-permalinks (bsky posts, etc.)
|
|
794
|
+
* must be verified by record existence rather than an HTTP probe of the app.
|
|
775
795
|
*
|
|
776
796
|
* Resolution order:
|
|
777
797
|
* 1. Per-collection bespoke logic (tangled, kipclip, margin, smokesignal
|
|
@@ -780,6 +800,12 @@ declare function getAppIdForCollection(collection: string): string;
|
|
|
780
800
|
* 2. Generic `record.url` field (used by hyperboards and similar).
|
|
781
801
|
* 3. Pattern-based per-item / profile URL from the registry.
|
|
782
802
|
*/
|
|
803
|
+
declare function resolveCardHealth(item: ActivityItemForUrl): CardHealth;
|
|
804
|
+
/**
|
|
805
|
+
* Resolve the canonical clickable URL for an activity item — the same URL
|
|
806
|
+
* the activity-card UI in sifa-web renders. Thin wrapper over
|
|
807
|
+
* {@link resolveCardHealth}; returns `null` when no link is appropriate.
|
|
808
|
+
*/
|
|
783
809
|
declare function resolveCardUrl(item: ActivityItemForUrl): string | null;
|
|
784
810
|
|
|
785
811
|
/**
|
|
@@ -993,4 +1019,4 @@ declare function pickPrimaryPosition<T extends PrimaryPositionCandidate>(positio
|
|
|
993
1019
|
*/
|
|
994
1020
|
declare const SIFA_SDK_VERSION: string;
|
|
995
1021
|
|
|
996
|
-
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, type ActivityItemForUrl, type ActivityTaxonomy, type ActivityTier, type AppCategoryId, type AppUrlPatterns, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type ContinentCode, type CsvRow, DIMENSIONS_MAX_SCORE, type DimensionKey, type DimensionMap, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, type EmploymentTypeGroup, type EmploymentTypeOption, INDUSTRY_OPTIONS, type IndustryOption, type KnownAppId, type LexiconEntry, LocationValue, MIN_SKILLS, type MergedProfileSkill, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, type OpenToGroup, type OpenToOption, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, type ParsedDelivery, type ParsedPresentation, type PdsProvider, PdsProviderInfo, type PlatformId, type PresentationDeliverySummary, PresentationDuration, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, ProfilePresentationDelivery, ProfilePresentationDeliveryRecord, ProfilePresentationRecord, ProfileSkill, type Publisher, type RgbColor, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, type SkillCategory, type TierMeta, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, type WorkplaceTypeOption, categoryForApp, certDateExtractor, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, dedupeSkills, detectPdsProvider, dimensionsFromInputs, durationFromMinutes, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, stripHtmlToText, summarizePresentationDeliveries, truncateGraphemes };
|
|
1022
|
+
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, type ActivityItemForUrl, type ActivityTaxonomy, type ActivityTier, type AppCategoryId, type AppUrlPatterns, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type CardHealth, type CardHealthStrategy, type ContinentCode, type CsvRow, DIMENSIONS_MAX_SCORE, type DimensionKey, type DimensionMap, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, type EmploymentTypeGroup, type EmploymentTypeOption, INDUSTRY_OPTIONS, type IndustryOption, type KnownAppId, type LexiconEntry, LocationValue, MIN_SKILLS, type MergedProfileSkill, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, type OpenToGroup, type OpenToOption, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, type ParsedDelivery, type ParsedPresentation, type PdsProvider, PdsProviderInfo, type PlatformId, type PresentationDeliverySummary, PresentationDuration, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, ProfilePresentationDelivery, ProfilePresentationDeliveryRecord, ProfilePresentationRecord, ProfileSkill, type Publisher, type RgbColor, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, type SkillCategory, type TierMeta, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, type WorkplaceTypeOption, categoryForApp, certDateExtractor, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, dedupeSkills, detectPdsProvider, dimensionsFromInputs, durationFromMinutes, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardHealth, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, stripHtmlToText, summarizePresentationDeliveries, truncateGraphemes };
|
package/dist/index.js
CHANGED
|
@@ -2055,6 +2055,12 @@ function getAppIdForCollection(collection) {
|
|
|
2055
2055
|
if (parts.length >= 2) return `${parts[0]}.${parts[1]}`;
|
|
2056
2056
|
return collection;
|
|
2057
2057
|
}
|
|
2058
|
+
function urlHealth(url) {
|
|
2059
|
+
return url ? { url, strategy: "url" } : { url: null, strategy: "none" };
|
|
2060
|
+
}
|
|
2061
|
+
function recordHealth(url) {
|
|
2062
|
+
return url ? { url, strategy: "record" } : { url: null, strategy: "none" };
|
|
2063
|
+
}
|
|
2058
2064
|
function interpolate(pattern, vars) {
|
|
2059
2065
|
let result = pattern;
|
|
2060
2066
|
for (const [key, value] of Object.entries(vars)) {
|
|
@@ -2071,18 +2077,18 @@ function shouldUseItemPattern(appId, collection) {
|
|
|
2071
2077
|
}
|
|
2072
2078
|
return true;
|
|
2073
2079
|
}
|
|
2074
|
-
function
|
|
2080
|
+
function patternHealth(appId, vars, collection) {
|
|
2075
2081
|
const patterns = APP_URL_PATTERNS[appId];
|
|
2076
|
-
if (!patterns) return null;
|
|
2082
|
+
if (!patterns) return { url: null, strategy: "none" };
|
|
2077
2083
|
if (patterns.urlPattern && shouldUseItemPattern(appId, collection)) {
|
|
2078
2084
|
const url = interpolate(patterns.urlPattern, vars);
|
|
2079
|
-
if (url) return url;
|
|
2085
|
+
if (url) return recordHealth(url);
|
|
2080
2086
|
}
|
|
2081
2087
|
if (patterns.profileUrlPattern) {
|
|
2082
2088
|
const url = interpolate(patterns.profileUrlPattern, vars);
|
|
2083
|
-
if (url) return url;
|
|
2089
|
+
if (url) return urlHealth(url);
|
|
2084
2090
|
}
|
|
2085
|
-
return null;
|
|
2091
|
+
return { url: null, strategy: "none" };
|
|
2086
2092
|
}
|
|
2087
2093
|
var TANGLED_REPO_SLUG = /^[a-zA-Z0-9._-]+$/;
|
|
2088
2094
|
function stringOrNull(value) {
|
|
@@ -2095,33 +2101,31 @@ function parseAtUri(atUri) {
|
|
|
2095
2101
|
if (!match || !match[1] || !match[2]) return null;
|
|
2096
2102
|
return { did: match[1], rkey: match[2] };
|
|
2097
2103
|
}
|
|
2098
|
-
function
|
|
2104
|
+
function resolveCardHealth(item) {
|
|
2099
2105
|
const { collection, record, uri, rkey, authorDid, authorHandle } = item;
|
|
2100
2106
|
const appId = getAppIdForCollection(collection);
|
|
2101
2107
|
if (collection.startsWith("sh.tangled.")) {
|
|
2102
2108
|
const repoName = stringOrNull(record.name) ?? (collection === "sh.tangled.repo" ? rkey : null);
|
|
2103
2109
|
if (repoName && authorHandle && TANGLED_REPO_SLUG.test(repoName)) {
|
|
2104
|
-
return `https://tangled.sh/${authorHandle}/${repoName}
|
|
2110
|
+
return recordHealth(`https://tangled.sh/${authorHandle}/${repoName}`);
|
|
2105
2111
|
}
|
|
2106
|
-
return
|
|
2112
|
+
return patternHealth("tangled", { handle: authorHandle, did: authorDid, rkey }, collection);
|
|
2107
2113
|
}
|
|
2108
2114
|
if (collection.startsWith("com.kipclip.") || collection.startsWith("community.lexicon.bookmarks.")) {
|
|
2109
2115
|
const subject = stringOrNull(record.subject);
|
|
2110
|
-
if (subject) return subject;
|
|
2111
|
-
return
|
|
2116
|
+
if (subject) return urlHealth(subject);
|
|
2117
|
+
return patternHealth("kipclip", { handle: authorHandle, did: authorDid, rkey });
|
|
2112
2118
|
}
|
|
2113
2119
|
if (collection === "at.margin.bookmark") {
|
|
2114
|
-
|
|
2115
|
-
if (source) return source;
|
|
2116
|
-
return null;
|
|
2120
|
+
return urlHealth(stringOrNull(record.source));
|
|
2117
2121
|
}
|
|
2118
2122
|
if (collection === "at.margin.annotation" || collection === "at.margin.note") {
|
|
2119
2123
|
const target = record.target;
|
|
2120
2124
|
if (target != null && typeof target === "object") {
|
|
2121
2125
|
const source = stringOrNull(target.source);
|
|
2122
|
-
if (source) return source;
|
|
2126
|
+
if (source) return urlHealth(source);
|
|
2123
2127
|
}
|
|
2124
|
-
return APP_URL_PATTERNS.margin?.profileUrlPattern ?? null;
|
|
2128
|
+
return urlHealth(APP_URL_PATTERNS.margin?.profileUrlPattern ?? null);
|
|
2125
2129
|
}
|
|
2126
2130
|
if (collection === "community.lexicon.calendar.rsvp") {
|
|
2127
2131
|
const subject = record.subject;
|
|
@@ -2130,65 +2134,68 @@ function resolveCardUrl(item) {
|
|
|
2130
2134
|
if (subjectUri) {
|
|
2131
2135
|
const parsed2 = parseAtUri(subjectUri);
|
|
2132
2136
|
if (parsed2) {
|
|
2133
|
-
return `https://smokesignal.events/${parsed2.did}/${parsed2.rkey}
|
|
2137
|
+
return urlHealth(`https://smokesignal.events/${parsed2.did}/${parsed2.rkey}`);
|
|
2134
2138
|
}
|
|
2135
2139
|
}
|
|
2136
2140
|
}
|
|
2137
|
-
return null;
|
|
2141
|
+
return { url: null, strategy: "none" };
|
|
2138
2142
|
}
|
|
2139
2143
|
if (collection === "community.lexicon.calendar.event") {
|
|
2140
2144
|
const parsed2 = parseAtUri(uri);
|
|
2141
2145
|
if (parsed2) {
|
|
2142
|
-
return `https://smokesignal.events/${parsed2.did}/${parsed2.rkey}
|
|
2146
|
+
return recordHealth(`https://smokesignal.events/${parsed2.did}/${parsed2.rkey}`);
|
|
2143
2147
|
}
|
|
2144
|
-
return null;
|
|
2148
|
+
return { url: null, strategy: "none" };
|
|
2145
2149
|
}
|
|
2146
2150
|
if (collection === "quest.atmo.event") {
|
|
2147
2151
|
const parsed2 = parseAtUri(uri);
|
|
2148
2152
|
if (parsed2) {
|
|
2149
|
-
return `https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}
|
|
2153
|
+
return recordHealth(`https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}`);
|
|
2150
2154
|
}
|
|
2151
|
-
return null;
|
|
2155
|
+
return { url: null, strategy: "none" };
|
|
2152
2156
|
}
|
|
2153
2157
|
if (collection === "quest.atmo.checkin") {
|
|
2154
2158
|
const eventUri = stringOrNull(record.event);
|
|
2155
2159
|
if (eventUri) {
|
|
2156
2160
|
const parsed2 = parseAtUri(eventUri);
|
|
2157
2161
|
if (parsed2) {
|
|
2158
|
-
return `https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}
|
|
2162
|
+
return urlHealth(`https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}`);
|
|
2159
2163
|
}
|
|
2160
2164
|
}
|
|
2161
|
-
return null;
|
|
2165
|
+
return { url: null, strategy: "none" };
|
|
2162
2166
|
}
|
|
2163
2167
|
if (collection === "fyi.atstore.listing.review") {
|
|
2164
2168
|
const listingMeta = record.listingMeta;
|
|
2165
2169
|
if (listingMeta != null && typeof listingMeta === "object") {
|
|
2166
2170
|
const slug = stringOrNull(listingMeta.slug);
|
|
2167
|
-
if (slug) return `https://atstore.fyi/products/${encodeURIComponent(slug)}
|
|
2171
|
+
if (slug) return urlHealth(`https://atstore.fyi/products/${encodeURIComponent(slug)}`);
|
|
2168
2172
|
}
|
|
2169
|
-
return APP_URL_PATTERNS.atstore?.profileUrlPattern ?? null;
|
|
2173
|
+
return urlHealth(APP_URL_PATTERNS.atstore?.profileUrlPattern ?? null);
|
|
2170
2174
|
}
|
|
2171
2175
|
if (collection === "social.crate.content") {
|
|
2172
|
-
return stringOrNull(record.canonicalUrl);
|
|
2176
|
+
return urlHealth(stringOrNull(record.canonicalUrl));
|
|
2173
2177
|
}
|
|
2174
2178
|
if (collection === "social.crate.note") {
|
|
2175
|
-
return null;
|
|
2179
|
+
return { url: null, strategy: "none" };
|
|
2176
2180
|
}
|
|
2177
2181
|
if (collection.startsWith("site.standard.")) {
|
|
2178
2182
|
const siteUrl = stringOrNull(record.siteUrl);
|
|
2179
2183
|
const path = stringOrNull(record.path);
|
|
2180
|
-
if (siteUrl && path) return `${siteUrl}${path}
|
|
2181
|
-
if (siteUrl) return siteUrl;
|
|
2184
|
+
if (siteUrl && path) return urlHealth(`${siteUrl}${path}`);
|
|
2185
|
+
if (siteUrl) return urlHealth(siteUrl);
|
|
2182
2186
|
}
|
|
2183
2187
|
if (collection === "io.kich.recipe.recipe") {
|
|
2184
|
-
return
|
|
2188
|
+
return patternHealth("kich", { handle: authorHandle, did: authorDid, rkey }, collection);
|
|
2185
2189
|
}
|
|
2186
2190
|
if (collection === "exchange.recipe.recipe") {
|
|
2187
|
-
return
|
|
2191
|
+
return patternHealth("recipe", { handle: authorHandle, did: authorDid, rkey }, collection);
|
|
2188
2192
|
}
|
|
2189
2193
|
const recordUrl = stringOrNull(record.url);
|
|
2190
|
-
if (recordUrl) return recordUrl;
|
|
2191
|
-
return
|
|
2194
|
+
if (recordUrl) return urlHealth(recordUrl);
|
|
2195
|
+
return patternHealth(appId, { handle: authorHandle, did: authorDid, rkey }, collection);
|
|
2196
|
+
}
|
|
2197
|
+
function resolveCardUrl(item) {
|
|
2198
|
+
return resolveCardHealth(item).url;
|
|
2192
2199
|
}
|
|
2193
2200
|
|
|
2194
2201
|
// src/cards/visibility.ts
|
|
@@ -2628,6 +2635,8 @@ var ProfilePresentationDeliveryRecordSchema = z.object({
|
|
|
2628
2635
|
links: z.array(PresentationLinkSchema).max(20).optional(),
|
|
2629
2636
|
// Optional reference to a community.lexicon.calendar.event for this occasion.
|
|
2630
2637
|
eventRef: externalRecordRefSchema.optional(),
|
|
2638
|
+
// DIDs of co-speakers who presented alongside the author at this occasion.
|
|
2639
|
+
coSpeakers: z.array(z.string().regex(/^did:[a-z]+:[^\s]+$/, "must be a DID")).max(20).optional(),
|
|
2631
2640
|
createdAt: datetimeSchema
|
|
2632
2641
|
});
|
|
2633
2642
|
var ProfileProjectRecordSchema = z.object({
|
|
@@ -2684,8 +2693,8 @@ var ProfileVolunteeringRecordSchema = z.object({
|
|
|
2684
2693
|
});
|
|
2685
2694
|
|
|
2686
2695
|
// src/index.ts
|
|
2687
|
-
var SIFA_SDK_VERSION = "0.11.
|
|
2696
|
+
var SIFA_SDK_VERSION = "0.11.12";
|
|
2688
2697
|
|
|
2689
|
-
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, ADULT_CONTENT_LABELS, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, AtmosphereFeedItemSchema, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, DIMENSIONS_MAX_SCORE, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, EndorsementConfirmationRecordSchema, EndorsementRecordSchema, FEATURE_FLAGS, FeatureAllowlistEntrySchema, FeedActorSchema, FollowFeedItemSchema, FollowFeedPageSchema, FollowProfilePageSchema, FollowProfileSchema, GraphFollowRecordSchema, INDUSTRY_OPTIONS, MIN_SKILLS, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, PresentationDurationSchema, PresentationLinkSchema, ProfileCertificationRecordSchema, ProfileCourseRecordSchema, ProfileEducationRecordSchema, ProfileExternalAccountRecordSchema, ProfileHonorRecordSchema, ProfileLanguageRecordSchema, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecordSchema, ProfileProjectRecordSchema, ProfilePublicationRecordSchema, ProfileSelfRecordSchema, ProfileSkillRecordSchema, ProfileVolunteeringRecordSchema, PublicationAuthorSchema, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, SifaFeedItemSchema, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, atUriSchema, categoryForApp, certDateExtractor, cidSchema, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, datetimeSchema, decodeFeedCursor, dedupeSkills, detectPdsProvider, didSchema, dimensionsFromInputs, durationFromMinutes, encodeFeedCursor, externalRecordRefSchema, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, hasAdultContent, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, languageTagSchema, lexiconDateExtractor, limitCombiningMarks, makeGraphFollowRecordSchema, maxGraphemes, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, selfLabelsSchema, singleDateExtractor, sortByDateDesc, stripHtmlToText, strongRefSchema, summarizePresentationDeliveries, truncateGraphemes, uriSchema };
|
|
2698
|
+
export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, ADULT_CONTENT_LABELS, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, AtmosphereFeedItemSchema, CALENDAR_EVENT_MODE_LABELS, CALENDAR_EVENT_STATUS_LABELS, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, DIMENSIONS_MAX_SCORE, EMPLOYMENT_TYPE_GROUPS, EMPLOYMENT_TYPE_LABELS, EndorsementConfirmationRecordSchema, EndorsementRecordSchema, FEATURE_FLAGS, FeatureAllowlistEntrySchema, FeedActorSchema, FollowFeedItemSchema, FollowFeedPageSchema, FollowProfilePageSchema, FollowProfileSchema, GraphFollowRecordSchema, INDUSTRY_OPTIONS, MIN_SKILLS, OPEN_TO_OPTIONS, OPEN_TO_TOKENS, OPEN_TO_TOKEN_TO_VALUE, OPEN_TO_VALUE_TO_TOKEN, PLATFORM_LABELS, PLATFORM_OPTIONS, PRESENTATION_LINK_TYPE_LABELS, PRESENTATION_LINK_TYPE_OPTIONS, PRESENTATION_ROLE_LABELS, PRESENTATION_ROLE_OPTIONS, PUBLISHERS, PresentationDurationSchema, PresentationLinkSchema, ProfileCertificationRecordSchema, ProfileCourseRecordSchema, ProfileEducationRecordSchema, ProfileExternalAccountRecordSchema, ProfileHonorRecordSchema, ProfileLanguageRecordSchema, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecordSchema, ProfileProjectRecordSchema, ProfilePublicationRecordSchema, ProfileSelfRecordSchema, ProfileSkillRecordSchema, ProfileVolunteeringRecordSchema, PublicationAuthorSchema, SIFA_SDK_VERSION, SKILL_CATEGORIES, STANDARD_PUBLISHER_ID, SifaFeedItemSchema, WORKPLACE_TYPE_LABELS, WORKPLACE_TYPE_OPTIONS, atUriSchema, categoryForApp, certDateExtractor, cidSchema, completenessPercent, completenessScore, contrastRatio, countFilledDimensions, countryCodeToFlag, dateRangeExtractor, datetimeSchema, decodeFeedCursor, dedupeSkills, detectPdsProvider, didSchema, dimensionsFromInputs, durationFromMinutes, encodeFeedCursor, externalRecordRefSchema, findIndustry, formatDistanceToNow, formatLocation, formatPresentationDuration, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getCalendarEventModeLabel, getCalendarEventStatusLabel, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPresentationLinkTypeLabel, getPresentationRoleLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, hasAdultContent, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, languageTagSchema, lexiconDateExtractor, limitCombiningMarks, makeGraphFollowRecordSchema, maxGraphemes, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizePresentationMode, normalizePresentationRole, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseIntendedAudiences, parseLocationString, parsePresentationDuration, pdsProviderFromApi, pickPrimaryPosition, presentationCsvRowToRecord, presentationDeliveryCsvRowToRecord, profileToDimensionInputs, relativeLuminance, resolveCardHealth, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, selfLabelsSchema, singleDateExtractor, sortByDateDesc, stripHtmlToText, strongRefSchema, summarizePresentationDeliveries, truncateGraphemes, uriSchema };
|
|
2690
2699
|
//# sourceMappingURL=index.js.map
|
|
2691
2700
|
//# sourceMappingURL=index.js.map
|