@sudoplatform/sudo-common 8.3.0 → 8.4.0

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/cjs/index.js CHANGED
@@ -11,4 +11,5 @@ tslib_1.__exportStar(require("./utils/stream"), exports);
11
11
  tslib_1.__exportStar(require("./errors/error"), exports);
12
12
  tslib_1.__exportStar(require("./logging/logger"), exports);
13
13
  tslib_1.__exportStar(require("./types/types"), exports);
14
+ tslib_1.__exportStar(require("./logging/bunyanLogger"), exports);
14
15
  //# sourceMappingURL=index.js.map
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,6FAAkE;AAClE,2DAAgC;AAChC,2DAAgC;AAChC,yDAA8B;AAC9B,yDAA8B;AAC9B,uDAA4B;AAC5B,yDAA8B;AAC9B,yDAA8B;AAC9B,2DAAgC;AAChC,wDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,6FAAkE;AAClE,2DAAgC;AAChC,2DAAgC;AAChC,yDAA8B;AAC9B,yDAA8B;AAC9B,uDAA4B;AAC5B,yDAA8B;AAC9B,yDAA8B;AAC9B,2DAAgC;AAChC,wDAA6B;AAC7B,iEAAsC"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createBunyanLogger = exports.getLogLevel = void 0;
3
+ exports.createBunyanLogger = exports.getLogLevel = exports.Level = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const browser_bunyan_1 = require("browser-bunyan");
6
6
  const console_plain_stream_1 = require("@browser-bunyan/console-plain-stream");
7
7
  const t = tslib_1.__importStar(require("io-ts"));
8
8
  const pipeable_1 = require("fp-ts/lib/pipeable");
9
9
  const Either_1 = require("fp-ts/lib/Either");
10
- const Level = t.union([
10
+ exports.Level = t.union([
11
11
  t.literal('trace'),
12
12
  t.literal('debug'),
13
13
  t.literal('info'),
@@ -19,7 +19,7 @@ function getLogLevel(level) {
19
19
  if (!level) {
20
20
  return undefined;
21
21
  }
22
- return (0, pipeable_1.pipe)(Level.decode(level), (0, Either_1.fold)(() => undefined, (v) => v));
22
+ return (0, pipeable_1.pipe)(exports.Level.decode(level), (0, Either_1.fold)(() => undefined, (v) => v));
23
23
  }
24
24
  exports.getLogLevel = getLogLevel;
25
25
  function createBunyanLogger(identifier, logLevel) {
@@ -1 +1 @@
1
- {"version":3,"file":"bunyanLogger.js","sourceRoot":"","sources":["../../src/logging/bunyanLogger.ts"],"names":[],"mappings":";;;;AAAA,mDAA6D;AAC7D,+EAAyE;AACzE,iDAA0B;AAC1B,iDAAyC;AACzC,6CAAuC;AAEvC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACpB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACnB,CAAC,CAAA;AAIF,SAAgB,WAAW,CAAC,KAAyB;IACnD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAA,eAAI,EACT,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACnB,IAAA,aAAI,EACF,GAAG,EAAE,CAAC,SAAS,EACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACT,CACF,CAAA;AACH,CAAC;AAZD,kCAYC;AAED,SAAgB,kBAAkB,CAChC,UAAmB,EACnB,QAAiB;IAEjB,MAAM,KAAK,GACT,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAA;IACvE,MAAM,GAAG,GAAG,IAAA,6BAAY,EAAC;QACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU,IAAI,YAAY;QAC5D,KAAK;QACL,WAAW,EAAE,+BAAc;QAC3B,MAAM,EAAE,IAAI,yCAAkB,EAAE;KACjC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAbD,gDAaC"}
1
+ {"version":3,"file":"bunyanLogger.js","sourceRoot":"","sources":["../../src/logging/bunyanLogger.ts"],"names":[],"mappings":";;;;AAAA,mDAA6D;AAC7D,+EAAyE;AACzE,iDAA0B;AAC1B,iDAAyC;AACzC,6CAAuC;AAE1B,QAAA,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACnB,CAAC,CAAA;AAIF,SAAgB,WAAW,CAAC,KAAyB;IACnD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAA,eAAI,EACT,aAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACnB,IAAA,aAAI,EACF,GAAG,EAAE,CAAC,SAAS,EACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACT,CACF,CAAA;AACH,CAAC;AAZD,kCAYC;AAED,SAAgB,kBAAkB,CAChC,UAAmB,EACnB,QAAiB;IAEjB,MAAM,KAAK,GACT,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAA;IACvE,MAAM,GAAG,GAAG,IAAA,6BAAY,EAAC;QACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU,IAAI,YAAY;QAC5D,KAAK;QACL,WAAW,EAAE,+BAAc;QAC3B,MAAM,EAAE,IAAI,yCAAkB,EAAE;KACjC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC;AAbD,gDAaC"}
@@ -1,7 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultSudoKeyManager = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  const buffer_1 = require("../utils/buffer");
6
+ const publicKey_1 = require("./publicKey");
7
+ const pkijs = tslib_1.__importStar(require("pkijs"));
8
+ const asn1js = tslib_1.__importStar(require("asn1js"));
9
+ const base64_1 = require("../utils/base64");
10
+ const error_1 = require("../errors/error");
11
+ /**
12
+ * ASN.1 OIDs.
13
+ */
14
+ var OID;
15
+ (function (OID) {
16
+ OID["rsaEncryption"] = "1.2.840.113549.1.1.1";
17
+ })(OID || (OID = {}));
5
18
  class DefaultSudoKeyManager {
6
19
  /**
7
20
  * @param namespace A namespace to use as part of the key name. If a namespace is specified then
@@ -62,6 +75,40 @@ class DefaultSudoKeyManager {
62
75
  getPublicKey(name) {
63
76
  return this.sudoCryptoProvider.getPublicKey(name);
64
77
  }
78
+ async exportPublicKeyAsPEM(name, format) {
79
+ const publicKey = await this.getPublicKey(name);
80
+ if (!publicKey) {
81
+ return undefined;
82
+ }
83
+ if (publicKey.keyFormat === publicKey_1.PublicKeyFormat.RSAPublicKey) {
84
+ if (format === publicKey_1.PublicKeyFormat.RSAPublicKey) {
85
+ return this.publicKeyToPEM(publicKey.keyData, format);
86
+ }
87
+ else {
88
+ // Convert RSAPublicKey (RFC3447) to SPKI (RFC5280).
89
+ const spki = new pkijs.PublicKeyInfo();
90
+ spki.algorithm = new pkijs.AlgorithmIdentifier({
91
+ algorithmId: OID.rsaEncryption,
92
+ algorithmParams: new asn1js.Null(),
93
+ });
94
+ spki.subjectPublicKey = new asn1js.BitString({
95
+ valueHex: publicKey.keyData,
96
+ });
97
+ return this.publicKeyToPEM(spki.toSchema().toBER(), format);
98
+ }
99
+ }
100
+ else {
101
+ if (format === publicKey_1.PublicKeyFormat.SPKI) {
102
+ return this.publicKeyToPEM(publicKey.keyData, format);
103
+ }
104
+ else {
105
+ // Convert SPKI (RFC5280) to RSAPublicKey (RFC3447).
106
+ const publicKeyInfo = pkijs.PublicKeyInfo.fromBER(publicKey.keyData);
107
+ const keyData = publicKeyInfo.subjectPublicKey.valueBlock.valueHexView;
108
+ return this.publicKeyToPEM(keyData, format);
109
+ }
110
+ }
111
+ }
65
112
  deleteKeyPair(name) {
66
113
  return this.sudoCryptoProvider.deleteKeyPair(name);
67
114
  }
@@ -135,6 +182,21 @@ class DefaultSudoKeyManager {
135
182
  exportKeys() {
136
183
  return this.sudoCryptoProvider.exportKeys();
137
184
  }
185
+ publicKeyToPEM(key, format) {
186
+ const encoded = base64_1.Base64.encode(key);
187
+ const lines = encoded.match(/.{1,64}/g);
188
+ if (!lines) {
189
+ throw new error_1.IllegalArgumentError();
190
+ }
191
+ const formatted = lines.join('\n');
192
+ return ('-----BEGIN ' +
193
+ (format === publicKey_1.PublicKeyFormat.RSAPublicKey ? 'RSA ' : '') +
194
+ 'PUBLIC KEY-----\n' +
195
+ formatted +
196
+ '\n-----END ' +
197
+ (format === publicKey_1.PublicKeyFormat.RSAPublicKey ? 'RSA ' : '') +
198
+ 'PUBLIC KEY-----');
199
+ }
138
200
  }
139
201
  exports.DefaultSudoKeyManager = DefaultSudoKeyManager;
140
202
  //# sourceMappingURL=sudoKeyManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -8,4 +8,5 @@ export * from './utils/stream';
8
8
  export * from './errors/error';
9
9
  export * from './logging/logger';
10
10
  export * from './types/types';
11
+ export * from './logging/bunyanLogger';
11
12
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oDAAoD,CAAA;AAClE,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oDAAoD,CAAA;AAClE,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,wBAAwB,CAAA"}
@@ -3,7 +3,7 @@ import { ConsolePlainStream } from '@browser-bunyan/console-plain-stream';
3
3
  import * as t from 'io-ts';
4
4
  import { pipe } from 'fp-ts/lib/pipeable';
5
5
  import { fold } from 'fp-ts/lib/Either';
6
- const Level = t.union([
6
+ export const Level = t.union([
7
7
  t.literal('trace'),
8
8
  t.literal('debug'),
9
9
  t.literal('info'),
@@ -1 +1 @@
1
- {"version":3,"file":"bunyanLogger.js","sourceRoot":"","sources":["../../src/logging/bunyanLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AACzE,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACpB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACnB,CAAC,CAAA;AAIF,MAAM,UAAU,WAAW,CAAC,KAAyB;IACnD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,CACT,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACnB,IAAI,CACF,GAAG,EAAE,CAAC,SAAS,EACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACT,CACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,UAAmB,EACnB,QAAiB;IAEjB,MAAM,KAAK,GACT,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAA;IACvE,MAAM,GAAG,GAAG,YAAY,CAAC;QACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU,IAAI,YAAY;QAC5D,KAAK;QACL,WAAW,EAAE,cAAc;QAC3B,MAAM,EAAE,IAAI,kBAAkB,EAAE;KACjC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC"}
1
+ {"version":3,"file":"bunyanLogger.js","sourceRoot":"","sources":["../../src/logging/bunyanLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AACzE,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;CACnB,CAAC,CAAA;AAIF,MAAM,UAAU,WAAW,CAAC,KAAyB;IACnD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,IAAI,CACT,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACnB,IAAI,CACF,GAAG,EAAE,CAAC,SAAS,EACf,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACT,CACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,UAAmB,EACnB,QAAiB;IAEjB,MAAM,KAAK,GACT,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAA;IACvE,MAAM,GAAG,GAAG,YAAY,CAAC;QACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,UAAU,IAAI,YAAY;QAC5D,KAAK;QACL,WAAW,EAAE,cAAc;QAC3B,MAAM,EAAE,IAAI,kBAAkB,EAAE;KACjC,CAAC,CAAA;IACF,OAAO,GAAG,CAAA;AACZ,CAAC"}
@@ -1,4 +1,16 @@
1
1
  import { Buffer as BufferUtil } from '../utils/buffer';
2
+ import { PublicKeyFormat } from './publicKey';
3
+ import * as pkijs from 'pkijs';
4
+ import * as asn1js from 'asn1js';
5
+ import { Base64 } from '../utils/base64';
6
+ import { IllegalArgumentError } from '../errors/error';
7
+ /**
8
+ * ASN.1 OIDs.
9
+ */
10
+ var OID;
11
+ (function (OID) {
12
+ OID["rsaEncryption"] = "1.2.840.113549.1.1.1";
13
+ })(OID || (OID = {}));
2
14
  export class DefaultSudoKeyManager {
3
15
  /**
4
16
  * @param namespace A namespace to use as part of the key name. If a namespace is specified then
@@ -59,6 +71,40 @@ export class DefaultSudoKeyManager {
59
71
  getPublicKey(name) {
60
72
  return this.sudoCryptoProvider.getPublicKey(name);
61
73
  }
74
+ async exportPublicKeyAsPEM(name, format) {
75
+ const publicKey = await this.getPublicKey(name);
76
+ if (!publicKey) {
77
+ return undefined;
78
+ }
79
+ if (publicKey.keyFormat === PublicKeyFormat.RSAPublicKey) {
80
+ if (format === PublicKeyFormat.RSAPublicKey) {
81
+ return this.publicKeyToPEM(publicKey.keyData, format);
82
+ }
83
+ else {
84
+ // Convert RSAPublicKey (RFC3447) to SPKI (RFC5280).
85
+ const spki = new pkijs.PublicKeyInfo();
86
+ spki.algorithm = new pkijs.AlgorithmIdentifier({
87
+ algorithmId: OID.rsaEncryption,
88
+ algorithmParams: new asn1js.Null(),
89
+ });
90
+ spki.subjectPublicKey = new asn1js.BitString({
91
+ valueHex: publicKey.keyData,
92
+ });
93
+ return this.publicKeyToPEM(spki.toSchema().toBER(), format);
94
+ }
95
+ }
96
+ else {
97
+ if (format === PublicKeyFormat.SPKI) {
98
+ return this.publicKeyToPEM(publicKey.keyData, format);
99
+ }
100
+ else {
101
+ // Convert SPKI (RFC5280) to RSAPublicKey (RFC3447).
102
+ const publicKeyInfo = pkijs.PublicKeyInfo.fromBER(publicKey.keyData);
103
+ const keyData = publicKeyInfo.subjectPublicKey.valueBlock.valueHexView;
104
+ return this.publicKeyToPEM(keyData, format);
105
+ }
106
+ }
107
+ }
62
108
  deleteKeyPair(name) {
63
109
  return this.sudoCryptoProvider.deleteKeyPair(name);
64
110
  }
@@ -132,5 +178,20 @@ export class DefaultSudoKeyManager {
132
178
  exportKeys() {
133
179
  return this.sudoCryptoProvider.exportKeys();
134
180
  }
181
+ publicKeyToPEM(key, format) {
182
+ const encoded = Base64.encode(key);
183
+ const lines = encoded.match(/.{1,64}/g);
184
+ if (!lines) {
185
+ throw new IllegalArgumentError();
186
+ }
187
+ const formatted = lines.join('\n');
188
+ return ('-----BEGIN ' +
189
+ (format === PublicKeyFormat.RSAPublicKey ? 'RSA ' : '') +
190
+ 'PUBLIC KEY-----\n' +
191
+ formatted +
192
+ '\n-----END ' +
193
+ (format === PublicKeyFormat.RSAPublicKey ? 'RSA ' : '') +
194
+ 'PUBLIC KEY-----');
195
+ }
135
196
  }
136
197
  //# sourceMappingURL=sudoKeyManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudoplatform/sudo-common",
3
- "version": "8.3.0",
3
+ "version": "8.4.0",
4
4
  "author": "Anonyome Labs, Inc.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -50,54 +50,59 @@
50
50
  ],
51
51
  "resolutions": {
52
52
  "**/apollo-cache-inmemory": "^1.6.6",
53
- "**/apollo-client": "^2.6.10"
53
+ "**/apollo-client": "^2.6.10",
54
+ "json5": "^1.0.2"
54
55
  },
55
56
  "dependencies": {
56
- "@aws-sdk/client-s3": "^3.194.0",
57
+ "@aws-sdk/client-s3": "3.295.0",
57
58
  "apollo-client": "^2.6.10",
59
+ "asn1js": "^3.0.5",
58
60
  "browser-bunyan": "^1.8.0",
59
61
  "fflate": "^0.7.4",
60
62
  "graphql": "^15.8.0",
61
- "tslib": "^2.4.0"
63
+ "pkijs": "^3.0.14",
64
+ "tslib": "^2.5.0"
62
65
  },
63
66
  "peerDependencies": {
64
67
  "io-ts": "^2.2.16"
65
68
  },
66
69
  "devDependencies": {
67
70
  "@types/jest": "^27.5.2",
68
- "@types/node": "^16.18.0",
69
- "@typescript-eslint/eslint-plugin": "^5.40.1",
70
- "@typescript-eslint/parser": "^5.40.1",
71
+ "@types/node": "^16.18.18",
72
+ "@typescript-eslint/eslint-plugin": "^5.56.0",
73
+ "@typescript-eslint/parser": "^5.56.0",
71
74
  "aws-sdk-mock": "^5.8.0",
72
- "concurrently": "^7.5.0",
73
- "eslint": "^8.26.0",
74
- "eslint-config-prettier": "^8.5.0",
75
- "eslint-plugin-import": "^2.26.0",
75
+ "concurrently": "^7.6.0",
76
+ "eslint": "^8.36.0",
77
+ "eslint-config-prettier": "^8.8.0",
78
+ "eslint-plugin-import": "^2.27.5",
76
79
  "eslint-plugin-prettier": "^4.2.1",
77
80
  "eslint-plugin-tree-shaking": "^1.10.0",
78
81
  "fp-ts": "^2.13.1",
79
- "io-ts": "^2.2.19",
82
+ "io-ts": "^2.2.20",
80
83
  "io-ts-types": "^0.5.19",
81
84
  "isomorphic-fetch": "^3.0.0",
82
85
  "isomorphic-webcrypto": "^2.3.8",
83
86
  "jest": "^27.5.1",
84
87
  "monocle-ts": "^2.3.13",
85
88
  "newtype-ts": "^0.3.5",
86
- "prettier": "^2.7.1",
87
- "rimraf": "^3.0.2",
89
+ "prettier": "^2.8.5",
90
+ "rimraf": "^4.4.0",
88
91
  "ts-jest": "^27.1.5",
89
92
  "ts-mockito": "^2.6.1",
90
93
  "ts-node": "^10.9.1",
91
- "typedoc": "^0.23.18",
92
- "typescript": "^4.8.4"
94
+ "typedoc": "^0.23.28",
95
+ "typescript": "^4.9.5"
93
96
  },
94
97
  "outdatedSuppressions": {
95
98
  "major": {
96
- "@types/jest": 1669184645,
97
- "@types/node": 1669184645,
98
- "graphql": 1669184645,
99
- "jest": 1669184645,
100
- "ts-jest": 1669184646
99
+ "@types/jest": 1681893993,
100
+ "@types/node": 1681893993,
101
+ "graphql": 1681893994,
102
+ "jest": 1681893994,
103
+ "ts-jest": 1681893994,
104
+ "typescript": 1681893994,
105
+ "json5": 1681893994
101
106
  }
102
107
  }
103
108
  }
@@ -1,10 +1,10 @@
1
1
  import { GraphQLError } from 'graphql';
2
2
  import { JsonValue } from '../types/types';
3
- export declare type AppSyncError = GraphQLError & {
3
+ export type AppSyncError = GraphQLError & {
4
4
  errorType?: string | null;
5
5
  errorInfo?: unknown;
6
6
  };
7
- export declare type AppSyncNetworkError = Error & {
7
+ export type AppSyncNetworkError = Error & {
8
8
  networkError: Error & {
9
9
  statusCode?: number;
10
10
  };
package/types/index.d.ts CHANGED
@@ -8,3 +8,4 @@ export * from './utils/stream';
8
8
  export * from './errors/error';
9
9
  export * from './logging/logger';
10
10
  export * from './types/types';
11
+ export * from './logging/bunyanLogger';
@@ -1,8 +1,7 @@
1
1
  import { createLogger } from 'browser-bunyan';
2
2
  import * as t from 'io-ts';
3
- declare const Level: t.UnionC<[t.LiteralC<"trace">, t.LiteralC<"debug">, t.LiteralC<"info">, t.LiteralC<"warn">, t.LiteralC<"error">, t.LiteralC<"fatal">]>;
4
- declare type Level = t.TypeOf<typeof Level>;
3
+ export declare const Level: t.UnionC<[t.LiteralC<"trace">, t.LiteralC<"debug">, t.LiteralC<"info">, t.LiteralC<"warn">, t.LiteralC<"error">, t.LiteralC<"fatal">]>;
4
+ export type Level = t.TypeOf<typeof Level>;
5
5
  export declare function getLogLevel(level: string | undefined): Level | undefined;
6
6
  export declare function createBunyanLogger(identifier?: string, logLevel?: string): BunyanLogger;
7
- export declare type BunyanLogger = ReturnType<typeof createLogger>;
8
- export {};
7
+ export type BunyanLogger = ReturnType<typeof createLogger>;
@@ -26,13 +26,13 @@ export declare const InsecureKeyArchiveCodec: t.TypeC<{
26
26
  */
27
27
  MetaInfo: t.RecordC<t.StringC, t.StringC>;
28
28
  }>;
29
- export declare type InsecureKeyArchive = t.TypeOf<typeof InsecureKeyArchiveCodec>;
29
+ export type InsecureKeyArchive = t.TypeOf<typeof InsecureKeyArchiveCodec>;
30
30
  export declare const SecureKeyArchiveType = "Secure";
31
31
  export declare const UnrecognizedKeyArchiveCodec: t.PartialC<{
32
32
  Version: t.NumberC;
33
33
  Type: t.StringC;
34
34
  }>;
35
- export declare type UnrecognizedKeyArchive = t.TypeOf<typeof UnrecognizedKeyArchiveCodec>;
35
+ export type UnrecognizedKeyArchive = t.TypeOf<typeof UnrecognizedKeyArchiveCodec>;
36
36
  export declare const SecureKeyArchiveCodec: t.TypeC<{
37
37
  /**
38
38
  * Discriminant for SecureKeyArchive type.
@@ -68,7 +68,7 @@ export declare const SecureKeyArchiveCodec: t.TypeC<{
68
68
  */
69
69
  MetaInfo: t.RecordC<t.StringC, t.StringC>;
70
70
  }>;
71
- export declare type SecureKeyArchive = t.TypeOf<typeof SecureKeyArchiveCodec>;
71
+ export type SecureKeyArchive = t.TypeOf<typeof SecureKeyArchiveCodec>;
72
72
  export declare const KeyArchiveCodec: t.UnionC<[t.TypeC<{
73
73
  /**
74
74
  * Discriminant for SecureKeyArchive type.
@@ -131,7 +131,7 @@ export declare const KeyArchiveCodec: t.UnionC<[t.TypeC<{
131
131
  Version: t.NumberC;
132
132
  Type: t.StringC;
133
133
  }>]>;
134
- export declare type KeyArchive = t.TypeOf<typeof KeyArchiveCodec>;
134
+ export type KeyArchive = t.TypeOf<typeof KeyArchiveCodec>;
135
135
  export declare function isSecureKeyArchive(keyArchive: KeyArchive): keyArchive is SecureKeyArchive;
136
136
  export declare function isInsecureKeyArchive(keyArchive: KeyArchive): keyArchive is InsecureKeyArchive;
137
137
  export declare function isUnrecognizedKeyArchive(keyArchive: KeyArchive): keyArchive is UnrecognizedKeyArchive;
@@ -38,4 +38,4 @@ export declare const KeyArchiveKeyInfoArrayCodec: t.ArrayC<t.TypeC<{
38
38
  * Whether restored key should be exportable. Always true on archive.
39
39
  * For future use on unarchive.
40
40
  */
41
- export declare type KeyArchiveKeyInfo = t.TypeOf<typeof KeyArchiveKeyInfoCodec>;
41
+ export type KeyArchiveKeyInfo = t.TypeOf<typeof KeyArchiveKeyInfoCodec>;
@@ -80,7 +80,7 @@ export interface SudoKeyArchive {
80
80
  /** @return the meta-information associated with this archive in an unmodifiable map. */
81
81
  getMetaInfo(): ReadonlyMap<string, string>;
82
82
  }
83
- export declare type KeyArchiveKeyInfoDecoded = KeyArchiveKeyInfo & {
83
+ export type KeyArchiveKeyInfoDecoded = KeyArchiveKeyInfo & {
84
84
  Decoded: ArrayBuffer;
85
85
  };
86
86
  export declare class DefaultSudoKeyArchive implements SudoKeyArchive {
@@ -1,5 +1,5 @@
1
1
  import { KeyData } from './keyData';
2
- import { PublicKey } from './publicKey';
2
+ import { PublicKey, PublicKeyFormat } from './publicKey';
3
3
  import { AsymmetricEncryptionOptions, SignatureOptions, SudoCryptoProvider, SymmetricEncryptionOptions } from './sudoCryptoProvider';
4
4
  /**
5
5
  * Interface for a set of methods for securely storing keys and performing
@@ -109,6 +109,16 @@ export interface SudoKeyManager {
109
109
  * @returns The public key or undefined if the key was not found.
110
110
  */
111
111
  getPublicKey(name: string): Promise<PublicKey | undefined>;
112
+ /**
113
+ * Exports the public key from the secure store as PEM encoded
114
+ * string.
115
+ *
116
+ * @param name The name of the public key.
117
+ * @param format The key format to use.
118
+ *
119
+ * @returns The public key or undefined if the key was not found.
120
+ */
121
+ exportPublicKeyAsPEM(name: string, format: PublicKeyFormat): Promise<string | undefined>;
112
122
  /**
113
123
  * Deletes a key pair from the secure store.
114
124
  *
@@ -326,6 +336,7 @@ export declare class DefaultSudoKeyManager implements SudoKeyManager {
326
336
  addPublicKey(key: ArrayBuffer, name: string): Promise<void>;
327
337
  deletePublicKey(name: string): Promise<void>;
328
338
  getPublicKey(name: string): Promise<PublicKey | undefined>;
339
+ exportPublicKeyAsPEM(name: string, format: PublicKeyFormat): Promise<string | undefined>;
329
340
  deleteKeyPair(name: string): Promise<void>;
330
341
  generateSignatureWithPrivateKey(name: string, data: ArrayBuffer, options?: SignatureOptions): Promise<ArrayBuffer>;
331
342
  verifySignatureWithPublicKey(name: string, data: ArrayBuffer, signature: ArrayBuffer, options?: SignatureOptions): Promise<boolean>;
@@ -343,4 +354,5 @@ export declare class DefaultSudoKeyManager implements SudoKeyManager {
343
354
  generateRandomData(size: number): Promise<ArrayBuffer>;
344
355
  generateHash(data: ArrayBuffer): Promise<ArrayBuffer>;
345
356
  exportKeys(): Promise<KeyData[]>;
357
+ private publicKeyToPEM;
346
358
  }
@@ -50,7 +50,7 @@ export declare enum EncryptionAlgorithm {
50
50
  export declare enum SignatureAlgorithm {
51
51
  RsaPkcs15Sha256 = "RSA/SSAPKCS15withSHA-256"
52
52
  }
53
- export declare type Subset<T, S> = Pick<T, keyof T & keyof S>;
53
+ export type Subset<T, S> = Pick<T, keyof T & keyof S>;
54
54
  /**
55
55
  * Status of the list operation result.
56
56
  */
@@ -120,11 +120,11 @@ export interface ListOperationPartialResult<T, S extends Subset<S, T>> {
120
120
  * S is a subset of T's properties that won't be present if the
121
121
  * additional processing after the item has been fetched fails.
122
122
  */
123
- export declare type ListOperationResult<T, S extends Subset<S, T> = T> = ListOperationSuccessResult<T> | ListOperationFailureResult | ListOperationPartialResult<T, S>;
123
+ export type ListOperationResult<T, S extends Subset<S, T> = T> = ListOperationSuccessResult<T> | ListOperationFailureResult | ListOperationPartialResult<T, S>;
124
124
  /**
125
125
  * Representation of opaque of application defined JSON data values
126
126
  * as used and returned by Sudo Platform SDKs.
127
127
  */
128
- export declare type JsonValue = null | boolean | number | string | Array<JsonValue> | {
128
+ export type JsonValue = null | boolean | number | string | Array<JsonValue> | {
129
129
  [key: string]: JsonValue;
130
130
  };