@keetanetwork/keetanet-client 0.10.4 → 0.10.5
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/client/client_common_tests.d.ts +27 -0
- package/client/index-browser.d.ts +17 -4
- package/client/index-browser.js +799 -694
- package/client/index.d.ts +17 -4
- package/client/index.js +106 -24
- package/docs/assets/hierarchy.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/KeetaNetSDK.Client.html +12 -3
- package/docs/classes/KeetaNetSDK.Referenced.BaseSet.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockHash.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperation.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationCREATE_IDENTIFIER.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationMODIFY_PERMISSIONS.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationRECEIVE.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSEND.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSET_INFO.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationSET_REP.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationTOKEN_ADMIN_MODIFY_BALANCE.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.BlockOperationTOKEN_ADMIN_SUPPLY.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSAKeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1KeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1PrivateKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1PublicKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256K1Signature.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1KeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1PrivateKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1PublicKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ECDSASECP256R1Signature.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ED25519KeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ED25519PrivateKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ED25519PublicKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ED25519Signature.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ExternalKeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.ExternalSet.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.HTTPAgentManager.html +4 -0
- package/docs/classes/KeetaNetSDK.Referenced.IdentifierKey.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.IdentifierKeyPair.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.KeetaNetError.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.KeyInterface.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.KeyStorage.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.PermissionSetHolder.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.PossiblyExpiredVote.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.SignatureStorage.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.Vote.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.VoteBlockHash.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.VoteHash.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.VoteStapleHash.html +1 -1
- package/docs/classes/KeetaNetSDK.Referenced.src_lib_utils_buffer.BufferStorage.html +1 -1
- package/docs/classes/KeetaNetSDK.UserClient.html +3 -3
- package/docs/hierarchy.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ACLEntry.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ACLUpdate.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ASN1ExplicitContextTag.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ASN1ImplicitContextTag.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ASN1Object.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BaseExternalKeyPairFunctions.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BaseGenerationConfig.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockCanonical.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperation.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationCREATE_IDENTIFIER.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationMODIFY_PERMISSIONS.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationRECEIVE.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSEND.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSET_INFO.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationSET_REP.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationTOKEN_ADMIN_MODIFY_BALANCE.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOperationTOKEN_ADMIN_SUPPLY.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.BlockJSONOutput.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.Constructor.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ExternalKeyPairFunctionsNoEncryption.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ExternalKeyPairFunctionsSupportsEncryption.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.InitialConfigSupply.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.ModifyTokenBalanceEntry.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.NumericValueEntry.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerBase.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerListener.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.P2PPeerRepBase.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.PublicKeyStorage.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.RequestTokenReceiveEntry.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.TokenNumericEntry.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.UserClientConfig.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.UserClientOptions.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.VoteJSONOutput.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.WithIsInstance.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1BitString.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1Date.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1OID.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1Set.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_asn1.ASN1String.html +1 -1
- package/docs/interfaces/KeetaNetSDK.Referenced.src_lib_utils_helper.InstanceSet.html +1 -1
- package/docs/modules/KeetaNetSDK.Referenced.html +1 -1
- package/docs/types/KeetaNetSDK.Referenced.ClientRepresentative.html +1 -1
- package/docs/types/KeetaNetSDK.Referenced.src_config.NetworkConfig.html +2 -2
- package/package.json +1 -1
- package/version.d.ts +1 -1
|
@@ -4,6 +4,7 @@ import type { Networks } from '../config';
|
|
|
4
4
|
import { AccountKeyAlgorithm } from '../lib/account';
|
|
5
5
|
import type Account from '../lib/account';
|
|
6
6
|
import { UserClient } from '.';
|
|
7
|
+
import { type CreateTestNodeOptions } from '../lib/utils/helper_testing';
|
|
7
8
|
import { toJSONSerializable } from '../lib/utils/conversion';
|
|
8
9
|
import { KeetaNetError as KeetaError } from '../lib/error';
|
|
9
10
|
export type ClientParams = {
|
|
@@ -21,6 +22,7 @@ export type ClientParams = {
|
|
|
21
22
|
export type NodeCreationOptions = {
|
|
22
23
|
p2pTested?: boolean;
|
|
23
24
|
count?: number;
|
|
25
|
+
customNodeOptions?: Omit<CreateTestNodeOptions, 'peerNodes' | 'enableP2P' | 'initialTrustedAccount'>[];
|
|
24
26
|
};
|
|
25
27
|
export declare function setup(options?: NodeCreationOptions): Promise<{
|
|
26
28
|
trustedKey: Account<AccountKeyAlgorithm.ECDSA_SECP256K1>;
|
|
@@ -38,6 +40,7 @@ declare function runBasicTests(nodes: LocalNode[], userClient: UserClient, trust
|
|
|
38
40
|
declare function runBuilderStorageTests(_ignoreNodes: LocalNode[], userClient: UserClient, trustedClient: UserClient, params: ClientParams, expect: any, ExpectErrorCode: any): Promise<void>;
|
|
39
41
|
declare function runRecoverAccountTest(nodes: LocalNode[], userClient: UserClient, trustedClient: UserClient, params: ClientParams, expect: any, ExpectErrorCode: any): Promise<void>;
|
|
40
42
|
declare function runNonNodeTests(_ignore_nodes: LocalNode[], _ignore_userClient: UserClient, _ignore_trustedClient: UserClient, _ignore_params: ClientParams, expect: any, _ignore_ExpectErrorCode: any): Promise<void>;
|
|
43
|
+
declare function runErrorTests(nodes: LocalNode[], userClientAccount1: UserClient, trustedClient: UserClient, params: ClientParams, expect: any, ExpectErrorCode: any): Promise<void>;
|
|
41
44
|
export declare const clientTests: {
|
|
42
45
|
'Basic Client Tests': {
|
|
43
46
|
test: typeof runBasicTests;
|
|
@@ -68,6 +71,30 @@ export declare const clientTests: {
|
|
|
68
71
|
count: number;
|
|
69
72
|
};
|
|
70
73
|
};
|
|
74
|
+
'Client Error Tests': {
|
|
75
|
+
test: typeof runErrorTests;
|
|
76
|
+
options: {
|
|
77
|
+
p2pTested: boolean;
|
|
78
|
+
count: number;
|
|
79
|
+
customNodeOptions: ({
|
|
80
|
+
readonly ledger: {
|
|
81
|
+
readonly ledgerWriteMode: "no-voting";
|
|
82
|
+
};
|
|
83
|
+
} | {
|
|
84
|
+
readonly ledger: {
|
|
85
|
+
readonly ledgerWriteMode: "read-write";
|
|
86
|
+
};
|
|
87
|
+
} | {
|
|
88
|
+
readonly ledger: {
|
|
89
|
+
readonly ledgerWriteMode: "bootstrap-only";
|
|
90
|
+
};
|
|
91
|
+
} | {
|
|
92
|
+
readonly ledger: {
|
|
93
|
+
readonly ledgerWriteMode: "read-only";
|
|
94
|
+
};
|
|
95
|
+
})[];
|
|
96
|
+
};
|
|
97
|
+
};
|
|
71
98
|
};
|
|
72
99
|
export declare const KeetaNetError: typeof KeetaError;
|
|
73
100
|
export { toJSONSerializable };
|
|
@@ -217,6 +217,7 @@ export declare class Client {
|
|
|
217
217
|
* by the application.
|
|
218
218
|
*/
|
|
219
219
|
logger: Pick<Console, "error" | "log" | "warn">;
|
|
220
|
+
private static updateRepsInterval;
|
|
220
221
|
/**
|
|
221
222
|
* Stats for this instance of the client
|
|
222
223
|
*/
|
|
@@ -432,10 +433,11 @@ export declare class Client {
|
|
|
432
433
|
* may have sent tokens to it.
|
|
433
434
|
*
|
|
434
435
|
* @param account The account to get the head block for
|
|
436
|
+
* @param rep The representative to get the head block from -- this is generally "ANY" in which case the best representative will be used, but it is possible to request a specific representative
|
|
435
437
|
* @return The head block for the account or null if the account has
|
|
436
438
|
* not created any blocks
|
|
437
439
|
*/
|
|
438
|
-
getHeadBlock(account: GenericAccount | string): Promise<Block | null>;
|
|
440
|
+
getHeadBlock(account: GenericAccount | string, rep?: Config.Representative | 'ANY'): Promise<Block | null>;
|
|
439
441
|
/**
|
|
440
442
|
* Get a block from the specified representative by its block hash.
|
|
441
443
|
*
|
|
@@ -477,9 +479,10 @@ export declare class Client {
|
|
|
477
479
|
/**
|
|
478
480
|
* @param blockhash The block hash to get the vote staple for
|
|
479
481
|
* @param side The side of the ledger to get the vote staple from -- this is generally "main", but it is possible to request "side" ledger blocks
|
|
482
|
+
* @param rep The representative to get the staple from -- this is generally "ANY" in which case the best representative will be used, but it is possible to request a specific representative
|
|
480
483
|
* @return The vote staple for the given block hash or null if the vote staple does not exist on the given ledger
|
|
481
484
|
*/
|
|
482
|
-
getVoteStaple(blockhash: BlockHash | string, side?: LedgerStorage): Promise<VoteStaple | null>;
|
|
485
|
+
getVoteStaple(blockhash: BlockHash | string, side?: LedgerStorage, rep?: Config.Representative): Promise<VoteStaple | null>;
|
|
483
486
|
/**
|
|
484
487
|
* Get the chain for a given account. This is the set of blocks that
|
|
485
488
|
* the account has created. This will return the blocks in reverse
|
|
@@ -643,6 +646,16 @@ export declare class Client {
|
|
|
643
646
|
* pending block
|
|
644
647
|
*/
|
|
645
648
|
getPendingBlock(account: GenericAccount): Promise<Block | null>;
|
|
649
|
+
/**
|
|
650
|
+
* Get the successor block for a given block. This will return the
|
|
651
|
+
* block on the representative's ledger that comes after the given block
|
|
652
|
+
*
|
|
653
|
+
* @param blockOrHash The block or hash to get the successor for
|
|
654
|
+
* @param rep The representative account to get the successor block from
|
|
655
|
+
* @return The successor block for the block or null if there is no
|
|
656
|
+
* successor block
|
|
657
|
+
*/
|
|
658
|
+
getSuccessorBlock(blockOrHash: Block | BlockHash | string, rep?: Config.Representative | 'ANY'): Promise<Block | null>;
|
|
646
659
|
/**
|
|
647
660
|
* Recover any unpublished or half-publish account artifacts
|
|
648
661
|
*
|
|
@@ -891,10 +904,10 @@ export declare class UserClient {
|
|
|
891
904
|
* @param token The token to send
|
|
892
905
|
* @param external The external identifier to use for the transaction
|
|
893
906
|
* @param options The options to use for the request
|
|
894
|
-
* @param retries The number of times
|
|
907
|
+
* @param retries The number of times the request has been retried
|
|
895
908
|
* @return The vote staple that was generated and whether it was able to be published
|
|
896
909
|
*/
|
|
897
|
-
send(to: GenericAccount | string, amount: bigint | number, token: TokenAddress | string, external?: string, options?: UserClientOptions, retries?: number): Promise<
|
|
910
|
+
send(to: GenericAccount | string, amount: bigint | number, token: TokenAddress | string, external?: string, options?: UserClientOptions, retries?: number): Promise<Awaited<ReturnType<typeof this.publishBuilder>>>;
|
|
898
911
|
/**
|
|
899
912
|
* Generate a new identifier for the given type and publish the blocks
|
|
900
913
|
*
|