@sphereon/ssi-sdk-ext.did-provider-web 0.34.1-feature.FIDES.1.274 → 0.34.1-feature.IDK.11.48

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
@@ -40,7 +40,6 @@ var import_ssi_sdk_ext = require("@sphereon/ssi-sdk-ext.did-utils");
40
40
  var import_ssi_sdk_ext2 = require("@sphereon/ssi-sdk-ext.key-utils");
41
41
  var import_did_manager = require("@veramo/did-manager");
42
42
  var import_debug = __toESM(require("debug"), 1);
43
- var PROVIDER_NAME = "Web DID Provider";
44
43
  var debug = (0, import_debug.default)("sphereon:web-did:identifier-provider");
45
44
  var WebDIDProvider = class extends import_did_manager.AbstractIdentifierProvider {
46
45
  static {
@@ -66,7 +65,6 @@ var WebDIDProvider = class extends import_did_manager.AbstractIdentifierProvider
66
65
  opts.keys
67
66
  ];
68
67
  const keys = await Promise.all(keyOpts.map((keyOpt) => (0, import_ssi_sdk_ext2.importProvidedOrGeneratedKey)({
69
- providerName: PROVIDER_NAME,
70
68
  kms: kms ?? this.defaultKms,
71
69
  options: keyOpt
72
70
  }, context)));
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/web-did-provider.ts"],"sourcesContent":["/**\n * Provides `did:web` {@link @veramo/did-provider-web#WebDIDProvider | identifier provider } for the\n * {@link @veramo/did-manager#DIDManager}\n *\n * @packageDocumentation\n */\nexport * from './types'\nexport { WebDIDProvider } from './web-did-provider'\n","import { asDidWeb } from '@sphereon/ssi-sdk-ext.did-utils'\nimport { importProvidedOrGeneratedKey } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { IAgentContext, IIdentifier, IKey, IKeyManager, IService } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\n\nimport Debug from 'debug'\nimport { ICreateIdentifierArgs, IKeyOpts } from './types'\n\nconst PROVIDER_NAME = 'Web DID Provider'\n\nconst debug = Debug('sphereon:web-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:web` identifiers\n * @public\n */\nexport class WebDIDProvider extends AbstractIdentifierProvider {\n private readonly defaultKms: string\n\n constructor(options: { defaultKms: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(args: ICreateIdentifierArgs, context: IContext): Promise<Omit<IIdentifier, 'provider'>> {\n const { kms, alias } = args\n const opts = args.options ?? {}\n if (!opts.keys || (Array.isArray(opts.keys) && opts.keys.length === 0)) {\n // Let's generate a key as no import keys or types are provided\n opts.keys = [{ type: 'Secp256r1', isController: true }]\n }\n const keyOpts = Array.isArray(opts.keys) ? opts.keys : [opts.keys as IKeyOpts]\n const keys = await Promise.all(\n keyOpts.map((keyOpt: IKeyOpts) =>\n importProvidedOrGeneratedKey(\n {\n providerName: PROVIDER_NAME,\n kms: kms ?? this.defaultKms,\n options: keyOpt,\n },\n context,\n ),\n ),\n )\n\n const controllerIdx = keyOpts.findIndex((opt) => opt.isController)\n const controllerKeyId = controllerIdx < 0 ? keys[0].kid : keys[controllerIdx].kid\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: await asDidWeb(alias),\n controllerKeyId,\n keys,\n services: opts.services ?? [],\n }\n debug('Created', identifier)\n return identifier\n }\n\n async updateIdentifier(\n args: {\n did: string\n kms?: string | undefined\n alias?: string | undefined\n options?: any\n },\n context: IAgentContext<IKeyManager>,\n ): Promise<IIdentifier> {\n throw new Error('WebDIDProvider 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(\n {\n identifier,\n key,\n options,\n }: {\n identifier: IIdentifier\n key: IKey\n options?: any\n },\n context: IContext,\n ): Promise<any> {\n return { success: true }\n }\n\n async addService(\n {\n identifier,\n service,\n options,\n }: {\n identifier: IIdentifier\n service: IService\n options?: any\n },\n context: IContext,\n ): 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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,yBAAyB;AACzB,IAAAA,sBAA6C;AAE7C,yBAA2C;AAE3C,mBAAkB;AAGlB,IAAMC,gBAAgB;AAEtB,IAAMC,YAAQC,aAAAA,SAAM,sCAAA;AAQb,IAAMC,iBAAN,cAA6BC,8CAAAA;EAlBpC,OAkBoCA;;;EACjBC;EAEjB,YAAYC,SAAiC;AAC3C,UAAK;AACL,SAAKD,aAAaC,QAAQD;EAC5B;EAEA,MAAME,iBAAiBC,MAA6BC,SAA2D;AAC7G,UAAM,EAAEC,KAAKC,MAAK,IAAKH;AACvB,UAAMI,OAAOJ,KAAKF,WAAW,CAAC;AAC9B,QAAI,CAACM,KAAKC,QAASC,MAAMC,QAAQH,KAAKC,IAAI,KAAKD,KAAKC,KAAKG,WAAW,GAAI;AAEtEJ,WAAKC,OAAO;QAAC;UAAEI,MAAM;UAAaC,cAAc;QAAK;;IACvD;AACA,UAAMC,UAAUL,MAAMC,QAAQH,KAAKC,IAAI,IAAID,KAAKC,OAAO;MAACD,KAAKC;;AAC7D,UAAMA,OAAO,MAAMO,QAAQC,IACzBF,QAAQG,IAAI,CAACC,eACXC,kDACE;MACEC,cAAczB;MACdU,KAAKA,OAAO,KAAKL;MACjBC,SAASiB;IACX,GACAd,OAAAA,CAAAA,CAAAA;AAKN,UAAMiB,gBAAgBP,QAAQQ,UAAU,CAACC,QAAQA,IAAIV,YAAY;AACjE,UAAMW,kBAAkBH,gBAAgB,IAAIb,KAAK,CAAA,EAAGiB,MAAMjB,KAAKa,aAAAA,EAAeI;AAC9E,UAAMC,aAA4C;MAChDC,KAAK,UAAMC,6BAAStB,KAAAA;MACpBkB;MACAhB;MACAqB,UAAUtB,KAAKsB,YAAY,CAAA;IAC7B;AACAjC,UAAM,WAAW8B,UAAAA;AACjB,WAAOA;EACT;EAEA,MAAMI,iBACJ3B,MAMAC,SACsB;AACtB,UAAM,IAAI2B,MAAM,oDAAA;EAClB;EAEA,MAAMC,iBAAiBN,YAAyBtB,SAAqC;AACnF,eAAW,EAAEqB,IAAG,KAAMC,WAAWlB,MAAM;AACrC,YAAMJ,QAAQ6B,MAAMC,iBAAiB;QAAET;MAAI,CAAA;IAC7C;AACA,WAAO;EACT;EAEA,MAAMU,OACJ,EACET,YACAU,KACAnC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMC,WACJ,EACEZ,YACAa,SACAtC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMG,UAAUrC,MAA+DC,SAAiC;AAC9G,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMI,cAActC,MAA8DC,SAAiC;AACjH,WAAO;MAAEiC,SAAS;IAAK;EACzB;AACF;","names":["import_ssi_sdk_ext","PROVIDER_NAME","debug","Debug","WebDIDProvider","AbstractIdentifierProvider","defaultKms","options","createIdentifier","args","context","kms","alias","opts","keys","Array","isArray","length","type","isController","keyOpts","Promise","all","map","keyOpt","importProvidedOrGeneratedKey","providerName","controllerIdx","findIndex","opt","controllerKeyId","kid","identifier","did","asDidWeb","services","updateIdentifier","Error","deleteIdentifier","agent","keyManagerDelete","addKey","key","success","addService","service","removeKey","removeService"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/web-did-provider.ts"],"sourcesContent":["/**\n * Provides `did:web` {@link @veramo/did-provider-web#WebDIDProvider | identifier provider } for the\n * {@link @veramo/did-manager#DIDManager}\n *\n * @packageDocumentation\n */\nexport * from './types'\nexport { WebDIDProvider } from './web-did-provider'\n","import { asDidWeb } from '@sphereon/ssi-sdk-ext.did-utils'\nimport { importProvidedOrGeneratedKey } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { IAgentContext, IIdentifier, IKey, IKeyManager, IService } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\n\nimport Debug from 'debug'\nimport { ICreateIdentifierArgs, IKeyOpts } from './types'\n\nconst debug = Debug('sphereon:web-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:web` identifiers\n * @public\n */\nexport class WebDIDProvider extends AbstractIdentifierProvider {\n private readonly defaultKms: string\n\n constructor(options: { defaultKms: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(args: ICreateIdentifierArgs, context: IContext): Promise<Omit<IIdentifier, 'provider'>> {\n const { kms, alias } = args\n const opts = args.options ?? {}\n if (!opts.keys || (Array.isArray(opts.keys) && opts.keys.length === 0)) {\n // Let's generate a key as no import keys or types are provided\n opts.keys = [{ type: 'Secp256r1', isController: true }]\n }\n const keyOpts = Array.isArray(opts.keys) ? opts.keys : [opts.keys as IKeyOpts]\n const keys = await Promise.all(\n keyOpts.map((keyOpt: IKeyOpts) => importProvidedOrGeneratedKey({ kms: kms ?? this.defaultKms, options: keyOpt }, context))\n )\n\n const controllerIdx = keyOpts.findIndex((opt) => opt.isController)\n const controllerKeyId = controllerIdx < 0 ? keys[0].kid : keys[controllerIdx].kid\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: await asDidWeb(alias),\n controllerKeyId,\n keys,\n services: opts.services ?? [],\n }\n debug('Created', identifier)\n return identifier\n }\n\n async updateIdentifier(\n args: {\n did: string\n kms?: string | undefined\n alias?: string | undefined\n options?: any\n },\n context: IAgentContext<IKeyManager>\n ): Promise<IIdentifier> {\n throw new Error('WebDIDProvider 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(\n {\n identifier,\n key,\n options,\n }: {\n identifier: IIdentifier\n key: IKey\n options?: any\n },\n context: IContext\n ): Promise<any> {\n return { success: true }\n }\n\n async addService(\n {\n identifier,\n service,\n options,\n }: {\n identifier: IIdentifier\n service: IService\n options?: any\n },\n context: IContext\n ): 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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;ACAA,yBAAyB;AACzB,IAAAA,sBAA6C;AAE7C,yBAA2C;AAE3C,mBAAkB;AAGlB,IAAMC,YAAQC,aAAAA,SAAM,sCAAA;AAQb,IAAMC,iBAAN,cAA6BC,8CAAAA;EAhBpC,OAgBoCA;;;EACjBC;EAEjB,YAAYC,SAAiC;AAC3C,UAAK;AACL,SAAKD,aAAaC,QAAQD;EAC5B;EAEA,MAAME,iBAAiBC,MAA6BC,SAA2D;AAC7G,UAAM,EAAEC,KAAKC,MAAK,IAAKH;AACvB,UAAMI,OAAOJ,KAAKF,WAAW,CAAC;AAC9B,QAAI,CAACM,KAAKC,QAASC,MAAMC,QAAQH,KAAKC,IAAI,KAAKD,KAAKC,KAAKG,WAAW,GAAI;AAEtEJ,WAAKC,OAAO;QAAC;UAAEI,MAAM;UAAaC,cAAc;QAAK;;IACvD;AACA,UAAMC,UAAUL,MAAMC,QAAQH,KAAKC,IAAI,IAAID,KAAKC,OAAO;MAACD,KAAKC;;AAC7D,UAAMA,OAAO,MAAMO,QAAQC,IACzBF,QAAQG,IAAI,CAACC,eAAqBC,kDAA6B;MAAEd,KAAKA,OAAO,KAAKL;MAAYC,SAASiB;IAAO,GAAGd,OAAAA,CAAAA,CAAAA;AAGnH,UAAMgB,gBAAgBN,QAAQO,UAAU,CAACC,QAAQA,IAAIT,YAAY;AACjE,UAAMU,kBAAkBH,gBAAgB,IAAIZ,KAAK,CAAA,EAAGgB,MAAMhB,KAAKY,aAAAA,EAAeI;AAC9E,UAAMC,aAA4C;MAChDC,KAAK,UAAMC,6BAASrB,KAAAA;MACpBiB;MACAf;MACAoB,UAAUrB,KAAKqB,YAAY,CAAA;IAC7B;AACAhC,UAAM,WAAW6B,UAAAA;AACjB,WAAOA;EACT;EAEA,MAAMI,iBACJ1B,MAMAC,SACsB;AACtB,UAAM,IAAI0B,MAAM,oDAAA;EAClB;EAEA,MAAMC,iBAAiBN,YAAyBrB,SAAqC;AACnF,eAAW,EAAEoB,IAAG,KAAMC,WAAWjB,MAAM;AACrC,YAAMJ,QAAQ4B,MAAMC,iBAAiB;QAAET;MAAI,CAAA;IAC7C;AACA,WAAO;EACT;EAEA,MAAMU,OACJ,EACET,YACAU,KACAlC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMC,WACJ,EACEZ,YACAa,SACArC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMG,UAAUpC,MAA+DC,SAAiC;AAC9G,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMI,cAAcrC,MAA8DC,SAAiC;AACjH,WAAO;MAAEgC,SAAS;IAAK;EACzB;AACF;","names":["import_ssi_sdk_ext","debug","Debug","WebDIDProvider","AbstractIdentifierProvider","defaultKms","options","createIdentifier","args","context","kms","alias","opts","keys","Array","isArray","length","type","isController","keyOpts","Promise","all","map","keyOpt","importProvidedOrGeneratedKey","controllerIdx","findIndex","opt","controllerKeyId","kid","identifier","did","asDidWeb","services","updateIdentifier","Error","deleteIdentifier","agent","keyManagerDelete","addKey","key","success","addService","service","removeKey","removeService"]}
package/dist/index.js CHANGED
@@ -6,7 +6,6 @@ import { asDidWeb } from "@sphereon/ssi-sdk-ext.did-utils";
6
6
  import { importProvidedOrGeneratedKey } from "@sphereon/ssi-sdk-ext.key-utils";
7
7
  import { AbstractIdentifierProvider } from "@veramo/did-manager";
8
8
  import Debug from "debug";
9
- var PROVIDER_NAME = "Web DID Provider";
10
9
  var debug = Debug("sphereon:web-did:identifier-provider");
11
10
  var WebDIDProvider = class extends AbstractIdentifierProvider {
12
11
  static {
@@ -32,7 +31,6 @@ var WebDIDProvider = class extends AbstractIdentifierProvider {
32
31
  opts.keys
33
32
  ];
34
33
  const keys = await Promise.all(keyOpts.map((keyOpt) => importProvidedOrGeneratedKey({
35
- providerName: PROVIDER_NAME,
36
34
  kms: kms ?? this.defaultKms,
37
35
  options: keyOpt
38
36
  }, context)));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/web-did-provider.ts"],"sourcesContent":["import { asDidWeb } from '@sphereon/ssi-sdk-ext.did-utils'\nimport { importProvidedOrGeneratedKey } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { IAgentContext, IIdentifier, IKey, IKeyManager, IService } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\n\nimport Debug from 'debug'\nimport { ICreateIdentifierArgs, IKeyOpts } from './types'\n\nconst PROVIDER_NAME = 'Web DID Provider'\n\nconst debug = Debug('sphereon:web-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:web` identifiers\n * @public\n */\nexport class WebDIDProvider extends AbstractIdentifierProvider {\n private readonly defaultKms: string\n\n constructor(options: { defaultKms: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(args: ICreateIdentifierArgs, context: IContext): Promise<Omit<IIdentifier, 'provider'>> {\n const { kms, alias } = args\n const opts = args.options ?? {}\n if (!opts.keys || (Array.isArray(opts.keys) && opts.keys.length === 0)) {\n // Let's generate a key as no import keys or types are provided\n opts.keys = [{ type: 'Secp256r1', isController: true }]\n }\n const keyOpts = Array.isArray(opts.keys) ? opts.keys : [opts.keys as IKeyOpts]\n const keys = await Promise.all(\n keyOpts.map((keyOpt: IKeyOpts) =>\n importProvidedOrGeneratedKey(\n {\n providerName: PROVIDER_NAME,\n kms: kms ?? this.defaultKms,\n options: keyOpt,\n },\n context,\n ),\n ),\n )\n\n const controllerIdx = keyOpts.findIndex((opt) => opt.isController)\n const controllerKeyId = controllerIdx < 0 ? keys[0].kid : keys[controllerIdx].kid\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: await asDidWeb(alias),\n controllerKeyId,\n keys,\n services: opts.services ?? [],\n }\n debug('Created', identifier)\n return identifier\n }\n\n async updateIdentifier(\n args: {\n did: string\n kms?: string | undefined\n alias?: string | undefined\n options?: any\n },\n context: IAgentContext<IKeyManager>,\n ): Promise<IIdentifier> {\n throw new Error('WebDIDProvider 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(\n {\n identifier,\n key,\n options,\n }: {\n identifier: IIdentifier\n key: IKey\n options?: any\n },\n context: IContext,\n ): Promise<any> {\n return { success: true }\n }\n\n async addService(\n {\n identifier,\n service,\n options,\n }: {\n identifier: IIdentifier\n service: IService\n options?: any\n },\n context: IContext,\n ): 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"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,oCAAoC;AAE7C,SAASC,kCAAkC;AAE3C,OAAOC,WAAW;AAGlB,IAAMC,gBAAgB;AAEtB,IAAMC,QAAQC,MAAM,sCAAA;AAQb,IAAMC,iBAAN,cAA6BC,2BAAAA;EAlBpC,OAkBoCA;;;EACjBC;EAEjB,YAAYC,SAAiC;AAC3C,UAAK;AACL,SAAKD,aAAaC,QAAQD;EAC5B;EAEA,MAAME,iBAAiBC,MAA6BC,SAA2D;AAC7G,UAAM,EAAEC,KAAKC,MAAK,IAAKH;AACvB,UAAMI,OAAOJ,KAAKF,WAAW,CAAC;AAC9B,QAAI,CAACM,KAAKC,QAASC,MAAMC,QAAQH,KAAKC,IAAI,KAAKD,KAAKC,KAAKG,WAAW,GAAI;AAEtEJ,WAAKC,OAAO;QAAC;UAAEI,MAAM;UAAaC,cAAc;QAAK;;IACvD;AACA,UAAMC,UAAUL,MAAMC,QAAQH,KAAKC,IAAI,IAAID,KAAKC,OAAO;MAACD,KAAKC;;AAC7D,UAAMA,OAAO,MAAMO,QAAQC,IACzBF,QAAQG,IAAI,CAACC,WACXC,6BACE;MACEC,cAAczB;MACdU,KAAKA,OAAO,KAAKL;MACjBC,SAASiB;IACX,GACAd,OAAAA,CAAAA,CAAAA;AAKN,UAAMiB,gBAAgBP,QAAQQ,UAAU,CAACC,QAAQA,IAAIV,YAAY;AACjE,UAAMW,kBAAkBH,gBAAgB,IAAIb,KAAK,CAAA,EAAGiB,MAAMjB,KAAKa,aAAAA,EAAeI;AAC9E,UAAMC,aAA4C;MAChDC,KAAK,MAAMC,SAAStB,KAAAA;MACpBkB;MACAhB;MACAqB,UAAUtB,KAAKsB,YAAY,CAAA;IAC7B;AACAjC,UAAM,WAAW8B,UAAAA;AACjB,WAAOA;EACT;EAEA,MAAMI,iBACJ3B,MAMAC,SACsB;AACtB,UAAM,IAAI2B,MAAM,oDAAA;EAClB;EAEA,MAAMC,iBAAiBN,YAAyBtB,SAAqC;AACnF,eAAW,EAAEqB,IAAG,KAAMC,WAAWlB,MAAM;AACrC,YAAMJ,QAAQ6B,MAAMC,iBAAiB;QAAET;MAAI,CAAA;IAC7C;AACA,WAAO;EACT;EAEA,MAAMU,OACJ,EACET,YACAU,KACAnC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMC,WACJ,EACEZ,YACAa,SACAtC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMG,UAAUrC,MAA+DC,SAAiC;AAC9G,WAAO;MAAEiC,SAAS;IAAK;EACzB;EAEA,MAAMI,cAActC,MAA8DC,SAAiC;AACjH,WAAO;MAAEiC,SAAS;IAAK;EACzB;AACF;","names":["asDidWeb","importProvidedOrGeneratedKey","AbstractIdentifierProvider","Debug","PROVIDER_NAME","debug","Debug","WebDIDProvider","AbstractIdentifierProvider","defaultKms","options","createIdentifier","args","context","kms","alias","opts","keys","Array","isArray","length","type","isController","keyOpts","Promise","all","map","keyOpt","importProvidedOrGeneratedKey","providerName","controllerIdx","findIndex","opt","controllerKeyId","kid","identifier","did","asDidWeb","services","updateIdentifier","Error","deleteIdentifier","agent","keyManagerDelete","addKey","key","success","addService","service","removeKey","removeService"]}
1
+ {"version":3,"sources":["../src/web-did-provider.ts"],"sourcesContent":["import { asDidWeb } from '@sphereon/ssi-sdk-ext.did-utils'\nimport { importProvidedOrGeneratedKey } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { IAgentContext, IIdentifier, IKey, IKeyManager, IService } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\n\nimport Debug from 'debug'\nimport { ICreateIdentifierArgs, IKeyOpts } from './types'\n\nconst debug = Debug('sphereon:web-did:identifier-provider')\n\ntype IContext = IAgentContext<IKeyManager>\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:web` identifiers\n * @public\n */\nexport class WebDIDProvider extends AbstractIdentifierProvider {\n private readonly defaultKms: string\n\n constructor(options: { defaultKms: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n async createIdentifier(args: ICreateIdentifierArgs, context: IContext): Promise<Omit<IIdentifier, 'provider'>> {\n const { kms, alias } = args\n const opts = args.options ?? {}\n if (!opts.keys || (Array.isArray(opts.keys) && opts.keys.length === 0)) {\n // Let's generate a key as no import keys or types are provided\n opts.keys = [{ type: 'Secp256r1', isController: true }]\n }\n const keyOpts = Array.isArray(opts.keys) ? opts.keys : [opts.keys as IKeyOpts]\n const keys = await Promise.all(\n keyOpts.map((keyOpt: IKeyOpts) => importProvidedOrGeneratedKey({ kms: kms ?? this.defaultKms, options: keyOpt }, context))\n )\n\n const controllerIdx = keyOpts.findIndex((opt) => opt.isController)\n const controllerKeyId = controllerIdx < 0 ? keys[0].kid : keys[controllerIdx].kid\n const identifier: Omit<IIdentifier, 'provider'> = {\n did: await asDidWeb(alias),\n controllerKeyId,\n keys,\n services: opts.services ?? [],\n }\n debug('Created', identifier)\n return identifier\n }\n\n async updateIdentifier(\n args: {\n did: string\n kms?: string | undefined\n alias?: string | undefined\n options?: any\n },\n context: IAgentContext<IKeyManager>\n ): Promise<IIdentifier> {\n throw new Error('WebDIDProvider 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(\n {\n identifier,\n key,\n options,\n }: {\n identifier: IIdentifier\n key: IKey\n options?: any\n },\n context: IContext\n ): Promise<any> {\n return { success: true }\n }\n\n async addService(\n {\n identifier,\n service,\n options,\n }: {\n identifier: IIdentifier\n service: IService\n options?: any\n },\n context: IContext\n ): 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"],"mappings":";;;;AAAA,SAASA,gBAAgB;AACzB,SAASC,oCAAoC;AAE7C,SAASC,kCAAkC;AAE3C,OAAOC,WAAW;AAGlB,IAAMC,QAAQC,MAAM,sCAAA;AAQb,IAAMC,iBAAN,cAA6BC,2BAAAA;EAhBpC,OAgBoCA;;;EACjBC;EAEjB,YAAYC,SAAiC;AAC3C,UAAK;AACL,SAAKD,aAAaC,QAAQD;EAC5B;EAEA,MAAME,iBAAiBC,MAA6BC,SAA2D;AAC7G,UAAM,EAAEC,KAAKC,MAAK,IAAKH;AACvB,UAAMI,OAAOJ,KAAKF,WAAW,CAAC;AAC9B,QAAI,CAACM,KAAKC,QAASC,MAAMC,QAAQH,KAAKC,IAAI,KAAKD,KAAKC,KAAKG,WAAW,GAAI;AAEtEJ,WAAKC,OAAO;QAAC;UAAEI,MAAM;UAAaC,cAAc;QAAK;;IACvD;AACA,UAAMC,UAAUL,MAAMC,QAAQH,KAAKC,IAAI,IAAID,KAAKC,OAAO;MAACD,KAAKC;;AAC7D,UAAMA,OAAO,MAAMO,QAAQC,IACzBF,QAAQG,IAAI,CAACC,WAAqBC,6BAA6B;MAAEd,KAAKA,OAAO,KAAKL;MAAYC,SAASiB;IAAO,GAAGd,OAAAA,CAAAA,CAAAA;AAGnH,UAAMgB,gBAAgBN,QAAQO,UAAU,CAACC,QAAQA,IAAIT,YAAY;AACjE,UAAMU,kBAAkBH,gBAAgB,IAAIZ,KAAK,CAAA,EAAGgB,MAAMhB,KAAKY,aAAAA,EAAeI;AAC9E,UAAMC,aAA4C;MAChDC,KAAK,MAAMC,SAASrB,KAAAA;MACpBiB;MACAf;MACAoB,UAAUrB,KAAKqB,YAAY,CAAA;IAC7B;AACAhC,UAAM,WAAW6B,UAAAA;AACjB,WAAOA;EACT;EAEA,MAAMI,iBACJ1B,MAMAC,SACsB;AACtB,UAAM,IAAI0B,MAAM,oDAAA;EAClB;EAEA,MAAMC,iBAAiBN,YAAyBrB,SAAqC;AACnF,eAAW,EAAEoB,IAAG,KAAMC,WAAWjB,MAAM;AACrC,YAAMJ,QAAQ4B,MAAMC,iBAAiB;QAAET;MAAI,CAAA;IAC7C;AACA,WAAO;EACT;EAEA,MAAMU,OACJ,EACET,YACAU,KACAlC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMC,WACJ,EACEZ,YACAa,SACArC,QAAO,GAMTG,SACc;AACd,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMG,UAAUpC,MAA+DC,SAAiC;AAC9G,WAAO;MAAEgC,SAAS;IAAK;EACzB;EAEA,MAAMI,cAAcrC,MAA8DC,SAAiC;AACjH,WAAO;MAAEgC,SAAS;IAAK;EACzB;AACF;","names":["asDidWeb","importProvidedOrGeneratedKey","AbstractIdentifierProvider","Debug","debug","Debug","WebDIDProvider","AbstractIdentifierProvider","defaultKms","options","createIdentifier","args","context","kms","alias","opts","keys","Array","isArray","length","type","isController","keyOpts","Promise","all","map","keyOpt","importProvidedOrGeneratedKey","controllerIdx","findIndex","opt","controllerKeyId","kid","identifier","did","asDidWeb","services","updateIdentifier","Error","deleteIdentifier","agent","keyManagerDelete","addKey","key","success","addService","service","removeKey","removeService"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk-ext.did-provider-web",
3
3
  "description": "plugin that can enable creation and control of did:web identifiers.",
4
- "version": "0.34.1-feature.FIDES.1.274+3d1f4edd",
4
+ "version": "0.34.1-feature.IDK.11.48+640da718",
5
5
  "source": "./src/index.ts",
6
6
  "type": "module",
7
7
  "main": "./dist/index.cjs",
@@ -22,8 +22,8 @@
22
22
  "build": "tsup --config ../../tsup.config.ts --tsconfig ../../tsconfig.tsup.json"
23
23
  },
24
24
  "dependencies": {
25
- "@sphereon/ssi-sdk-ext.did-utils": "0.34.1-feature.FIDES.1.274+3d1f4edd",
26
- "@sphereon/ssi-sdk-ext.key-utils": "0.34.1-feature.FIDES.1.274+3d1f4edd",
25
+ "@sphereon/ssi-sdk-ext.did-utils": "0.34.1-feature.IDK.11.48+640da718",
26
+ "@sphereon/ssi-sdk-ext.key-utils": "0.34.1-feature.IDK.11.48+640da718",
27
27
  "@veramo/core": "4.2.0",
28
28
  "@veramo/did-manager": "4.2.0",
29
29
  "debug": "^4.3.4"
@@ -57,5 +57,5 @@
57
57
  "secp256r1",
58
58
  "RSA"
59
59
  ],
60
- "gitHead": "3d1f4edd13301b5e8ae524e80249b5e25f99eeac"
60
+ "gitHead": "640da718d6ce394653ae6ef0276b584b2b7456df"
61
61
  }
@@ -6,8 +6,6 @@ import { AbstractIdentifierProvider } from '@veramo/did-manager'
6
6
  import Debug from 'debug'
7
7
  import { ICreateIdentifierArgs, IKeyOpts } from './types'
8
8
 
9
- const PROVIDER_NAME = 'Web DID Provider'
10
-
11
9
  const debug = Debug('sphereon:web-did:identifier-provider')
12
10
 
13
11
  type IContext = IAgentContext<IKeyManager>
@@ -33,16 +31,7 @@ export class WebDIDProvider extends AbstractIdentifierProvider {
33
31
  }
34
32
  const keyOpts = Array.isArray(opts.keys) ? opts.keys : [opts.keys as IKeyOpts]
35
33
  const keys = await Promise.all(
36
- keyOpts.map((keyOpt: IKeyOpts) =>
37
- importProvidedOrGeneratedKey(
38
- {
39
- providerName: PROVIDER_NAME,
40
- kms: kms ?? this.defaultKms,
41
- options: keyOpt,
42
- },
43
- context,
44
- ),
45
- ),
34
+ keyOpts.map((keyOpt: IKeyOpts) => importProvidedOrGeneratedKey({ kms: kms ?? this.defaultKms, options: keyOpt }, context))
46
35
  )
47
36
 
48
37
  const controllerIdx = keyOpts.findIndex((opt) => opt.isController)
@@ -64,7 +53,7 @@ export class WebDIDProvider extends AbstractIdentifierProvider {
64
53
  alias?: string | undefined
65
54
  options?: any
66
55
  },
67
- context: IAgentContext<IKeyManager>,
56
+ context: IAgentContext<IKeyManager>
68
57
  ): Promise<IIdentifier> {
69
58
  throw new Error('WebDIDProvider updateIdentifier not supported yet.')
70
59
  }
@@ -86,7 +75,7 @@ export class WebDIDProvider extends AbstractIdentifierProvider {
86
75
  key: IKey
87
76
  options?: any
88
77
  },
89
- context: IContext,
78
+ context: IContext
90
79
  ): Promise<any> {
91
80
  return { success: true }
92
81
  }
@@ -101,7 +90,7 @@ export class WebDIDProvider extends AbstractIdentifierProvider {
101
90
  service: IService
102
91
  options?: any
103
92
  },
104
- context: IContext,
93
+ context: IContext
105
94
  ): Promise<any> {
106
95
  return { success: true }
107
96
  }