@credo-ts/core
Version:
<p align="center"> <br /> <img alt="Credo Logo" src="https://github.com/openwallet-foundation/credo-ts/blob/c7886cb8377ceb8ee4efe8d264211e561a75072d/images/credo-logo.png" height="250px" /> </p> <h1 align="center"><b>Credo - Core</b></h1
1 lines • 2.04 kB
Source Map (JSON)
{"version":3,"file":"didPeer.mjs","names":[],"sources":["../../../../../src/modules/dids/methods/peer/didPeer.ts"],"sourcesContent":["import { CredoError } from '../../../../error'\n\nimport { getAlternativeDidsForNumAlgo4Did } from './peerDidNumAlgo4'\n\nconst PEER_DID_REGEX =\n /^did:peer:(([01](z)([1-9a-km-zA-HJ-NP-Z]{5,200}))|(2((.[AEVID](z)([1-9a-km-zA-HJ-NP-Z]{5,200}))+(.(S)[0-9a-zA-Z=]*)*))|([4](z[1-9a-km-zA-HJ-NP-Z]{46})(:z[1-9a-km-zA-HJ-NP-Z]{6,}){0,1}))$/\n\nexport function isValidPeerDid(did: string): boolean {\n const isValid = PEER_DID_REGEX.test(did)\n\n return isValid\n}\n\nexport enum PeerDidNumAlgo {\n InceptionKeyWithoutDoc = 0,\n GenesisDoc = 1,\n MultipleInceptionKeyWithoutDoc = 2,\n ShortFormAndLongForm = 4,\n}\n\nexport function getNumAlgoFromPeerDid(did: string) {\n const numAlgo = Number(did[9])\n\n if (\n numAlgo !== PeerDidNumAlgo.InceptionKeyWithoutDoc &&\n numAlgo !== PeerDidNumAlgo.GenesisDoc &&\n numAlgo !== PeerDidNumAlgo.MultipleInceptionKeyWithoutDoc &&\n numAlgo !== PeerDidNumAlgo.ShortFormAndLongForm\n ) {\n throw new CredoError(`Invalid peer did numAlgo: ${numAlgo}`)\n }\n\n return numAlgo as PeerDidNumAlgo\n}\n\n/**\n * Given a peer did, returns any alternative forms equivalent to it.\n *\n * @param did\n * @returns array of alternative dids or undefined if not applicable\n */\nexport function getAlternativeDidsForPeerDid(did: string) {\n if (getNumAlgoFromPeerDid(did) === PeerDidNumAlgo.ShortFormAndLongForm) {\n return getAlternativeDidsForNumAlgo4Did(did)\n }\n}\n"],"mappings":";;;;AAIA,MAAM,iBACJ;AAEF,SAAgB,eAAe,KAAsB;CAGnD,OAFgB,eAAe,KAAK,GAEvB;AACf;AAEA,IAAY,iBAAL,yBAAA,gBAAA;CACL,eAAA,eAAA,4BAAA,KAAA;CACA,eAAA,eAAA,gBAAA,KAAA;CACA,eAAA,eAAA,oCAAA,KAAA;CACA,eAAA,eAAA,0BAAA,KAAA;;AACF,EAAA,CAAA,CAAA;AAEA,SAAgB,sBAAsB,KAAa;CACjD,MAAM,UAAU,OAAO,IAAI,EAAE;CAE7B,IACE,YAAA,KACA,YAAA,KACA,YAAA,KACA,YAAA,GAEA,MAAM,IAAI,WAAW,6BAA6B,SAAS;CAG7D,OAAO;AACT;;;;;;;AAQA,SAAgB,6BAA6B,KAAa;CACxD,IAAI,sBAAsB,GAAG,MAAA,GAC3B,OAAO,iCAAiC,GAAG;AAE/C"}