@twin.org/identity-connector-universal 0.0.3-next.21 → 0.0.3-next.23

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.
@@ -50,7 +50,8 @@ export class UniversalResolverConnector {
50
50
  source: UniversalResolverConnector.CLASS_NAME,
51
51
  status: HealthStatus.Error,
52
52
  description: "healthDescription",
53
- message: "resolverHealthCheckFailed"
53
+ message: "resolverHealthCheckFailed",
54
+ data: { endpoint: this._resolverEndpoint }
54
55
  }
55
56
  ];
56
57
  }
@@ -58,7 +59,8 @@ export class UniversalResolverConnector {
58
59
  {
59
60
  source: UniversalResolverConnector.CLASS_NAME,
60
61
  status: HealthStatus.Ok,
61
- description: "healthDescription"
62
+ description: "healthDescription",
63
+ data: { endpoint: this._resolverEndpoint }
62
64
  }
63
65
  ];
64
66
  }
@@ -68,7 +70,8 @@ export class UniversalResolverConnector {
68
70
  source: UniversalResolverConnector.CLASS_NAME,
69
71
  status: HealthStatus.Error,
70
72
  description: "healthDescription",
71
- message: "resolverHealthCheckFailed"
73
+ message: "resolverHealthCheckFailed",
74
+ data: { endpoint: this._resolverEndpoint }
72
75
  }
73
76
  ];
74
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"universalResolverConnector.js","sourceRoot":"","sources":["../../src/universalResolverConnector.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAgB,MAAM,gBAAgB,CAAC;AAIhG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKxD;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACtC;;OAEG;IACI,MAAM,CAAU,SAAS,GAAW,WAAW,CAAC;IAEvD;;OAEG;IACI,MAAM,CAAU,UAAU,gCAAgD;IAEjF;;;OAGG;IACc,iBAAiB,CAAS;IAE3C;;;OAGG;IACH,YAAY,OAAsD;QACjE,MAAM,CAAC,MAAM,CAAC,0BAA0B,CAAC,UAAU,aAAmB,OAAO,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,CACZ,0BAA0B,CAAC,UAAU,oBAErC,OAAO,CAAC,MAAM,CACd,CAAC;QACF,MAAM,CAAC,WAAW,CACjB,0BAA0B,CAAC,UAAU,6BAErC,OAAO,CAAC,MAAM,CAAC,QAAQ,CACvB,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;IAClD,CAAC;IAED;;;OAGG;IACI,SAAS;QACf,OAAO,0BAA0B,CAAC,UAAU,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CACvC,0BAA0B,CAAC,UAAU,EACrC,GAAG,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,6BAA6B,EACxF,UAAU,CAAC,GAAG,CACd,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEnC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBACzC,OAAO;oBACN;wBACC,MAAM,EAAE,0BAA0B,CAAC,UAAU;wBAC7C,MAAM,EAAE,YAAY,CAAC,KAAK;wBAC1B,WAAW,EAAE,mBAAmB;wBAChC,OAAO,EAAE,2BAA2B;qBACpC;iBACD,CAAC;YACH,CAAC;YAED,OAAO;gBACN;oBACC,MAAM,EAAE,0BAA0B,CAAC,UAAU;oBAC7C,MAAM,EAAE,YAAY,CAAC,EAAE;oBACvB,WAAW,EAAE,mBAAmB;iBAChC;aACD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACR,OAAO;gBACN;oBACC,MAAM,EAAE,0BAA0B,CAAC,UAAU;oBAC7C,MAAM,EAAE,YAAY,CAAC,KAAK;oBAC1B,WAAW,EAAE,mBAAmB;oBAChC,OAAO,EAAE,2BAA2B;iBACpC;aACD,CAAC;QACH,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,eAAe,CAAC,UAAkB;QAC9C,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CACzC,0BAA0B,CAAC,UAAU,EACrC,GAAG,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAC/G,UAAU,CAAC,GAAG,CACd,CAAC;YAEF,OAAO,MAAM,CAAC,WAAW,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,YAAY,CACrB,0BAA0B,CAAC,UAAU,EACrC,uBAAuB,EACvB,EAAE,UAAU,EAAE,EACd,KAAK,CACL,CAAC;QACH,CAAC;IACF,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { GeneralError, Guards, HealthStatus, StringHelper, type IHealth } from \"@twin.org/core\";\nimport type { IIdentityResolverConnector } from \"@twin.org/identity-models\";\nimport { nameof } from \"@twin.org/nameof\";\nimport type { IDidDocument } from \"@twin.org/standards-w3c-did\";\nimport { FetchHelper, HttpMethod } from \"@twin.org/web\";\nimport type { IUniversalResolverResult } from \"./models/api/IUniversalResolverResult.js\";\nimport type { IUniversalResolverConnectorConfig } from \"./models/IUniversalResolverConnectorConfig.js\";\nimport type { IUniversalResolverConnectorConstructorOptions } from \"./models/IUniversalResolverConnectorConstructorOptions.js\";\n\n/**\n * Class for performing identity operations on a universal resolver.\n */\nexport class UniversalResolverConnector implements IIdentityResolverConnector {\n\t/**\n\t * The namespace supported by the identity connector.\n\t */\n\tpublic static readonly NAMESPACE: string = \"universal\";\n\n\t/**\n\t * Runtime name for the class.\n\t */\n\tpublic static readonly CLASS_NAME: string = nameof<UniversalResolverConnector>();\n\n\t/**\n\t * The url for the resolver.\n\t * @internal\n\t */\n\tprivate readonly _resolverEndpoint: string;\n\n\t/**\n\t * Create a new instance of UniversalResolverConnector.\n\t * @param options The options for the identity connector.\n\t */\n\tconstructor(options: IUniversalResolverConnectorConstructorOptions) {\n\t\tGuards.object(UniversalResolverConnector.CLASS_NAME, nameof(options), options);\n\t\tGuards.object<IUniversalResolverConnectorConfig>(\n\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\tnameof(options.config),\n\t\t\toptions.config\n\t\t);\n\t\tGuards.stringValue(\n\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\tnameof(options.config.endpoint),\n\t\t\toptions.config.endpoint\n\t\t);\n\n\t\tthis._resolverEndpoint = options.config.endpoint;\n\t}\n\n\t/**\n\t * Returns the class name of the component.\n\t * @returns The class name of the component.\n\t */\n\tpublic className(): string {\n\t\treturn UniversalResolverConnector.CLASS_NAME;\n\t}\n\n\t/**\n\t * Returns the health status of the component.\n\t * @returns The health status of the component.\n\t */\n\tpublic async health(): Promise<IHealth[]> {\n\t\ttry {\n\t\t\tconst response = await FetchHelper.fetch(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t`${StringHelper.trimTrailingSlashes(this._resolverEndpoint)}/1.0/identifiers/did:iota:0`,\n\t\t\t\tHttpMethod.GET\n\t\t\t);\n\n\t\t\tconst body = await response.text();\n\n\t\t\tif (!body.includes(\"invalid method id\")) {\n\t\t\t\treturn [\n\t\t\t\t\t{\n\t\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\t\tstatus: HealthStatus.Error,\n\t\t\t\t\t\tdescription: \"healthDescription\",\n\t\t\t\t\t\tmessage: \"resolverHealthCheckFailed\"\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\tstatus: HealthStatus.Ok,\n\t\t\t\t\tdescription: \"healthDescription\"\n\t\t\t\t}\n\t\t\t];\n\t\t} catch {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\tstatus: HealthStatus.Error,\n\t\t\t\t\tdescription: \"healthDescription\",\n\t\t\t\t\tmessage: \"resolverHealthCheckFailed\"\n\t\t\t\t}\n\t\t\t];\n\t\t}\n\t}\n\n\t/**\n\t * Resolve a document from its id.\n\t * @param documentId The id of the document to resolve.\n\t * @returns The resolved document.\n\t * @throws NotFoundError if the id can not be resolved.\n\t */\n\tpublic async resolveDocument(documentId: string): Promise<IDidDocument> {\n\t\ttry {\n\t\t\tconst result = await FetchHelper.fetchJson<never, IUniversalResolverResult>(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t`${StringHelper.trimTrailingSlashes(this._resolverEndpoint)}/1.0/identifiers/${encodeURIComponent(documentId)}`,\n\t\t\t\tHttpMethod.GET\n\t\t\t);\n\n\t\t\treturn result.didDocument;\n\t\t} catch (error) {\n\t\t\tthrow new GeneralError(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\"resolveDocumentFailed\",\n\t\t\t\t{ documentId },\n\t\t\t\terror\n\t\t\t);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"universalResolverConnector.js","sourceRoot":"","sources":["../../src/universalResolverConnector.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { GeneralError, Guards, HealthStatus, StringHelper, type IHealth } from \"@twin.org/core\";\nimport type { IIdentityResolverConnector } from \"@twin.org/identity-models\";\nimport { nameof } from \"@twin.org/nameof\";\nimport type { IDidDocument } from \"@twin.org/standards-w3c-did\";\nimport { FetchHelper, HttpMethod } from \"@twin.org/web\";\nimport type { IUniversalResolverResult } from \"./models/api/IUniversalResolverResult.js\";\nimport type { IUniversalResolverConnectorConfig } from \"./models/IUniversalResolverConnectorConfig.js\";\nimport type { IUniversalResolverConnectorConstructorOptions } from \"./models/IUniversalResolverConnectorConstructorOptions.js\";\n\n/**\n * Class for performing identity operations on a universal resolver.\n */\nexport class UniversalResolverConnector implements IIdentityResolverConnector {\n\t/**\n\t * The namespace supported by the identity connector.\n\t */\n\tpublic static readonly NAMESPACE: string = \"universal\";\n\n\t/**\n\t * Runtime name for the class.\n\t */\n\tpublic static readonly CLASS_NAME: string = nameof<UniversalResolverConnector>();\n\n\t/**\n\t * The url for the resolver.\n\t * @internal\n\t */\n\tprivate readonly _resolverEndpoint: string;\n\n\t/**\n\t * Create a new instance of UniversalResolverConnector.\n\t * @param options The options for the identity connector.\n\t */\n\tconstructor(options: IUniversalResolverConnectorConstructorOptions) {\n\t\tGuards.object(UniversalResolverConnector.CLASS_NAME, nameof(options), options);\n\t\tGuards.object<IUniversalResolverConnectorConfig>(\n\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\tnameof(options.config),\n\t\t\toptions.config\n\t\t);\n\t\tGuards.stringValue(\n\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\tnameof(options.config.endpoint),\n\t\t\toptions.config.endpoint\n\t\t);\n\n\t\tthis._resolverEndpoint = options.config.endpoint;\n\t}\n\n\t/**\n\t * Returns the class name of the component.\n\t * @returns The class name of the component.\n\t */\n\tpublic className(): string {\n\t\treturn UniversalResolverConnector.CLASS_NAME;\n\t}\n\n\t/**\n\t * Returns the health status of the component.\n\t * @returns The health status of the component.\n\t */\n\tpublic async health(): Promise<IHealth[]> {\n\t\ttry {\n\t\t\tconst response = await FetchHelper.fetch(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t`${StringHelper.trimTrailingSlashes(this._resolverEndpoint)}/1.0/identifiers/did:iota:0`,\n\t\t\t\tHttpMethod.GET\n\t\t\t);\n\n\t\t\tconst body = await response.text();\n\n\t\t\tif (!body.includes(\"invalid method id\")) {\n\t\t\t\treturn [\n\t\t\t\t\t{\n\t\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\t\tstatus: HealthStatus.Error,\n\t\t\t\t\t\tdescription: \"healthDescription\",\n\t\t\t\t\t\tmessage: \"resolverHealthCheckFailed\",\n\t\t\t\t\t\tdata: { endpoint: this._resolverEndpoint }\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t}\n\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\tstatus: HealthStatus.Ok,\n\t\t\t\t\tdescription: \"healthDescription\",\n\t\t\t\t\tdata: { endpoint: this._resolverEndpoint }\n\t\t\t\t}\n\t\t\t];\n\t\t} catch {\n\t\t\treturn [\n\t\t\t\t{\n\t\t\t\t\tsource: UniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\tstatus: HealthStatus.Error,\n\t\t\t\t\tdescription: \"healthDescription\",\n\t\t\t\t\tmessage: \"resolverHealthCheckFailed\",\n\t\t\t\t\tdata: { endpoint: this._resolverEndpoint }\n\t\t\t\t}\n\t\t\t];\n\t\t}\n\t}\n\n\t/**\n\t * Resolve a document from its id.\n\t * @param documentId The id of the document to resolve.\n\t * @returns The resolved document.\n\t * @throws NotFoundError if the id can not be resolved.\n\t */\n\tpublic async resolveDocument(documentId: string): Promise<IDidDocument> {\n\t\ttry {\n\t\t\tconst result = await FetchHelper.fetchJson<never, IUniversalResolverResult>(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t`${StringHelper.trimTrailingSlashes(this._resolverEndpoint)}/1.0/identifiers/${encodeURIComponent(documentId)}`,\n\t\t\t\tHttpMethod.GET\n\t\t\t);\n\n\t\t\treturn result.didDocument;\n\t\t} catch (error) {\n\t\t\tthrow new GeneralError(\n\t\t\t\tUniversalResolverConnector.CLASS_NAME,\n\t\t\t\t\"resolveDocumentFailed\",\n\t\t\t\t{ documentId },\n\t\t\t\terror\n\t\t\t);\n\t\t}\n\t}\n}\n"]}
package/docs/changelog.md CHANGED
@@ -1,5 +1,33 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.3-next.23](https://github.com/iotaledger/twin-identity/compare/identity-connector-universal-v0.0.3-next.22...identity-connector-universal-v0.0.3-next.23) (2026-05-12)
4
+
5
+
6
+ ### Features
7
+
8
+ * typescript 6 update ([e8806ad](https://github.com/iotaledger/twin-identity/commit/e8806ad6858c37be3c0f54c41cf654023773bef3))
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * The following workspace dependencies were updated
14
+ * dependencies
15
+ * @twin.org/identity-models bumped from 0.0.3-next.22 to 0.0.3-next.23
16
+
17
+ ## [0.0.3-next.22](https://github.com/iotaledger/twin-identity/compare/identity-connector-universal-v0.0.3-next.21...identity-connector-universal-v0.0.3-next.22) (2026-05-07)
18
+
19
+
20
+ ### Features
21
+
22
+ * additional information in health ([03d6190](https://github.com/iotaledger/twin-identity/commit/03d61900358513a5881b2363b0582e1e4ca06e6e))
23
+
24
+
25
+ ### Dependencies
26
+
27
+ * The following workspace dependencies were updated
28
+ * dependencies
29
+ * @twin.org/identity-models bumped from 0.0.3-next.21 to 0.0.3-next.22
30
+
3
31
  ## [0.0.3-next.21](https://github.com/iotaledger/twin-identity/compare/identity-connector-universal-v0.0.3-next.20...identity-connector-universal-v0.0.3-next.21) (2026-05-07)
4
32
 
5
33
 
package/locales/en.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "health": {
3
3
  "universalResolverConnector": {
4
- "healthDescription": "Connectivity and availability of the universal resolver",
5
- "resolverHealthCheckFailed": "Failed to check universal resolver health status"
4
+ "healthDescription": "Connectivity and availability of the universal resolver \"{endpoint}\"",
5
+ "resolverHealthCheckFailed": "Failed to check universal resolver health status \"{endpoint}\""
6
6
  }
7
7
  },
8
8
  "error": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/identity-connector-universal",
3
- "version": "0.0.3-next.21",
3
+ "version": "0.0.3-next.23",
4
4
  "description": "Connector for resolving decentralised identifiers through the Universal Resolver ecosystem.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -15,7 +15,7 @@
15
15
  },
16
16
  "dependencies": {
17
17
  "@twin.org/core": "next",
18
- "@twin.org/identity-models": "0.0.3-next.21",
18
+ "@twin.org/identity-models": "0.0.3-next.23",
19
19
  "@twin.org/nameof": "next",
20
20
  "@twin.org/standards-w3c-did": "next",
21
21
  "@twin.org/web": "next"