@singi-labs/sifa-sdk 0.11.2 → 0.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { P as ProfileSkill, L as LocationValue, b as PdsProviderInfo, c as Profile } from './adult-content-CC8eR44a.cjs';
2
2
  export { d as ADULT_CONTENT_LABELS, e as ActiveApp, a as ActivityLabel, A as AdultContentLabel, f as Endorsement, g as EndorsementData, E as ExternalAccount, h as ExternalAccountKeytraceClaim, F as FeedItem, i as LanguageProficiency, j as ProfileCertification, k as ProfileCourse, l as ProfileEducation, m as ProfileHonor, n as ProfileIndustry, o as ProfileLanguage, p as ProfileLocation, q as ProfileOverrideSource, r as ProfilePosition, s as ProfileProject, t as ProfilePublication, u as ProfileVolunteering, v as PublicationContributor, w as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, x as hasAdultContent } from './adult-content-CC8eR44a.cjs';
3
- export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfileProjectRecord, ProfileProjectRecordSchema, ProfilePublicationRecord, ProfilePublicationRecordSchema, ProfileSelfRecord, ProfileSelfRecordSchema, ProfileSkillRecord, ProfileSkillRecordSchema, ProfileVolunteeringRecord, ProfileVolunteeringRecordSchema, PublicationAuthor, PublicationAuthorSchema, atUriSchema, cidSchema, datetimeSchema, didSchema, languageTagSchema, makeGraphFollowRecordSchema, maxGraphemes, selfLabelsSchema, strongRefSchema, uriSchema } from './schemas/index.cjs';
3
+ export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, PresentationDuration, PresentationDurationSchema, PresentationLink, PresentationLinkSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecord, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecord, 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';
4
4
  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';
5
5
  import 'zod';
6
6
 
@@ -403,6 +403,46 @@ declare function getActivityTaxonomyVersion(): {
403
403
  updated: string;
404
404
  };
405
405
 
406
+ /**
407
+ * Presentation-role taxonomy. Mirrors `id.sifa.defs#presentationRole.knownValues`
408
+ * from sifa-lexicons. The role describes how the person took part in a single
409
+ * delivery (it can differ between deliveries of the same presentation).
410
+ */
411
+ interface PresentationRoleOption {
412
+ value: string;
413
+ label: string;
414
+ }
415
+ declare const PRESENTATION_ROLE_OPTIONS: PresentationRoleOption[];
416
+ declare const PRESENTATION_ROLE_LABELS: Record<string, string>;
417
+ /** Resolve a label for a presentation-role token. Falls back to the raw value. */
418
+ declare function getPresentationRoleLabel(value: string | undefined | null): string | undefined;
419
+
420
+ /**
421
+ * Presentation link-type taxonomy. Mirrors
422
+ * `id.sifa.defs#presentationLinkType.knownValues` from sifa-lexicons. Used to
423
+ * pick an icon and a default label for a presentation or delivery link.
424
+ */
425
+ interface PresentationLinkTypeOption {
426
+ value: string;
427
+ label: string;
428
+ }
429
+ declare const PRESENTATION_LINK_TYPE_OPTIONS: PresentationLinkTypeOption[];
430
+ declare const PRESENTATION_LINK_TYPE_LABELS: Record<string, string>;
431
+ /** Resolve a label for a presentation link-type token. Falls back to the raw value. */
432
+ declare function getPresentationLinkTypeLabel(value: string | undefined | null): string | undefined;
433
+
434
+ /**
435
+ * Display labels for `community.lexicon.calendar.event` mode and status tokens.
436
+ * A presentation delivery stores the full upstream token (so it stays faithful
437
+ * to the source event); these maps turn the token into a human label.
438
+ */
439
+ declare const CALENDAR_EVENT_MODE_LABELS: Record<string, string>;
440
+ /** Resolve a label for a calendar-event mode token. Falls back to the raw value. */
441
+ declare function getCalendarEventModeLabel(value: string | undefined | null): string | undefined;
442
+ declare const CALENDAR_EVENT_STATUS_LABELS: Record<string, string>;
443
+ /** Resolve a label for a calendar-event status token. Falls back to the raw value. */
444
+ declare function getCalendarEventStatusLabel(value: string | undefined | null): string | undefined;
445
+
406
446
  /**
407
447
  * Format a date string as a relative time (e.g. "5m ago", "3d ago").
408
448
  * Returns an empty string for invalid or future dates.
@@ -848,4 +888,4 @@ declare function pickPrimaryPosition<T extends PrimaryPositionCandidate>(positio
848
888
  */
