@singi-labs/sifa-sdk 0.11.8 → 0.11.9

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
@@ -287,12 +287,18 @@ declare const APP_CATEGORIES: {
287
287
  readonly 'Q&A': {
288
288
  readonly phosphorIcon: "Question";
289
289
  };
290
+ readonly Recipes: {
291
+ readonly phosphorIcon: "CookingPot";
292
+ };
290
293
  readonly Research: {
291
294
  readonly phosphorIcon: "Path";
292
295
  };
293
296
  readonly Reviews: {
294
297
  readonly phosphorIcon: "Star";
295
298
  };
299
+ readonly Slides: {
300
+ readonly phosphorIcon: "Presentation";
301
+ };
296
302
  readonly Social: {
297
303
  readonly phosphorIcon: "UsersThree";
298
304
  };
@@ -370,10 +376,12 @@ declare const APP_CATEGORY_MAP: {
370
376
  readonly streamthought: "Posts";
371
377
  readonly waow: "Photos";
372
378
  readonly lichen: "Pages";
379
+ readonly aetherdocs: "Slides";
380
+ readonly kich: "Recipes";
381
+ readonly margin: "Research";
373
382
  readonly linkat: "Links";
374
383
  readonly kipclip: "Links";
375
384
  readonly statusphere: "Social";
376
- readonly margin: "Research";
377
385
  };
378
386
  type KnownAppId = keyof typeof APP_CATEGORY_MAP;
379
387
  declare function isKnownAppId(appId: string): appId is KnownAppId;
package/dist/index.d.ts CHANGED
@@ -287,12 +287,18 @@ declare const APP_CATEGORIES: {
287
287
  readonly 'Q&A': {
288
288
  readonly phosphorIcon: "Question";
289
289
  };
290
+ readonly Recipes: {
291
+ readonly phosphorIcon: "CookingPot";
292
+ };
290
293
  readonly Research: {
291
294
  readonly phosphorIcon: "Path";
292
295
  };
293
296
  readonly Reviews: {
294
297
  readonly phosphorIcon: "Star";
295
298
  };
299
+ readonly Slides: {
300
+ readonly phosphorIcon: "Presentation";
301
+ };
296
302
  readonly Social: {
297
303
  readonly phosphorIcon: "UsersThree";
298
304
  };
@@ -370,10 +376,12 @@ declare const APP_CATEGORY_MAP: {
370
376
  readonly streamthought: "Posts";
371
377
  readonly waow: "Photos";
372
378
  readonly lichen: "Pages";
379
+ readonly aetherdocs: "Slides";
380
+ readonly kich: "Recipes";
381
+ readonly margin: "Research";
373
382
  readonly linkat: "Links";
374
383
  readonly kipclip: "Links";
375
384
  readonly statusphere: "Social";
376
- readonly margin: "Research";
377
385
  };
378
386
  type KnownAppId = keyof typeof APP_CATEGORY_MAP;
379
387
  declare function isKnownAppId(appId: string): appId is KnownAppId;
package/dist/index.js CHANGED
@@ -909,8 +909,10 @@ var APP_CATEGORIES = {
909
909
  Places: { phosphorIcon: "MapPin" },
910
910
  Posts: { phosphorIcon: "ChatCircle" },
911
911
  "Q&A": { phosphorIcon: "Question" },
912
+ Recipes: { phosphorIcon: "CookingPot" },
912
913
  Research: { phosphorIcon: "Path" },
913
914
  Reviews: { phosphorIcon: "Star" },
915
+ Slides: { phosphorIcon: "Presentation" },
914
916
  Social: { phosphorIcon: "UsersThree" },
915
917
  Verification: { phosphorIcon: "Key" },
916
918
  Video: { phosphorIcon: "VideoCamera" }
@@ -1002,12 +1004,18 @@ var APP_CATEGORY_MAP = {
1002
1004
  // tech.waow.* — doodl drawings (dominant), polls, slides
1003
1005
  lichen: "Pages",
1004
1006
  // wiki.lichen — wiki notes + wikis
1007
+ // Onboard from aramzs.xyz profile audit — new named pills.
1008
+ aetherdocs: "Slides",
1009
+ // os.aether.docs.presentation — authored slide decks
1010
+ kich: "Recipes",
1011
+ // io.kich.recipe.recipe — authored recipes
1012
+ margin: "Research",
1013
+ // at.margin.{note,annotation} — web-annotation notes with a body
1005
1014
  // Web-only (rendered in pills/cards via sifa-web atproto-apps.ts;
1006
1015
  // no backend scan collection yet)
1007
1016
  linkat: "Links",
1008
1017
  kipclip: "Links",
1009
- statusphere: "Social",
1010
- margin: "Research"
1018
+ statusphere: "Social"
1011
1019
  };
1012
1020
  function isKnownAppId(appId) {
1013
1021
  return Object.prototype.hasOwnProperty.call(APP_CATEGORY_MAP, appId);
@@ -1945,6 +1953,19 @@ var APP_URL_PATTERNS = Object.freeze({
1945
1953
  // /r/{handle}/{rkey} and /u/{handle} both return 200.
1946
1954
  urlPattern: "https://atcr.io/r/{handle}/{rkey}",
1947
1955
  profileUrlPattern: "https://atcr.io/u/{handle}"
1956
+ },
1957
+ kich: {
1958
+ // Kich recipe viewer. Verified: GET /recipes/{rkey} returns 200 (the SPA
1959
+ // renders the recipe by rkey); /recipe/{rkey} 404s. No public per-handle
1960
+ // profile page, so the profile fallback points at the app root.
1961
+ urlPattern: "https://kich.io/recipes/{rkey}",
1962
+ profileUrlPattern: "https://kich.io"
1963
+ },
1964
+ aetherdocs: {
1965
+ // Aether OS is a browser OS — presentations open inside it and there's no
1966
+ // public per-record viewer. The card embeds the deck from the record; the
1967
+ // outbound link points at the author's Aether OS space (mirrors aetheros).
1968
+ profileUrlPattern: "https://aetheros.computer/{handle}"
1948
1969
  }
1949
1970
  });
1950
1971
  var COLLECTION_TO_APP = [
@@ -2007,7 +2028,10 @@ var COLLECTION_TO_APP = [
2007
2028
  ["st.lifepo.", "lifepo"],
2008
2029
  ["stream.thought.", "streamthought"],
2009
2030
  ["tech.waow.", "waow"],
2010
- ["wiki.lichen.", "lichen"]
2031
+ ["wiki.lichen.", "lichen"],
2032
+ // Onboard from aramzs.xyz profile audit.
2033
+ ["os.aether.", "aetherdocs"],
2034
+ ["io.kich.recipe.recipe", "kich"]
2011
2035
  ];
2012
2036
 
2013
2037
  // src/cards/resolve-card-url.ts
@@ -2079,7 +2103,7 @@ function resolveCardUrl(item) {
2079
2103
  if (source) return source;
2080
2104
  return null;
2081
2105
  }
2082
- if (collection === "at.margin.annotation") {
2106
+ if (collection === "at.margin.annotation" || collection === "at.margin.note") {
2083
2107
  const target = record.target;
2084
2108
  if (target != null && typeof target === "object") {
2085
2109
  const source = stringOrNull(target.source);
@@ -2144,6 +2168,9 @@ function resolveCardUrl(item) {
2144
2168
  if (siteUrl && path) return `${siteUrl}${path}`;
2145
2169
  if (siteUrl) return siteUrl;
2146
2170
  }
2171
+ if (collection === "io.kich.recipe.recipe") {
2172
+ return patternUrl("kich", { handle: authorHandle, did: authorDid, rkey }, collection);
2173
+ }
2147
2174
  const recordUrl = stringOrNull(record.url);
2148
2175
  if (recordUrl) return recordUrl;
2149
2176
  return patternUrl(appId, { handle: authorHandle, did: authorDid, rkey }, collection);
@@ -2642,7 +2669,7 @@ var ProfileVolunteeringRecordSchema = z.object({
2642
2669
  });
2643
2670
 
2644
2671
  // src/index.ts
2645
- var SIFA_SDK_VERSION = "0.11.8";
2672
+ var SIFA_SDK_VERSION = "0.11.9";
2646
2673
 
2647
2674
  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 };
2648
2675
  //# sourceMappingURL=index.js.map