@singi-labs/sifa-sdk 0.10.10 → 0.10.11

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.cjs CHANGED
@@ -915,6 +915,12 @@ var APP_CATEGORY_MAP = {
915
915
  anisota: "Posts",
916
916
  atfund: "Endorsements",
917
917
  crate: "Articles",
918
+ atmorsvp: "Events",
919
+ opensocial: "Social",
920
+ // Kevara speaker-directory listing — a professional speaking-availability
921
+ // declaration (talk topics, formats like keynote/panel/conference-talk).
922
+ // Grouped under Events as the closest fit (speaking engagements).
923
+ kevara: "Events",
918
924
  // Web-only (rendered in pills/cards via sifa-web atproto-apps.ts;
919
925
  // no backend scan collection yet)
920
926
  linkat: "Links",
@@ -1637,6 +1643,23 @@ var APP_URL_PATTERNS = Object.freeze({
1637
1643
  // render on the maker's own site. `content` cards link out via
1638
1644
  // record.canonicalUrl (handled in resolveCardUrl); `note` records have no
1639
1645
  // public URL and render non-clickable. So no app-level pattern applies.
1646
+ },
1647
+ atmorsvp: {
1648
+ // atmo.rsvp events live at /p/{did}/e/{rkey}. The per-item pattern is used
1649
+ // for the event record itself; checkin records build their URL from the
1650
+ // referenced event uri in resolveCardUrl (mirrors smokesignal rsvp).
1651
+ urlPattern: "https://atmo.rsvp/p/{did}/e/{rkey}",
1652
+ profileUrlPattern: "https://atmo.rsvp/p/{did}"
1653
+ },
1654
+ opensocial: {
1655
+ // Open Social (opensocial.community) is community-management infrastructure
1656
+ // with no public per-membership permalink. Profile fallback only.
1657
+ profileUrlPattern: "https://opensocial.community"
1658
+ },
1659
+ kevara: {
1660
+ // Kevara (professional network) has no live public web surface yet — its
1661
+ // domain doesn't resolve and there's no per-record viewer. Recognized so
1662
+ // the speaker-directory card renders with the right pill, but non-clickable.
1640
1663
  }
1641
1664
  });
1642
1665
  var COLLECTION_TO_APP = [
@@ -1679,7 +1702,10 @@ var COLLECTION_TO_APP = [
1679
1702
  ["fyi.atstore.", "atstore"],
1680
1703
  ["fm.plyr.", "plyr"],
1681
1704
  ["fund.at.", "atfund"],
1682
- ["social.crate.", "crate"]
1705
+ ["social.crate.", "crate"],
1706
+ ["quest.atmo.", "atmorsvp"],
1707
+ ["community.opensocial.", "opensocial"],
1708
+ ["is.kevara.", "kevara"]
1683
1709
  ];
1684
1710
 
1685
1711
  // src/cards/resolve-card-url.ts
@@ -1779,6 +1805,23 @@ function resolveCardUrl(item) {
1779
1805
  }
1780
1806
  return null;
1781
1807
  }
1808
+ if (collection === "quest.atmo.event") {
1809
+ const parsed2 = parseAtUri(uri);
1810
+ if (parsed2) {
1811
+ return `https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}`;
1812
+ }
1813
+ return null;
1814
+ }
1815
+ if (collection === "quest.atmo.checkin") {
1816
+ const eventUri = stringOrNull(record.event);
1817
+ if (eventUri) {
1818
+ const parsed2 = parseAtUri(eventUri);
1819
+ if (parsed2) {
1820
+ return `https://atmo.rsvp/p/${parsed2.did}/e/${parsed2.rkey}`;
1821
+ }
1822
+ }
1823
+ return null;
1824
+ }
1782
1825
  if (collection === "fyi.atstore.listing.review") {
1783
1826
  const listingMeta = record.listingMeta;
1784
1827
  if (listingMeta != null && typeof listingMeta === "object") {
@@ -2250,7 +2293,7 @@ var ProfileVolunteeringRecordSchema = zod.z.object({
2250
2293
  });
2251
2294
 
2252
2295
  // src/index.ts
2253
- var SIFA_SDK_VERSION = "0.10.10";
2296
+ var SIFA_SDK_VERSION = "0.10.11";
2254
2297
 
2255
2298
  exports.ACTIVITY_TIERS = ACTIVITY_TIERS;
2256
2299
  exports.ACTIVITY_VISIBILITY_RULES = ACTIVITY_VISIBILITY_RULES;