Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ssb-uri2

Package Overview
Dependencies
Maintainers
2
Versions
27
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ssb-uri2

Utilities for recognizing and converting SSB URIs

  • 2.2.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
203
increased by39.04%
Maintainers
2
Weekly downloads
 
Created
Source

ssb-uri2

An SSB utility library for handling and converting SSB URIs

This library provides utilities that recognize SSB URIs according to the spec, and is compatible with ssb-uri (prior work), while adding more support and more utilities.

Install

npm install ssb-uri2

Example

const ssbUri = require("ssb-uri2");

const exampleURI =
  "ssb:message/classic/g3hPVPDEO1Aj_uPl0-J2NlhFB2bbFLIHlty-YuqFZ3w=";

ssbUri.isClassicMessageSSBURI(exampleURI);
// true

ssbUri.toMessageSigil(exampleURI);
// '%g3hPVPDEO1Aj/uPl0+J2NlhFB2bbFLIHlty+YuqFZ3w=.sha256'

Boolean APIs

isSSBURI(uri: string | uri): boolean

isClassicFeedSSBURI(uri: string | null): boolean

isBendyButtV1FeedSSBURI(uri: string | null): boolean

isButtwooV1FeedSSBURI(uri: string | null): boolean

isIndexedV1FeedSSBURI(uri: string | null): boolean

isGabbyGroveV1FeedSSBURI(uri: string | null): boolean

isFeedSSBURI(uri: string | null): boolean

isClassicMessageSSBURI(uri: string | null): boolean

isBendyButtV1MessageSSBURI(uri: string | null): boolean

isGabbyGroveV1MessageSSBURI(uri: string | null): boolean

isButtwooV1MessageSSBURI(uri: string | null): boolean

isIndexedV1MessageSSBURI(uri: string | null): boolean

isMessageSSBURI(uri: string | null): boolean

isClassicBlobSSBURI(uri: string | null): boolean

isAddressSSBURI(uri: string | null): boolean

isEncryptionKeyBox2DMDiffieHellmanSSBURI(uri: string | null): boolean

isIdentityPOBoxSSBURI(uri: string | null): boolean

isIdentityFusionSSBURI(uri: string | null): boolean

isExperimentalSSBURI(uri: string | null): boolean

isExperimentalSSBURIWithAction(action: string): (uri: string) => boolean

Regular Expressions

getFeedSSBURIRegex() => RegExp

getMessageSSBURIRegex() => RegExp

Conversion APIs

fromFeedSigil(sigil: string): string

fromMessageSigil(sigil: string): string

fromBlobSigil(sigil: string): string

fromMultiserverAddress(msaddr: string): string

toFeedSigil(uri: string): string | null

toMessageSigil(uri: string): string | null

toBlobSigil(uri: string): string | null

toMultiserverAddress(uri: string): string | null

compose(parts: {type, format, data, extraData}): string

decompose(uri: string): {type, format, data, extraData}

The object {type, format, data} is such that it matches ssb:${type}/${format}/${data}, except the data is always in normal Base64 (i.e. not URI safe).

There is also the case of extraData for special URIs such as ssb:feed/buttwoo-v1/${data}/${extraData}.

License

LGPL-3.0

Keywords

FAQs

Package last updated on 14 Oct 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc