{"_id":"@adorsys-gis/did-resolver-lib","_rev":"2-10154ef6194d803ceb09123a07d0c59f","name":"@adorsys-gis/did-resolver-lib","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@adorsys-gis/did-resolver-lib","version":"1.0.0","keywords":["Decentralized Identifiers (DIDs)","DID Document","DID Resolution","did-resolver","DID Methods","key-did-resolver"],"author":{"name":"adorsys"},"license":"ISC","_id":"@adorsys-gis/did-resolver-lib@1.0.0","maintainers":[{"name":"francis-pouatcha","email":"francis.pouatcha@adorsys.com"},{"name":"awambeng","email":"awambengrodrick@gmail.com"},{"name":"t.arthur","email":"tcheutchouaarthur38@gmail.com"}],"dist":{"shasum":"a3025d56f669ff2f0e0f9df8a8c6f873b3fe578c","tarball":"https://registry.npmjs.org/@adorsys-gis/did-resolver-lib/-/did-resolver-lib-1.0.0.tgz","fileCount":10,"integrity":"sha512-JxAUAoWwt063YduCkck3Bf+1sEjYCxzZ2qRetaU0Eeq0KVvGcl+qo2/zCAZ42yvlc8Gm/Y+HiMwtFG2SAIj6aA==","signatures":[{"sig":"MEQCIDvFeXeZiZO5J8DQ9inUI5WhaYSr66M19eR3ZJpIgZd8AiAy1wSDKeA9v8hYb9kVfWtMmymz797QFRpL6OpGZw3DJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13104},"main":"src/index.ts","type":"commonjs","gitHead":"de917f429dbb90ea09572e65207e49e3372dc1f0","scripts":{"lint":"eslint '**/*.{js,ts,jsx,tsx}'","test":"jest","build":"tsc -b"},"_npmUser":{"name":"t.arthur","email":"tcheutchouaarthur38@gmail.com"},"_npmVersion":"10.8.3","description":"A library or tool that allows applications to resolve Decentralized Identifiers (DIDs) into their corresponding DID Documents.","directories":{},"_nodeVersion":"22.9.0","dependencies":{"didcomm":"^0.4.1","base64url":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.13.0","ts-jest":"^29.2.5","@jest/globals":"^29.7.0","typescript-eslint":"^8.7.0","@types/babel__core":"^7.20.5","@typescript-eslint/parser":"^8.11.0","@typescript-eslint/eslint-plugin":"^8.11.0"},"_npmOperationalInternal":{"tmp":"tmp/did-resolver-lib_1.0.0_1744111303113_0.902436758281467","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@adorsys-gis/did-resolver-lib","version":"1.0.1","main":"src/index.ts","scripts":{"test":"jest","lint":"eslint '**/*.{js,ts,jsx,tsx}'","build":"tsc -b"},"type":"commonjs","dependencies":{"base64url":"^3.0.1","didcomm":"^0.4.1"},"devDependencies":{"@jest/globals":"^29.7.0","@types/babel__core":"^7.20.5","@typescript-eslint/eslint-plugin":"^8.11.0","@typescript-eslint/parser":"^8.11.0","eslint":"^9.13.0","ts-jest":"^29.2.5","typescript-eslint":"^8.7.0"},"description":"A library or tool that allows applications to resolve Decentralized Identifiers (DIDs) into their corresponding DID Documents.","keywords":["Decentralized Identifiers (DIDs)","DID Document","DID Resolution","did-resolver","DID Methods","key-did-resolver"],"author":{"name":"adorsys"},"license":"ISC","_id":"@adorsys-gis/did-resolver-lib@1.0.1","gitHead":"de917f429dbb90ea09572e65207e49e3372dc1f0","_nodeVersion":"22.9.0","_npmVersion":"10.8.3","dist":{"integrity":"sha512-c6+FXmprhb0SgS0nbK6Ob0CKMnici4PZJvX0Cv74sbIyGCYs4O6y6OQZCEB8ASnupWCKKrCysi5Liiypw0m5Nw==","shasum":"5b707d1e8fffcfa147fd5a2611fb1f077b44f892","tarball":"https://registry.npmjs.org/@adorsys-gis/did-resolver-lib/-/did-resolver-lib-1.0.1.tgz","fileCount":10,"unpackedSize":13133,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAv2dm3QtUhmS+WnhAbjL5TmXxVXyOv+nt/R9WsOpCioAiA3j6IN4LSufJgoK8rwaWdvY5DQyFRYBJK4w5ZlQ7+Bkg=="}]},"_npmUser":{"name":"t.arthur","email":"tcheutchouaarthur38@gmail.com"},"directories":{},"maintainers":[{"name":"francis-pouatcha","email":"francis.pouatcha@adorsys.com"},{"name":"awambeng","email":"awambengrodrick@gmail.com"},{"name":"t.arthur","email":"tcheutchouaarthur38@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/did-resolver-lib_1.0.1_1744112496834_0.25228274582724586"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-08T11:21:43.018Z","modified":"2025-04-08T11:41:37.339Z","1.0.0":"2025-04-08T11:21:43.300Z","1.0.1":"2025-04-08T11:41:37.108Z"},"author":{"name":"adorsys"},"license":"ISC","keywords":["Decentralized Identifiers (DIDs)","DID Document","DID Resolution","did-resolver","DID Methods","key-did-resolver"],"description":"A library or tool that allows applications to resolve Decentralized Identifiers (DIDs) into their corresponding DID Documents.","maintainers":[{"name":"francis-pouatcha","email":"francis.pouatcha@adorsys.com"},{"name":"awambeng","email":"awambengrodrick@gmail.com"},{"name":"t.arthur","email":"tcheutchouaarthur38@gmail.com"}],"readme":"\n# didcomm-peer-did-resolver\n\nA lightweight Peer DID and secrets resolver for [DIDComm](https://identity.foundation/didcomm-messaging/spec/) written in **TypeScript**, compatible with both browser and Node.js environments.\n\nThis library supports resolving `did:peer:2` identifiers to `DIDDoc` instances and retrieving associated secrets from an in-memory store. Perfect for DIDComm development, testing, and simulation.\n\n## ✨ Features\n\n- ✅ Resolve `did:peer:2` formatted DIDs into `DIDDoc` objects\n- ✅ In-memory secrets resolver for test/dev use\n- ✅ Browser and Node.js compatible\n- ✅ Minimal and extensible API\n\n## 📦 Installation\n\n```bash\nnpm install @adorsys-gis/did-resolver-lib\n# or\nyarn add @adorsys-gis/did-resolver-lib\n```\n\n## 📚 Usage\n\n### Importing\n\n```ts\nimport {\n  PeerDIDResolver,\n  ExampleDIDResolver,\n  ExampleSecretsResolver,\n} from '@adorsys-gis/did-resolver-lib';\n```\n\n### 🧩 Resolving Peer DIDs\n\n```ts\nconst peerResolver = new PeerDIDResolver();\n\nconst didDoc = await peerResolver.resolve('did:peer:2...');\nconsole.log(didDoc); // Returns DIDDoc or null\n```\n\n### 📄 Resolving from ExampleDIDResolver\n\nUse this if you already have DIDDocs and want to simulate DIDComm resolution:\n\n```ts\nimport { DIDDoc } from 'didcomm';\n\nconst doc: DIDDoc = { /* your DIDDoc */ };\nconst resolver = new ExampleDIDResolver([doc]);\n\nconst result = await resolver.resolve(doc.id);\nconsole.log(result); // DIDDoc or null\n```\n\n### 🔐 Secrets Resolver\n\n```ts\nimport { Secret } from 'didcomm';\n\nconst secret: Secret = { /* your secret */ };\nconst resolver = new ExampleSecretsResolver([secret]);\n\nconst found = await resolver.get_secret(secret.id);\nconsole.log(found); // Secret or null\n\nconst foundIds = await resolver.find_secrets([secret.id]);\nconsole.log(foundIds); // Array of matching IDs\n```\n\n### 🔧 Example with DIDComm Encryption\n\n```ts\nimport { Message } from 'didcomm';\nimport {\n  PeerDIDResolver,\n  ExampleDIDResolver,\n  ExampleSecretsResolver,\n} from '@adorsys-gis/did-resolver-lib';\nimport { SENDER_SECRETS } from './secrets/client';\n\nconst MEDIATOR_DID = 'did:peer:2...';\nconst SENDER_DID = 'did:peer:2...';\n\nconst peerResolver = new PeerDIDResolver();\n\nconst mediatorDoc = await peerResolver.resolve(MEDIATOR_DID);\nconst senderDoc = await peerResolver.resolve(SENDER_DID);\n\nconst didResolver = new ExampleDIDResolver([mediatorDoc, senderDoc]);\nconst secretsResolver = new ExampleSecretsResolver(SENDER_SECRETS);\n\nconst msg = new Message({\n  id: '123',\n  type: 'https://didcomm.org/custom-protocol/1.0/message',\n  from: SENDER_DID,\n  to: [MEDIATOR_DID],\n  body: { hello: 'world' },\n});\n\nconst [packedMessage] = await msg.pack_encrypted(\n  MEDIATOR_DID,\n  SENDER_DID,\n  null,\n  didResolver,\n  secretsResolver,\n  { forward: false },\n);\n```\n\n## 📁 File Structure\n\n- `ExampleDIDResolver.ts` – In-memory DIDDoc resolver\n- `ExampleSecretsResolver.ts` – In-memory secrets resolver\n- `resolver.ts` – Peer DID resolution logic for `did:peer:2`\n- `resolver.test.ts` – Unit tests for DID resolution logic\n","readmeFilename":"readme.md"}