@truvity/sdk 0.28.3 → 0.28.4
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/api/resources/apiKeys/client/Client.d.ts +1 -0
- package/api/resources/apiKeys/client/Client.d.ts.map +1 -1
- package/api/resources/apiKeys/client/Client.js +16 -8
- package/api/resources/apiKeys/client/Client.js.map +1 -1
- package/api/resources/apiKeys/client/requests/ApiKeyCreateRequest.d.ts +8 -8
- package/api/resources/apiKeys/client/requests/ApiKeyCreateRequest.js.map +1 -1
- package/api/resources/apiKeys/client/requests/ApiKeyDeleteRequest.d.ts +8 -8
- package/api/resources/apiKeys/client/requests/ApiKeyDeleteRequest.js.map +1 -1
- package/api/resources/apiKeys/client/requests/ApiKeyRestoreRequest.d.ts +8 -8
- package/api/resources/apiKeys/client/requests/ApiKeyRestoreRequest.js.map +1 -1
- package/api/resources/apiKeys/client/requests/ApiKeyUpdateRequest.d.ts +8 -8
- package/api/resources/apiKeys/client/requests/ApiKeyUpdateRequest.js.map +1 -1
- package/api/resources/credentials/client/Client.d.ts +2 -0
- package/api/resources/credentials/client/Client.d.ts.map +1 -1
- package/api/resources/credentials/client/Client.js +26 -10
- package/api/resources/credentials/client/Client.js.map +1 -1
- package/api/resources/credentials/client/requests/CredentialDeleteRequest.d.ts +8 -8
- package/api/resources/credentials/client/requests/CredentialDeleteRequest.js.map +1 -1
- package/api/resources/credentials/client/requests/CredentialInput.d.ts +8 -8
- package/api/resources/credentials/client/requests/CredentialInput.js.map +1 -1
- package/api/resources/credentials/client/requests/CredentialRestoreRequest.d.ts +8 -8
- package/api/resources/credentials/client/requests/CredentialRestoreRequest.js.map +1 -1
- package/api/resources/credentials/client/requests/CredentialUploadRequest.d.ts +8 -8
- package/api/resources/credentials/client/requests/CredentialUploadRequest.js.map +1 -1
- package/api/resources/desk/client/Client.js +2 -2
- package/api/resources/desk/client/Client.js.map +1 -1
- package/api/resources/didcommMessages/client/Client.d.ts +3 -0
- package/api/resources/didcommMessages/client/Client.d.ts.map +1 -1
- package/api/resources/didcommMessages/client/Client.js +31 -7
- package/api/resources/didcommMessages/client/Client.js.map +1 -1
- package/api/resources/didcommMessages/client/requests/DidCommMessageSendInput.d.ts +8 -8
- package/api/resources/didcommMessages/client/requests/DidCommMessageSendInput.js.map +1 -1
- package/api/resources/didcommMessages/client/requests/DidcommMessageDeleteRequest.d.ts +8 -8
- package/api/resources/didcommMessages/client/requests/DidcommMessageDeleteRequest.js.map +1 -1
- package/api/resources/didcommMessages/client/requests/DidcommMessageRestoreRequest.d.ts +8 -8
- package/api/resources/didcommMessages/client/requests/DidcommMessageRestoreRequest.js.map +1 -1
- package/api/resources/dids/client/Client.js +1 -1
- package/api/resources/dids/client/Client.js.map +1 -1
- package/api/resources/drafts/client/Client.d.ts +2 -0
- package/api/resources/drafts/client/Client.d.ts.map +1 -1
- package/api/resources/drafts/client/Client.js +26 -10
- package/api/resources/drafts/client/Client.js.map +1 -1
- package/api/resources/drafts/client/requests/DraftCreateRequest.d.ts +8 -8
- package/api/resources/drafts/client/requests/DraftCreateRequest.js.map +1 -1
- package/api/resources/drafts/client/requests/DraftDeleteRequest.d.ts +8 -8
- package/api/resources/drafts/client/requests/DraftDeleteRequest.js.map +1 -1
- package/api/resources/drafts/client/requests/DraftRestoreRequest.d.ts +8 -8
- package/api/resources/drafts/client/requests/DraftRestoreRequest.js.map +1 -1
- package/api/resources/drafts/client/requests/DraftUpdateRequest.d.ts +8 -8
- package/api/resources/drafts/client/requests/DraftUpdateRequest.js.map +1 -1
- package/api/resources/files/client/Client.d.ts +2 -0
- package/api/resources/files/client/Client.d.ts.map +1 -1
- package/api/resources/files/client/Client.js +26 -10
- package/api/resources/files/client/Client.js.map +1 -1
- package/api/resources/files/client/requests/FileCreateRequest.d.ts +8 -8
- package/api/resources/files/client/requests/FileCreateRequest.js.map +1 -1
- package/api/resources/files/client/requests/FileDeleteRequest.d.ts +8 -8
- package/api/resources/files/client/requests/FileDeleteRequest.js.map +1 -1
- package/api/resources/files/client/requests/FileRestoreRequest.d.ts +8 -8
- package/api/resources/files/client/requests/FileRestoreRequest.js.map +1 -1
- package/api/resources/files/client/requests/FileUpdateRequest.d.ts +8 -8
- package/api/resources/files/client/requests/FileUpdateRequest.js.map +1 -1
- package/api/resources/files/client/requests/FileUploadRequest.d.ts +8 -8
- package/api/resources/files/client/requests/FileUploadRequest.js.map +1 -1
- package/api/resources/gdpr/client/Client.js +1 -1
- package/api/resources/gdpr/client/Client.js.map +1 -1
- package/api/resources/keys/client/Client.d.ts +4 -4
- package/api/resources/keys/client/Client.d.ts.map +1 -1
- package/api/resources/keys/client/Client.js +44 -16
- package/api/resources/keys/client/Client.js.map +1 -1
- package/api/resources/keys/client/requests/KeyDeleteRequest.d.ts +8 -8
- package/api/resources/keys/client/requests/KeyDeleteRequest.js.map +1 -1
- package/api/resources/keys/client/requests/KeyGenerateInput.d.ts +8 -8
- package/api/resources/keys/client/requests/KeyGenerateInput.js.map +1 -1
- package/api/resources/keys/client/requests/KeyImportSecretInput.d.ts +8 -8
- package/api/resources/keys/client/requests/KeyImportSecretInput.js.map +1 -1
- package/api/resources/keys/client/requests/KeyInput.d.ts +8 -8
- package/api/resources/keys/client/requests/KeyInput.js.map +1 -1
- package/api/resources/keys/client/requests/KeyRestoreRequest.d.ts +8 -8
- package/api/resources/keys/client/requests/KeyRestoreRequest.js.map +1 -1
- package/api/resources/presentations/client/Client.d.ts +3 -0
- package/api/resources/presentations/client/Client.d.ts.map +1 -1
- package/api/resources/presentations/client/Client.js +36 -12
- package/api/resources/presentations/client/Client.js.map +1 -1
- package/api/resources/presentations/client/requests/PresentationDeleteRequest.d.ts +8 -8
- package/api/resources/presentations/client/requests/PresentationDeleteRequest.js.map +1 -1
- package/api/resources/presentations/client/requests/PresentationInput.d.ts +8 -8
- package/api/resources/presentations/client/requests/PresentationInput.js.map +1 -1
- package/api/resources/presentations/client/requests/PresentationRestoreRequest.d.ts +8 -8
- package/api/resources/presentations/client/requests/PresentationRestoreRequest.js.map +1 -1
- package/api/resources/presentations/client/requests/PresentationUploadRequest.d.ts +8 -8
- package/api/resources/presentations/client/requests/PresentationUploadRequest.js.map +1 -1
- package/api/types/DraftSchema.d.ts +17 -16
- package/api/types/DraftSchema.d.ts.map +1 -1
- package/api/types/DraftSchema.js.map +1 -1
- package/api/types/EqualKeyTypeValue.d.ts +1 -2
- package/api/types/EqualKeyTypeValue.d.ts.map +1 -1
- package/api/types/EqualKeyTypeValue.js +0 -1
- package/api/types/EqualKeyTypeValue.js.map +1 -1
- package/api/types/InKeyTypeValuesItem.d.ts +6 -8
- package/api/types/InKeyTypeValuesItem.d.ts.map +1 -1
- package/api/types/InKeyTypeValuesItem.js +0 -1
- package/api/types/InKeyTypeValuesItem.js.map +1 -1
- package/api/types/KeyGenerate.d.ts +5 -6
- package/api/types/KeyGenerate.d.ts.map +1 -1
- package/api/types/KeyGenerate.js.map +1 -1
- package/api/types/KeyGenerateType.d.ts +6 -8
- package/api/types/KeyGenerateType.d.ts.map +1 -1
- package/api/types/KeyGenerateType.js +0 -1
- package/api/types/KeyGenerateType.js.map +1 -1
- package/api/types/KeyPublic.d.ts +5 -6
- package/api/types/KeyPublic.d.ts.map +1 -1
- package/api/types/KeyPublic.js.map +1 -1
- package/api/types/KeyPublicType.d.ts +6 -8
- package/api/types/KeyPublicType.d.ts.map +1 -1
- package/api/types/KeyPublicType.js +0 -1
- package/api/types/KeyPublicType.js.map +1 -1
- package/api/types/NotEqualKeyTypeValue.d.ts +1 -2
- package/api/types/NotEqualKeyTypeValue.d.ts.map +1 -1
- package/api/types/NotEqualKeyTypeValue.js +0 -1
- package/api/types/NotEqualKeyTypeValue.js.map +1 -1
- package/api/types/NotInKeyTypeValuesItem.d.ts +6 -8
- package/api/types/NotInKeyTypeValuesItem.d.ts.map +1 -1
- package/api/types/NotInKeyTypeValuesItem.js +0 -1
- package/api/types/NotInKeyTypeValuesItem.js.map +1 -1
- package/api/types/ProblemMethodNotAllowedAlive.d.ts +1 -1
- package/api/types/ProblemMethodNotAllowedAlive.js.map +1 -1
- package/api/types/ProblemMethodNotAllowedDeleted.d.ts +1 -1
- package/api/types/ProblemMethodNotAllowedDeleted.js.map +1 -1
- package/api/types/ProblemPreconditionFailedBlob.d.ts +1 -1
- package/api/types/ProblemPreconditionFailedBlob.js.map +1 -1
- package/api/types/ProblemResourceNotFound.d.ts +1 -1
- package/api/types/ProblemResourceNotFound.js.map +1 -1
- package/documents/credential/flavor.d.ts.map +1 -1
- package/documents/credential/flavor.js +1 -0
- package/documents/credential/flavor.js.map +1 -1
- package/documents/credential/flavor.spec.js +2 -0
- package/documents/credential/flavor.spec.js.map +1 -1
- package/documents/credential/unknown.d.ts +4 -0
- package/documents/credential/unknown.d.ts.map +1 -1
- package/documents/credential/unknown.js +8 -0
- package/documents/credential/unknown.js.map +1 -1
- package/documents/credential.d.ts +4 -0
- package/documents/credential.d.ts.map +1 -1
- package/documents/credential.js +8 -0
- package/documents/credential.js.map +1 -1
- package/documents/presentation.d.ts +4 -0
- package/documents/presentation.d.ts.map +1 -1
- package/documents/presentation.js +8 -0
- package/documents/presentation.js.map +1 -1
- package/documents/types.d.ts +1 -0
- package/documents/types.d.ts.map +1 -1
- package/documents/types.js.map +1 -1
- package/package.json +1 -1
- package/reference.md +0 -4
- package/serialization/types/EqualKeyTypeValue.d.ts +1 -1
- package/serialization/types/EqualKeyTypeValue.d.ts.map +1 -1
- package/serialization/types/EqualKeyTypeValue.js +1 -1
- package/serialization/types/EqualKeyTypeValue.js.map +1 -1
- package/serialization/types/InKeyTypeValuesItem.d.ts +1 -1
- package/serialization/types/InKeyTypeValuesItem.d.ts.map +1 -1
- package/serialization/types/InKeyTypeValuesItem.js +1 -1
- package/serialization/types/InKeyTypeValuesItem.js.map +1 -1
- package/serialization/types/KeyGenerateType.d.ts +1 -1
- package/serialization/types/KeyGenerateType.d.ts.map +1 -1
- package/serialization/types/KeyGenerateType.js +1 -1
- package/serialization/types/KeyGenerateType.js.map +1 -1
- package/serialization/types/KeyPublicType.d.ts +1 -1
- package/serialization/types/KeyPublicType.d.ts.map +1 -1
- package/serialization/types/KeyPublicType.js +1 -1
- package/serialization/types/KeyPublicType.js.map +1 -1
- package/serialization/types/NotEqualKeyTypeValue.d.ts +1 -1
- package/serialization/types/NotEqualKeyTypeValue.d.ts.map +1 -1
- package/serialization/types/NotEqualKeyTypeValue.js +1 -1
- package/serialization/types/NotEqualKeyTypeValue.js.map +1 -1
- package/serialization/types/NotInKeyTypeValuesItem.d.ts +1 -1
- package/serialization/types/NotInKeyTypeValuesItem.d.ts.map +1 -1
- package/serialization/types/NotInKeyTypeValuesItem.js +1 -1
- package/serialization/types/NotInKeyTypeValuesItem.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotInKeyTypeValuesItem.js","sourceRoot":"","sources":["../../../src/api/types/NotInKeyTypeValuesItem.ts"],"names":[],"mappings":";AAAA;;GAEG;;;
|
|
1
|
+
{"version":3,"file":"NotInKeyTypeValuesItem.js","sourceRoot":"","sources":["../../../src/api/types/NotInKeyTypeValuesItem.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAyBU,QAAA,sBAAsB,GAAG;IAClC,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACN,CAAC","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\n/**\n * The specification of asymmetric key-pair.\n *\n * | Truvity | JWX - KeyType | JWX - Curve | FIPS | SEC2 | OpenSSL | AWS KMS |\n * | ------- | ------------- | ----------- | ----- | --------- | ---------- | ------------- |\n * | ED25519 | OKP | Ed25519 | | | ed25519 | |\n * | P256 | EC | P-256 | P-256 | secp256r1 | prime256v1 | ECC_NIST_P256 |\n * | P384 | EC | P-384 | P-384 | secp384r1 | secp384r1 | ECC_NIST_P384 |\n *\n * Useful third-party documentation:\n *\n * - [openssl-genrsa - generate an RSA private key](https://www.openssl.org/docs/manmaster/man1/openssl-genpkey.html).\n * - [openssl-ec, ec - EC key processing](https://www.openssl.org/docs/man1.0.2/man1/ec.html)\n * - [openssl-genrsa - generate an RSA private key](https://www.openssl.org/docs/man3.0/man1/openssl-genrsa.html)\n * - [openssl-pkcs8 - PKCS#8 format private key conversion command](https://www.openssl.org/docs/manmaster/man1/openssl-pkcs8.html)\n * - [JWX - github.com/lestrrat-go/jwx](https://github.com/lestrrat-go/jwx/blob/main/cmd/jwx/README.md)\n * - [FIPS 186-4](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf).\n * - [SEC2](https://www.secg.org/sec2-v2.pdf).\n * - [AWS KMS - Asymmetric key specs](https://docs.aws.amazon.com/kms/latest/developerguide/asymmetric-key-specs.html)\n * .\n */\nexport type NotInKeyTypeValuesItem = 'ED25519' | 'P256' | 'P384';\n\nexport const NotInKeyTypeValuesItem = {\n Ed25519: 'ED25519',\n P256: 'P256',\n P384: 'P384',\n} as const;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProblemMethodNotAllowedAlive.js","sourceRoot":"","sources":["../../../src/api/types/ProblemMethodNotAllowedAlive.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Method Not Allowed
|
|
1
|
+
{"version":3,"file":"ProblemMethodNotAllowedAlive.js","sourceRoot":"","sources":["../../../src/api/types/ProblemMethodNotAllowedAlive.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Method Not Allowed - Resource Alive. Problem schema.\n */\nexport interface ProblemMethodNotAllowedAlive {\n actual: Truvity.Resource;\n /** This value should not change between occurrences of the error. */\n title: string;\n /** HTTP status code */\n status: number;\n /** A human-readable explanation specific to this occurrence of the problem. */\n detail?: string;\n /** Optional list of individual error details */\n errors?: Truvity.ErrorDetail[];\n /** A URI reference that identifies the specific occurrence of the problem. */\n instance?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProblemMethodNotAllowedDeleted.js","sourceRoot":"","sources":["../../../src/api/types/ProblemMethodNotAllowedDeleted.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Method Not Allowed
|
|
1
|
+
{"version":3,"file":"ProblemMethodNotAllowedDeleted.js","sourceRoot":"","sources":["../../../src/api/types/ProblemMethodNotAllowedDeleted.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Method Not Allowed - Resource Deleted. Problem schema.\n */\nexport interface ProblemMethodNotAllowedDeleted {\n actual: Truvity.Resource;\n /** This value should not change between occurrences of the error. */\n title: string;\n /** HTTP status code */\n status: number;\n /** A human-readable explanation specific to this occurrence of the problem. */\n detail?: string;\n /** Optional list of individual error details */\n errors?: Truvity.ErrorDetail[];\n /** A URI reference that identifies the specific occurrence of the problem. */\n instance?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProblemPreconditionFailedBlob.js","sourceRoot":"","sources":["../../../src/api/types/ProblemPreconditionFailedBlob.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Precondition Failed
|
|
1
|
+
{"version":3,"file":"ProblemPreconditionFailedBlob.js","sourceRoot":"","sources":["../../../src/api/types/ProblemPreconditionFailedBlob.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Precondition Failed - Blob. Problem schema.\n */\nexport interface ProblemPreconditionFailedBlob {\n /** This value should not change between occurrences of the error. */\n title: string;\n /** HTTP status code */\n status: number;\n /**\n * The primary and unique identifier of the resource (inside tenant)\n * according to [RFC 4122](https://www.rfc-editor.org/info/rfc4122).\n */\n id: string;\n kind: string;\n /** A human-readable explanation specific to this occurrence of the problem. */\n detail?: string;\n /** Optional list of individual error details */\n errors?: Truvity.ErrorDetail[];\n /** A URI reference that identifies the specific occurrence of the problem. */\n instance?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProblemResourceNotFound.js","sourceRoot":"","sources":["../../../src/api/types/ProblemResourceNotFound.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Not Found - Resource.
|
|
1
|
+
{"version":3,"file":"ProblemResourceNotFound.js","sourceRoot":"","sources":["../../../src/api/types/ProblemResourceNotFound.ts"],"names":[],"mappings":";AAAA;;GAEG","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as Truvity from '../index';\n\n/**\n * Not Found - Resource. Problem schema.\n */\nexport interface ProblemResourceNotFound {\n /** This value should not change between occurrences of the error. */\n title: string;\n /** HTTP status code */\n status: number;\n /**\n * The primary and unique identifier of the resource (inside tenant)\n * according to [RFC 4122](https://www.rfc-editor.org/info/rfc4122).\n */\n id: string;\n kind: string;\n /** A human-readable explanation specific to this occurrence of the problem. */\n detail?: string;\n /** Optional list of individual error details */\n errors?: Truvity.ErrorDetail[];\n /** A URI reference that identifies the specific occurrence of the problem. */\n instance?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flavor.d.ts","sourceRoot":"","sources":["../../../src/documents/credential/flavor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEjF,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAIvD,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;EAetB,CAAC;AAEH,aAAK,kBAAkB,GAAG,iBAAiB,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEvE,qBAAa,UAAU;;IAGnB,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc;IAInD,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,kBAAkB;IAUzD,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"flavor.d.ts","sourceRoot":"","sources":["../../../src/documents/credential/flavor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEjF,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAIvD,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;EAetB,CAAC;AAEH,aAAK,kBAAkB,GAAG,iBAAiB,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEvE,qBAAa,UAAU;;IAGnB,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc;IAInD,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,kBAAkB;IAUzD,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAYvE;AAED,qBAAa,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAE,SAAQ,UAAU;aAClC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;gBAApB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAIhD,OAAO,CAAC,cAAc;IAKhB,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAS3C,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CASzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flavor.js","sourceRoot":"","sources":["../../../src/documents/credential/flavor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAAyD;AACzD,iDAAmC;AAGnC,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEhD,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACjD,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAC/B,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,SAAS,CAAC,CAAC,CACpF;IACD,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;IAC/B,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;IAC1D,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9C,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;IACnC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;IACvC,cAAc,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IACpD,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACzC,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC1C,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC/C,CAAC;IACF,KAAK,EAAE,SAAS;CACnB,CAAC,CAAC;AAIH,MAAa,UAAU;IACnB,gBAAe,CAAC;IAEN,UAAU,CAAC,KAAa;QAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAES,UAAU,CAAC,KAAqB;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAEhD,OAAO,kBAAkB,CAAC,YAAY,CAAC,IAAI,EAAE;YACzC,sBAAsB,EAAE,aAAa;YACrC,6BAA6B,EAAE,IAAI;YACnC,2BAA2B,EAAE,IAAI;SACpC,CAAC,CAAC;IACP,CAAC;IAEK,WAAW,CAAC,IAAoB;;YAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEzC,OAAO;gBACH,EAAE,EAAE,UAAU,CAAC,EAAE;gBACjB,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAAE;gBACxC,cAAc,EAAE,UAAU,CAAC,cAAc;
|
|
1
|
+
{"version":3,"file":"flavor.js","sourceRoot":"","sources":["../../../src/documents/credential/flavor.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Claims, Ctor, CredentialBlob, CredentialMetadata } from '../types';\nimport { getContextJsonLdMetadata } from '../decorators';\nimport * as core from '../../core';\nimport { inferParsedObject } from '../../core/schemas';\n\nconst anyObject = core.serialization.object({});\n\nconst vcJsonLdFernSchema = core.serialization.object({\n '@context': core.serialization.list(\n core.serialization.undiscriminatedUnion([core.serialization.string(), anyObject]),\n ),\n id: core.serialization.string(),\n type: core.serialization.list(core.serialization.string()),\n holder: core.serialization.string().optional(),\n issuer: core.serialization.string(),\n issuanceDate: core.serialization.date(),\n expirationDate: core.serialization.date().optional(),\n credentialSubject: core.serialization.object({\n id: core.serialization.string().optional(),\n type: core.serialization.string().optional(),\n }),\n proof: anyObject,\n});\n\ntype VcJsonLdFernSchema = inferParsedObject<typeof vcJsonLdFernSchema>;\n\nexport class BaseFlavor {\n constructor() {}\n\n protected jsonToBlob(input: object): CredentialBlob {\n return Buffer.from(JSON.stringify(input), 'utf8');\n }\n\n protected blobToJson(input: CredentialBlob): VcJsonLdFernSchema {\n const json = JSON.parse(input.toString('utf8'));\n\n return vcJsonLdFernSchema.parseOrThrow(json, {\n unrecognizedObjectKeys: 'passthrough',\n allowUnrecognizedUnionMembers: true,\n allowUnrecognizedEnumValues: true,\n });\n }\n\n async getMetadata(blob: CredentialBlob): Promise<CredentialMetadata> {\n const credential = this.blobToJson(blob);\n\n return {\n id: credential.id,\n issuer: credential.issuer,\n issuanceDate: credential.issuanceDate,\n subject: credential.credentialSubject.id,\n expirationDate: credential.expirationDate,\n holder: credential.holder,\n };\n }\n}\n\nexport class CredentialFlavor<T extends Claims> extends BaseFlavor {\n constructor(public readonly claimsModel: Ctor<T>) {\n super();\n }\n\n private escapeTermName(name: string): string {\n // The term's names in JSON-LD have constraints on allowed characters.\n return encodeURIComponent(name);\n }\n\n async getClaims(blob: CredentialBlob): Promise<T> {\n const credential = this.blobToJson(blob);\n\n const { id, type, ...parsedCredentialSubject } = credential.credentialSubject;\n\n // TODO: implement proper input validation\n return parsedCredentialSubject as T;\n }\n\n async getClaimsType(): Promise<string> {\n const contextInfo = getContextJsonLdMetadata(this.claimsModel);\n\n if (!contextInfo) {\n throw new Error(`Can't resolve claims' \"type\". Make sure you defined it with the @VcContext decorator`);\n }\n\n return this.escapeTermName(contextInfo.name);\n }\n}\n"]}
|
|
@@ -84,6 +84,7 @@ const testBlobJson = {
|
|
|
84
84
|
bar: 'bar',
|
|
85
85
|
baz: 'baz',
|
|
86
86
|
},
|
|
87
|
+
holder: 'test-holder',
|
|
87
88
|
issuer: 'https://example.edu/issuers/565049',
|
|
88
89
|
issuanceDate: '2024-07-31T16:46:39Z',
|
|
89
90
|
proof: {
|
|
@@ -112,6 +113,7 @@ describe('CredentialFlavor', () => {
|
|
|
112
113
|
id: testBlobJson.id,
|
|
113
114
|
issuanceDate: new Date(testBlobJson.issuanceDate),
|
|
114
115
|
issuer: testBlobJson.issuer,
|
|
116
|
+
holder: testBlobJson.holder,
|
|
115
117
|
});
|
|
116
118
|
}));
|
|
117
119
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flavor.spec.js","sourceRoot":"","sources":["../../../src/documents/credential/flavor.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { Rfc3339Date } from '../models';\nimport { VcContext, VcNotEmptyClaim } from '../decorators';\n\nimport { CredentialFlavor } from './index';\n\nconst NAMESPACE = 'https://docs.truvity.com/vocab';\n\n@VcContext({ name: 'NestedStruct', namespace: NAMESPACE })\nclass NestedStruct {\n @VcNotEmptyClaim\n qux!: string;\n}\n\n@VcContext({ name: 'TestCredentialSubject', namespace: NAMESPACE })\nclass TestCredentialSubject {\n @VcNotEmptyClaim\n foo!: string;\n\n @VcNotEmptyClaim\n bar!: Rfc3339Date;\n\n @VcNotEmptyClaim\n buz!: NestedStruct;\n}\n\nconst jsonToBlob = (input: object): Buffer => Buffer.from(JSON.stringify(input), 'utf8');\n\nconst testBlobJson = {\n '@context': [\n 'https://www.w3.org/2018/credentials/v1',\n {\n Foo: {\n '@id': 'urn:example:Foo',\n '@context': {\n '@version': 1.1,\n '@protected': true,\n bar: 'urn:example:bar',\n baz: 'urn:example:baz',\n },\n },\n },\n 'https://w3id.org/security/data-integrity/v2',\n ],\n id: 'did:example:123',\n type: ['VerifiableCredential'],\n credentialSubject: {\n id: 'did:example:456',\n type: 'Foo',\n bar: 'bar',\n baz: 'baz',\n },\n issuer: 'https://example.edu/issuers/565049',\n issuanceDate: '2024-07-31T16:46:39Z',\n proof: {\n type: 'DataIntegrityProof',\n created: '2024-07-31T16:46:39Z',\n verificationMethod: 'https://example.edu/issuers/keys/1',\n cryptosuite: 'eddsa-rdfc-2022',\n proofPurpose: 'assertionMethod',\n proofValue: 'z2vZujGHjzGB89MWi9QempRZRDCHv4uxpuTnhdG3wVqZhy5EAmnwm6Um8wHox7JX5XrxkXixLB3j6Zdh3UqPxuHE6',\n },\n};\nconst testBlob = jsonToBlob(testBlobJson);\n\ndescribe('CredentialFlavor', () => {\n it('should return claims from blob', async () => {\n const flavor = new CredentialFlavor(TestCredentialSubject);\n const claims = await flavor.getClaims(testBlob);\n const { id, type, ...testClaims } = testBlobJson.credentialSubject;\n\n expect(claims).toEqual(testClaims);\n });\n\n it('should return metadata from blob', async () => {\n const flavor = new CredentialFlavor(TestCredentialSubject);\n const metadata = await flavor.getMetadata(testBlob);\n\n expect(metadata).toEqual({\n subject: testBlobJson.credentialSubject.id,\n expirationDate: undefined,\n id: testBlobJson.id,\n issuanceDate: new Date(testBlobJson.issuanceDate),\n issuer: testBlobJson.issuer,\n });\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"flavor.spec.js","sourceRoot":"","sources":["../../../src/documents/credential/flavor.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import { Rfc3339Date } from '../models';\nimport { VcContext, VcNotEmptyClaim } from '../decorators';\n\nimport { CredentialFlavor } from './index';\n\nconst NAMESPACE = 'https://docs.truvity.com/vocab';\n\n@VcContext({ name: 'NestedStruct', namespace: NAMESPACE })\nclass NestedStruct {\n @VcNotEmptyClaim\n qux!: string;\n}\n\n@VcContext({ name: 'TestCredentialSubject', namespace: NAMESPACE })\nclass TestCredentialSubject {\n @VcNotEmptyClaim\n foo!: string;\n\n @VcNotEmptyClaim\n bar!: Rfc3339Date;\n\n @VcNotEmptyClaim\n buz!: NestedStruct;\n}\n\nconst jsonToBlob = (input: object): Buffer => Buffer.from(JSON.stringify(input), 'utf8');\n\nconst testBlobJson = {\n '@context': [\n 'https://www.w3.org/2018/credentials/v1',\n {\n Foo: {\n '@id': 'urn:example:Foo',\n '@context': {\n '@version': 1.1,\n '@protected': true,\n bar: 'urn:example:bar',\n baz: 'urn:example:baz',\n },\n },\n },\n 'https://w3id.org/security/data-integrity/v2',\n ],\n id: 'did:example:123',\n type: ['VerifiableCredential'],\n credentialSubject: {\n id: 'did:example:456',\n type: 'Foo',\n bar: 'bar',\n baz: 'baz',\n },\n holder: 'test-holder',\n issuer: 'https://example.edu/issuers/565049',\n issuanceDate: '2024-07-31T16:46:39Z',\n proof: {\n type: 'DataIntegrityProof',\n created: '2024-07-31T16:46:39Z',\n verificationMethod: 'https://example.edu/issuers/keys/1',\n cryptosuite: 'eddsa-rdfc-2022',\n proofPurpose: 'assertionMethod',\n proofValue: 'z2vZujGHjzGB89MWi9QempRZRDCHv4uxpuTnhdG3wVqZhy5EAmnwm6Um8wHox7JX5XrxkXixLB3j6Zdh3UqPxuHE6',\n },\n};\nconst testBlob = jsonToBlob(testBlobJson);\n\ndescribe('CredentialFlavor', () => {\n it('should return claims from blob', async () => {\n const flavor = new CredentialFlavor(TestCredentialSubject);\n const claims = await flavor.getClaims(testBlob);\n const { id, type, ...testClaims } = testBlobJson.credentialSubject;\n\n expect(claims).toEqual(testClaims);\n });\n\n it('should return metadata from blob', async () => {\n const flavor = new CredentialFlavor(TestCredentialSubject);\n const metadata = await flavor.getMetadata(testBlob);\n\n expect(metadata).toEqual({\n subject: testBlobJson.credentialSubject.id,\n expirationDate: undefined,\n id: testBlobJson.id,\n issuanceDate: new Date(testBlobJson.issuanceDate),\n issuer: testBlobJson.issuer,\n holder: testBlobJson.holder,\n });\n });\n});\n"]}
|
|
@@ -10,7 +10,11 @@ declare type ParseFailed = {
|
|
|
10
10
|
};
|
|
11
11
|
declare type ParseResult<T extends Claims> = ParseSuccessful<T> | ParseFailed;
|
|
12
12
|
export declare class UnknownVerifiableCredential extends BaseVerifiableCredential {
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated Please use `assertClaims` instead. This method will be removed after January 2025.
|
|
15
|
+
*/
|
|
13
16
|
assert<T extends Claims>(claimsModel: Ctor<T>): Promise<ParseResult<T>>;
|
|
17
|
+
assertClaims<T extends Claims>(claimsModel: Ctor<T>): Promise<ParseResult<T>>;
|
|
14
18
|
}
|
|
15
19
|
export {};
|
|
16
20
|
//# sourceMappingURL=unknown.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unknown.d.ts","sourceRoot":"","sources":["../../../src/documents/credential/unknown.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEzE,aAAK,eAAe,CAAC,CAAC,SAAS,MAAM,IAAI;IACrC,EAAE,EAAE,IAAI,CAAC;IACT,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,aAAK,WAAW,GAAG;IACf,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,+BAA+B,CAAC;CAC1C,CAAC;AAEF,aAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;AAEtE,qBAAa,2BAA4B,SAAQ,wBAAwB;
|
|
1
|
+
{"version":3,"file":"unknown.d.ts","sourceRoot":"","sources":["../../../src/documents/credential/unknown.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEzE,aAAK,eAAe,CAAC,CAAC,SAAS,MAAM,IAAI;IACrC,EAAE,EAAE,IAAI,CAAC;IACT,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,aAAK,WAAW,GAAG;IACf,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,+BAA+B,CAAC;CAC1C,CAAC;AAEF,aAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;AAEtE,qBAAa,2BAA4B,SAAQ,wBAAwB;IACrE;;OAEG;IACG,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIvE,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAmBtF"}
|
|
@@ -13,7 +13,15 @@ exports.UnknownVerifiableCredential = void 0;
|
|
|
13
13
|
const credential_1 = require("../credential");
|
|
14
14
|
const index_1 = require("./index");
|
|
15
15
|
class UnknownVerifiableCredential extends index_1.BaseVerifiableCredential {
|
|
16
|
+
/**
|
|
17
|
+
* @deprecated Please use `assertClaims` instead. This method will be removed after January 2025.
|
|
18
|
+
*/
|
|
16
19
|
assert(claimsModel) {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
return this.assertClaims(claimsModel);
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
assertClaims(claimsModel) {
|
|
17
25
|
return __awaiter(this, void 0, void 0, function* () {
|
|
18
26
|
const credentialResource = yield this.client.credentials.credentialRevision(this.descriptor.id, this.descriptor.revision);
|
|
19
27
|
const vcDecorator = new credential_1.VcDecorator(this.client, claimsModel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unknown.js","sourceRoot":"","sources":["../../../src/documents/credential/unknown.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4C;AAE5C,mCAAyE;AAczE,MAAa,2BAA4B,SAAQ,gCAAwB;
|
|
1
|
+
{"version":3,"file":"unknown.js","sourceRoot":"","sources":["../../../src/documents/credential/unknown.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4C;AAE5C,mCAAyE;AAczE,MAAa,2BAA4B,SAAQ,gCAAwB;IACrE;;OAEG;IACG,MAAM,CAAmB,WAAoB;;YAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC1C,CAAC;KAAA;IAEK,YAAY,CAAmB,WAAoB;;YACrD,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CACvE,IAAI,CAAC,UAAU,CAAC,EAAE,EAClB,IAAI,CAAC,UAAU,CAAC,QAAQ,CAC3B,CAAC;YACF,MAAM,WAAW,GAAG,IAAI,wBAAW,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAE9D,IAAI,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE;gBACxC,OAAO;oBACH,EAAE,EAAE,IAAI;oBACR,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,kBAAkB,CAAC;iBAClD,CAAC;aACL;YAED,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,+BAA+B;aACzC,CAAC;QACN,CAAC;KAAA;CACJ;AA3BD,kEA2BC","sourcesContent":["import { VcDecorator } from '../credential';\nimport type { Claims, Ctor } from '../types';\nimport { BaseVerifiableCredential, VerifiableCredential } from './index';\n\ntype ParseSuccessful<T extends Claims> = {\n ok: true;\n credential: VerifiableCredential<T>;\n};\n\ntype ParseFailed = {\n ok: false;\n error: 'WRONG_CREDENTIAL_SUBJECT_TYPE';\n};\n\ntype ParseResult<T extends Claims> = ParseSuccessful<T> | ParseFailed;\n\nexport class UnknownVerifiableCredential extends BaseVerifiableCredential {\n /**\n * @deprecated Please use `assertClaims` instead. This method will be removed after January 2025.\n */\n async assert<T extends Claims>(claimsModel: Ctor<T>): Promise<ParseResult<T>> {\n return this.assertClaims(claimsModel);\n }\n\n async assertClaims<T extends Claims>(claimsModel: Ctor<T>): Promise<ParseResult<T>> {\n const credentialResource = await this.client.credentials.credentialRevision(\n this.descriptor.id,\n this.descriptor.revision,\n );\n const vcDecorator = new VcDecorator(this.client, claimsModel);\n\n if (vcDecorator.canMap(credentialResource)) {\n return {\n ok: true,\n credential: vcDecorator.map(credentialResource),\n };\n }\n\n return {\n ok: false,\n error: 'WRONG_CREDENTIAL_SUBJECT_TYPE',\n };\n }\n}\n"]}
|
|
@@ -29,7 +29,11 @@ export declare class VcDecorator<T extends Claims> {
|
|
|
29
29
|
loadAsDraft(id: string, revision?: number): Promise<DraftCredential<T>>;
|
|
30
30
|
loadAsCredential(id: string, revision?: number): Promise<VerifiableCredential<T>>;
|
|
31
31
|
load(id: string, revision?: number): Promise<LoadedCredential<T>>;
|
|
32
|
+
/**
|
|
33
|
+
* @deprecated Please use `importCredential` instead. This method will be removed after January 2025.
|
|
34
|
+
*/
|
|
32
35
|
import(blob: BlobInput, request?: UpdatePayload): Promise<VerifiableCredential<T>>;
|
|
36
|
+
importCredential(blob: BlobInput, request?: UpdatePayload): Promise<VerifiableCredential<T>>;
|
|
33
37
|
}
|
|
34
38
|
export { VerifiableCredential };
|
|
35
39
|
//# sourceMappingURL=credential.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential.d.ts","sourceRoot":"","sources":["../../src/documents/credential.ts"],"names":[],"mappings":"AAEA,OAAO,EASH,WAAW,EAGX,kBAAkB,EAClB,aAAa,EAChB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAsB,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAY5G,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EACT,MAAM,EAEN,IAAI,EACJ,aAAa,EACb,uBAAuB,EAC1B,MAAM,SAAS,CAAC;AAajB,oBAAY,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI;IAC/C,YAAY,EAAE,KAAK,CAAC;IACpB,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;CAClC,CAAC;AAEF,oBAAY,4BAA4B,CAAC,CAAC,SAAS,MAAM,IAAI;IACzD,YAAY,EAAE,IAAI,CAAC;IACnB,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,oBAAY,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAC,CAAC;AAEzG,qBAAa,WAAW,CAAC,CAAC,SAAS,MAAM;IAKjC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IALvB,QAAQ,CAAC,MAAM,sBAAiD;IAChE,OAAO,CAAC,kBAAkB,CAAoD;gBAGlE,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAGhC,SAAS,CAAC,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAI3E,MAAM,IAAI,MAAM;IAWhB,iBAAiB,IAAI,MAAM;IAW3B,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,kBAAkB,GAAG,OAAO;IAI1D,GAAG,CAAC,KAAK,EAAE,kBAAkB,GAAG,oBAAoB,CAAC,CAAC,CAAC;IACvD,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC;YAuB/B,UAAU;IA4BxB,OAAO,CAAC,aAAa;IAoGrB,SAAS,CAAC,cAAc,IAAI,WAAW,GAAG,SAAS;IAe7C,MAAM,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAoBzE,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAQvE,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAQjF,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"credential.d.ts","sourceRoot":"","sources":["../../src/documents/credential.ts"],"names":[],"mappings":"AAEA,OAAO,EASH,WAAW,EAGX,kBAAkB,EAClB,aAAa,EAChB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAsB,gBAAgB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAY5G,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EACT,MAAM,EAEN,IAAI,EACJ,aAAa,EACb,uBAAuB,EAC1B,MAAM,SAAS,CAAC;AAajB,oBAAY,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI;IAC/C,YAAY,EAAE,KAAK,CAAC;IACpB,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;CAClC,CAAC;AAEF,oBAAY,4BAA4B,CAAC,CAAC,SAAS,MAAM,IAAI;IACzD,YAAY,EAAE,IAAI,CAAC;IACnB,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF,oBAAY,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,4BAA4B,CAAC,CAAC,CAAC,CAAC;AAEzG,qBAAa,WAAW,CAAC,CAAC,SAAS,MAAM;IAKjC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IALvB,QAAQ,CAAC,MAAM,sBAAiD;IAChE,OAAO,CAAC,kBAAkB,CAAoD;gBAGlE,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAGhC,SAAS,CAAC,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAI3E,MAAM,IAAI,MAAM;IAWhB,iBAAiB,IAAI,MAAM;IAW3B,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,kBAAkB,GAAG,OAAO;IAI1D,GAAG,CAAC,KAAK,EAAE,kBAAkB,GAAG,oBAAoB,CAAC,CAAC,CAAC;IACvD,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAAC,CAAC,CAAC;YAuB/B,UAAU;IA4BxB,OAAO,CAAC,aAAa;IAoGrB,SAAS,CAAC,cAAc,IAAI,WAAW,GAAG,SAAS;IAe7C,MAAM,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAoBzE,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAQvE,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAQjF,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IA2BvE;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAIlF,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;CAKrG;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
|
package/documents/credential.js
CHANGED
|
@@ -243,7 +243,15 @@ class VcDecorator {
|
|
|
243
243
|
}
|
|
244
244
|
});
|
|
245
245
|
}
|
|
246
|
+
/**
|
|
247
|
+
* @deprecated Please use `importCredential` instead. This method will be removed after January 2025.
|
|
248
|
+
*/
|
|
246
249
|
import(blob, request) {
|
|
250
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
251
|
+
return this.importCredential(blob, request);
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
importCredential(blob, request) {
|
|
247
255
|
return __awaiter(this, void 0, void 0, function* () {
|
|
248
256
|
const credential = yield this.importBlob(blob, request);
|
|
249
257
|
return new credential_1.VerifiableCredential(this.client, this.flavor, credential);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential.js","sourceRoot":"","sources":["../../src/documents/credential.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from 'node-fetch';\n\nimport {\n DraftFieldBooleanValue,\n DraftFieldDateTimeValue,\n DraftFieldDateValue,\n DraftFieldFileValue,\n DraftFieldLinkValue,\n DraftFieldNumberValue,\n DraftFieldStringValue,\n DraftFieldStructValue,\n DraftSchema,\n DraftSchemaFieldsItem,\n NotFoundError,\n ResourceCredential,\n ResourceDraft,\n} from '../api';\nimport * as serialization from '../serialization';\nimport { CredentialDocument, CredentialFlavor, DraftCredential, VerifiableCredential } from './credential/';\nimport {\n ClaimDescriptor,\n getClaimJsonLdTypeMetadata,\n getClaimLinkedCredentialMetadata,\n getClaimLinkedFileMetadata,\n getContextJsonLdMetadata,\n getRegisteredClaimsList,\n getTsDataTypeMetadata,\n} from './decorators';\nimport { generateIdempotencyKey } from './helpers';\nimport { Rfc3339Date, Rfc3339DateTime } from './models';\nimport type {\n ApiClient,\n BlobInput,\n Claims,\n CredentialDescriptor,\n Ctor,\n UpdatePayload,\n UpdatePayloadWithClaims,\n} from './types';\nimport { draftMetadataToApiDraftMeta, strictlyConvertToApiType, StrictPartial } from './utils/converters';\n\ntype DraftFieldValue =\n | DraftFieldBooleanValue\n | DraftFieldDateTimeValue\n | DraftFieldDateValue\n | DraftFieldFileValue\n | DraftFieldLinkValue\n | DraftFieldNumberValue\n | DraftFieldStringValue\n | DraftFieldStructValue;\n\nexport type CredentialEnvelope<T extends Claims> = {\n isVerifiable: false;\n credential: DraftCredential<T>;\n};\n\nexport type VerifiableCredentialEnvelope<T extends Claims> = {\n isVerifiable: true;\n credential: VerifiableCredential<T>;\n};\n\nexport type LoadedCredential<T extends Claims> = CredentialEnvelope<T> | VerifiableCredentialEnvelope<T>;\n\nexport class VcDecorator<T extends Claims> {\n readonly flavor = this.createCredentialFlavor(this.claimsModel);\n private credentialDocument = new CredentialDocument(this.client, this.flavor);\n\n constructor(\n private client: ApiClient,\n private claimsModel: Ctor<T>,\n ) {}\n\n protected createCredentialFlavor(claimsModel: Ctor<T>): CredentialFlavor<T> {\n return new CredentialFlavor(claimsModel);\n }\n\n getIri(): string {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata)\n throw new Error(\n `Can't find IRI information. Make sure you have defined the claims model with the @VcContext decorator`,\n );\n\n return `${vcContextMetadata.namespace}#${vcContextMetadata.name}`;\n }\n\n getCredentialTerm(): string {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata)\n throw new Error(\n `Can't find credential term information. Make sure you have defined the claims model with the @VcContext decorator`,\n );\n\n return `${vcContextMetadata.name}Credential`;\n }\n\n canMap(input: ResourceDraft | ResourceCredential): boolean {\n return input.data.type.includes(this.getCredentialTerm());\n }\n\n map(input: ResourceCredential): VerifiableCredential<T>;\n map(input: ResourceDraft): DraftCredential<T>;\n map(input: ResourceDraft | ResourceCredential): VerifiableCredential<T> | DraftCredential<T> {\n if ('type' in input.data) {\n // ResourceCredential\n if (!this.canMap(input)) {\n throw new Error(\n `The received ResourceCredential is incompatible with the current VcDecorator instance claims model`,\n );\n }\n\n return new VerifiableCredential(this.client, this.flavor, input);\n } else {\n // ResourceDraft\n if (!this.canMap(input)) {\n throw new Error(\n `The received ResourceDraft is incompatible with the current VcDecorator instance claims model`,\n );\n }\n\n return new DraftCredential(this.client, this.flavor, input.data, input);\n }\n }\n\n private async importBlob(blob: BlobInput, request?: UpdatePayload): Promise<CredentialDescriptor> {\n const idempotencyKey = generateIdempotencyKey('importBlob');\n const { blobId, uploadUri } = await this.client.credentials.credentialUpload({\n idempotencyKey,\n });\n\n await fetch(uploadUri, {\n method: 'PUT',\n body: blob,\n });\n\n const resourceCredential = await this.client.credentials.credentialImport({\n annotations: request?.annotations,\n labels: request?.labels,\n blobId,\n idempotencyKey,\n });\n\n return {\n data: {\n multihash: resourceCredential.data.multihash ?? undefined,\n },\n id: resourceCredential.id,\n etag: resourceCredential.etag,\n revision: resourceCredential.revision,\n };\n }\n\n private mapClaimToApi(claim: ClaimDescriptor, claimsModel: Ctor<any>): DraftSchemaFieldsItem {\n const claimJsonLdType = getClaimJsonLdTypeMetadata(claimsModel, claim.name);\n const draftBaseFieldValue: StrictPartial<DraftFieldValue> = {\n name: claim.name,\n title: claim.title,\n notEmpty: claim.notEmpty,\n isArray: claim.isArray || undefined,\n };\n\n if (\n claim.nestedType &&\n !Array.of<Ctor<any>>(String, Number, Date, Rfc3339DateTime, Rfc3339Date, Boolean).includes(claim.nestedType)\n ) {\n const claimNestedType = claim.nestedType;\n const linkedModel = getClaimLinkedCredentialMetadata(claimsModel, claim.name);\n\n if (linkedModel) {\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'LINK',\n linkType: undefined,\n });\n } else {\n const nestedContextInfo = getContextJsonLdMetadata(claimNestedType);\n\n if (!nestedContextInfo) {\n throw new Error(\n `The information about the VC context was not found in the \"${claimNestedType.name}\" model. Please use the \"@VcContext\" decorator to define the necessary information.`,\n );\n }\n\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'STRUCT',\n fields: getRegisteredClaimsList(claimNestedType).map((nestedClaim) => {\n return this.mapClaimToApi(nestedClaim, claimNestedType);\n }),\n vocabNamespace: nestedContextInfo.namespace,\n vocabName: nestedContextInfo.name,\n });\n }\n } else {\n const isLinkedFile = getClaimLinkedFileMetadata(claimsModel, claim.name);\n\n if (isLinkedFile) {\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'FILE',\n });\n } else {\n const tsDataType = claim.nestedType || getTsDataTypeMetadata(claimsModel, claim.name);\n\n if (!tsDataType) {\n throw new Error(\n `The information about the VC claim data type was not found for the \"${claim.name}\" property. Ensure that \"emitDecoratorMetadata\" is enabled in your \"tsconfig.json\".`,\n );\n }\n\n switch (tsDataType) {\n case String:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'STRING',\n type: claimJsonLdType,\n enum: claim.enumValuesDescriptor,\n });\n case Number:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'NUMBER',\n type: claimJsonLdType,\n });\n case Boolean:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'BOOLEAN',\n type: claimJsonLdType,\n });\n case Rfc3339Date:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'DATE',\n type: claimJsonLdType,\n });\n case Rfc3339DateTime:\n case Date:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'DATETIME',\n type: claimJsonLdType,\n });\n default:\n throw new Error(\n `Unsupported primitive data type: ${tsDataType.name}. Please use one of the supported types. You can find more information in the documentation.`,\n );\n }\n }\n }\n }\n\n protected getDraftSchema(): DraftSchema | undefined {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata) return undefined;\n\n return strictlyConvertToApiType(serialization.DraftSchema, {\n fields: getRegisteredClaimsList(this.claimsModel).map((claim) =>\n this.mapClaimToApi(claim, this.claimsModel),\n ),\n vocabNamespace: vcContextMetadata.namespace,\n vocabName: vcContextMetadata.name,\n vcType: vcContextMetadata.vcType,\n });\n }\n\n async create(request?: UpdatePayloadWithClaims<T>): Promise<DraftCredential<T>> {\n const apiClaims = request?.claims\n ? this.credentialDocument.convertUdtToApiValues(this.claimsModel, request.claims as T)\n : undefined;\n const { id, etag, revision, data } = await this.client.drafts.draftCreate({\n body: {\n data: {\n schema: this.getDraftSchema(),\n values: apiClaims,\n meta: draftMetadataToApiDraftMeta(request?.metadata),\n },\n annotations: request?.annotations,\n labels: request?.labels,\n },\n idempotencyKey: generateIdempotencyKey('create'),\n });\n\n return new DraftCredential(this.client, this.flavor, data, { id, etag, revision });\n }\n\n async loadAsDraft(id: string, revision?: number): Promise<DraftCredential<T>> {\n const resourceDraft = revision\n ? await this.client.drafts.draftRevision(id, revision)\n : await this.client.drafts.draftLatest(id);\n\n return this.map(resourceDraft);\n }\n\n async loadAsCredential(id: string, revision?: number): Promise<VerifiableCredential<T>> {\n const resourceCredential = revision\n ? await this.client.credentials.credentialRevision(id, revision)\n : await this.client.credentials.credentialLatest(id);\n\n return this.map(resourceCredential);\n }\n\n async load(id: string, revision?: number): Promise<LoadedCredential<T>> {\n let verifiableCredential: VerifiableCredential<T> | undefined;\n let draftCredential: DraftCredential<T> | undefined;\n\n try {\n verifiableCredential = await this.loadAsCredential(id, revision);\n } catch (error) {\n if (error instanceof NotFoundError) {\n draftCredential = await this.loadAsDraft(id, revision);\n } else throw error;\n }\n\n if (!draftCredential) {\n if (!verifiableCredential) throw new Error(`Resource with id '${id}' could not be found.`);\n\n return {\n isVerifiable: true,\n credential: verifiableCredential,\n };\n } else {\n return {\n isVerifiable: false,\n credential: draftCredential,\n };\n }\n }\n\n async import(blob: BlobInput, request?: UpdatePayload): Promise<VerifiableCredential<T>> {\n const credential = await this.importBlob(blob, request);\n\n return new VerifiableCredential(this.client, this.flavor, credential);\n }\n}\n\nexport { VerifiableCredential };\n"]}
|
|
1
|
+
{"version":3,"file":"credential.js","sourceRoot":"","sources":["../../src/documents/credential.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from 'node-fetch';\n\nimport {\n DraftFieldBooleanValue,\n DraftFieldDateTimeValue,\n DraftFieldDateValue,\n DraftFieldFileValue,\n DraftFieldLinkValue,\n DraftFieldNumberValue,\n DraftFieldStringValue,\n DraftFieldStructValue,\n DraftSchema,\n DraftSchemaFieldsItem,\n NotFoundError,\n ResourceCredential,\n ResourceDraft,\n} from '../api';\nimport * as serialization from '../serialization';\nimport { CredentialDocument, CredentialFlavor, DraftCredential, VerifiableCredential } from './credential/';\nimport {\n ClaimDescriptor,\n getClaimJsonLdTypeMetadata,\n getClaimLinkedCredentialMetadata,\n getClaimLinkedFileMetadata,\n getContextJsonLdMetadata,\n getRegisteredClaimsList,\n getTsDataTypeMetadata,\n} from './decorators';\nimport { generateIdempotencyKey } from './helpers';\nimport { Rfc3339Date, Rfc3339DateTime } from './models';\nimport type {\n ApiClient,\n BlobInput,\n Claims,\n CredentialDescriptor,\n Ctor,\n UpdatePayload,\n UpdatePayloadWithClaims,\n} from './types';\nimport { draftMetadataToApiDraftMeta, strictlyConvertToApiType, StrictPartial } from './utils/converters';\n\ntype DraftFieldValue =\n | DraftFieldBooleanValue\n | DraftFieldDateTimeValue\n | DraftFieldDateValue\n | DraftFieldFileValue\n | DraftFieldLinkValue\n | DraftFieldNumberValue\n | DraftFieldStringValue\n | DraftFieldStructValue;\n\nexport type CredentialEnvelope<T extends Claims> = {\n isVerifiable: false;\n credential: DraftCredential<T>;\n};\n\nexport type VerifiableCredentialEnvelope<T extends Claims> = {\n isVerifiable: true;\n credential: VerifiableCredential<T>;\n};\n\nexport type LoadedCredential<T extends Claims> = CredentialEnvelope<T> | VerifiableCredentialEnvelope<T>;\n\nexport class VcDecorator<T extends Claims> {\n readonly flavor = this.createCredentialFlavor(this.claimsModel);\n private credentialDocument = new CredentialDocument(this.client, this.flavor);\n\n constructor(\n private client: ApiClient,\n private claimsModel: Ctor<T>,\n ) {}\n\n protected createCredentialFlavor(claimsModel: Ctor<T>): CredentialFlavor<T> {\n return new CredentialFlavor(claimsModel);\n }\n\n getIri(): string {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata)\n throw new Error(\n `Can't find IRI information. Make sure you have defined the claims model with the @VcContext decorator`,\n );\n\n return `${vcContextMetadata.namespace}#${vcContextMetadata.name}`;\n }\n\n getCredentialTerm(): string {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata)\n throw new Error(\n `Can't find credential term information. Make sure you have defined the claims model with the @VcContext decorator`,\n );\n\n return `${vcContextMetadata.name}Credential`;\n }\n\n canMap(input: ResourceDraft | ResourceCredential): boolean {\n return input.data.type.includes(this.getCredentialTerm());\n }\n\n map(input: ResourceCredential): VerifiableCredential<T>;\n map(input: ResourceDraft): DraftCredential<T>;\n map(input: ResourceDraft | ResourceCredential): VerifiableCredential<T> | DraftCredential<T> {\n if ('type' in input.data) {\n // ResourceCredential\n if (!this.canMap(input)) {\n throw new Error(\n `The received ResourceCredential is incompatible with the current VcDecorator instance claims model`,\n );\n }\n\n return new VerifiableCredential(this.client, this.flavor, input);\n } else {\n // ResourceDraft\n if (!this.canMap(input)) {\n throw new Error(\n `The received ResourceDraft is incompatible with the current VcDecorator instance claims model`,\n );\n }\n\n return new DraftCredential(this.client, this.flavor, input.data, input);\n }\n }\n\n private async importBlob(blob: BlobInput, request?: UpdatePayload): Promise<CredentialDescriptor> {\n const idempotencyKey = generateIdempotencyKey('importBlob');\n const { blobId, uploadUri } = await this.client.credentials.credentialUpload({\n idempotencyKey,\n });\n\n await fetch(uploadUri, {\n method: 'PUT',\n body: blob,\n });\n\n const resourceCredential = await this.client.credentials.credentialImport({\n annotations: request?.annotations,\n labels: request?.labels,\n blobId,\n idempotencyKey,\n });\n\n return {\n data: {\n multihash: resourceCredential.data.multihash ?? undefined,\n },\n id: resourceCredential.id,\n etag: resourceCredential.etag,\n revision: resourceCredential.revision,\n };\n }\n\n private mapClaimToApi(claim: ClaimDescriptor, claimsModel: Ctor<any>): DraftSchemaFieldsItem {\n const claimJsonLdType = getClaimJsonLdTypeMetadata(claimsModel, claim.name);\n const draftBaseFieldValue: StrictPartial<DraftFieldValue> = {\n name: claim.name,\n title: claim.title,\n notEmpty: claim.notEmpty,\n isArray: claim.isArray || undefined,\n };\n\n if (\n claim.nestedType &&\n !Array.of<Ctor<any>>(String, Number, Date, Rfc3339DateTime, Rfc3339Date, Boolean).includes(claim.nestedType)\n ) {\n const claimNestedType = claim.nestedType;\n const linkedModel = getClaimLinkedCredentialMetadata(claimsModel, claim.name);\n\n if (linkedModel) {\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'LINK',\n linkType: undefined,\n });\n } else {\n const nestedContextInfo = getContextJsonLdMetadata(claimNestedType);\n\n if (!nestedContextInfo) {\n throw new Error(\n `The information about the VC context was not found in the \"${claimNestedType.name}\" model. Please use the \"@VcContext\" decorator to define the necessary information.`,\n );\n }\n\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'STRUCT',\n fields: getRegisteredClaimsList(claimNestedType).map((nestedClaim) => {\n return this.mapClaimToApi(nestedClaim, claimNestedType);\n }),\n vocabNamespace: nestedContextInfo.namespace,\n vocabName: nestedContextInfo.name,\n });\n }\n } else {\n const isLinkedFile = getClaimLinkedFileMetadata(claimsModel, claim.name);\n\n if (isLinkedFile) {\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'FILE',\n });\n } else {\n const tsDataType = claim.nestedType || getTsDataTypeMetadata(claimsModel, claim.name);\n\n if (!tsDataType) {\n throw new Error(\n `The information about the VC claim data type was not found for the \"${claim.name}\" property. Ensure that \"emitDecoratorMetadata\" is enabled in your \"tsconfig.json\".`,\n );\n }\n\n switch (tsDataType) {\n case String:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'STRING',\n type: claimJsonLdType,\n enum: claim.enumValuesDescriptor,\n });\n case Number:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'NUMBER',\n type: claimJsonLdType,\n });\n case Boolean:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'BOOLEAN',\n type: claimJsonLdType,\n });\n case Rfc3339Date:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'DATE',\n type: claimJsonLdType,\n });\n case Rfc3339DateTime:\n case Date:\n return strictlyConvertToApiType(serialization.DraftSchemaFieldsItem, {\n ...draftBaseFieldValue,\n kind: 'DATETIME',\n type: claimJsonLdType,\n });\n default:\n throw new Error(\n `Unsupported primitive data type: ${tsDataType.name}. Please use one of the supported types. You can find more information in the documentation.`,\n );\n }\n }\n }\n }\n\n protected getDraftSchema(): DraftSchema | undefined {\n const vcContextMetadata = getContextJsonLdMetadata(this.claimsModel);\n\n if (!vcContextMetadata) return undefined;\n\n return strictlyConvertToApiType(serialization.DraftSchema, {\n fields: getRegisteredClaimsList(this.claimsModel).map((claim) =>\n this.mapClaimToApi(claim, this.claimsModel),\n ),\n vocabNamespace: vcContextMetadata.namespace,\n vocabName: vcContextMetadata.name,\n vcType: vcContextMetadata.vcType,\n });\n }\n\n async create(request?: UpdatePayloadWithClaims<T>): Promise<DraftCredential<T>> {\n const apiClaims = request?.claims\n ? this.credentialDocument.convertUdtToApiValues(this.claimsModel, request.claims as T)\n : undefined;\n const { id, etag, revision, data } = await this.client.drafts.draftCreate({\n body: {\n data: {\n schema: this.getDraftSchema(),\n values: apiClaims,\n meta: draftMetadataToApiDraftMeta(request?.metadata),\n },\n annotations: request?.annotations,\n labels: request?.labels,\n },\n idempotencyKey: generateIdempotencyKey('create'),\n });\n\n return new DraftCredential(this.client, this.flavor, data, { id, etag, revision });\n }\n\n async loadAsDraft(id: string, revision?: number): Promise<DraftCredential<T>> {\n const resourceDraft = revision\n ? await this.client.drafts.draftRevision(id, revision)\n : await this.client.drafts.draftLatest(id);\n\n return this.map(resourceDraft);\n }\n\n async loadAsCredential(id: string, revision?: number): Promise<VerifiableCredential<T>> {\n const resourceCredential = revision\n ? await this.client.credentials.credentialRevision(id, revision)\n : await this.client.credentials.credentialLatest(id);\n\n return this.map(resourceCredential);\n }\n\n async load(id: string, revision?: number): Promise<LoadedCredential<T>> {\n let verifiableCredential: VerifiableCredential<T> | undefined;\n let draftCredential: DraftCredential<T> | undefined;\n\n try {\n verifiableCredential = await this.loadAsCredential(id, revision);\n } catch (error) {\n if (error instanceof NotFoundError) {\n draftCredential = await this.loadAsDraft(id, revision);\n } else throw error;\n }\n\n if (!draftCredential) {\n if (!verifiableCredential) throw new Error(`Resource with id '${id}' could not be found.`);\n\n return {\n isVerifiable: true,\n credential: verifiableCredential,\n };\n } else {\n return {\n isVerifiable: false,\n credential: draftCredential,\n };\n }\n }\n\n /**\n * @deprecated Please use `importCredential` instead. This method will be removed after January 2025.\n */\n async import(blob: BlobInput, request?: UpdatePayload): Promise<VerifiableCredential<T>> {\n return this.importCredential(blob, request);\n }\n\n async importCredential(blob: BlobInput, request?: UpdatePayload): Promise<VerifiableCredential<T>> {\n const credential = await this.importBlob(blob, request);\n\n return new VerifiableCredential(this.client, this.flavor, credential);\n }\n}\n\nexport { VerifiableCredential };\n"]}
|
|
@@ -6,7 +6,11 @@ export declare class VpDecorator {
|
|
|
6
6
|
private client;
|
|
7
7
|
constructor(client: ApiClient);
|
|
8
8
|
private importBlob;
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated Please use `importPresentation` instead. This method will be removed after January 2025.
|
|
11
|
+
*/
|
|
9
12
|
import(blob: BlobInput, request?: UpdatePayload): Promise<VerifiablePresentation>;
|
|
13
|
+
importPresentation(blob: BlobInput, request?: UpdatePayload): Promise<VerifiablePresentation>;
|
|
10
14
|
map(input: ResourcePresentation): VerifiablePresentation;
|
|
11
15
|
load(id: string, revision?: number): Promise<VerifiablePresentation>;
|
|
12
16
|
issue(credentials: ResourceCredential[], privateKeyId: string): Promise<VerifiablePresentation>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presentation.d.ts","sourceRoot":"","sources":["../../src/documents/presentation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5G,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,SAAS,EAA0B,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtF,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;YAEvB,UAAU;
|
|
1
|
+
{"version":3,"file":"presentation.d.ts","sourceRoot":"","sources":["../../src/documents/presentation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE5G,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,SAAS,EAA0B,aAAa,EAAE,MAAM,SAAS,CAAC;AAEtF,qBAAa,WAAW;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;YAEvB,UAAU;IA4BxB;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIjF,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAMnG,GAAG,CAAC,KAAK,EAAE,oBAAoB,GAAG,sBAAsB;IAWlD,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAQ1E,KAAK,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAC/F,KAAK,CAAC,WAAW,EAAE,oBAAoB,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IACtG,KAAK,CAAC,WAAW,EAAE,2BAA2B,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IACxG,KAAK,CAAC,WAAW,EAAE,wBAAwB,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IACrG,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAyBtF"}
|
|
@@ -48,7 +48,15 @@ class VpDecorator {
|
|
|
48
48
|
};
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* @deprecated Please use `importPresentation` instead. This method will be removed after January 2025.
|
|
53
|
+
*/
|
|
51
54
|
import(blob, request) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
return this.importPresentation(blob, request);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
importPresentation(blob, request) {
|
|
52
60
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
61
|
const resourcePresentation = yield this.importBlob(blob, request);
|
|
54
62
|
return new issued_1.VerifiablePresentation(this.client, resourcePresentation);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presentation.js","sourceRoot":"","sources":["../../src/documents/presentation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4DAA+B;AAG/B,8CAA4G;AAC5G,uCAAmD;AACnD,kDAA+D;AAG/D,MAAa,WAAW;IACpB,YAAoB,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAE3B,UAAU,CAAC,IAAe,EAAE,OAAuB;;;YAC7D,MAAM,cAAc,GAAG,IAAA,gCAAsB,EAAC,YAAY,CAAC,CAAC;YAC5D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;gBAC7E,cAAc;aACjB,CAAC,CAAC;YAEH,MAAM,IAAA,oBAAK,EAAC,SAAS,EAAE;gBACnB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;gBAC5E,WAAW,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW;gBACjC,MAAM,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM;gBACvB,MAAM;gBACN,cAAc;aACjB,CAAC,CAAC;YAEH,OAAO;gBACH,EAAE,EAAE,oBAAoB,CAAC,EAAE;gBAC3B,IAAI,EAAE,oBAAoB,CAAC,IAAI;gBAC/B,QAAQ,EAAE,oBAAoB,CAAC,QAAQ;gBACvC,IAAI,EAAE;oBACF,iBAAiB,EAAE,MAAA,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,mCAAI,EAAE;iBACvE;aACJ,CAAC;;KACL;
|
|
1
|
+
{"version":3,"file":"presentation.js","sourceRoot":"","sources":["../../src/documents/presentation.ts"],"names":[],"mappings":"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","sourcesContent":["import fetch from 'node-fetch';\n\nimport { ResourceCredential, ResourcePresentation } from '../api';\nimport { BaseVerifiableCredential, UnknownVerifiableCredential, VerifiableCredential } from './credential/';\nimport { generateIdempotencyKey } from './helpers';\nimport { VerifiablePresentation } from './presentation/issued';\nimport { ApiClient, BlobInput, PresentationDescriptor, UpdatePayload } from './types';\n\nexport class VpDecorator {\n constructor(private client: ApiClient) {}\n\n private async importBlob(blob: BlobInput, request?: UpdatePayload): Promise<PresentationDescriptor> {\n const idempotencyKey = generateIdempotencyKey('importBlob');\n const { blobId, uploadUri } = await this.client.presentations.presentationUpload({\n idempotencyKey,\n });\n\n await fetch(uploadUri, {\n method: 'PUT',\n body: blob,\n });\n\n const resourcePresentation = await this.client.presentations.presentationImport({\n annotations: request?.annotations,\n labels: request?.labels,\n blobId,\n idempotencyKey,\n });\n\n return {\n id: resourcePresentation.id,\n etag: resourcePresentation.etag,\n revision: resourcePresentation.revision,\n data: {\n linkedCredentials: resourcePresentation.data.linkedCredentials ?? [],\n },\n };\n }\n\n /**\n * @deprecated Please use `importPresentation` instead. This method will be removed after January 2025.\n */\n async import(blob: BlobInput, request?: UpdatePayload): Promise<VerifiablePresentation> {\n return this.importPresentation(blob, request);\n }\n\n async importPresentation(blob: BlobInput, request?: UpdatePayload): Promise<VerifiablePresentation> {\n const resourcePresentation = await this.importBlob(blob, request);\n\n return new VerifiablePresentation(this.client, resourcePresentation);\n }\n\n map(input: ResourcePresentation): VerifiablePresentation {\n return new VerifiablePresentation(this.client, {\n id: input.id,\n etag: input.etag,\n revision: input.revision,\n data: {\n linkedCredentials: input.data.linkedCredentials ?? [],\n },\n });\n }\n\n async load(id: string, revision?: number): Promise<VerifiablePresentation> {\n const resourcePresentation = revision\n ? await this.client.presentations.presentationRevision(id, revision)\n : await this.client.presentations.presentationLatest(id);\n\n return this.map(resourcePresentation);\n }\n\n issue(credentials: ResourceCredential[], privateKeyId: string): Promise<VerifiablePresentation>;\n issue(credentials: VerifiableCredential<any>[], privateKeyId: string): Promise<VerifiablePresentation>;\n issue(credentials: UnknownVerifiableCredential[], privateKeyId: string): Promise<VerifiablePresentation>;\n issue(credentials: BaseVerifiableCredential[], privateKeyId: string): Promise<VerifiablePresentation>;\n issue(credentials: string[], privateKeyId: string): Promise<VerifiablePresentation>;\n async issue(\n credentials: string[] | BaseVerifiableCredential[] | ResourceCredential[],\n privateKeyId: string,\n ): Promise<VerifiablePresentation> {\n const credentialIds: string[] = credentials.map((item) => {\n if (typeof item === 'string') return item;\n if (item instanceof BaseVerifiableCredential) return item.descriptor.id;\n return item.id;\n });\n\n const resourcePresentation = await this.client.presentations.presentationIssue({\n credentialIds,\n keyId: privateKeyId,\n });\n\n return new VerifiablePresentation(this.client, {\n id: resourcePresentation.id,\n etag: resourcePresentation.etag,\n revision: resourcePresentation.revision,\n data: {\n linkedCredentials: resourcePresentation.data.linkedCredentials ?? [],\n },\n });\n }\n}\n"]}
|
package/documents/types.d.ts
CHANGED
package/documents/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/documents/types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEtF,oBAAY,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAEhD,oBAAY,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEnD,oBAAY,cAAc,GAAG,MAAM,CAAC;AAEpC,oBAAY,QAAQ,GAAG,MAAM,CAAC;AAE9B,oBAAY,GAAG,GAAG,MAAM,CAAC;AAEzB,oBAAY,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEzC,oBAAY,aAAa,GAAG;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,IAAI,CAAC;CACzB,CAAC;AAEF,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/documents/types.ts"],"names":[],"mappings":"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"}
|
package/documents/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/documents/types.ts"],"names":[],"mappings":"","sourcesContent":["import { Readable } from 'stream';\nimport { TruvityClient } from '../Client';\nimport { VerifiableCredential } from './credential';\nimport { LinkedCredential, LinkedFile, Rfc3339Date, Rfc3339DateTime } from './models';\n\nexport type Ctor<T> = new (...args: any[]) => T;\n\nexport type BlobInput = Buffer | Readable | string;\n\nexport type CredentialBlob = Buffer;\n\nexport type FileBlob = Buffer;\n\nexport type Did = string;\n\nexport type Claims = Record<string, any>;\n\nexport type DraftMetadata = {\n subject?: string;\n expirationDate?: Date;\n};\n\nexport type CredentialMetadata = DraftMetadata & {\n id: string;\n issuer: string;\n issuanceDate: Date;\n};\n\nexport type ValueWithId = {\n id: string;\n digestMultibase?: string;\n};\n\nexport type LinkedEntityDescriptor = ValueWithId & {\n type: 'LinkedCredential' | 'LinkedFile';\n};\n\nexport type UpdateClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? LinkedEntityDescriptor\n : T[P] extends Rfc3339Date\n ? Rfc3339Date\n : T[P] extends Rfc3339DateTime\n ? Rfc3339DateTime\n : T[P] extends Claims\n ? UpdateClaims<T[P]>\n : T[P];\n};\n\nexport type UserUpdateClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<infer V>\n ? ValueWithId | VerifiableCredential<V> | LinkedCredential<V>\n : Exclude<T[P], undefined> extends LinkedFile\n ? ValueWithId | LinkedFile\n : T[P] extends Rfc3339Date\n ? Rfc3339Date\n : T[P] extends Rfc3339DateTime\n ? Rfc3339DateTime\n : T[P] extends Claims\n ? UserUpdateClaims<T[P]>\n : T[P];\n};\n\nexport type ReadDraftClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? T[P]\n : T[P] extends Claims\n ? ReadDraftClaims<T[P]>\n : T[P];\n};\n\nexport type ReadClaims<T extends Claims> = {\n [P in keyof T]: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? T[P]\n : T[P] extends Claims\n ? ReadClaims<T[P]>\n : T[P];\n};\n\nexport type DraftDataDescriptor = {\n meta?: {\n subject?: string;\n validUntil?: Date;\n };\n values?: Claims;\n};\n\ntype BaseDescriptor = {\n id: string;\n etag: string;\n revision: number;\n};\n\nexport type DraftDescriptor = BaseDescriptor;\n\nexport type CredentialDescriptor = BaseDescriptor & {\n data: {\n multihash?: string;\n };\n};\n\nexport type PresentationDescriptor = BaseDescriptor & {\n data: {\n linkedCredentials: string[];\n };\n};\n\nexport type FileDescriptor = BaseDescriptor & {\n data: {\n filename?: string;\n };\n};\n\nexport type UpdatePayload = {\n annotations?: Record<string, string>;\n labels?: Record<string, string>;\n};\n\nexport type UpdatePayloadWithClaims<T extends Claims> = UpdatePayload & {\n claims?: UserUpdateClaims<T>;\n metadata?: DraftMetadata;\n};\n\nexport type VerificationResult = {\n verified: boolean;\n};\n\nexport type ApiClient = Pick<TruvityClient, 'didcommMessages' | 'drafts' | 'credentials' | 'presentations' | 'files'>;\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/documents/types.ts"],"names":[],"mappings":"","sourcesContent":["import { Readable } from 'stream';\nimport { TruvityClient } from '../Client';\nimport { VerifiableCredential } from './credential';\nimport { LinkedCredential, LinkedFile, Rfc3339Date, Rfc3339DateTime } from './models';\n\nexport type Ctor<T> = new (...args: any[]) => T;\n\nexport type BlobInput = Buffer | Readable | string;\n\nexport type CredentialBlob = Buffer;\n\nexport type FileBlob = Buffer;\n\nexport type Did = string;\n\nexport type Claims = Record<string, any>;\n\nexport type DraftMetadata = {\n subject?: string;\n expirationDate?: Date;\n};\n\nexport type CredentialMetadata = DraftMetadata & {\n id: string;\n issuer: string;\n issuanceDate: Date;\n holder?: string;\n};\n\nexport type ValueWithId = {\n id: string;\n digestMultibase?: string;\n};\n\nexport type LinkedEntityDescriptor = ValueWithId & {\n type: 'LinkedCredential' | 'LinkedFile';\n};\n\nexport type UpdateClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? LinkedEntityDescriptor\n : T[P] extends Rfc3339Date\n ? Rfc3339Date\n : T[P] extends Rfc3339DateTime\n ? Rfc3339DateTime\n : T[P] extends Claims\n ? UpdateClaims<T[P]>\n : T[P];\n};\n\nexport type UserUpdateClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<infer V>\n ? ValueWithId | VerifiableCredential<V> | LinkedCredential<V>\n : Exclude<T[P], undefined> extends LinkedFile\n ? ValueWithId | LinkedFile\n : T[P] extends Rfc3339Date\n ? Rfc3339Date\n : T[P] extends Rfc3339DateTime\n ? Rfc3339DateTime\n : T[P] extends Claims\n ? UserUpdateClaims<T[P]>\n : T[P];\n};\n\nexport type ReadDraftClaims<T extends Claims> = {\n [P in keyof T]?: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? T[P]\n : T[P] extends Claims\n ? ReadDraftClaims<T[P]>\n : T[P];\n};\n\nexport type ReadClaims<T extends Claims> = {\n [P in keyof T]: Exclude<T[P], undefined> extends LinkedCredential<any> | LinkedFile\n ? T[P]\n : T[P] extends Claims\n ? ReadClaims<T[P]>\n : T[P];\n};\n\nexport type DraftDataDescriptor = {\n meta?: {\n subject?: string;\n validUntil?: Date;\n };\n values?: Claims;\n};\n\ntype BaseDescriptor = {\n id: string;\n etag: string;\n revision: number;\n};\n\nexport type DraftDescriptor = BaseDescriptor;\n\nexport type CredentialDescriptor = BaseDescriptor & {\n data: {\n multihash?: string;\n };\n};\n\nexport type PresentationDescriptor = BaseDescriptor & {\n data: {\n linkedCredentials: string[];\n };\n};\n\nexport type FileDescriptor = BaseDescriptor & {\n data: {\n filename?: string;\n };\n};\n\nexport type UpdatePayload = {\n annotations?: Record<string, string>;\n labels?: Record<string, string>;\n};\n\nexport type UpdatePayloadWithClaims<T extends Claims> = UpdatePayload & {\n claims?: UserUpdateClaims<T>;\n metadata?: DraftMetadata;\n};\n\nexport type VerificationResult = {\n verified: boolean;\n};\n\nexport type ApiClient = Pick<TruvityClient, 'didcommMessages' | 'drafts' | 'credentials' | 'presentations' | 'files'>;\n"]}
|
package/package.json
CHANGED
package/reference.md
CHANGED
|
@@ -3480,8 +3480,6 @@ jwx jwx generate --type OKP --curve Ed25519
|
|
|
3480
3480
|
jwx jwx generate --type EC --curve P-256
|
|
3481
3481
|
# P384
|
|
3482
3482
|
jwx jwx generate --type EC --curve P-384
|
|
3483
|
-
# SECP256K1
|
|
3484
|
-
jwx jwx generate --type EC --curve secp256k1
|
|
3485
3483
|
```
|
|
3486
3484
|
|
|
3487
3485
|
How to generate public key from private key by `jwx` (input format - JWK, output format - JWK)
|
|
@@ -3499,8 +3497,6 @@ openssl genpkey -algorithm ed25519 | openssl pkcs8 -nocrypt -topk8
|
|
|
3499
3497
|
openssl ecparam -name prime256v1 -noout -genkey | openssl pkcs8 -nocrypt -topk8
|
|
3500
3498
|
# P384
|
|
3501
3499
|
openssl ecparam -name secp384r1 -noout -genkey | openssl pkcs8 -nocrypt -topk8
|
|
3502
|
-
# SECP256K1
|
|
3503
|
-
openssl ecparam -name secp256k1 -noout -genkey | openssl pkcs8 -nocrypt -topk8
|
|
3504
3500
|
```
|
|
3505
3501
|
|
|
3506
3502
|
How to transform existing private key to PKCS8 format by OpenSSL (input format PEM, output format - PEM PCKS#8)
|
|
@@ -6,6 +6,6 @@ import * as Truvity from '../../api/index';
|
|
|
6
6
|
import * as core from '../../core';
|
|
7
7
|
export declare const EqualKeyTypeValue: core.serialization.Schema<serializers.EqualKeyTypeValue.Raw, Truvity.EqualKeyTypeValue>;
|
|
8
8
|
export declare namespace EqualKeyTypeValue {
|
|
9
|
-
type Raw = 'ED25519' | 'P256' | 'P384'
|
|
9
|
+
type Raw = 'ED25519' | 'P256' | 'P384';
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=EqualKeyTypeValue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EqualKeyTypeValue.d.ts","sourceRoot":"","sources":["../../../src/serialization/types/EqualKeyTypeValue.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,WAAW,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CACrD,WAAW,CAAC,iBAAiB,CAAC,GAAG,EACjC,OAAO,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"EqualKeyTypeValue.d.ts","sourceRoot":"","sources":["../../../src/serialization/types/EqualKeyTypeValue.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,WAAW,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CACrD,WAAW,CAAC,iBAAiB,CAAC,GAAG,EACjC,OAAO,CAAC,iBAAiB,CAC4B,CAAC;AAE1D,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACvC,KAAK,GAAG,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;CAC1C"}
|
|
@@ -28,5 +28,5 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.EqualKeyTypeValue = void 0;
|
|
30
30
|
const core = __importStar(require("../../core"));
|
|
31
|
-
exports.EqualKeyTypeValue = core.serialization.enum_(['ED25519', 'P256', 'P384'
|
|
31
|
+
exports.EqualKeyTypeValue = core.serialization.enum_(['ED25519', 'P256', 'P384']);
|
|
32
32
|
//# sourceMappingURL=EqualKeyTypeValue.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EqualKeyTypeValue.js","sourceRoot":"","sources":["../../../src/serialization/types/EqualKeyTypeValue.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAIH,iDAAmC;AAEtB,QAAA,iBAAiB,GAG1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"EqualKeyTypeValue.js","sourceRoot":"","sources":["../../../src/serialization/types/EqualKeyTypeValue.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAIH,iDAAmC;AAEtB,QAAA,iBAAiB,GAG1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC","sourcesContent":["/**\n * This file was auto-generated by Fern from our API Definition.\n */\n\nimport * as serializers from '../index';\nimport * as Truvity from '../../api/index';\nimport * as core from '../../core';\n\nexport const EqualKeyTypeValue: core.serialization.Schema<\n serializers.EqualKeyTypeValue.Raw,\n Truvity.EqualKeyTypeValue\n> = core.serialization.enum_(['ED25519', 'P256', 'P384']);\n\nexport declare namespace EqualKeyTypeValue {\n type Raw = 'ED25519' | 'P256' | 'P384';\n}\n"]}
|
|
@@ -6,6 +6,6 @@ import * as Truvity from '../../api/index';
|
|
|
6
6
|
import * as core from '../../core';
|
|
7
7
|
export declare const InKeyTypeValuesItem: core.serialization.Schema<serializers.InKeyTypeValuesItem.Raw, Truvity.InKeyTypeValuesItem>;
|
|
8
8
|
export declare namespace InKeyTypeValuesItem {
|
|
9
|
-
type Raw = 'ED25519' | 'P256' | 'P384'
|
|
9
|
+
type Raw = 'ED25519' | 'P256' | 'P384';
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=InKeyTypeValuesItem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InKeyTypeValuesItem.d.ts","sourceRoot":"","sources":["../../../src/serialization/types/InKeyTypeValuesItem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,WAAW,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CACvD,WAAW,CAAC,mBAAmB,CAAC,GAAG,EACnC,OAAO,CAAC,mBAAmB,
|
|
1
|
+
{"version":3,"file":"InKeyTypeValuesItem.d.ts","sourceRoot":"","sources":["../../../src/serialization/types/InKeyTypeValuesItem.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,WAAW,MAAM,UAAU,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAEnC,eAAO,MAAM,mBAAmB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CACvD,WAAW,CAAC,mBAAmB,CAAC,GAAG,EACnC,OAAO,CAAC,mBAAmB,CAC0B,CAAC;AAE1D,MAAM,CAAC,OAAO,WAAW,mBAAmB,CAAC;IACzC,KAAK,GAAG,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;CAC1C"}
|