@keetanetwork/keetanet-client 0.18.0 → 0.18.2

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.
Files changed (128) hide show
  1. package/client/builder.d.ts +23 -10
  2. package/client/index-browser.d.ts +1 -1
  3. package/client/index-browser.js +208 -81
  4. package/client/index.d.ts +1 -1
  5. package/client/index.js +146 -43
  6. package/docs/assets/hierarchy.js +1 -1
  7. package/docs/assets/search.js +1 -1
  8. package/docs/classes/KeetaNetSDK.Referenced.BaseSet.html +1 -1
  9. package/docs/classes/KeetaNetSDK.Referenced.BaseVoteBuilder.html +1 -1
  10. package/docs/classes/KeetaNetSDK.Referenced.BlockOperation.html +1 -1
  11. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationCREATE_IDENTIFIER.html +1 -1
  12. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationMANAGE_CERTIFICATE.html +1 -1
  13. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationMODIFY_PERMISSIONS.html +1 -1
  14. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationRECEIVE.html +1 -1
  15. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSEND.html +1 -1
  16. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSET_INFO.html +1 -1
  17. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSET_REP.html +1 -1
  18. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationTOKEN_ADMIN_MODIFY_BALANCE.html +1 -1
  19. package/docs/classes/KeetaNetSDK.Referenced.BlockOperationTOKEN_ADMIN_SUPPLY.html +1 -1
  20. package/docs/classes/KeetaNetSDK.Referenced.Certificate.html +1 -4
  21. package/docs/classes/KeetaNetSDK.Referenced.ECDSAKeyPair.html +1 -1
  22. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1KeyPair.html +1 -1
  23. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1PrivateKey.html +1 -1
  24. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1PublicKey.html +1 -1
  25. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1Signature.html +1 -1
  26. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1KeyPair.html +1 -1
  27. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1PrivateKey.html +1 -1
  28. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1PublicKey.html +1 -1
  29. package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1Signature.html +1 -1
  30. package/docs/classes/KeetaNetSDK.Referenced.ED25519KeyPair.html +1 -1
  31. package/docs/classes/KeetaNetSDK.Referenced.ED25519PrivateKey.html +1 -1
  32. package/docs/classes/KeetaNetSDK.Referenced.ED25519PublicKey.html +1 -1
  33. package/docs/classes/KeetaNetSDK.Referenced.ED25519Signature.html +1 -1
  34. package/docs/classes/KeetaNetSDK.Referenced.ExternalKeyPair.html +1 -1
  35. package/docs/classes/KeetaNetSDK.Referenced.ExternalSet.html +1 -1
  36. package/docs/classes/KeetaNetSDK.Referenced.IdempotentKey.html +1 -1
  37. package/docs/classes/KeetaNetSDK.Referenced.IdentifierKey.html +1 -1
  38. package/docs/classes/KeetaNetSDK.Referenced.IdentifierKeyPair.html +1 -1
  39. package/docs/classes/KeetaNetSDK.Referenced.KeetaNetError.html +1 -1
  40. package/docs/classes/KeetaNetSDK.Referenced.KeetaNetErrorBase.html +1 -1
  41. package/docs/classes/KeetaNetSDK.Referenced.KeetaNetLedgerError.html +1 -1
  42. package/docs/classes/KeetaNetSDK.Referenced.KeetaNetLedgerIdempotentKeyError.html +1 -1
  43. package/docs/classes/KeetaNetSDK.Referenced.KeetaNetLedgerVoteError.html +1 -1
  44. package/docs/classes/KeetaNetSDK.Referenced.KeyInterface.html +1 -1
  45. package/docs/classes/KeetaNetSDK.Referenced.KeyStorage.html +1 -1
  46. package/docs/classes/KeetaNetSDK.Referenced.Log.html +2 -2
  47. package/docs/classes/KeetaNetSDK.Referenced.PermissionSetHolder.html +1 -1
  48. package/docs/classes/KeetaNetSDK.Referenced.PossiblyExpiredVote.html +1 -1
  49. package/docs/classes/KeetaNetSDK.Referenced.PossiblyUnsignedBlock.html +1 -1
  50. package/docs/classes/KeetaNetSDK.Referenced.SignatureStorage.html +1 -1
  51. package/docs/classes/KeetaNetSDK.Referenced.Stats.html +1 -1
  52. package/docs/classes/KeetaNetSDK.Referenced.StatsPending.html +1 -1
  53. package/docs/classes/KeetaNetSDK.Referenced.UnsignedBlock.html +1 -1
  54. package/docs/classes/KeetaNetSDK.Referenced.UserClientBuilder.html +1 -1
  55. package/docs/classes/KeetaNetSDK.Referenced.VoteBlockBundle.html +1 -1
  56. package/docs/classes/KeetaNetSDK.Referenced.VoteBuilder.html +1 -1
  57. package/docs/classes/KeetaNetSDK.Referenced.VoteHash.html +1 -1
  58. package/docs/classes/KeetaNetSDK.Referenced.VoteLikeBase.html +1 -1
  59. package/docs/classes/KeetaNetSDK.Referenced.VoteQuoteBuilder.html +1 -1
  60. package/docs/classes/KeetaNetSDK.Referenced.VoteStapleHash.html +1 -1
  61. package/docs/classes/KeetaNetSDK.Referenced.src_lib_utils_buffer.BufferStorage.html +1 -1
  62. package/docs/classes/KeetaNetSDK.UserClient.html +2 -2
  63. package/docs/hierarchy.html +1 -1
  64. package/docs/interfaces/KeetaNetSDK.Referenced.ASN1ExplicitContextTag.html +1 -1
  65. package/docs/interfaces/KeetaNetSDK.Referenced.ASN1ImplicitContextTag.html +1 -1
  66. package/docs/interfaces/KeetaNetSDK.Referenced.ASN1Object.html +1 -1
  67. package/docs/interfaces/KeetaNetSDK.Referenced.AccountACLRow.html +1 -1
  68. package/docs/interfaces/KeetaNetSDK.Referenced.BaseACLRow.html +1 -1
  69. package/docs/interfaces/KeetaNetSDK.Referenced.BaseAccountInfo.html +1 -1
  70. package/docs/interfaces/KeetaNetSDK.Referenced.BaseExternalKeyPairFunctions.html +1 -1
  71. package/docs/interfaces/KeetaNetSDK.Referenced.BaseGenerationConfig.html +1 -1
  72. package/docs/interfaces/KeetaNetSDK.Referenced.BaseIdentifierAccountInfo.html +1 -1
  73. package/docs/interfaces/KeetaNetSDK.Referenced.BaseIdentifierCreateArguments.html +1 -1
  74. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperation.html +1 -1
  75. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationCREATE_IDENTIFIER.html +1 -1
  76. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationMANAGE_CERTIFICATE.html +1 -1
  77. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationMODIFY_PERMISSIONS.html +1 -1
  78. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationRECEIVE.html +1 -1
  79. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSEND.html +1 -1
  80. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSET_INFO.html +1 -1
  81. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSET_REP.html +1 -1
  82. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationTOKEN_ADMIN_MODIFY_BALANCE.html +1 -1
  83. package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationTOKEN_ADMIN_SUPPLY.html +1 -1
  84. package/docs/interfaces/KeetaNetSDK.Referenced.BlockV1Canonical.html +1 -1
  85. package/docs/interfaces/KeetaNetSDK.Referenced.BlockV2Canonical.html +1 -1
  86. package/docs/interfaces/KeetaNetSDK.Referenced.CertificateACLRow.html +1 -1
  87. package/docs/interfaces/KeetaNetSDK.Referenced.Constructor.html +1 -1
  88. package/docs/interfaces/KeetaNetSDK.Referenced.DisposableTimingHandle.html +1 -1
  89. package/docs/interfaces/KeetaNetSDK.Referenced.ECDSA_SECP256K1AccountInfo.html +1 -1
  90. package/docs/interfaces/KeetaNetSDK.Referenced.ECDSA_SECP256R1AccountInfo.html +1 -1
  91. package/docs/interfaces/KeetaNetSDK.Referenced.ED25519AccountInfo.html +1 -1
  92. package/docs/interfaces/KeetaNetSDK.Referenced.ExternalKeyPairFunctionsNoEncryption.html +1 -1
  93. package/docs/interfaces/KeetaNetSDK.Referenced.ExternalKeyPairFunctionsSupportsEncryption.html +1 -1
  94. package/docs/interfaces/KeetaNetSDK.Referenced.InitialConfigSupply.html +1 -1
  95. package/docs/interfaces/KeetaNetSDK.Referenced.InstanceSet.html +1 -1
  96. package/docs/interfaces/KeetaNetSDK.Referenced.KVGenericOptionsType.html +1 -1
  97. package/docs/interfaces/KeetaNetSDK.Referenced.KVSetOptionsType.html +1 -1
  98. package/docs/interfaces/KeetaNetSDK.Referenced.ModifyTokenBalanceEntry.html +1 -1
  99. package/docs/interfaces/KeetaNetSDK.Referenced.MultiSigIdentifierCreateArguments.html +1 -1
  100. package/docs/interfaces/KeetaNetSDK.Referenced.MultisigAccountInfo.html +1 -1
  101. package/docs/interfaces/KeetaNetSDK.Referenced.MultisigConfig.html +1 -1
  102. package/docs/interfaces/KeetaNetSDK.Referenced.NumericValueEntry.html +1 -1
  103. package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerBase.html +1 -1
  104. package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerListener.html +1 -1
  105. package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerRepBase.html +1 -1
  106. package/docs/interfaces/KeetaNetSDK.Referenced.PendingOperations.html +2 -2
  107. package/docs/interfaces/KeetaNetSDK.Referenced.PendingOperationsJSON.html +2 -2
  108. package/docs/interfaces/KeetaNetSDK.Referenced.PublicKeyStorage.html +1 -1
  109. package/docs/interfaces/KeetaNetSDK.Referenced.RequestTokenReceiveEntry.html +1 -1
  110. package/docs/interfaces/KeetaNetSDK.Referenced.StorageAccountInfo.html +1 -1
  111. package/docs/interfaces/KeetaNetSDK.Referenced.TokenAccountInfo.html +1 -1
  112. package/docs/interfaces/KeetaNetSDK.Referenced.TokenNumericEntry.html +1 -1
  113. package/docs/interfaces/KeetaNetSDK.Referenced.WithIsInstance.html +1 -1
  114. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1BitString.html +1 -1
  115. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1Date.html +1 -1
  116. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1OID.html +1 -1
  117. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1Set.html +1 -1
  118. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1String.html +1 -1
  119. package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1Struct.html +1 -1
  120. package/docs/types/KeetaNetSDK.Referenced.LogOptions.html +13 -3
  121. package/lib/log/common.d.ts +1 -1
  122. package/lib/log/index.d.ts +21 -6
  123. package/lib/utils/certificate.d.ts +0 -1
  124. package/lib/utils/external-keys/passkey-prf.js +100 -21
  125. package/lib/utils/helper_testing.d.ts +10 -0
  126. package/npm-shrinkwrap.json +10 -17
  127. package/package.json +2 -2
  128. package/version.d.ts +1 -1
