@sphereon/ssi-sdk-ext.jwt-service
Version:
1,465 lines (1,464 loc) • 224 kB
JavaScript
"use strict";
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
var __commonJS = (cb, mod) => function __require() {
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
mod
));
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// plugin.schema.json
var require_plugin_schema = __commonJS({
"plugin.schema.json"(exports, module2) {
module2.exports = {
IJwtService: {
components: {
schemas: {
CreateJwsCompactArgs: {
$ref: "#/components/schemas/CreateJwsArgs"
},
CreateJwsArgs: {
type: "object",
properties: {
mode: {
$ref: "#/components/schemas/JwsIdentifierMode"
},
issuer: {
anyOf: [
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
},
x5c: {
type: "array",
items: {
type: "string"
}
},
certificate: {}
},
required: [
"certificate",
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kmsKeyRef",
"method",
"opts",
"x5c"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
},
did: {
type: "string"
},
keys: {
type: "array",
items: {
$ref: "#/components/schemas/IKey"
}
},
verificationMethodSection: {
$ref: "#/components/schemas/DIDDocumentSection"
},
controllerKeyId: {
type: "string"
}
},
required: [
"did",
"identifier",
"issuer",
"jwk",
"jwkThumbprint",
"key",
"keys",
"kid",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
}
},
required: [
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
}
},
required: [
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kid",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
}
},
required: [
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
}
},
required: [
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
jwk: {
$ref: "#/components/schemas/JWK"
},
jwkThumbprint: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
method: {
$ref: "#/components/schemas/ManagedIdentifierMethod"
},
opts: {
$ref: "#/components/schemas/ManagedIdentifierOpts"
},
key: {
$ref: "#/components/schemas/IKey"
},
kid: {
type: "string"
},
issuer: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
identifier: {
$ref: "#/components/schemas/ManagedIdentifierType"
}
},
required: [
"identifier",
"jwk",
"jwkThumbprint",
"key",
"kmsKeyRef",
"method",
"opts"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "jwk"
},
identifier: {
$ref: "#/components/schemas/JWK"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "x5c"
},
identifier: {
type: "array",
items: {
type: "string"
}
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "did"
},
identifier: {
anyOf: [
{
$ref: "#/components/schemas/IIdentifier"
},
{
type: "string"
}
]
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
keyType: {
$ref: "#/components/schemas/TKeyType"
},
offlineWhenNoDIDRegistered: {
type: "boolean"
},
noVerificationMethodFallback: {
type: "boolean"
},
controllerKey: {
type: "boolean"
},
vmRelationship: {
$ref: "#/components/schemas/DIDDocumentSection"
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "kid"
},
identifier: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "key"
},
identifier: {
$ref: "#/components/schemas/IKey"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "cose_key"
},
identifier: {
$ref: "#/components/schemas/ICoseKeyJson"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
noIssPayloadUpdate: {
type: "boolean"
},
noIdentifierInHeader: {
type: "boolean"
},
lazyDisabled: {
type: "boolean"
},
method: {
type: "string",
const: "oid4vci-issuer"
},
identifier: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
}
]
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
protectedHeader: {
$ref: "#/components/schemas/JwsHeader"
},
payload: {
anyOf: [
{
$ref: "#/components/schemas/JwsPayload"
},
{
$ref: "#/components/schemas/Uint8Array"
},
{
type: "string"
}
]
}
},
required: [
"issuer",
"protectedHeader",
"payload"
],
additionalProperties: false
},
JwsIdentifierMode: {
type: "string",
enum: [
"x5c",
"kid",
"jwk",
"did",
"auto"
]
},
JWK: {
type: "object",
properties: {
kty: {
anyOf: [
{
$ref: "#/components/schemas/JwkKeyType"
},
{
$ref: "#/components/schemas/JwkKeyTypeString"
}
]
},
crv: {
anyOf: [
{
$ref: "#/components/schemas/JoseCurve"
},
{
$ref: "#/components/schemas/JoseCurveString"
}
]
},
alg: {
anyOf: [
{
$ref: "#/components/schemas/JoseSignatureAlgorithm"
},
{
$ref: "#/components/schemas/JoseSignatureAlgorithmString"
}
]
},
x: {
type: "string"
},
y: {
type: "string"
},
e: {
type: "string"
},
n: {
type: "string"
},
d: {
type: "string"
},
dp: {
type: "string"
},
dq: {
type: "string"
},
ext: {
type: "boolean"
},
k: {
type: "string"
},
key_ops: {
type: "array",
items: {
anyOf: [
{
$ref: "#/components/schemas/JoseKeyOperation"
},
{
$ref: "#/components/schemas/JoseKeyOperationString"
}
]
}
},
kid: {
type: "string"
},
oth: {
type: "array",
items: {
type: "object",
properties: {
d: {
type: "string"
},
r: {
type: "string"
},
t: {
type: "string"
}
},
additionalProperties: false
}
},
p: {
type: "string"
},
q: {
type: "string"
},
qi: {
type: "string"
},
use: {
type: "string"
},
x5c: {
type: "array",
items: {
type: "string"
},
description: 'JWK "x5c" (X.509 Certificate Chain) Parameter.'
},
x5t: {
type: "string",
description: 'JWK "x5t" (X.509 Certificate SHA-1 Thumbprint) Parameter.'
},
"x5t#S256": {
type: "string",
description: '"x5t#S256" (X.509 Certificate SHA-256 Thumbprint) Parameter.'
},
x5u: {
type: "string",
description: 'JWK "x5u" (X.509 URL) Parameter.'
},
iv: {
type: "string"
}
},
required: [
"kty"
]
},
JwkKeyType: {
type: "string",
enum: [
"EC",
"RSA",
"oct",
"OKP"
]
},
JwkKeyTypeString: {
type: "string",
enum: [
"EC",
"RSA",
"oct",
"OKP"
]
},
JoseCurve: {
type: "string",
enum: [
"P-256",
"P-384",
"P-521",
"X25519",
"X448",
"EdDSA",
"Ed25519",
"Ed448",
"secp256k1"
]
},
JoseCurveString: {
type: "string",
enum: [
"P-256",
"P-384",
"P-521",
"X25519",
"X448",
"EdDSA",
"Ed25519",
"Ed448",
"secp256k1"
]
},
JoseSignatureAlgorithm: {
type: "string",
enum: [
"RS256",
"RS384",
"RS512",
"ES256",
"ES256K",
"ES384",
"ES512",
"EdDSA",
"HS256",
"HS384",
"HS512",
"PS256",
"PS384",
"PS512",
"none"
]
},
JoseSignatureAlgorithmString: {
type: "string",
enum: [
"RS256",
"RS384",
"RS512",
"ES256",
"ES256K",
"ES384",
"ES512",
"EdDSA",
"HS256",
"HS384",
"HS512",
"PS256",
"PS384",
"PS512",
"none"
]
},
JoseKeyOperation: {
type: "string",
enum: [
"sign",
"verify",
"encrypt",
"decrypt",
"wrapKey",
"unwrapKey",
"deriveKey",
"deriveBits"
]
},
JoseKeyOperationString: {
type: "string",
enum: [
"sign",
"verify",
"encrypt",
"decrypt",
"wrapKey",
"unwrapKey",
"deriveKey",
"deriveBits"
]
},
ManagedIdentifierMethod: {
type: "string",
enum: [
"did",
"jwk",
"x5c",
"kid",
"key",
"cose_key",
"oid4vci-issuer"
]
},
ManagedIdentifierOpts: {
anyOf: [
{
type: "object",
additionalProperties: false,
properties: {
method: {
type: "string",
const: "jwk"
},
identifier: {
$ref: "#/components/schemas/JWK"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
method: {
type: "string",
const: "x5c"
},
identifier: {
type: "array",
items: {
type: "string"
}
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
method: {
type: "string",
const: "did"
},
identifier: {
anyOf: [
{
$ref: "#/components/schemas/IIdentifier"
},
{
type: "string"
}
]
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
},
keyType: {
$ref: "#/components/schemas/TKeyType"
},
offlineWhenNoDIDRegistered: {
type: "boolean"
},
noVerificationMethodFallback: {
type: "boolean"
},
controllerKey: {
type: "boolean"
},
vmRelationship: {
$ref: "#/components/schemas/DIDDocumentSection"
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
method: {
type: "string",
const: "kid"
},
identifier: {
type: "string"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: "string"
},
clientIdScheme: {
anyOf: [
{
$ref: "#/components/schemas/ClientIdScheme"
},
{
type: "string",
const: "did"
},
{
type: "string"
}
]
}
},
required: [
"identifier"
]
},
{
type: "object",
additionalProperties: false,
properties: {
method: {
type: "string",
const: "key"
},
identifier: {
$ref: "#/components/schemas/IKey"
},
kmsKeyRef: {
type: "string"
},
issuer: {
type: "string"
},
kid: {
type: "string"
},
clientId: {
type: