bluesky-tools-0.6.0.4: Tools for interacting with Bluesky / AT Protocol
Safe HaskellNone
LanguageGHC2021

Bluesky.Did

Synopsis

Documentation

data Did Source #

https://atproto.com/specs/did

A DID is a Decentralized Identifier. They're codified by various W3C standards. This type only aims to capture how they are used in atproto.

Instances

Instances details
FromJSON Did Source # 
Instance details

Defined in Bluesky.Did

ToJSON Did Source # 
Instance details

Defined in Bluesky.Did

Show Did Source # 
Instance details

Defined in Bluesky.Did

Methods

showsPrec :: Int -> Did -> ShowS #

show :: Did -> String #

showList :: [Did] -> ShowS #

Eq Did Source # 
Instance details

Defined in Bluesky.Did

Methods

(==) :: Did -> Did -> Bool #

(/=) :: Did -> Did -> Bool #

Ord Did Source # 
Instance details

Defined in Bluesky.Did

Methods

compare :: Did -> Did -> Ordering #

(<) :: Did -> Did -> Bool #

(<=) :: Did -> Did -> Bool #

(>) :: Did -> Did -> Bool #

(>=) :: Did -> Did -> Bool #

max :: Did -> Did -> Did #

min :: Did -> Did -> Did #

data DidError Source #

Constructors

NoDidPrefix 
NoMethodSeparator

after "did:", there must be another colon to delimit method from identifier

BadMethod

method must match the regex [a-z]+; this does not check if the method is supported by atproto

BadIdentifierCharacters

identifier section must match [a-zA-Z0-9._:%-] (nb. that general DID URIs may also have query and fragment components, i.e. ? and # characters, but atproto DID identifiers may not)

EndsWithColon 
BadPercentEncoding

the spec says implementations don't need to validate percent encoding, but we validate that every % is followed by two hex digits

Instances

Instances details
Show DidError Source # 
Instance details

Defined in Bluesky.Did

Eq DidError Source # 
Instance details

Defined in Bluesky.Did

Ord DidError Source # 
Instance details

Defined in Bluesky.Did

data Document Source #

Fields that the library currently doesn't understand are ignored.

Instances

Instances details
FromJSON Document Source # 
Instance details

Defined in Bluesky.Did

Generic Document Source # 
Instance details

Defined in Bluesky.Did

Associated Types

type Rep Document 
Instance details

Defined in Bluesky.Did

Methods

from :: Document -> Rep Document x #

to :: Rep Document x -> Document #

Show Document Source # 
Instance details

Defined in Bluesky.Did

Eq Document Source # 
Instance details

Defined in Bluesky.Did

Ord Document Source # 
Instance details

Defined in Bluesky.Did

type Rep Document Source # 
Instance details

Defined in Bluesky.Did

getDocument :: HasCallStack => Manager -> Did -> IO (Maybe Document) Source #

This is currently only implemented for did:plc: DIDs.