849
889
  declare const SIFA_SDK_VERSION: string;
850
890
 
851
- 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, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type ContinentCode, 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, PUBLISHERS, type PdsProvider, PdsProviderInfo, type PlatformId, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, 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, findIndustry, formatDistanceToNow, formatLocation, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, truncateGraphemes };
891
+ 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, 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 PdsProvider, PdsProviderInfo, type PlatformId, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, 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, findIndustry, formatDistanceToNow, formatLocation, 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, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, truncateGraphemes };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { P as ProfileSkill, L as LocationValue, b as PdsProviderInfo, c as Profile } from './adult-content-CC8eR44a.js';
2
2
  export { d as ADULT_CONTENT_LABELS, e as ActiveApp, a as ActivityLabel, A as AdultContentLabel, f as Endorsement, g as EndorsementData, E as ExternalAccount, h as ExternalAccountKeytraceClaim, F as FeedItem, i as LanguageProficiency, j as ProfileCertification, k as ProfileCourse, l as ProfileEducation, m as ProfileHonor, n as ProfileIndustry, o as ProfileLanguage, p as ProfileLocation, q as ProfileOverrideSource, r as ProfilePosition, s as ProfileProject, t as ProfilePublication, u as ProfileVolunteering, v as PublicationContributor, w as SkillRef, S as SkillSuggestion, T as TrustStat, V as VerifiedAccount, x as hasAdultContent } from './adult-content-CC8eR44a.js';
3
- export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfileProjectRecord, ProfileProjectRecordSchema, ProfilePublicationRecord, ProfilePublicationRecordSchema, ProfileSelfRecord, ProfileSelfRecordSchema, ProfileSkillRecord, ProfileSkillRecordSchema, ProfileVolunteeringRecord, ProfileVolunteeringRecordSchema, PublicationAuthor, PublicationAuthorSchema, atUriSchema, cidSchema, datetimeSchema, didSchema, languageTagSchema, makeGraphFollowRecordSchema, maxGraphemes, selfLabelsSchema, strongRefSchema, uriSchema } from './schemas/index.js';
3
+ export { EndorsementConfirmationRecord, EndorsementConfirmationRecordSchema, EndorsementRecord, EndorsementRecordSchema, GraphFollowRecord, GraphFollowRecordSchema, PresentationDuration, PresentationDurationSchema, PresentationLink, PresentationLinkSchema, ProfileCertificationRecord, ProfileCertificationRecordSchema, ProfileCourseRecord, ProfileCourseRecordSchema, ProfileEducationRecord, ProfileEducationRecordSchema, ProfileExternalAccountRecord, ProfileExternalAccountRecordSchema, ProfileHonorRecord, ProfileHonorRecordSchema, ProfileLanguageRecord, ProfileLanguageRecordSchema, ProfilePositionRecord, ProfilePositionRecordSchema, ProfilePresentationDeliveryRecord, ProfilePresentationDeliveryRecordSchema, ProfilePresentationRecord, 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';
4
4
  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';
5
5
  import 'zod';
6
6
 
@@ -403,6 +403,46 @@ declare function getActivityTaxonomyVersion(): {
403
403
  updated: string;
404
404
  };
405
405
 
406
+ /**
407
+ * Presentation-role taxonomy. Mirrors `id.sifa.defs#presentationRole.knownValues`
408
+ * from sifa-lexicons. The role describes how the person took part in a single
409
+ * delivery (it can differ between deliveries of the same presentation).
410
+ */
411
+ interface PresentationRoleOption {
412
+ value: string;
413
+ label: string;
414
+ }
415
+ declare const PRESENTATION_ROLE_OPTIONS: PresentationRoleOption[];
416
+ declare const PRESENTATION_ROLE_LABELS: Record<string, string>;
417
+ /** Resolve a label for a presentation-role token. Falls back to the raw value. */
418
+ declare function getPresentationRoleLabel(value: string | undefined | null): string | undefined;
419
+
420
+ /**
421
+ * Presentation link-type taxonomy. Mirrors
422
+ * `id.sifa.defs#presentationLinkType.knownValues` from sifa-lexicons. Used to
423
+ * pick an icon and a default label for a presentation or delivery link.
424
+ */
425
+ interface PresentationLinkTypeOption {
426
+ value: string;
427
+ label: string;
428
+ }
429
+ declare const PRESENTATION_LINK_TYPE_OPTIONS: PresentationLinkTypeOption[];
430
+ declare const PRESENTATION_LINK_TYPE_LABELS: Record<string, string>;
431
+ /** Resolve a label for a presentation link-type token. Falls back to the raw value. */
432
+ declare function getPresentationLinkTypeLabel(value: string | undefined | null): string | undefined;
433
+
434
+ /**
435
+ * Display labels for `community.lexicon.calendar.event` mode and status tokens.
436
+ * A presentation delivery stores the full upstream token (so it stays faithful
437
+ * to the source event); these maps turn the token into a human label.
438
+ */
439
+ declare const CALENDAR_EVENT_MODE_LABELS: Record<string, string>;
440
+ /** Resolve a label for a calendar-event mode token. Falls back to the raw value. */
441
+ declare function getCalendarEventModeLabel(value: string | undefined | null): string | undefined;
442
+ declare const CALENDAR_EVENT_STATUS_LABELS: Record<string, string>;
443
+ /** Resolve a label for a calendar-event status token. Falls back to the raw value. */
444
+ declare function getCalendarEventStatusLabel(value: string | undefined | null): string | undefined;
445
+
406
446
  /**
407
447
  * Format a date string as a relative time (e.g. "5m ago", "3d ago").
408
448
  * Returns an empty string for invalid or future dates.
@@ -848,4 +888,4 @@ declare function pickPrimaryPosition<T extends PrimaryPositionCandidate>(positio
848
888
  */
849
889
  declare const SIFA_SDK_VERSION: string;
850
890
 
851
- 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, CATEGORY_LABELS, CATEGORY_ORDER, COLLECTION_TO_APP, COMPANY_OPTIONAL_EMPLOYMENT_TYPES, COMPLETENESS_MAX_SCORE, CONTINENTS, COUNTRIES, type ContinentCode, 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, PUBLISHERS, type PdsProvider, PdsProviderInfo, type PlatformId, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, 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, findIndustry, formatDistanceToNow, formatLocation, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, lexiconDateExtractor, limitCombiningMarks, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, truncateGraphemes };
891
+ 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, 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 PdsProvider, PdsProviderInfo, type PlatformId, type PresentationLinkTypeOption, type PresentationRoleOption, type PrimaryPositionCandidate, Profile, type ProfileCompletion, type ProfileDimensionInputs, 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, findIndustry, formatDistanceToNow, formatLocation, 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, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, singleDateExtractor, sortByDateDesc, truncateGraphemes };
package/dist/index.js CHANGED
@@ -1242,6 +1242,8 @@ var activity_tiers_default = {
1242
1242
  "id.sifa.profile.language": { tier: "creation", app: "sifa" },
1243
1243
  "id.sifa.profile.externalAccount": { tier: "creation", app: "sifa" },
1244
1244
  "id.sifa.profile.location": { tier: "creation", app: "sifa" },
1245
+ "id.sifa.profile.presentation": { tier: "creation", app: "sifa" },
1246
+ "id.sifa.profile.presentationDelivery": { tier: "creation", app: "sifa" },
1245
1247
  "id.sifa.endorsement": {
1246
1248
  tier: "creation",
1247
1249
  app: "sifa",
@@ -1324,6 +1326,61 @@ function getActivityTaxonomyVersion() {
1324
1326
  return { version: ACTIVITY_TIERS.version, updated: ACTIVITY_TIERS.updated };
1325
1327
  }
1326
1328
 
1329
+ // src/taxonomy/presentation-role.ts
1330
+ var PRESENTATION_ROLE_OPTIONS = [
1331
+ { value: "id.sifa.defs#presenter", label: "Presenter" },
1332
+ { value: "id.sifa.defs#panelist", label: "Panelist" },
1333
+ { value: "id.sifa.defs#keynote", label: "Keynote" },
1334
+ { value: "id.sifa.defs#workshop", label: "Workshop" },
1335
+ { value: "id.sifa.defs#host", label: "Host" }
1336
+ ];
1337
+ var PRESENTATION_ROLE_LABELS = Object.fromEntries(
1338
+ PRESENTATION_ROLE_OPTIONS.map((o) => [o.value, o.label])
1339
+ );
1340
+ function getPresentationRoleLabel(value) {
1341
+ if (!value) return void 0;
1342
+ return PRESENTATION_ROLE_LABELS[value] ?? value;
1343
+ }
1344
+
1345
+ // src/taxonomy/presentation-link-type.ts
1346
+ var PRESENTATION_LINK_TYPE_OPTIONS = [
1347
+ { value: "id.sifa.defs#linkSlides", label: "Slides" },
1348
+ { value: "id.sifa.defs#linkRecording", label: "Recording" },
1349
+ { value: "id.sifa.defs#linkEvent", label: "Event page" },
1350
+ { value: "id.sifa.defs#linkRegistration", label: "Registration" },
1351
+ { value: "id.sifa.defs#linkWriteup", label: "Write-up" },
1352
+ { value: "id.sifa.defs#linkOther", label: "Link" }
1353
+ ];
1354
+ var PRESENTATION_LINK_TYPE_LABELS = Object.fromEntries(
1355
+ PRESENTATION_LINK_TYPE_OPTIONS.map((o) => [o.value, o.label])
1356
+ );
1357
+ function getPresentationLinkTypeLabel(value) {
1358
+ if (!value) return void 0;
1359
+ return PRESENTATION_LINK_TYPE_LABELS[value] ?? value;
1360
+ }
1361
+
1362
+ // src/taxonomy/calendar-event.ts
1363
+ var CALENDAR_EVENT_MODE_LABELS = {
1364
+ "community.lexicon.calendar.event#inperson": "In person",
1365
+ "community.lexicon.calendar.event#virtual": "Virtual",
1366
+ "community.lexicon.calendar.event#hybrid": "Hybrid"
1367
+ };
1368
+ function getCalendarEventModeLabel(value) {
1369
+ if (!value) return void 0;
1370
+ return CALENDAR_EVENT_MODE_LABELS[value] ?? value;
1371
+ }
1372
+ var CALENDAR_EVENT_STATUS_LABELS = {
1373
+ "community.lexicon.calendar.event#scheduled": "Scheduled",
1374
+ "community.lexicon.calendar.event#cancelled": "Cancelled",
1375
+ "community.lexicon.calendar.event#postponed": "Postponed",
1376
+ "community.lexicon.calendar.event#rescheduled": "Rescheduled",
1377
+ "community.lexicon.calendar.event#planned": "Planned"
1378
+ };
1379
+ function getCalendarEventStatusLabel(value) {
1380
+ if (!value) return void 0;
1381
+ return CALENDAR_EVENT_STATUS_LABELS[value] ?? value;
1382
+ }
1383
+
1327
1384
  // src/format/format-time.ts
1328
1385
  function formatRelativeTime(dateString) {
1329
1386
  const date = new Date(dateString);
@@ -2107,6 +2164,10 @@ var strongRefSchema = z.object({
2107
2164
  uri: atUriSchema,
2108
2165
  cid: cidSchema
2109
2166
  });
2167
+ var externalRecordRefSchema = z.object({
2168
+ uri: atUriSchema,
2169
+ cid: cidSchema.optional()
2170
+ });
2110
2171
  var selfLabelsSchema = z.object({
2111
2172
  $type: z.literal("com.atproto.label.defs#selfLabels").optional(),
2112
2173
  values: z.array(z.object({ val: z.string() }))
@@ -2287,6 +2348,46 @@ var ProfilePositionRecordSchema = z.object({
2287
2348
  labels: selfLabelsSchema.optional(),
2288
2349
  createdAt: datetimeSchema
2289
2350
  });
2351
+ var PresentationDurationSchema = z.object({
2352
+ minMinutes: z.number().int().min(1),
2353
+ maxMinutes: z.number().int().min(1).optional()
2354
+ }).refine((d) => d.maxMinutes === void 0 || d.maxMinutes >= d.minMinutes, {
2355
+ message: "maxMinutes must be greater than or equal to minMinutes",
2356
+ path: ["maxMinutes"]
2357
+ });
2358
+ var PresentationLinkSchema = z.object({
2359
+ uri: uriSchema,
2360
+ label: z.string().refine(maxGraphemes(64)).max(640).optional(),
2361
+ type: z.string().optional()
2362
+ });
2363
+ var ProfilePresentationRecordSchema = z.object({
2364
+ title: z.string().min(1).refine(maxGraphemes(300)).max(3e3),
2365
+ description: z.string().refine(maxGraphemes(5e3)).max(5e4).optional(),
2366
+ duration: PresentationDurationSchema.optional(),
2367
+ intendedAudiences: z.array(z.string().refine(maxGraphemes(100)).max(1e3)).max(20).optional(),
2368
+ links: z.array(PresentationLinkSchema).max(20).optional(),
2369
+ // Optional reference to a long-form write-up (pub.leaflet.document or
2370
+ // site.standard.document). Plain at-uri + optional cid so it tracks edits.
2371
+ writeupRef: externalRecordRefSchema.optional(),
2372
+ createdAt: datetimeSchema
2373
+ });
2374
+ var ProfilePresentationDeliveryRecordSchema = z.object({
2375
+ // Optional reference to the id.sifa.profile.presentation delivered here.
2376
+ presentationRef: externalRecordRefSchema.optional(),
2377
+ // Fallback title used when there is no presentationRef.
2378
+ title: z.string().refine(maxGraphemes(300)).max(3e3).optional(),
2379
+ role: z.string().refine(maxGraphemes(64)).max(640).optional(),
2380
+ eventName: z.string().refine(maxGraphemes(300)).max(3e3).optional(),
2381
+ // Calendar date as YYYY-MM-DD (day only).
2382
+ date: z.string().regex(/^\d{4}-\d{2}-\d{2}$/, "date must be YYYY-MM-DD").optional(),
2383
+ location: z.string().refine(maxGraphemes(256)).max(2560).optional(),
2384
+ mode: z.string().optional(),
2385
+ status: z.string().optional(),
2386
+ links: z.array(PresentationLinkSchema).max(20).optional(),
2387
+ // Optional reference to a community.lexicon.calendar.event for this occasion.
2388
+ eventRef: externalRecordRefSchema.optional(),
2389
+ createdAt: datetimeSchema
2390
+ });
2290
2391
  var ProfileProjectRecordSchema = z.object({
2291
2392
  name: z.string().min(1).refine(maxGraphemes(100)).max(1e3),
2292
2393
  description: z.string().refine(maxGraphemes(5e3)).max(5e4).optional(),
@@ -2341,8 +2442,8 @@ var ProfileVolunteeringRecordSchema = z.object({
2341
2442
  });
2342
2443
 
2343
2444
  // src/index.ts
2344
- var SIFA_SDK_VERSION = "0.11.2";
2445
+ var SIFA_SDK_VERSION = "0.11.3";
2345
2446
 
2346
- export { ACTIVITY_TIERS, ACTIVITY_VISIBILITY_RULES, ADULT_CONTENT_LABELS, APP_CATEGORIES, APP_CATEGORY_IDS, APP_CATEGORY_MAP, APP_URL_PATTERNS, AtmosphereFeedItemSchema, 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, PUBLISHERS, ProfileCertificationRecordSchema, ProfileCourseRecordSchema, ProfileEducationRecordSchema, ProfileExternalAccountRecordSchema, ProfileHonorRecordSchema, ProfileLanguageRecordSchema, ProfilePositionRecordSchema, 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, encodeFeedCursor, findIndustry, formatDistanceToNow, formatLocation, formatRelativeTime, getActivityTaxonomyVersion, getActivityTier, getAppCategoryIcon, getAppIdForCollection, getContinent, getDisplayLabel, getEmploymentTypeLabel, getFaviconUrl, getFilledDimensionsMap, getHandleStem, getIndustryLabelKey, getLexiconEntry, getOpenToLabelKey, getPdsDisplayName, getPlatformLabel, getPublisherByHost, getPublisherById, getPublisherFromSiteUrl, getTierMeta, getWorkplaceTypeLabel, groupSkillsByCategory, hasAdultContent, isAppCategory, isCompanyRequired, isKnownAppId, isKnownPlatform, isValidRgbColor, isVisibleActivityItem, languageTagSchema, lexiconDateExtractor, limitCombiningMarks, makeGraphFollowRecordSchema, maxGraphemes, meetsContrastAA, normalizeOpenTo, normalizePlatformId, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, selfLabelsSchema, singleDateExtractor, sortByDateDesc, strongRefSchema, truncateGraphemes, uriSchema };
2447
+ 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, encodeFeedCursor, externalRecordRefSchema, findIndustry, formatDistanceToNow, formatLocation, 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, normalizeWorkplaceTypes, openToTokenToValue, openToValueToToken, parseLocationString, pdsProviderFromApi, pickPrimaryPosition, profileToDimensionInputs, relativeLuminance, resolveCardUrl, rgbToString, sanitizeDisplayText, sanitizeHandleInput, selfLabelsSchema, singleDateExtractor, sortByDateDesc, strongRefSchema, truncateGraphemes, uriSchema };
2347
2448
  //# sourceMappingURL=index.js.map
2348
2449
  //# sourceMappingURL=index.js.map