@opentdf/sdk 0.9.0-rc.82 → 0.10.0-beta.95
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/README.md +2 -2
- package/dist/cjs/src/access/access-fetch.js +1 -2
- package/dist/cjs/src/access/access-rpc.js +1 -3
- package/dist/cjs/src/access.js +1 -14
- package/dist/cjs/src/auth/auth.js +13 -10
- package/dist/cjs/src/auth/dpop.js +121 -0
- package/dist/cjs/src/auth/oidc-clientcredentials-provider.js +37 -3
- package/dist/cjs/src/auth/oidc-externaljwt-provider.js +37 -3
- package/dist/cjs/src/auth/oidc-refreshtoken-provider.js +37 -3
- package/dist/cjs/src/auth/oidc.js +10 -8
- package/dist/cjs/src/auth/providers.js +35 -12
- package/dist/cjs/src/crypto/enums.js +1 -1
- package/dist/cjs/src/crypto/index.js +16 -2
- package/dist/cjs/src/crypto/pemPublicToCrypto.js +24 -20
- package/dist/cjs/src/errors.js +14 -2
- package/dist/cjs/src/index.js +8 -2
- package/dist/cjs/src/opentdf.js +50 -13
- package/dist/cjs/src/policy/discovery.js +188 -0
- package/dist/cjs/src/version.js +2 -2
- package/dist/cjs/tdf3/index.js +4 -2
- package/dist/cjs/tdf3/src/assertions.js +71 -31
- package/dist/cjs/tdf3/src/ciphers/aes-gcm-cipher.js +1 -1
- package/dist/cjs/tdf3/src/ciphers/symmetric-cipher-base.js +4 -2
- package/dist/cjs/tdf3/src/client/index.js +23 -33
- package/dist/cjs/tdf3/src/crypto/crypto-utils.js +12 -5
- package/dist/cjs/tdf3/src/crypto/declarations.js +1 -1
- package/dist/cjs/tdf3/src/crypto/index.js +849 -88
- package/dist/cjs/tdf3/src/crypto/jose/jwt-claims-set.js +11 -0
- package/dist/cjs/tdf3/src/crypto/jose/validate-crit.js +8 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/buffer_utils.js +41 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/epoch.js +6 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/is_object.js +21 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/jwt_claims_set.js +112 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/secs.js +60 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/lib/validate_crit.js +38 -0
- package/dist/cjs/tdf3/src/crypto/jose/vendor/util/errors.js +135 -0
- package/dist/cjs/tdf3/src/crypto/jwt.js +183 -0
- package/dist/cjs/tdf3/src/crypto/salt.js +14 -8
- package/dist/cjs/tdf3/src/models/encryption-information.js +17 -20
- package/dist/cjs/tdf3/src/models/key-access.js +43 -63
- package/dist/cjs/tdf3/src/tdf.js +75 -75
- package/dist/cjs/tdf3/src/utils/index.js +5 -39
- package/dist/types/src/access/access-fetch.d.ts.map +1 -1
- package/dist/types/src/access/access-rpc.d.ts.map +1 -1
- package/dist/types/src/access.d.ts +0 -5
- package/dist/types/src/access.d.ts.map +1 -1
- package/dist/types/src/auth/auth.d.ts +9 -6
- package/dist/types/src/auth/auth.d.ts.map +1 -1
- package/dist/types/src/auth/dpop.d.ts +60 -0
- package/dist/types/src/auth/dpop.d.ts.map +1 -0
- package/dist/types/src/auth/oidc-clientcredentials-provider.d.ts +3 -2
- package/dist/types/src/auth/oidc-clientcredentials-provider.d.ts.map +1 -1
- package/dist/types/src/auth/oidc-externaljwt-provider.d.ts +3 -2
- package/dist/types/src/auth/oidc-externaljwt-provider.d.ts.map +1 -1
- package/dist/types/src/auth/oidc-refreshtoken-provider.d.ts +3 -2
- package/dist/types/src/auth/oidc-refreshtoken-provider.d.ts.map +1 -1
- package/dist/types/src/auth/oidc.d.ts +6 -4
- package/dist/types/src/auth/oidc.d.ts.map +1 -1
- package/dist/types/src/auth/providers.d.ts +5 -4
- package/dist/types/src/auth/providers.d.ts.map +1 -1
- package/dist/types/src/crypto/enums.d.ts +1 -1
- package/dist/types/src/crypto/index.d.ts +2 -1
- package/dist/types/src/crypto/index.d.ts.map +1 -1
- package/dist/types/src/crypto/pemPublicToCrypto.d.ts +18 -0
- package/dist/types/src/crypto/pemPublicToCrypto.d.ts.map +1 -1
- package/dist/types/src/errors.d.ts +8 -0
- package/dist/types/src/errors.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +2 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/opentdf.d.ts +26 -7
- package/dist/types/src/opentdf.d.ts.map +1 -1
- package/dist/types/src/policy/discovery.d.ts +74 -0
- package/dist/types/src/policy/discovery.d.ts.map +1 -0
- package/dist/types/src/version.d.ts +1 -1
- package/dist/types/src/version.d.ts.map +1 -1
- package/dist/types/tdf3/index.d.ts +3 -3
- package/dist/types/tdf3/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/assertions.d.ts +23 -8
- package/dist/types/tdf3/src/assertions.d.ts.map +1 -1
- package/dist/types/tdf3/src/ciphers/aes-gcm-cipher.d.ts +3 -3
- package/dist/types/tdf3/src/ciphers/aes-gcm-cipher.d.ts.map +1 -1
- package/dist/types/tdf3/src/ciphers/symmetric-cipher-base.d.ts +4 -4
- package/dist/types/tdf3/src/ciphers/symmetric-cipher-base.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/builders.d.ts +2 -2
- package/dist/types/tdf3/src/client/builders.d.ts.map +1 -1
- package/dist/types/tdf3/src/client/index.d.ts +6 -5
- package/dist/types/tdf3/src/client/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/crypto/crypto-utils.d.ts +14 -4
- package/dist/types/tdf3/src/crypto/crypto-utils.d.ts.map +1 -1
- package/dist/types/tdf3/src/crypto/declarations.d.ts +283 -18
- package/dist/types/tdf3/src/crypto/declarations.d.ts.map +1 -1
- package/dist/types/tdf3/src/crypto/index.d.ts +105 -28
- package/dist/types/tdf3/src/crypto/index.d.ts.map +1 -1
- package/dist/types/tdf3/src/crypto/jose/jwt-claims-set.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/jwt-claims-set.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/validate-crit.d.ts +5 -0
- package/dist/types/tdf3/src/crypto/jose/validate-crit.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/buffer_utils.d.ts +6 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/buffer_utils.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/epoch.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/epoch.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/is_object.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/is_object.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/jwt_claims_set.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/jwt_claims_set.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/secs.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/secs.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/validate_crit.d.ts +3 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/lib/validate_crit.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/util/errors.d.ts +76 -0
- package/dist/types/tdf3/src/crypto/jose/vendor/util/errors.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/jwt.d.ts +76 -0
- package/dist/types/tdf3/src/crypto/jwt.d.ts.map +1 -0
- package/dist/types/tdf3/src/crypto/salt.d.ts +6 -1
- package/dist/types/tdf3/src/crypto/salt.d.ts.map +1 -1
- package/dist/types/tdf3/src/models/encryption-information.d.ts +4 -4
- package/dist/types/tdf3/src/models/encryption-information.d.ts.map +1 -1
- package/dist/types/tdf3/src/models/key-access.d.ts +8 -5
- package/dist/types/tdf3/src/models/key-access.d.ts.map +1 -1
- package/dist/types/tdf3/src/tdf.d.ts +8 -8
- package/dist/types/tdf3/src/tdf.d.ts.map +1 -1
- package/dist/types/tdf3/src/utils/index.d.ts +4 -3
- package/dist/types/tdf3/src/utils/index.d.ts.map +1 -1
- package/dist/web/src/access/access-fetch.js +3 -4
- package/dist/web/src/access/access-rpc.js +3 -5
- package/dist/web/src/access.js +1 -13
- package/dist/web/src/auth/auth.js +13 -10
- package/dist/web/src/auth/dpop.js +118 -0
- package/dist/web/src/auth/oidc-clientcredentials-provider.js +4 -3
- package/dist/web/src/auth/oidc-externaljwt-provider.js +4 -3
- package/dist/web/src/auth/oidc-refreshtoken-provider.js +4 -3
- package/dist/web/src/auth/oidc.js +11 -9
- package/dist/web/src/auth/providers.js +13 -12
- package/dist/web/src/crypto/enums.js +1 -1
- package/dist/web/src/crypto/index.js +4 -2
- package/dist/web/src/crypto/pemPublicToCrypto.js +18 -18
- package/dist/web/src/errors.js +12 -1
- package/dist/web/src/index.js +3 -2
- package/dist/web/src/opentdf.js +17 -13
- package/dist/web/src/policy/discovery.js +182 -0
- package/dist/web/src/version.js +2 -2
- package/dist/web/tdf3/index.js +3 -2
- package/dist/web/tdf3/src/assertions.js +71 -31
- package/dist/web/tdf3/src/ciphers/aes-gcm-cipher.js +1 -1
- package/dist/web/tdf3/src/ciphers/symmetric-cipher-base.js +4 -2
- package/dist/web/tdf3/src/client/index.js +25 -35
- package/dist/web/tdf3/src/crypto/crypto-utils.js +12 -5
- package/dist/web/tdf3/src/crypto/declarations.js +1 -1
- package/dist/web/tdf3/src/crypto/index.js +830 -84
- package/dist/web/tdf3/src/crypto/jose/jwt-claims-set.js +5 -0
- package/dist/web/tdf3/src/crypto/jose/validate-crit.js +3 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/buffer_utils.js +35 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/epoch.js +4 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/is_object.js +19 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/jwt_claims_set.js +107 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/secs.js +58 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/lib/validate_crit.js +36 -0
- package/dist/web/tdf3/src/crypto/jose/vendor/util/errors.js +117 -0
- package/dist/web/tdf3/src/crypto/jwt.js +174 -0
- package/dist/web/tdf3/src/crypto/salt.js +13 -7
- package/dist/web/tdf3/src/models/encryption-information.js +11 -14
- package/dist/web/tdf3/src/models/key-access.js +44 -31
- package/dist/web/tdf3/src/tdf.js +71 -71
- package/dist/web/tdf3/src/utils/index.js +5 -6
- package/package.json +11 -4
- package/src/access/access-fetch.ts +2 -8
- package/src/access/access-rpc.ts +0 -7
- package/src/access.ts +0 -17
- package/src/auth/auth.ts +21 -12
- package/src/auth/dpop.ts +222 -0
- package/src/auth/oidc-clientcredentials-provider.ts +23 -15
- package/src/auth/oidc-externaljwt-provider.ts +23 -15
- package/src/auth/oidc-refreshtoken-provider.ts +23 -15
- package/src/auth/oidc.ts +21 -10
- package/src/auth/providers.ts +46 -29
- package/src/crypto/enums.ts +1 -1
- package/src/crypto/index.ts +21 -1
- package/src/crypto/pemPublicToCrypto.ts +18 -20
- package/src/errors.ts +9 -0
- package/src/index.ts +7 -0
- package/src/opentdf.ts +36 -17
- package/src/policy/discovery.ts +222 -0
- package/src/version.ts +1 -1
- package/tdf3/index.ts +32 -5
- package/tdf3/src/assertions.ts +99 -30
- package/tdf3/src/ciphers/aes-gcm-cipher.ts +7 -2
- package/tdf3/src/ciphers/symmetric-cipher-base.ts +7 -4
- package/tdf3/src/client/builders.ts +2 -2
- package/tdf3/src/client/index.ts +60 -59
- package/tdf3/src/crypto/crypto-utils.ts +15 -8
- package/tdf3/src/crypto/declarations.ts +338 -22
- package/tdf3/src/crypto/index.ts +1021 -118
- package/tdf3/src/crypto/jose/jwt-claims-set.ts +10 -0
- package/tdf3/src/crypto/jose/validate-crit.ts +9 -0
- package/tdf3/src/crypto/jose/vendor/lib/buffer_utils.ts +34 -0
- package/tdf3/src/crypto/jose/vendor/lib/epoch.ts +3 -0
- package/tdf3/src/crypto/jose/vendor/lib/is_object.ts +18 -0
- package/tdf3/src/crypto/jose/vendor/lib/jwt_claims_set.ts +106 -0
- package/tdf3/src/crypto/jose/vendor/lib/secs.ts +57 -0
- package/tdf3/src/crypto/jose/vendor/lib/validate_crit.ts +35 -0
- package/tdf3/src/crypto/jose/vendor/util/errors.ts +101 -0
- package/tdf3/src/crypto/jwt.ts +256 -0
- package/tdf3/src/crypto/salt.ts +16 -8
- package/tdf3/src/models/encryption-information.ts +14 -21
- package/tdf3/src/models/key-access.ts +57 -41
- package/tdf3/src/tdf.ts +110 -93
- package/tdf3/src/utils/index.ts +5 -6
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.AccessToken = void 0;
|
|
7
|
-
const
|
|
7
|
+
const dpop_js_1 = __importDefault(require("./dpop.js"));
|
|
8
8
|
const auth_js_1 = require("./auth.js");
|
|
9
9
|
const index_js_1 = require("../encodings/index.js");
|
|
10
10
|
const errors_js_1 = require("../errors.js");
|
|
@@ -33,7 +33,7 @@ const qstringify = (obj) => new URLSearchParams(obj).toString();
|
|
|
33
33
|
* explicit token refresh
|
|
34
34
|
*/
|
|
35
35
|
class AccessToken {
|
|
36
|
-
constructor(cfg, request) {
|
|
36
|
+
constructor(cfg, cryptoService, request) {
|
|
37
37
|
this.extraHeaders = {};
|
|
38
38
|
if (!cfg.clientId) {
|
|
39
39
|
throw new errors_js_1.ConfigurationError('A Keycloak client identifier is currently required for all auth mechanisms');
|
|
@@ -51,6 +51,7 @@ class AccessToken {
|
|
|
51
51
|
throw new errors_js_1.ConfigurationError('Invalid oidc configuration');
|
|
52
52
|
}
|
|
53
53
|
this.config = cfg;
|
|
54
|
+
this.cryptoService = cryptoService;
|
|
54
55
|
this.request = request;
|
|
55
56
|
this.baseUrl = (0, utils_js_1.rstrip)(cfg.oidcOrigin, '/');
|
|
56
57
|
this.tokenEndpoint = cfg.oidcTokenEndpoint || `${this.baseUrl}/protocol/openid-connect/token`;
|
|
@@ -69,7 +70,7 @@ class AccessToken {
|
|
|
69
70
|
Authorization: `Bearer ${accessToken}`,
|
|
70
71
|
};
|
|
71
72
|
if (this.config.dpopEnabled && this.signingKey) {
|
|
72
|
-
headers.DPoP = await (0,
|
|
73
|
+
headers.DPoP = await (0, dpop_js_1.default)(this.signingKey, this.cryptoService, this.userInfoEndpoint, 'POST');
|
|
73
74
|
}
|
|
74
75
|
const response = await (this.request || fetch)(this.userInfoEndpoint, {
|
|
75
76
|
headers,
|
|
@@ -90,9 +91,10 @@ class AccessToken {
|
|
|
90
91
|
if (!this.signingKey) {
|
|
91
92
|
throw new errors_js_1.ConfigurationError('No signature configured');
|
|
92
93
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
headers
|
|
94
|
+
// Export opaque public key to PEM format for header
|
|
95
|
+
const publicKeyPem = await this.cryptoService.exportPublicKeyPem(this.signingKey.publicKey);
|
|
96
|
+
headers['X-VirtruPubKey'] = index_js_1.base64.encode(publicKeyPem);
|
|
97
|
+
headers.DPoP = await (0, dpop_js_1.default)(this.signingKey, this.cryptoService, url, 'POST');
|
|
96
98
|
}
|
|
97
99
|
return (this.request || fetch)(url, {
|
|
98
100
|
method: 'POST',
|
|
@@ -211,7 +213,7 @@ class AccessToken {
|
|
|
211
213
|
}
|
|
212
214
|
const accessToken = (this.currentAccessToken ??= await this.get());
|
|
213
215
|
if (this.config.dpopEnabled && this.signingKey) {
|
|
214
|
-
const dpopToken = await (0,
|
|
216
|
+
const dpopToken = await (0, dpop_js_1.default)(this.signingKey, this.cryptoService, httpReq.url, httpReq.method,
|
|
215
217
|
/* nonce */ undefined, accessToken);
|
|
216
218
|
// TODO: Consider: only set DPoP if cnf.jkt is present in access token?
|
|
217
219
|
return (0, auth_js_1.withHeaders)(httpReq, { Authorization: `Bearer ${accessToken}`, DPoP: dpopToken });
|
|
@@ -220,4 +222,4 @@ class AccessToken {
|
|
|
220
222
|
}
|
|
221
223
|
}
|
|
222
224
|
exports.AccessToken = AccessToken;
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2lkYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hdXRoL29pZGMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0RBQThDO0FBQzlDLHVDQUFxRDtBQUNyRCxvREFBK0M7QUFDL0MsNENBQTREO0FBQzVELDBDQUFxQztBQXFEckMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxHQUEyQixFQUFFLEVBQUUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQU94Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBQ0gsTUFBYSxXQUFXO0lBbUJ0QixZQUFZLEdBQW9CLEVBQUUsYUFBNEIsRUFBRSxPQUFzQjtRQU50RixpQkFBWSxHQUEyQixFQUFFLENBQUM7UUFPeEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksOEJBQWtCLENBQzFCLDRFQUE0RSxDQUM3RSxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksR0FBRyxDQUFDLFFBQVEsS0FBSyxRQUFRLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbkQsTUFBTSxJQUFJLDhCQUFrQixDQUMxQiw0RUFBNEUsQ0FDN0UsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BELE1BQU0sSUFBSSw4QkFBa0IsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO1FBQzdGLENBQUM7UUFDRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssVUFBVSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3BELE1BQU0sSUFBSSw4QkFBa0IsQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO1FBQ3BGLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFB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
|
|
@@ -10,6 +10,28 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
11
|
o[k2] = m[k];
|
|
12
12
|
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
13
35
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
37
|
};
|
|
@@ -20,6 +42,7 @@ const oidc_externaljwt_provider_js_1 = require("./oidc-externaljwt-provider.js")
|
|
|
20
42
|
const oidc_refreshtoken_provider_js_1 = require("./oidc-refreshtoken-provider.js");
|
|
21
43
|
const utils_js_1 = require("../utils.js");
|
|
22
44
|
const errors_js_1 = require("../errors.js");
|
|
45
|
+
const defaultCryptoService = __importStar(require("../../tdf3/src/crypto/index.js"));
|
|
23
46
|
/**
|
|
24
47
|
* Creates an OIDC Client Credentials Provider for non-browser contexts.
|
|
25
48
|
*
|
|
@@ -38,14 +61,14 @@ const errors_js_1 = require("../errors.js");
|
|
|
38
61
|
* {@link updateClientPublicKey} which will force an explicit token refresh
|
|
39
62
|
*
|
|
40
63
|
*/
|
|
41
|
-
const clientSecretAuthProvider = async (clientConfig) => {
|
|
64
|
+
const clientSecretAuthProvider = async (clientConfig, cryptoService = defaultCryptoService) => {
|
|
42
65
|
return new oidc_clientcredentials_provider_js_1.OIDCClientCredentialsProvider({
|
|
43
66
|
clientId: clientConfig.clientId,
|
|
44
67
|
clientSecret: clientConfig.clientSecret,
|
|
45
68
|
oidcOrigin: clientConfig.oidcOrigin,
|
|
46
69
|
oidcTokenEndpoint: clientConfig.oidcTokenEndpoint,
|
|
47
70
|
oidcUserInfoEndpoint: clientConfig.oidcUserInfoEndpoint,
|
|
48
|
-
});
|
|
71
|
+
}, cryptoService);
|
|
49
72
|
};
|
|
50
73
|
exports.clientSecretAuthProvider = clientSecretAuthProvider;
|
|
51
74
|
/**
|
|
@@ -64,14 +87,14 @@ exports.clientSecretAuthProvider = clientSecretAuthProvider;
|
|
|
64
87
|
* Virtru claims. The public key may be passed to this provider's constructor, or supplied post-construction by calling
|
|
65
88
|
* {@link updateClientPublicKey}, which will force an explicit token refresh.
|
|
66
89
|
*/
|
|
67
|
-
const externalAuthProvider = async (clientConfig) => {
|
|
90
|
+
const externalAuthProvider = async (clientConfig, cryptoService = defaultCryptoService) => {
|
|
68
91
|
return new oidc_externaljwt_provider_js_1.OIDCExternalJwtProvider({
|
|
69
92
|
clientId: clientConfig.clientId,
|
|
70
93
|
externalJwt: clientConfig.externalJwt,
|
|
71
94
|
oidcOrigin: clientConfig.oidcOrigin,
|
|
72
95
|
oidcTokenEndpoint: clientConfig.oidcTokenEndpoint,
|
|
73
96
|
oidcUserInfoEndpoint: clientConfig.oidcUserInfoEndpoint,
|
|
74
|
-
});
|
|
97
|
+
}, cryptoService);
|
|
75
98
|
};
|
|
76
99
|
exports.externalAuthProvider = externalAuthProvider;
|
|
77
100
|
/**
|
|
@@ -88,14 +111,14 @@ exports.externalAuthProvider = externalAuthProvider;
|
|
|
88
111
|
* Virtru claims. The public key may be passed to this provider's constructor, or supplied post-construction by calling
|
|
89
112
|
* {@link updateClientPublicKey} which will force an explicit token refresh
|
|
90
113
|
*/
|
|
91
|
-
const refreshAuthProvider = async (clientConfig) => {
|
|
114
|
+
const refreshAuthProvider = async (clientConfig, cryptoService = defaultCryptoService) => {
|
|
92
115
|
return new oidc_refreshtoken_provider_js_1.OIDCRefreshTokenProvider({
|
|
93
116
|
clientId: clientConfig.clientId,
|
|
94
117
|
refreshToken: clientConfig.refreshToken,
|
|
95
118
|
oidcOrigin: clientConfig.oidcOrigin,
|
|
96
119
|
oidcTokenEndpoint: clientConfig.oidcTokenEndpoint,
|
|
97
120
|
oidcUserInfoEndpoint: clientConfig.oidcUserInfoEndpoint,
|
|
98
|
-
});
|
|
121
|
+
}, cryptoService);
|
|
99
122
|
};
|
|
100
123
|
exports.refreshAuthProvider = refreshAuthProvider;
|
|
101
124
|
/**
|
|
@@ -103,7 +126,7 @@ exports.refreshAuthProvider = refreshAuthProvider;
|
|
|
103
126
|
* @param clientConfig OIDC client credentials
|
|
104
127
|
* @returns a promise for a new auth provider with the requested excahnge type
|
|
105
128
|
*/
|
|
106
|
-
const clientAuthProvider = async (clientConfig) => {
|
|
129
|
+
const clientAuthProvider = async (clientConfig, cryptoService = defaultCryptoService) => {
|
|
107
130
|
if (!clientConfig.clientId) {
|
|
108
131
|
throw new errors_js_1.ConfigurationError('Client ID must be provided to constructor');
|
|
109
132
|
}
|
|
@@ -118,13 +141,13 @@ const clientAuthProvider = async (clientConfig) => {
|
|
|
118
141
|
//and provide us with a valid refresh token/clientId obtained from that process.
|
|
119
142
|
switch (clientConfig.exchange) {
|
|
120
143
|
case 'refresh': {
|
|
121
|
-
return (0, exports.refreshAuthProvider)(clientConfig);
|
|
144
|
+
return (0, exports.refreshAuthProvider)(clientConfig, cryptoService);
|
|
122
145
|
}
|
|
123
146
|
case 'external': {
|
|
124
|
-
return (0, exports.externalAuthProvider)(clientConfig);
|
|
147
|
+
return (0, exports.externalAuthProvider)(clientConfig, cryptoService);
|
|
125
148
|
}
|
|
126
149
|
case 'client': {
|
|
127
|
-
return (0, exports.clientSecretAuthProvider)(clientConfig);
|
|
150
|
+
return (0, exports.clientSecretAuthProvider)(clientConfig, cryptoService);
|
|
128
151
|
}
|
|
129
152
|
default:
|
|
130
153
|
throw new errors_js_1.ConfigurationError(`Unsupported client type`);
|
|
@@ -136,7 +159,7 @@ const clientAuthProvider = async (clientConfig) => {
|
|
|
136
159
|
if (clientConfig.exchange !== 'client') {
|
|
137
160
|
throw new errors_js_1.ConfigurationError('When using client credentials, must supply both client ID and client secret to constructor');
|
|
138
161
|
}
|
|
139
|
-
return (0, exports.clientSecretAuthProvider)(clientConfig);
|
|
162
|
+
return (0, exports.clientSecretAuthProvider)(clientConfig, cryptoService);
|
|
140
163
|
};
|
|
141
164
|
exports.clientAuthProvider = clientAuthProvider;
|
|
142
165
|
__exportStar(require("./auth.js"), exports);
|
|
@@ -146,4 +169,4 @@ var oidc_externaljwt_provider_js_2 = require("./oidc-externaljwt-provider.js");
|
|
|
146
169
|
Object.defineProperty(exports, "OIDCExternalJwtProvider", { enumerable: true, get: function () { return oidc_externaljwt_provider_js_2.OIDCExternalJwtProvider; } });
|
|
147
170
|
var oidc_refreshtoken_provider_js_2 = require("./oidc-refreshtoken-provider.js");
|
|
148
171
|
Object.defineProperty(exports, "OIDCRefreshTokenProvider", { enumerable: true, get: function () { return oidc_refreshtoken_provider_js_2.OIDCRefreshTokenProvider; } });
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F1dGgvcHJvdmlkZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLDZGQUFxRjtBQUNyRixpRkFBeUU7QUFFekUsbUZBQTJFO0FBQzNFLDBDQUF3QztBQUN4Qyw0Q0FBa0Q7QUFFbEQscUZBQXVFO0FBRXZFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUNJLE1BQU0sd0JBQXdCLEdBQUcsS0FBSyxFQUMzQyxZQUFxQyxFQUNyQyxnQkFBK0Isb0JBQW9CLEVBQ1gsRUFBRTtJQUMxQyxPQUFPLElBQUksa0VBQTZCLENBQ3RDO1FBQ0UsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRO1FBQy9CLFlBQVksRUFBRSxZQUFZLENBQUMsWUFBWTtRQUN2QyxVQUFVLEVBQUUsWUFBWSxDQUFDLFVBQVU7UUFDbkMsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLGlCQUFpQjtRQUNqRCxvQkFBb0IsRUFBRSxZQUFZLENBQUMsb0JBQW9CO0tBQ3hELEVBQ0QsYUFBYSxDQUNkLENBQUM7QUFDSixDQUFDLENBQUM7QUFkVyxRQUFBLHdCQUF3Qiw0QkFjbkM7QUFFRjs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSSxNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDdkMsWUFBb0MsRUFDcEMsZ0JBQStCLG9CQUFvQixFQUNqQixFQUFFO0lBQ3BDLE9BQU8sSUFBSSxzREFBdUIsQ0FDaEM7UUFDRSxRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVE7UUFDL0IsV0FBVyxFQUFFLFlBQVksQ0FBQyxXQUFXO1FBQ3JDLFVBQVUsRUFBRSxZQUFZLENBQUMsVUFBVTtRQUNuQyxpQkFBaUIsRUFBRSxZQUFZLENBQUMsaUJBQWlCO1FBQ2pELG9CQUFvQixFQUFFLFlBQVksQ0FBQyxvQkFBb0I7S0FDeEQsRUFDRCxhQUFhLENBQ2QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQWRXLFFBQUEsb0JBQW9CLHdCQWMvQjtBQUVGOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSSxNQUFNLG1CQUFtQixHQUFHLEtBQUssRUFDdEMsWUFBcUMsRUFDckMsZ0JBQStCLG9CQUFvQixFQUNoQixFQUFFO0lBQ3JDLE9BQU8sSUFBSSx3REFBd0IsQ0FDakM7UUFDRSxRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVE7UUFDL0IsWUFBWSxFQUFFLFlBQVksQ0FBQyxZQUFZO1FBQ3ZDLFVBQVUsRUFBRSxZQUFZLENBQUMsVUFBVTtRQUNuQyxpQkFBaUIsRUFBRSxZQUFZLENBQUMsaUJBQWlCO1FBQ2pELG9CQUFvQixFQUFFLFlBQVksQ0FBQyxvQkFBb0I7S0FDeEQsRUFDRCxhQUFhLENBQ2QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQWRXLFFBQUEsbUJBQW1CLHVCQWM5QjtBQUVGOzs7O0dBSUc7QUFDSSxNQUFNLGtCQUFrQixHQUFHLEtBQUssRUFDckMsWUFBNkIsRUFDN0IsZ0JBQStCLG9CQUFvQixFQUM1QixFQUFFO0lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDM0IsTUFBTSxJQUFJLDhCQUFrQixDQUFDLDJDQUEyQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELElBQUksSUFBQSxvQkFBUyxHQUFFLEVBQUUsQ0FBQztRQUNoQiwyRUFBMkU7UUFDM0UsbUNBQW1DO1FBQ25DLDJGQUEyRjtRQUMzRixJQUFJO1FBQ0osMEZBQTBGO1FBQzFGLDBFQUEwRTtRQUMxRSwwR0FBMEc7UUFDMUcsZ0ZBQWdGO1FBQ2hGLFFBQVEsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzlCLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQztnQkFDZixPQUFPLElBQUEsMkJBQW1CLEVBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQzFELENBQUM7WUFDRCxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hCLE9BQU8sSUFBQSw0QkFBb0IsRUFBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDM0QsQ0FBQztZQUNELEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQztnQkFDZCxPQUFPLElBQUEsZ0NBQXdCLEVBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQy9ELENBQUM7WUFDRDtnQkFDRSxNQUFNLElBQUksOEJBQWtCLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM1RCxDQUFDO0lBQ0gsQ0FBQztJQUNELHVGQUF1RjtJQUN2Riw2R0FBNkc7SUFDN0csNERBQTREO0lBQzVELElBQUksWUFBWSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUN2QyxNQUFNLElBQUksOEJBQWtCLENBQzFCLDRGQUE0RixDQUM3RixDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sSUFBQSxnQ0FBd0IsRUFBQyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUFDO0FBeENXLFFBQUEsa0JBQWtCLHNCQXdDN0I7QUFFRiw0Q0FBMEI7QUFDMUIsMkZBQXFGO0FBQTVFLG1KQUFBLDZCQUE2QixPQUFBO0FBQ3RDLCtFQUF5RTtBQUFoRSx1SUFBQSx1QkFBdUIsT0FBQTtBQUNoQyxpRkFBMkU7QUFBbEUseUlBQUEsd0JBQXdCLE9BQUEifQ==
|
|
@@ -14,7 +14,7 @@ var NamedCurve;
|
|
|
14
14
|
(function (NamedCurve) {
|
|
15
15
|
NamedCurve["P256"] = "P-256";
|
|
16
16
|
NamedCurve["P384"] = "P-384";
|
|
17
|
-
NamedCurve["
|
|
17
|
+
NamedCurve["P521"] = "P-521";
|
|
18
18
|
})(NamedCurve || (exports.NamedCurve = NamedCurve = {}));
|
|
19
19
|
var CipherType;
|
|
20
20
|
(function (CipherType) {
|
|
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.enums = exports.pemCertToCrypto = exports.pemPublicToCrypto = exports.generateRandomNumber = exports.exportCryptoKey = exports.keyAgreement = exports.generateKeyPair = exports.encrypt = exports.digest = exports.decrypt = exports.Ciphers = void 0;
|
|
39
|
+
exports.isCryptoKeyPair = exports.isPemKeyPair = exports.removePemFormatting = exports.formatAsPem = exports.enums = exports.P521_OID = exports.P384_OID = exports.P256_OID = exports.EC_OID = exports.RSA_OID = exports.toJwsAlg = exports.guessCurveName = exports.guessAlgorithmName = exports.pemCertToCrypto = exports.pemPublicToCrypto = exports.generateRandomNumber = exports.exportCryptoKey = exports.keyAgreement = exports.generateKeyPair = exports.encrypt = exports.digest = exports.decrypt = exports.Ciphers = void 0;
|
|
40
40
|
var ciphers_js_1 = require("./ciphers.js");
|
|
41
41
|
Object.defineProperty(exports, "Ciphers", { enumerable: true, get: function () { return ciphers_js_1.Ciphers; } });
|
|
42
42
|
var decrypt_js_1 = require("./decrypt.js");
|
|
@@ -56,5 +56,19 @@ Object.defineProperty(exports, "generateRandomNumber", { enumerable: true, get:
|
|
|
56
56
|
var pemPublicToCrypto_js_1 = require("./pemPublicToCrypto.js");
|
|
57
57
|
Object.defineProperty(exports, "pemPublicToCrypto", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.pemPublicToCrypto; } });
|
|
58
58
|
Object.defineProperty(exports, "pemCertToCrypto", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.pemCertToCrypto; } });
|
|
59
|
+
Object.defineProperty(exports, "guessAlgorithmName", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.guessAlgorithmName; } });
|
|
60
|
+
Object.defineProperty(exports, "guessCurveName", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.guessCurveName; } });
|
|
61
|
+
Object.defineProperty(exports, "toJwsAlg", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.toJwsAlg; } });
|
|
62
|
+
Object.defineProperty(exports, "RSA_OID", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.RSA_OID; } });
|
|
63
|
+
Object.defineProperty(exports, "EC_OID", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.EC_OID; } });
|
|
64
|
+
Object.defineProperty(exports, "P256_OID", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.P256_OID; } });
|
|
65
|
+
Object.defineProperty(exports, "P384_OID", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.P384_OID; } });
|
|
66
|
+
Object.defineProperty(exports, "P521_OID", { enumerable: true, get: function () { return pemPublicToCrypto_js_1.P521_OID; } });
|
|
59
67
|
exports.enums = __importStar(require("./enums.js"));
|
|
60
|
-
|
|
68
|
+
// PEM Formatting Utilities from tdf3
|
|
69
|
+
var crypto_utils_js_1 = require("../../tdf3/src/crypto/crypto-utils.js");
|
|
70
|
+
Object.defineProperty(exports, "formatAsPem", { enumerable: true, get: function () { return crypto_utils_js_1.formatAsPem; } });
|
|
71
|
+
Object.defineProperty(exports, "removePemFormatting", { enumerable: true, get: function () { return crypto_utils_js_1.removePemFormatting; } });
|
|
72
|
+
Object.defineProperty(exports, "isPemKeyPair", { enumerable: true, get: function () { return crypto_utils_js_1.isPemKeyPair; } });
|
|
73
|
+
Object.defineProperty(exports, "isCryptoKeyPair", { enumerable: true, get: function () { return crypto_utils_js_1.isCryptoKeyPair; } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3J5cHRvL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF1QztBQUE5QixxR0FBQSxPQUFPLE9BQUE7QUFDaEIsMkNBQWtEO0FBQXpDLHNIQUFBLE9BQU8sT0FBVztBQUMzQix5Q0FBZ0Q7QUFBdkMsb0hBQUEsT0FBTyxPQUFVO0FBQzFCLDJDQUFrRDtBQUF6QyxzSEFBQSxPQUFPLE9BQVc7QUFDM0IsMkRBQXVEO0FBQTlDLHFIQUFBLGVBQWUsT0FBQTtBQUN4QixxREFBaUQ7QUFBeEMsK0dBQUEsWUFBWSxPQUFBO0FBQ3JCLDJEQUFrRTtBQUF6RCxzSUFBQSxPQUFPLE9BQW1CO0FBQ25DLHFFQUFpRTtBQUF4RCwrSEFBQSxvQkFBb0IsT0FBQTtBQUM3QiwrREFZZ0M7QUFYOUIseUhBQUEsaUJBQWlCLE9BQUE7QUFDakIsdUhBQUEsZUFBZSxPQUFBO0FBQ2YsMEhBQUEsa0JBQWtCLE9BQUE7QUFDbEIsc0hBQUEsY0FBYyxPQUFBO0FBQ2QsZ0hBQUEsUUFBUSxPQUFBO0FBQ1IsK0dBQUEsT0FBTyxPQUFBO0FBQ1AsOEdBQUEsTUFBTSxPQUFBO0FBQ04sZ0hBQUEsUUFBUSxPQUFBO0FBQ1IsZ0hBQUEsUUFBUSxPQUFBO0FBQ1IsZ0hBQUEsUUFBUSxPQUFBO0FBR1Ysb0RBQW9DO0FBRXBDLHFDQUFxQztBQUNyQyx5RUFLK0M7QUFKN0MsOEdBQUEsV0FBVyxPQUFBO0FBQ1gsc0hBQUEsbUJBQW1CLE9BQUE7QUFDbkIsK0dBQUEsWUFBWSxPQUFBO0FBQ1osa0hBQUEsZUFBZSxPQUFBIn0=
|
|
@@ -41,7 +41,11 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
41
41
|
};
|
|
42
42
|
})();
|
|
43
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
+
exports.P521_OID = exports.P384_OID = exports.P256_OID = exports.EC_OID = exports.RSA_OID = void 0;
|
|
45
|
+
exports.guessAlgorithmName = guessAlgorithmName;
|
|
46
|
+
exports.guessCurveName = guessCurveName;
|
|
44
47
|
exports.pemPublicToCrypto = pemPublicToCrypto;
|
|
48
|
+
exports.toJwsAlg = toJwsAlg;
|
|
45
49
|
exports.pemCertToCrypto = pemCertToCrypto;
|
|
46
50
|
/**
|
|
47
51
|
* MIT License
|
|
@@ -66,18 +70,17 @@ const base64 = __importStar(require("../encodings/base64.js"));
|
|
|
66
70
|
const jose_1 = require("jose");
|
|
67
71
|
const hex_js_1 = require("../encodings/hex.js");
|
|
68
72
|
const errors_js_1 = require("../errors.js");
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
73
|
+
const enums_js_1 = require("./enums.js");
|
|
74
|
+
// OID constants for algorithm detection (hex-encoded ASN.1 OIDs)
|
|
75
|
+
exports.RSA_OID = '06092a864886f70d010101';
|
|
76
|
+
exports.EC_OID = '06072a8648ce3d0201';
|
|
77
|
+
exports.P256_OID = '06082a8648ce3d030107';
|
|
78
|
+
exports.P384_OID = '06052b81040022';
|
|
79
|
+
exports.P521_OID = '06052b81040023';
|
|
74
80
|
const SHA_512 = 'SHA-512';
|
|
75
81
|
const SPKI = 'spki';
|
|
76
82
|
const CERT_BEGIN = '-----BEGIN CERTIFICATE-----';
|
|
77
83
|
const CERT_END = '-----END CERTIFICATE-----';
|
|
78
|
-
const P_256 = 'P-256';
|
|
79
|
-
const P_384 = 'P-384';
|
|
80
|
-
const P_512 = 'P-512';
|
|
81
84
|
const ECDH = 'ECDH';
|
|
82
85
|
const ECDSA = 'ECDSA';
|
|
83
86
|
const RSA_OAEP = 'RSA-OAEP';
|
|
@@ -98,7 +101,7 @@ function guessKeyUsages(algorithmName, usages) {
|
|
|
98
101
|
}
|
|
99
102
|
}
|
|
100
103
|
function guessAlgorithmName(hex, algorithmName) {
|
|
101
|
-
if (hex.includes(EC_OID)) {
|
|
104
|
+
if (hex.includes(exports.EC_OID)) {
|
|
102
105
|
if (!algorithmName || algorithmName === ECDH) {
|
|
103
106
|
return ECDH;
|
|
104
107
|
}
|
|
@@ -106,7 +109,7 @@ function guessAlgorithmName(hex, algorithmName) {
|
|
|
106
109
|
return ECDSA;
|
|
107
110
|
}
|
|
108
111
|
}
|
|
109
|
-
else if (hex.includes(RSA_OID)) {
|
|
112
|
+
else if (hex.includes(exports.RSA_OID)) {
|
|
110
113
|
if (!algorithmName || algorithmName === RSA_OAEP) {
|
|
111
114
|
return RSA_OAEP;
|
|
112
115
|
}
|
|
@@ -117,14 +120,14 @@ function guessAlgorithmName(hex, algorithmName) {
|
|
|
117
120
|
throw new TypeError(`Invalid public key, ${algorithmName}`);
|
|
118
121
|
}
|
|
119
122
|
function guessCurveName(hex) {
|
|
120
|
-
if (hex.includes(P256_OID)) {
|
|
121
|
-
return
|
|
123
|
+
if (hex.includes(exports.P256_OID)) {
|
|
124
|
+
return enums_js_1.NamedCurve.P256;
|
|
122
125
|
}
|
|
123
|
-
else if (hex.includes(P384_OID)) {
|
|
124
|
-
return
|
|
126
|
+
else if (hex.includes(exports.P384_OID)) {
|
|
127
|
+
return enums_js_1.NamedCurve.P384;
|
|
125
128
|
}
|
|
126
|
-
else if (hex.includes(P521_OID)) {
|
|
127
|
-
return
|
|
129
|
+
else if (hex.includes(exports.P521_OID)) {
|
|
130
|
+
return enums_js_1.NamedCurve.P521;
|
|
128
131
|
}
|
|
129
132
|
throw new errors_js_1.TdfError('Unsupported curve name or invalid key');
|
|
130
133
|
}
|
|
@@ -168,6 +171,7 @@ async function pemPublicToCrypto(pem, options = {
|
|
|
168
171
|
}
|
|
169
172
|
}
|
|
170
173
|
/**
|
|
174
|
+
* Detect JWS algorithm from hex-encoded key/certificate data.
|
|
171
175
|
* Look up JWK algorithm at https://github.com/panva/jose/issues/210
|
|
172
176
|
*/
|
|
173
177
|
function toJwsAlg(hex) {
|
|
@@ -177,11 +181,11 @@ function toJwsAlg(hex) {
|
|
|
177
181
|
}
|
|
178
182
|
else if (a === ECDSA) {
|
|
179
183
|
switch (guessCurveName(hex)) {
|
|
180
|
-
case
|
|
184
|
+
case enums_js_1.NamedCurve.P256:
|
|
181
185
|
return 'ES256';
|
|
182
|
-
case
|
|
186
|
+
case enums_js_1.NamedCurve.P384:
|
|
183
187
|
return 'ES384';
|
|
184
|
-
case
|
|
188
|
+
case enums_js_1.NamedCurve.P521:
|
|
185
189
|
return 'ES512';
|
|
186
190
|
}
|
|
187
191
|
}
|
|
@@ -208,4 +212,4 @@ async function pemCertToCrypto(pem, options = {
|
|
|
208
212
|
}
|
|
209
213
|
return key;
|
|
210
214
|
}
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
215
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVtUHVibGljVG9DcnlwdG8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3J5cHRvL3BlbVB1YmxpY1RvQ3J5cHRvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7OztHQU9HOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtRUgsZ0RBZUM7QUFFRCx3Q0FTQztBQVlELDhDQTJDQztBQU1ELDRCQWtCQztBQUVELDBDQWtCQztBQTlMRDs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBRUgsK0RBQWlEO0FBQ2pELCtCQUFrQztBQUNsQyxnREFBZ0Y7QUFDaEYsNENBQTREO0FBQzVELHlDQUF3QztBQUV4QyxpRUFBaUU7QUFDcEQsUUFBQSxPQUFPLEdBQUcsd0JBQXdCLENBQUM7QUFDbkMsUUFBQSxNQUFNLEdBQUcsb0JBQW9CLENBQUM7QUFDOUIsUUFBQSxRQUFRLEdBQUcsc0JBQXNCLENBQUM7QUFDbEMsUUFBQSxRQUFRLEdBQUcsZ0JBQWdCLENBQUM7QUFDNUIsUUFBQSxRQUFRLEdBQUcsZ0JBQWdCLENBQUM7QUFDekMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDO0FBQzFCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQztBQUNwQixNQUFNLFVBQVUsR0FBRyw2QkFBNkIsQ0FBQztBQUNqRCxNQUFNLFFBQVEsR0FBRywyQkFBMkIsQ0FBQztBQUU3QyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUM7QUFDcEIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO0FBQ3RCLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQztBQUM1QixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFVMUIsU0FBUyxjQUFjLENBQUMsYUFBNEIsRUFBRSxNQUFtQjtJQUN2RSxJQUFJLE1BQU07UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUMxQixRQUFRLGFBQWEsRUFBRSxDQUFDO1FBQ3RCLEtBQUssS0FBSztZQUNSLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwQixLQUFLLFFBQVE7WUFDWCxPQUFPLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2hDLEtBQUssT0FBTztZQUNWLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwQixLQUFLLElBQUksQ0FBQztRQUNWO1lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0FBQ0gsQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQVcsRUFBRSxhQUFzQjtJQUNwRSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsY0FBTSxDQUFDLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsYUFBYSxJQUFJLGFBQWEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM3QyxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7YUFBTSxJQUFJLGFBQWEsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNuQyxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7SUFDSCxDQUFDO1NBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQU8sQ0FBQyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLGFBQWEsSUFBSSxhQUFhLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDakQsT0FBTyxRQUFRLENBQUM7UUFDbEIsQ0FBQzthQUFNLElBQUksYUFBYSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3JDLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0lBQ0QsTUFBTSxJQUFJLFNBQVMsQ0FBQyx1QkFBdUIsYUFBYSxFQUFFLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEdBQVc7SUFDeEMsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLGdCQUFRLENBQUMsRUFBRSxDQUFDO1FBQzNCLE9BQU8scUJBQVUsQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQztTQUFNLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxnQkFBUSxDQUFDLEVBQUUsQ0FBQztRQUNsQyxPQUFPLHFCQUFVLENBQUMsSUFBSSxDQUFDO0lBQ3pCLENBQUM7U0FBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsZ0JBQVEsQ0FBQyxFQUFFLENBQUM7UUFDbEMsT0FBTyxxQkFBVSxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0lBQ0QsTUFBTSxJQUFJLG9CQUFRLENBQUMsdUNBQXVDLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBRUQ7Ozs7Ozs7OztHQVNHO0FBQ0ksS0FBSyxVQUFVLGlCQUFpQixDQUNyQyxHQUFXLEVBQ1gsVUFBb0M7SUFDbEMsYUFBYSxFQUFFLElBQUk7Q0FDcEI7SUFFRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuQyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEQsTUFBTSxHQUFHLEdBQUcsSUFBQSwwQkFBb0IsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUU5QyxNQUFNLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVELE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWhFLElBQUksYUFBYSxLQUFLLElBQUksSUFBSSxhQUFhLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDdEQsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQzVCLElBQUksRUFDSixXQUFXLEVBQ1g7WUFDRSxJQUFJLEVBQUUsYUFBYTtZQUNuQixVQUFVO1NBQ1gsRUFDRCxPQUFPLENBQUMsYUFBYSxFQUNyQixTQUFTLENBQ1YsQ0FBQztJQUNKLENBQUM7U0FBTSxJQUFJLGFBQWEsS0FBSyxRQUFRLElBQUksYUFBYSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQ25FLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQzVCLElBQUksRUFDSixXQUFXLEVBQ1g7WUFDRSxJQUFJLEVBQUUsYUFBYTtZQUNuQixJQUFJLEVBQUU7Z0JBQ0osSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksT0FBTzthQUM5QjtTQUNGLEVBQ0QsT0FBTyxDQUFDLGFBQWEsRUFDckIsU0FBUyxDQUNWLENBQUM7SUFDSixDQUFDO1NBQU0sQ0FBQztRQUNOLE1BQU0sSUFBSSxTQUFTLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUM1QyxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxHQUFXO0lBQ2xDLE1BQU0sQ0FBQyxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ2YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztTQUFNLElBQUksQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLFFBQVEsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUIsS0FBSyxxQkFBVSxDQUFDLElBQUk7Z0JBQ2xCLE9BQU8sT0FBTyxDQUFDO1lBQ2pCLEtBQUsscUJBQVUsQ0FBQyxJQUFJO2dCQUNsQixPQUFPLE9BQU8sQ0FBQztZQUNqQixLQUFLLHFCQUFVLENBQUMsSUFBSTtnQkFDbEIsT0FBTyxPQUFPLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7U0FBTSxJQUFJLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUMxQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7QUFDSCxDQUFDO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FDbkMsR0FBVyxFQUNYLFVBQW9DO0lBQ2xDLGFBQWEsRUFBRSxJQUFJO0NBQ3BCO0lBRUQsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxNQUFNLEdBQUcsR0FBRyxJQUFBLDBCQUFvQixFQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUEsaUJBQVUsRUFBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDckIsSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLDhCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMifQ==
|
package/dist/cjs/src/errors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UnsupportedFeatureError = exports.PermissionDeniedError = exports.UnauthenticatedError = exports.ServiceError = exports.NetworkError = exports.UnsafeUrlError = exports.IntegrityError = exports.DecryptError = exports.InvalidFileError = exports.AttributeValidationError = exports.ConfigurationError = exports.TdfError = void 0;
|
|
3
|
+
exports.AttributeNotFoundError = exports.UnsupportedFeatureError = exports.PermissionDeniedError = exports.UnauthenticatedError = exports.ServiceError = exports.NetworkError = exports.UnsafeUrlError = exports.IntegrityError = exports.DecryptError = exports.InvalidFileError = exports.AttributeValidationError = exports.ConfigurationError = exports.TdfError = void 0;
|
|
4
4
|
function scrubCause(error, d) {
|
|
5
5
|
if (!error || (d && d > 4)) {
|
|
6
6
|
return {};
|
|
@@ -138,4 +138,16 @@ class UnsupportedFeatureError extends TdfError {
|
|
|
138
138
|
}
|
|
139
139
|
}
|
|
140
140
|
exports.UnsupportedFeatureError = UnsupportedFeatureError;
|
|
141
|
-
|
|
141
|
+
/**
|
|
142
|
+
* One or more attribute value FQNs were not found on the platform.
|
|
143
|
+
* Thrown by {@link validateAttributes} and {@link validateAttributeValue} when the platform
|
|
144
|
+
* does not recognize the requested FQNs.
|
|
145
|
+
*/
|
|
146
|
+
class AttributeNotFoundError extends TdfError {
|
|
147
|
+
constructor() {
|
|
148
|
+
super(...arguments);
|
|
149
|
+
this.name = 'AttributeNotFoundError';
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
exports.AttributeNotFoundError = AttributeNotFoundError;
|
|
153
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxTQUFTLFVBQVUsQ0FBQyxLQUFhLEVBQUUsQ0FBVTtJQUMzQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzNCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUNELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQWMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNoQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEIsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFDRCxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUM7QUFDbkIsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQWEsUUFBUyxTQUFRLEtBQUs7SUFHakMsWUFBWSxPQUFnQixFQUFFLEtBQWE7UUFDekMsS0FBSyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUgzQixTQUFJLEdBQUcsVUFBVSxDQUFDO1FBSXpCLDRFQUE0RTtRQUM1RSw2SUFBNkk7UUFDN0kseUdBQXlHO1FBQ3pHLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFF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
|
package/dist/cjs/src/index.js
CHANGED
|
@@ -36,13 +36,18 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.ConfigurationError = exports.AttributeValidationError = exports.NetworkError = exports.DecryptError = exports.InvalidFileError = exports.IntegrityError = exports.PermissionDeniedError = exports.TdfError = exports.PlatformClient = exports.tdfSpecVersion = exports.clientType = exports.version = exports.attributeFQNsAsValues = exports.AuthProviders = exports.withHeaders = exports.HttpRequest = void 0;
|
|
39
|
+
exports.ConfigurationError = exports.AttributeNotFoundError = exports.AttributeValidationError = exports.NetworkError = exports.DecryptError = exports.InvalidFileError = exports.IntegrityError = exports.PermissionDeniedError = exports.TdfError = exports.PlatformClient = exports.tdfSpecVersion = exports.clientType = exports.version = exports.attributeValueExists = exports.attributeExists = exports.validateAttributes = exports.listAttributes = exports.attributeFQNsAsValues = exports.AuthProviders = exports.withHeaders = exports.HttpRequest = void 0;
|
|
40
40
|
var auth_js_1 = require("./auth/auth.js");
|
|
41
41
|
Object.defineProperty(exports, "HttpRequest", { enumerable: true, get: function () { return auth_js_1.HttpRequest; } });
|
|
42
42
|
Object.defineProperty(exports, "withHeaders", { enumerable: true, get: function () { return auth_js_1.withHeaders; } });
|
|
43
43
|
exports.AuthProviders = __importStar(require("./auth/providers.js"));
|
|
44
44
|
var api_js_1 = require("./policy/api.js");
|
|
45
45
|
Object.defineProperty(exports, "attributeFQNsAsValues", { enumerable: true, get: function () { return api_js_1.attributeFQNsAsValues; } });
|
|
46
|
+
var discovery_js_1 = require("./policy/discovery.js");
|
|
47
|
+
Object.defineProperty(exports, "listAttributes", { enumerable: true, get: function () { return discovery_js_1.listAttributes; } });
|
|
48
|
+
Object.defineProperty(exports, "validateAttributes", { enumerable: true, get: function () { return discovery_js_1.validateAttributes; } });
|
|
49
|
+
Object.defineProperty(exports, "attributeExists", { enumerable: true, get: function () { return discovery_js_1.attributeExists; } });
|
|
50
|
+
Object.defineProperty(exports, "attributeValueExists", { enumerable: true, get: function () { return discovery_js_1.attributeValueExists; } });
|
|
46
51
|
var version_js_1 = require("./version.js");
|
|
47
52
|
Object.defineProperty(exports, "version", { enumerable: true, get: function () { return version_js_1.version; } });
|
|
48
53
|
Object.defineProperty(exports, "clientType", { enumerable: true, get: function () { return version_js_1.clientType; } });
|
|
@@ -58,7 +63,8 @@ Object.defineProperty(exports, "InvalidFileError", { enumerable: true, get: func
|
|
|
58
63
|
Object.defineProperty(exports, "DecryptError", { enumerable: true, get: function () { return errors_js_1.DecryptError; } });
|
|
59
64
|
Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return errors_js_1.NetworkError; } });
|
|
60
65
|
Object.defineProperty(exports, "AttributeValidationError", { enumerable: true, get: function () { return errors_js_1.AttributeValidationError; } });
|
|
66
|
+
Object.defineProperty(exports, "AttributeNotFoundError", { enumerable: true, get: function () { return errors_js_1.AttributeNotFoundError; } });
|
|
61
67
|
Object.defineProperty(exports, "ConfigurationError", { enumerable: true, get: function () { return errors_js_1.ConfigurationError; } });
|
|
62
68
|
__exportStar(require("./seekable.js"), exports);
|
|
63
69
|
__exportStar(require("../tdf3/src/models/index.js"), exports);
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQThGO0FBQWpELHNHQUFBLFdBQVcsT0FBQTtBQUFFLHNHQUFBLFdBQVcsT0FBQTtBQUNyRSxxRUFBcUQ7QUFDckQsMENBQXdEO0FBQS9DLCtHQUFBLHFCQUFxQixPQUFBO0FBQzlCLHNEQUsrQjtBQUo3Qiw4R0FBQSxjQUFjLE9BQUE7QUFDZCxrSEFBQSxrQkFBa0IsT0FBQTtBQUNsQiwrR0FBQSxlQUFlLE9BQUE7QUFDZixvSEFBQSxvQkFBb0IsT0FBQTtBQUV0QiwyQ0FBbUU7QUFBMUQscUdBQUEsT0FBTyxPQUFBO0FBQUUsd0dBQUEsVUFBVSxPQUFBO0FBQUUsNEdBQUEsY0FBYyxPQUFBO0FBQzVDLDZDQUFrRztBQUF6Riw2R0FBQSxjQUFjLE9BQUE7QUFDdkIsK0NBQTZCO0FBQzdCLHlDQVVxQjtBQVRuQixxR0FBQSxRQUFRLE9BQUE7QUFDUixrSEFBQSxxQkFBcUIsT0FBQTtBQUNyQiwyR0FBQSxjQUFjLE9BQUE7QUFDZCw2R0FBQSxnQkFBZ0IsT0FBQTtBQUNoQix5R0FBQSxZQUFZLE9BQUE7QUFDWix5R0FBQSxZQUFZLE9BQUE7QUFDWixxSEFBQSx3QkFBd0IsT0FBQTtBQUN4QixtSEFBQSxzQkFBc0IsT0FBQTtBQUN0QiwrR0FBQSxrQkFBa0IsT0FBQTtBQUVwQixnREFBOEI7QUFDOUIsOERBQTRDIn0=
|