@@ -134,6 +134,60 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
134
134
  }
135
135
  return true;
136
136
  }
137
+
138
+ /**
139
+ * Normalize a PRF result value into a Buffer.
140
+ *
141
+ * The PRF extension spec types `results.first` as an ArrayBuffer, but in
142
+ * practice it is a BufferSource and credential providers disagree on the
143
+ * concrete type they return (see https://github.com/w3c/webauthn/issues/1851).
144
+ * Notably the 1Password browser extension returns a plain Array of byte
145
+ * numbers after serializing the WebAuthn response across its content-script
146
+ * bridge, and some authenticators return an ArrayBufferView (e.g. a
147
+ * DataView, which has no `slice` method). Every accepted shape is copied
148
+ * byte-for-byte so that the derived account is identical regardless of how
149
+ * the provider encoded the result.
150
+ */
151
+ function prfResultToBuffer(value) {
152
+ /*
153
+ * Real ArrayBuffer (same realm)
154
+ */
155
+ if (value instanceof ArrayBuffer) {
156
+ return Buffer.from(new Uint8Array(value));
157
+ }
158
+
159
+ /*
160
+ * TypedArray or DataView: honor byteOffset/byteLength. This check
161
+ * inspects the internal slot, so it works across realms.
162
+ */
163
+ if (ArrayBuffer.isView(value)) {
164
+ return Buffer.from(new Uint8Array(value.buffer, value.byteOffset, value.byteLength));
165
+ }
166
+
167
+ /*
168
+ * Cross-realm ArrayBuffer: instanceof fails but it is duck-typed
169
+ */
170
+ if (isArrayBufferLike(value)) {
171
+ return Buffer.from(new Uint8Array(value));
172
+ }
173
+
174
+ /*
175
+ * Array of byte numbers. 1Password's browser extension returns the PRF
176
+ * result this way. Each entry must be an integer in [0, 255]: iterate
177
+ * every position (not Array.prototype.every(), which skips sparse holes)
178
+ * so that out-of-range, fractional, or missing values are rejected
179
+ * rather than silently truncated by Buffer.from() into a wrong byte.
180
+ */
181
+ if (Array.isArray(value)) {
182
+ for (const entry of value) {
183
+ if (!Number.isInteger(entry) || entry < 0 || entry > 255) {
184
+ throw new Error('PRF extension result value is an array but contains a non-byte entry');
185
+ }
186
+ }
187
+ return Buffer.from(value);
188
+ }
189
+ throw new Error(`PRF extension result value is of an unsupported type: ${Object.prototype.toString.call(value)}`);
190
+ }
137
191
  function credentialToEntropy(credential) {
138
192
  if (typeof credential !== 'object' || credential === null) {
139
193
  throw new Error('Credential is not an object');
@@ -153,16 +207,13 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
153
207
  throw new Error('PRF extension does not indicate PRF is enabled');
154
208
  }
155
209
  if (!('results' in prfExtension) || typeof prfExtension.results !== 'object' || prfExtension.results === null) {
156
- throw new Error('PRF extension results do not contain a valid result');
210
+ return null;
157
211
  }
158
212
  const prfResults = prfExtension.results;
159
- if (!('first' in prfResults) || typeof prfResults.first !== 'object' || prfResults.first === null) {
160
- throw new Error('PRF extension results do not contain a "first" value');
213
+ if (!('first' in prfResults) || prfResults.first === null || prfResults.first === undefined) {
214
+ return null;
161
215
  }
162
- if (!isArrayBufferLike(prfResults.first)) {
163
- throw new Error('PRF extension "first" value is not an ArrayBuffer');
164
- }
165
- return Buffer.from(prfResults.first);
216
+ return prfResultToBuffer(prfResults.first);
166
217
  }
167
218
  async function entropyToAccount(entropy, index, keyType) {
168
219
  const passphrase = bip39.entropyToMnemonic(new Uint8Array(entropy));
@@ -294,14 +345,6 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
294
345
  if (syncable) {
295
346
  syncableExtraAttributes = {
296
347
  authenticatorSelection: {
297
- /**
298
- * Restricts to the device's built-in authenticator (Touch ID, Face ID,
299
- * Windows Hello) backed by the OS keychain. Required for cross-device
300
- * sync — only platform authenticators sync passkeys via iCloud Keychain
301
- * / Google Password Manager, which is what lets the same passkey work
302
- * on web and iOS. Excludes roaming security keys (e.g., YubiKey).
303
- */
304
- authenticatorAttachment: 'platform',
305
348
  /**
306
349
  * Required for cross-device sync and usernameless sign-in.
307
350
  */
@@ -350,13 +393,33 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
350
393
  if (!credentialHasRawId(credential)) {
351
394
  throw new Error('Created credential does not have a raw ID');
352
395
  }
353
- const entropy = credentialToEntropy(credential);
354
- const {
355
- rawPublicKey
356
- } = await entropyToAccount(entropy, index, keyType);
357
396
  const keyID = Buffer.from(credential.rawId).toString('base64');
358
397
  const rpID = options.rp.id;
359
- return new KeetaPasskeyPRFKeyPair({
398
+ const entropy = credentialToEntropy(credential);
399
+ let rawPublicKey;
400
+ /*
401
+ * If the fallback get() below derives an account, hold onto it so we
402
+ * can seed the cache and avoid a redundant ceremony. The non-fallback
403
+ * path intentionally leaves this undefined: no assertion (get) ceremony was
404
+ * performed there, so the first sign/decrypt should drive one.
405
+ */
406
+ let fallbackAccount;
407
+ /*
408
+ * The "credentials.create" may not return the entropy,
409
+ * so we may need to fetch the credential to get it
410
+ * (e.g. if the authenticator does not return the PRF
411
+ * result in the create response, but does return it in
412
+ * the get response).
413
+ */
414
+ if (entropy === null) {
415
+ const lookupResult = await _lookupByKeyIDWithSalt.call(KeetaPasskeyPRFKeyPair, keyID, salt, index, keyType, rpID);
416
+ rawPublicKey = lookupResult.rawPublicKey;
417
+ fallbackAccount = lookupResult.account;
418
+ } else {
419
+ const accountInfo = await entropyToAccount(entropy, index, keyType);
420
+ rawPublicKey = accountInfo.rawPublicKey;
421
+ }
422
+ const keyPair = new KeetaPasskeyPRFKeyPair({
360
423
  rawPublicKey,
361
424
  keyID,
362
425
  salt,
@@ -365,6 +428,18 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
365
428
  rpID,
366
429
  cachedAccountTimeout
367
430
  });
431
+
432
+ /*
433
+ * The fallback path already performed a get() to derive the account.
434
+ * If the caller opted into caching, seed the cache with it so the
435
+ * first sign/decrypt/export does not trigger a second, redundant
436
+ * credential ceremony. #setCachedAccount is a no-op when caching is
437
+ * disabled.
438
+ */
439
+ if (fallbackAccount !== undefined) {
440
+ _assertClassBrand(_KeetaPasskeyPRFKeyPair_brand, keyPair, _setCachedAccount).call(keyPair, fallbackAccount);
441
+ }
442
+ return keyPair;
368
443
  }
369
444
  removeCachedAccountTimeout() {
370
445
  _classPrivateFieldSet(_cachedAccountTimeout, this, undefined);
@@ -428,6 +503,9 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
428
503
  keyID = checkKeyID.toString('base64');
429
504
  }
430
505
  const entropy = credentialToEntropy(credential);
506
+ if (entropy === null) {
507
+ throw new Error('PRF extension results do not contain a valid result or result does not have a valid "first" value');
508
+ }
431
509
  const convertedData = await entropyToAccount(entropy, index, keyType);
432
510
 
433
511
  /* Should we check the challenge is correctly signed ? */
@@ -469,7 +547,8 @@ function KeetaPasskeyPRFKeyPairFactory(packages) {
469
547
  }
470
548
  /** @internal */
471
549
  _defineProperty(KeetaPasskeyPRFKeyPair, "_Testing", {
472
- entropyToAccount: entropyToAccount
550
+ entropyToAccount: entropyToAccount,
551
+ prfResultToBuffer: prfResultToBuffer
473
552
  });
474
553
  if (!includeTesting) {
475
554
  /**
@@ -2,6 +2,8 @@ import Account from '../account';
2
2
  import LocalNode from '../node/local';
3
3
  import { VoteStaple } from '../vote';
4
4
  import type { Block } from '../block';
5
+ import { CertificateBuilder } from './certificate';
6
+ import type { Certificate } from './certificate';
5
7
  export declare const testingNetworkId = 0n;
6
8
  type NodeConfig = ConstructorParameters<typeof LocalNode>[0];
7
9
  export declare function canListenOn(ip: string): Promise<boolean>;
@@ -26,6 +28,14 @@ export interface LocalNodeWithPrivateKey extends LocalNode {
26
28
  }
27
29
  export declare function createTestNode(account: Account, options?: CreateTestNodeOptions): Promise<LocalNodeWithPrivateKey>;
28
30
  export declare function getVotesFromSingleNode(node: LocalNode, fromAccount: Account, toAccount: Account, headBlock: Block | null): Promise<VoteStaple>;
31
+ /**
32
+ * Build a Certificate with defaults for tests.
33
+ */
34
+ export declare function buildTestCertificate(params: NonNullable<ConstructorParameters<typeof CertificateBuilder>[0]> & {
35
+ serial: bigint | number;
36
+ issuer: Account;
37
+ subjectPublicKey: Account;
38
+ }): Promise<Certificate>;
29
39
  /**
30
40
  * Run a command and get its output
31
41
  */
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@keetanetwork/keetanet-client",
3
- "version": "0.18.0",
3
+ "version": "0.18.2",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@keetanetwork/keetanet-client",
9
- "version": "0.18.0",
9
+ "version": "0.18.2",
10
10
  "license": "see LICENSE",
11
11
  "dependencies": {
12
12
  "secp256k1": "5.0.1"
@@ -20,7 +20,7 @@
20
20
  },
21
21
  "optionalDependencies": {
22
22
  "@google-cloud/logging": "11.2.0",
23
- "@keetanetwork/asn1-napi-rs": "1.2.2"
23
+ "@keetanetwork/asn1-napi-rs": "1.2.3"
24
24
  }
25
25
  },
26
26
  "node_modules/@google-cloud/common": {
@@ -182,8 +182,8 @@
182
182
  }
183
183
  },
184
184
  "node_modules/@keetanetwork/asn1-napi-rs": {
185
- "version": "1.2.2",
186
- "integrity": "sha512-kwxPBWHJv/VYKYpElhwWTbAlxAxFIQzyJmDxOEApKtqf2r4Lpiuq2RXd2lDkojGPLYVZfXrGTalm4e0b4DaYzA==",
185
+ "version": "1.2.3",
186
+ "integrity": "sha512-3Uao9FFrzAl6SEMHMiTTF2IGqd1c7N9ZAkKECV0g9jrrqxg75yDYsFhbO2X/uYsZaAuGp0cYVoC6JJCTvp/z4A==",
187
187
  "license": "SEE LICENSE IN LICENSE",
188
188
  "optional": true,
189
189
  "engines": {
@@ -218,8 +218,8 @@
218
218
  "optional": true
219
219
  },
220
220
  "node_modules/@protobufjs/eventemitter": {
221
- "version": "1.1.0",
222
- "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==",
221
+ "version": "1.1.1",
222
+ "integrity": "sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==",
223
223
  "license": "BSD-3-Clause",
224
224
  "optional": true
225
225
  },
@@ -238,12 +238,6 @@
238
238
  "license": "BSD-3-Clause",
239
239
  "optional": true
240
240
  },
241
- "node_modules/@protobufjs/inquire": {
242
- "version": "1.1.2",
243
- "integrity": "sha512-pa0vFRuws4wkvaXKK1uXZMAwAX4/t8ANaJo45iw/oQHNQ9q5xUzwgFmVJGXiga2BeN+zpX7Vf9vmsiIa2J+MUw==",
244
- "license": "BSD-3-Clause",
245
- "optional": true
246
- },
247
241
  "node_modules/@protobufjs/path": {
248
242
  "version": "1.1.2",
249
243
  "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
@@ -1121,8 +1115,8 @@
1121
1115
  }
1122
1116
  },
1123
1117
  "node_modules/protobufjs": {
1124
- "version": "7.6.0",
1125
- "integrity": "sha512-LtESOsMPTZgyYtwxhvdgdjGL0HmXEaRA/hVD6sol4zA60hVXXXP/SGmxnqDbgGE8gy7pYex7cym+5vYPcmaXBQ==",
1118
+ "version": "7.6.4",
1119
+ "integrity": "sha512-RJJPTTpvFfHcWLkIa2JFWK4XvtSzS0yEWDmunqHXli1h3JlkbcQZXDZdcWxv+JK3Xsl5/UFDPZ0iGm7DAengYw==",
1126
1120
  "hasInstallScript": true,
1127
1121
  "license": "BSD-3-Clause",
1128
1122
  "optional": true,
@@ -1130,10 +1124,9 @@
1130
1124
  "@protobufjs/aspromise": "^1.1.2",
1131
1125
  "@protobufjs/base64": "^1.1.2",
1132
1126
  "@protobufjs/codegen": "^2.0.5",
1133
- "@protobufjs/eventemitter": "^1.1.0",
1127
+ "@protobufjs/eventemitter": "^1.1.1",
1134
1128
  "@protobufjs/fetch": "^1.1.1",
1135
1129
  "@protobufjs/float": "^1.0.2",
1136
- "@protobufjs/inquire": "^1.1.2",
1137
1130
  "@protobufjs/path": "^1.1.2",
1138
1131
  "@protobufjs/pool": "^1.1.0",
1139
1132
  "@protobufjs/utf8": "^1.1.1",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@keetanetwork/keetanet-client",
3
3
  "repository": "https://github.com/keetanetwork/node.git",
4
- "version": "0.18.0",
4
+ "version": "0.18.2",
5
5
  "description": "KeetaNet Client TypeScript Reference Implementation",
6
6
  "files": [
7
7
  "**/*.js",
@@ -24,7 +24,7 @@
24
24
  "secp256k1": "5.0.1"
25
25
  },
26
26
  "optionalDependencies": {
27
- "@keetanetwork/asn1-napi-rs": "1.2.2",
27
+ "@keetanetwork/asn1-napi-rs": "1.2.3",
28
28
  "@google-cloud/logging": "11.2.0"
29
29
  },
30
30
  "browser": "./client/index-browser.js",
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "0.18.0+g5417d9af948be899fcebb75694edb492ff971891";
1
+ export declare const version = "0.18.2+gac0baac4139da80613edd4a1ebc7532f37fc834a";
2
2
  export default version;