@sphereon/did-provider-oyd 0.28.1-feature.esm.cjs.8 → 0.28.1-feature.esm.cjs.9

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
@@ -1,52 +1,16 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var __defProp = Object.defineProperty;
8
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
-
31
- // src/index.ts
32
- var index_exports = {};
33
- __export(index_exports, {
34
- OydDIDProvider: () => OydDIDProvider,
35
- SupportedKeyTypes: () => SupportedKeyTypes,
36
- getDidOydResolver: () => getDidOydResolver
37
- });
38
- module.exports = __toCommonJS(index_exports);
39
3
 
40
4
  // src/oyd-did-provider.ts
41
- var import_did_manager = require("@veramo/did-manager");
42
- var import_cross_fetch = __toESM(require("cross-fetch"), 1);
43
- var import_debug = __toESM(require("debug"), 1);
44
- var debug = (0, import_debug.default)("veramo:oyd-did:identifier-provider");
45
- var OydDIDProvider = class extends import_did_manager.AbstractIdentifierProvider {
5
+ var _didmanager = require('@veramo/did-manager');
6
+ var _crossfetch = require('cross-fetch'); var _crossfetch2 = _interopRequireDefault(_crossfetch);
7
+ var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);
8
+ var debug = _debug2.default.call(void 0, "veramo:oyd-did:identifier-provider");
9
+ var OydDIDProvider = class extends _didmanager.AbstractIdentifierProvider {
46
10
  static {
47
11
  __name(this, "OydDIDProvider");
48
12
  }
49
- defaultKms;
13
+
50
14
  constructor(options) {
51
15
  super();
52
16
  this.defaultKms = options.defaultKms;
@@ -58,7 +22,7 @@ var OydDIDProvider = class extends import_did_manager.AbstractIdentifierProvider
58
22
  const url = "https://oydid-registrar.data-container.net/1.0/createIdentifier";
59
23
  let didDoc;
60
24
  try {
61
- const response = await (0, import_cross_fetch.default)(url, {
25
+ const response = await _crossfetch2.default.call(void 0, url, {
62
26
  method: "POST",
63
27
  headers: {
64
28
  "Content-Type": "application/json"
@@ -72,7 +36,7 @@ var OydDIDProvider = class extends import_did_manager.AbstractIdentifierProvider
72
36
  } catch (error) {
73
37
  throw new Error("There has been a problem with the fetch operation: " + error.toString());
74
38
  }
75
- const keyType = options?.keyType || "Ed25519";
39
+ const keyType = _optionalChain([options, 'optionalAccess', _ => _.keyType]) || "Ed25519";
76
40
  const key = await this.holdKeys({
77
41
  // @ts-ignore
78
42
  kms: kms || this.defaultKms,
@@ -154,11 +118,11 @@ var OydDIDProvider = class extends import_did_manager.AbstractIdentifierProvider
154
118
  };
155
119
 
156
120
  // src/resolver.ts
157
- var import_cross_fetch2 = __toESM(require("cross-fetch"), 1);
121
+
158
122
  var resolveDidOyd = /* @__PURE__ */ __name(async (didUrl, _parsed, _resolver, options) => {
159
123
  try {
160
124
  const baseUrl = "https://oydid-resolver.data-container.net";
161
- const response = await (0, import_cross_fetch2.default)(`${baseUrl}/1.0/identifiers/${didUrl}`);
125
+ const response = await _crossfetch2.default.call(void 0, `${baseUrl}/1.0/identifiers/${didUrl}`);
162
126
  if (!response.ok) {
163
127
  throw new Error("Network response was not ok: " + response.statusText);
164
128
  }
@@ -190,4 +154,9 @@ var SupportedKeyTypes = /* @__PURE__ */ function(SupportedKeyTypes2) {
190
154
  SupportedKeyTypes2["X25519"] = "X25519";
191
155
  return SupportedKeyTypes2;
192
156
  }({});
157
+
158
+
159
+
160
+
161
+ exports.OydDIDProvider = OydDIDProvider; exports.SupportedKeyTypes = SupportedKeyTypes; exports.getDidOydResolver = getDidOydResolver;
193
162
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/oyd-did-provider.ts","../src/resolver.ts","../src/types/oyd-provider-types.ts"],"sourcesContent":["/**\n * Provides `did:oyd` {@link @ownyourdata/did-provider-oyd#OydDIDProvider | identifier provider } for the\n * {@link @veramo/did-manager#DIDManager}\n *\n * @packageDocumentation\n */\nexport { OydDIDProvider } from './oyd-did-provider.js'\nexport { getDidOydResolver } from './resolver.js'\nexport * from './types/oyd-provider-types.js'\n","import { IIdentifier, IKey, IService, IAgentContext, IKeyManager } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\nimport type { OydCreateIdentifierOptions, OydDidHoldKeysArgs, OydDidSupportedKeyTypes } from './types/oyd-provider-types.js'\nimport fetch from 'cross-fetch'\n\nimport Debug from 'debug'\nconst debug = Debug('veramo:oyd-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:oyd` identifiers\n * @public\n */\nexport class OydDIDProvider extends AbstractIdentifierProvider {\n private defaultKms?: string\n\n constructor(options: { defaultKms?: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(\n { kms, options }: { kms?: string; options: OydCreateIdentifierOptions },\n context: IContext\n ): Promise<Omit<IIdentifier, 'provider'>> {\n const body = { options }\n const url = 'https://oydid-registrar.data-container.net/1.0/createIdentifier'\n\n let didDoc: any | undefined\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(body),\n })\n if (!response.ok) {\n throw new Error('Network response was not ok: ' + response.statusText)\n }\n didDoc = await response.json()\n } catch (error) {\n // @ts-ignore\n throw new Error('There has been a problem with the fetch operation: ' + error.toString())\n }\n\n const keyType: OydDidSupportedKeyTypes = options?.keyType || 'Ed25519'\n const key = await this.holdKeys(\n {\n // @ts-ignore\n kms: kms || this.defaultKms,\n options: {\n keyType,\n kid: didDoc.did + '#key-doc',\n publicKeyHex: didDoc.keys[0].publicKeyHex,\n privateKeyHex: didDoc.keys[0].privateKeyHex,\n },\n },\n context\n )\n\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: didDoc.did,\n controllerKeyId: key.kid,\n keys: [key],\n services: [],\n }\n debug('Created', identifier.did)\n return identifier\n }\n\n async updateIdentifier(\n args: { did: string; kms?: string | undefined; alias?: string | undefined; options?: any },\n context: IAgentContext<IKeyManager>\n ): Promise<IIdentifier> {\n throw new Error('OydDIDProvider updateIdentifier not supported yet.')\n }\n\n async deleteIdentifier(identifier: IIdentifier, context: IContext): Promise<boolean> {\n for (const { kid } of identifier.keys) {\n await context.agent.keyManagerDelete({ kid })\n }\n return true\n }\n\n async addKey({ identifier, key, options }: { identifier: IIdentifier; key: IKey; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async addService({ identifier, service, options }: { identifier: IIdentifier; service: IService; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async removeKey(args: { identifier: IIdentifier; kid: string; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async removeService(args: { identifier: IIdentifier; id: string; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n private async holdKeys(args: OydDidHoldKeysArgs, context: IContext): Promise<IKey> {\n if (args.options.privateKeyHex) {\n return context.agent.keyManagerImport({\n // @ts-ignore\n kms: args.kms || this.defaultKms,\n type: args.options.keyType,\n kid: args.options.kid,\n privateKeyHex: args.options.privateKeyHex,\n meta: {\n algorithms: ['Ed25519'],\n },\n })\n }\n return context.agent.keyManagerCreate({\n type: args.options.keyType,\n // @ts-ignore\n kms: args.kms || this.defaultKms,\n meta: {\n algorithms: ['Ed25519'],\n },\n })\n }\n}\n","import { DIDResolutionOptions, DIDResolutionResult, DIDResolver, ParsedDID, Resolvable } from 'did-resolver'\nimport fetch from 'cross-fetch'\n\nconst resolveDidOyd: DIDResolver = async (\n didUrl: string,\n _parsed: ParsedDID,\n _resolver: Resolvable,\n options: DIDResolutionOptions\n): Promise<DIDResolutionResult> => {\n try {\n const baseUrl: string = 'https://oydid-resolver.data-container.net'\n // const didDoc = await axios.get(`${baseUrl}/1.0/identifiers/${didUrl}`);\n const response = await fetch(`${baseUrl}/1.0/identifiers/${didUrl}`)\n if (!response.ok) {\n throw new Error('Network response was not ok: ' + response.statusText)\n }\n const didDoc = await response.json()\n return didDoc as DIDResolutionResult\n } catch (err: any) {\n return {\n didDocumentMetadata: {},\n didResolutionMetadata: { error: 'invalidDid', message: err.toString() },\n didDocument: null,\n }\n }\n}\n\n/**\n * Provides a mapping to a did:oyd resolver, usable by {@link did-resolver#Resolver}.\n *\n * @public\n */\nexport function getDidOydResolver() {\n return { oyd: resolveDidOyd }\n}\n","export type OydCreateIdentifierOptions = {\n keyType?: OydDidSupportedKeyTypes\n privateKeyHex?: string\n keyUse?: KeyUse\n}\n\nexport type OydDidHoldKeysArgs = {\n kms: string\n options: HoldKeysOpts\n}\n\ntype HoldKeysOpts = {\n keyType: OydDidSupportedKeyTypes\n kid: string\n publicKeyHex?: string\n privateKeyHex?: string\n}\n\nexport enum SupportedKeyTypes {\n Secp256r1 = 'Secp256r1',\n Secp256k1 = 'Secp256k1',\n Ed25519 = 'Ed25519',\n X25519 = 'X25519',\n}\n\nexport type OydDidSupportedKeyTypes = keyof typeof SupportedKeyTypes\n\nexport type KeyUse = 'sig' | 'enc'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;ACCA,yBAA2C;AAE3C,yBAAkB;AAElB,mBAAkB;AAClB,IAAMA,YAAQC,aAAAA,SAAM,oCAAA;AAQb,IAAMC,iBAAN,cAA6BC,8CAAAA;EAbpC,OAaoCA;;;EAC1BC;EAERC,YAAYC,SAAkC;AAC5C,UAAK;AACL,SAAKF,aAAaE,QAAQF;EAC5B;EAEA,MAAMG,iBACJ,EAAEC,KAAKF,QAAO,GACdG,SACwC;AACxC,UAAMC,OAAO;MAAEJ;IAAQ;AACvB,UAAMK,MAAM;AAEZ,QAAIC;AACJ,QAAI;AACF,YAAMC,WAAW,UAAMC,mBAAAA,SAAMH,KAAK;QAChCI,QAAQ;QACRC,SAAS;UACP,gBAAgB;QAClB;QACAN,MAAMO,KAAKC,UAAUR,IAAAA;MACvB,CAAA;AACA,UAAI,CAACG,SAASM,IAAI;AAChB,cAAM,IAAIC,MAAM,kCAAkCP,SAASQ,UAAU;MACvE;AACAT,eAAS,MAAMC,SAASS,KAAI;IAC9B,SAASC,OAAO;AAEd,YAAM,IAAIH,MAAM,wDAAwDG,MAAMC,SAAQ,CAAA;IACxF;AAEA,UAAMC,UAAmCnB,SAASmB,WAAW;AAC7D,UAAMC,MAAM,MAAM,KAAKC,SACrB;;MAEEnB,KAAKA,OAAO,KAAKJ;MACjBE,SAAS;QACPmB;QACAG,KAAKhB,OAAOiB,MAAM;QAClBC,cAAclB,OAAOmB,KAAK,CAAA,EAAGD;QAC7BE,eAAepB,OAAOmB,KAAK,CAAA,EAAGC;MAChC;IACF,GACAvB,OAAAA;AAGF,UAAMwB,aAA4C;MAChDJ,KAAKjB,OAAOiB;MACZK,iBAAiBR,IAAIE;MACrBG,MAAM;QAACL;;MACPS,UAAU,CAAA;IACZ;AACAnC,UAAM,WAAWiC,WAAWJ,GAAG;AAC/B,WAAOI;EACT;EAEA,MAAMG,iBACJC,MACA5B,SACsB;AACtB,UAAM,IAAIW,MAAM,oDAAA;EAClB;EAEA,MAAMkB,iBAAiBL,YAAyBxB,SAAqC;AACnF,eAAW,EAAEmB,IAAG,KAAMK,WAAWF,MAAM;AACrC,YAAMtB,QAAQ8B,MAAMC,iBAAiB;QAAEZ;MAAI,CAAA;IAC7C;AACA,WAAO;EACT;EAEA,MAAMa,OAAO,EAAER,YAAYP,KAAKpB,QAAO,GAA2DG,SAAiC;AACjI,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMC,WAAW,EAAEV,YAAYW,SAAStC,QAAO,GAAmEG,SAAiC;AACjJ,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMG,UAAUR,MAA+D5B,SAAiC;AAC9G,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMI,cAAcT,MAA8D5B,SAAiC;AACjH,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAcf,SAASU,MAA0B5B,SAAkC;AACjF,QAAI4B,KAAK/B,QAAQ0B,eAAe;AAC9B,aAAOvB,QAAQ8B,MAAMQ,iBAAiB;;QAEpCvC,KAAK6B,KAAK7B,OAAO,KAAKJ;QACtB4C,MAAMX,KAAK/B,QAAQmB;QACnBG,KAAKS,KAAK/B,QAAQsB;QAClBI,eAAeK,KAAK/B,QAAQ0B;QAC5BiB,MAAM;UACJC,YAAY;YAAC;;QACf;MACF,CAAA;IACF;AACA,WAAOzC,QAAQ8B,MAAMY,iBAAiB;MACpCH,MAAMX,KAAK/B,QAAQmB;;MAEnBjB,KAAK6B,KAAK7B,OAAO,KAAKJ;MACtB6C,MAAM;QACJC,YAAY;UAAC;;MACf;IACF,CAAA;EACF;AACF;;;AC3HA,IAAAE,sBAAkB;AAElB,IAAMC,gBAA6B,8BACjCC,QACAC,SACAC,WACAC,YAAAA;AAEA,MAAI;AACF,UAAMC,UAAkB;AAExB,UAAMC,WAAW,UAAMC,oBAAAA,SAAM,GAAGF,OAAAA,oBAA2BJ,MAAAA,EAAQ;AACnE,QAAI,CAACK,SAASE,IAAI;AAChB,YAAM,IAAIC,MAAM,kCAAkCH,SAASI,UAAU;IACvE;AACA,UAAMC,SAAS,MAAML,SAASM,KAAI;AAClC,WAAOD;EACT,SAASE,KAAU;AACjB,WAAO;MACLC,qBAAqB,CAAC;MACtBC,uBAAuB;QAAEC,OAAO;QAAcC,SAASJ,IAAIK,SAAQ;MAAG;MACtEC,aAAa;IACf;EACF;AACF,GAtBmC;AA6B5B,SAASC,oBAAAA;AACd,SAAO;IAAEC,KAAKrB;EAAc;AAC9B;AAFgBoB;;;ACdT,IAAKE,oBAAAA,yBAAAA,oBAAAA;;;;;SAAAA;;","names":["debug","Debug","OydDIDProvider","AbstractIdentifierProvider","defaultKms","constructor","options","createIdentifier","kms","context","body","url","didDoc","response","fetch","method","headers","JSON","stringify","ok","Error","statusText","json","error","toString","keyType","key","holdKeys","kid","did","publicKeyHex","keys","privateKeyHex","identifier","controllerKeyId","services","updateIdentifier","args","deleteIdentifier","agent","keyManagerDelete","addKey","success","addService","service","removeKey","removeService","keyManagerImport","type","meta","algorithms","keyManagerCreate","import_cross_fetch","resolveDidOyd","didUrl","_parsed","_resolver","options","baseUrl","response","fetch","ok","Error","statusText","didDoc","json","err","didDocumentMetadata","didResolutionMetadata","error","message","toString","didDocument","getDidOydResolver","oyd","SupportedKeyTypes"]}
1
+ {"version":3,"sources":["/home/runner/work/SSI-SDK-crypto-extensions/SSI-SDK-crypto-extensions/packages/did-provider-oyd/dist/index.cjs","../src/oyd-did-provider.ts","../src/resolver.ts","../src/types/oyd-provider-types.ts"],"names":["debug","Debug","OydDIDProvider","AbstractIdentifierProvider","defaultKms","constructor","options","createIdentifier","kms","context","body","url","didDoc","response","fetch","method","headers","JSON","stringify","ok","Error","statusText","json","error","toString","keyType","key","holdKeys","kid","did","publicKeyHex","keys","privateKeyHex","identifier","controllerKeyId","services","updateIdentifier","args","deleteIdentifier","agent","keyManagerDelete","addKey","success","addService","service","removeKey","removeService","keyManagerImport","type","meta","algorithms","keyManagerCreate","resolveDidOyd","didUrl","_parsed","_resolver","baseUrl","getDidOydResolver","SupportedKeyTypes"],"mappings":"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","file":"/home/runner/work/SSI-SDK-crypto-extensions/SSI-SDK-crypto-extensions/packages/did-provider-oyd/dist/index.cjs","sourcesContent":[null,"import { IIdentifier, IKey, IService, IAgentContext, IKeyManager } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\nimport type { OydCreateIdentifierOptions, OydDidHoldKeysArgs, OydDidSupportedKeyTypes } from './types/oyd-provider-types.js'\nimport fetch from 'cross-fetch'\n\nimport Debug from 'debug'\nconst debug = Debug('veramo:oyd-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:oyd` identifiers\n * @public\n */\nexport class OydDIDProvider extends AbstractIdentifierProvider {\n private defaultKms?: string\n\n constructor(options: { defaultKms?: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(\n { kms, options }: { kms?: string; options: OydCreateIdentifierOptions },\n context: IContext\n ): Promise<Omit<IIdentifier, 'provider'>> {\n const body = { options }\n const url = 'https://oydid-registrar.data-container.net/1.0/createIdentifier'\n\n let didDoc: any | undefined\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(body),\n })\n if (!response.ok) {\n throw new Error('Network response was not ok: ' + response.statusText)\n }\n didDoc = await response.json()\n } catch (error) {\n // @ts-ignore\n throw new Error('There has been a problem with the fetch operation: ' + error.toString())\n }\n\n const keyType: OydDidSupportedKeyTypes = options?.keyType || 'Ed25519'\n const key = await this.holdKeys(\n {\n // @ts-ignore\n kms: kms || this.defaultKms,\n options: {\n keyType,\n kid: didDoc.did + '#key-doc',\n publicKeyHex: didDoc.keys[0].publicKeyHex,\n privateKeyHex: didDoc.keys[0].privateKeyHex,\n },\n },\n context\n )\n\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: didDoc.did,\n controllerKeyId: key.kid,\n keys: [key],\n services: [],\n }\n debug('Created', identifier.did)\n return identifier\n }\n\n async updateIdentifier(\n args: { did: string; kms?: string | undefined; alias?: string | undefined; options?: any },\n context: IAgentContext<IKeyManager>\n ): Promise<IIdentifier> {\n throw new Error('OydDIDProvider updateIdentifier not supported yet.')\n }\n\n async deleteIdentifier(identifier: IIdentifier, context: IContext): Promise<boolean> {\n for (const { kid } of identifier.keys) {\n await context.agent.keyManagerDelete({ kid })\n }\n return true\n }\n\n async addKey({ identifier, key, options }: { identifier: IIdentifier; key: IKey; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async addService({ identifier, service, options }: { identifier: IIdentifier; service: IService; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async removeKey(args: { identifier: IIdentifier; kid: string; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n async removeService(args: { identifier: IIdentifier; id: string; options?: any }, context: IContext): Promise<any> {\n return { success: true }\n }\n\n private async holdKeys(args: OydDidHoldKeysArgs, context: IContext): Promise<IKey> {\n if (args.options.privateKeyHex) {\n return context.agent.keyManagerImport({\n // @ts-ignore\n kms: args.kms || this.defaultKms,\n type: args.options.keyType,\n kid: args.options.kid,\n privateKeyHex: args.options.privateKeyHex,\n meta: {\n algorithms: ['Ed25519'],\n },\n })\n }\n return context.agent.keyManagerCreate({\n type: args.options.keyType,\n // @ts-ignore\n kms: args.kms || this.defaultKms,\n meta: {\n algorithms: ['Ed25519'],\n },\n })\n }\n}\n","import { DIDResolutionOptions, DIDResolutionResult, DIDResolver, ParsedDID, Resolvable } from 'did-resolver'\nimport fetch from 'cross-fetch'\n\nconst resolveDidOyd: DIDResolver = async (\n didUrl: string,\n _parsed: ParsedDID,\n _resolver: Resolvable,\n options: DIDResolutionOptions\n): Promise<DIDResolutionResult> => {\n try {\n const baseUrl: string = 'https://oydid-resolver.data-container.net'\n // const didDoc = await axios.get(`${baseUrl}/1.0/identifiers/${didUrl}`);\n const response = await fetch(`${baseUrl}/1.0/identifiers/${didUrl}`)\n if (!response.ok) {\n throw new Error('Network response was not ok: ' + response.statusText)\n }\n const didDoc = await response.json()\n return didDoc as DIDResolutionResult\n } catch (err: any) {\n return {\n didDocumentMetadata: {},\n didResolutionMetadata: { error: 'invalidDid', message: err.toString() },\n didDocument: null,\n }\n }\n}\n\n/**\n * Provides a mapping to a did:oyd resolver, usable by {@link did-resolver#Resolver}.\n *\n * @public\n */\nexport function getDidOydResolver() {\n return { oyd: resolveDidOyd }\n}\n","export type OydCreateIdentifierOptions = {\n keyType?: OydDidSupportedKeyTypes\n privateKeyHex?: string\n keyUse?: KeyUse\n}\n\nexport type OydDidHoldKeysArgs = {\n kms: string\n options: HoldKeysOpts\n}\n\ntype HoldKeysOpts = {\n keyType: OydDidSupportedKeyTypes\n kid: string\n publicKeyHex?: string\n privateKeyHex?: string\n}\n\nexport enum SupportedKeyTypes {\n Secp256r1 = 'Secp256r1',\n Secp256k1 = 'Secp256k1',\n Ed25519 = 'Ed25519',\n X25519 = 'X25519',\n}\n\nexport type OydDidSupportedKeyTypes = keyof typeof SupportedKeyTypes\n\nexport type KeyUse = 'sig' | 'enc'\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sphereon/did-provider-oyd",
3
3
  "description": "OwnYourData plugin that can enable creation and control of did:oyd identifiers.",
4
- "version": "0.28.1-feature.esm.cjs.8+4c162d1",
4
+ "version": "0.28.1-feature.esm.cjs.9+71682ea",
5
5
  "source": "./src/index.ts",
6
6
  "type": "module",
7
7
  "main": "./dist/index.cjs",
@@ -48,5 +48,5 @@
48
48
  "author": "Christoph Fabianek <christoph@ownyourdata.eu>",
49
49
  "keywords": [],
50
50
  "license": "MIT",
51
- "gitHead": "4c162d14577f462070adeea3e7ec5a443c324ee7"
51
+ "gitHead": "71682ea0c528f5b32c421245c253b3bc9d6296a0"
52
52
  }