@partisiablockchain/abi-client 5.102.0 → 5.110.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/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@partisiablockchain/abi-client",
3
- "version": "5.102.0",
3
+ "version": "5.110.0",
4
4
  "description": "",
5
5
  "license": "AGPL-3.0",
6
6
  "dependencies": {
7
- "@partisiablockchain/blockchain-api-transaction-client": "5.75.0",
8
- "@partisiablockchain/sections": "5.33.0",
7
+ "@partisiablockchain/blockchain-api-transaction-client": "5.79.0",
8
+ "@partisiablockchain/sections": "5.37.0",
9
9
  "@secata-public/bitmanipulation-ts": "3.3.0",
10
10
  "@types/bn.js": "^5.1.6",
11
11
  "@types/elliptic": "^6.4.18",
@@ -1,11 +1,12 @@
1
1
  import { BlockchainClientForDeployment, DeployResult, VersionInterval } from "./DeploymentTypes";
2
2
  import { PbcFile } from "@partisiablockchain/sections";
3
+ import { ContractAbi } from "../parser/ContractAbi";
3
4
  import { AbiVersion } from "../types/AbiVersion";
4
- import { SignedTransaction } from "@partisiablockchain/blockchain-api-transaction-client";
5
+ import { SignedTransaction, TransactionTree } from "@partisiablockchain/blockchain-api-transaction-client";
5
6
  import { AbstractBuilder } from "../builder/AbstractBuilder";
6
7
  export declare class DeploymentBuilder {
7
- private static readonly DEFAULT_PUB_ADDRESS;
8
- private static readonly DEFAULT_REAL_ADDRESS;
8
+ static readonly DEFAULT_PUB_ADDRESS: string;
9
+ static readonly DEFAULT_REAL_ADDRESS: string;
9
10
  private static readonly DEFAULT_ALLOWED_JURISDICTION;
10
11
  private static readonly DEFAULT_REQUIRED_STAKES;
11
12
  private static readonly DEFAULT_PUB_GAS_COST;
@@ -171,4 +172,6 @@ export declare class DeploymentBuilder {
171
172
  private pubDeployRpc;
172
173
  private getInitializationBytes;
173
174
  }
175
+ export declare function getSupportedBinderVersions(deployState: Buffer, deployAbi: ContractAbi): Map<number, VersionInterval>;
174
176
  export declare function findBinderId(binders: Map<number, VersionInterval>, binderVersion: AbiVersion): number;
177
+ export declare function findFailureCause(transactionTree: TransactionTree): string | undefined;
@@ -27,7 +27,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.DeploymentBuilder = void 0;
30
+ exports.getSupportedBinderVersions = getSupportedBinderVersions;
30
31
  exports.findBinderId = findBinderId;
32
+ exports.findFailureCause = findFailureCause;
31
33
  const sections_1 = require("@partisiablockchain/sections");
32
34
  const AbiParser_1 = require("../parser/AbiParser");
33
35
  const StateReader_1 = require("../state/StateReader");
@@ -1 +1 @@
1
- {"version":3,"file":"DeploymentBuilder.js","sourceRoot":"","sources":["../../../src/main/deploymentclient/DeploymentBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeploymentBuilder.js","sourceRoot":"","sources":["../../../src/main/deploymentclient/DeploymentBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { BlockchainClientForDeployment } from "./DeploymentTypes";
2
2
  import { BlockchainTransactionClient, ChainControllerApi, SenderAuthentication } from "@partisiablockchain/blockchain-api-transaction-client";
3
3
  import { DeploymentBuilder } from "./DeploymentBuilder";
4
+ import { UpgradeBuilder } from "./UpgradeBuilder";
4
5
  /** Client for deploying contracts. */
5
6
  export declare class DeploymentClient {
6
7
  private readonly blockchainClient;
@@ -32,4 +33,10 @@ export declare class DeploymentClient {
32
33
  * @returns a DeploymentBuilder
33
34
  */
34
35
  builder(): DeploymentBuilder;
36
+ /**
37
+ * Create a builder for upgrading a contract.
38
+ *
39
+ * @returns a {@link UpgradeBuilder}
40
+ */
41
+ upgradeBuilder(): UpgradeBuilder;
35
42
  }
@@ -21,6 +21,7 @@ exports.DeploymentClient = void 0;
21
21
  const blockchain_api_transaction_client_1 = require("@partisiablockchain/blockchain-api-transaction-client");
22
22
  const BlockchainClientForDeploymentImpl_1 = require("./BlockchainClientForDeploymentImpl");
23
23
  const DeploymentBuilder_1 = require("./DeploymentBuilder");
24
+ const UpgradeBuilder_1 = require("./UpgradeBuilder");
24
25
  /** Client for deploying contracts. */
25
26
  class DeploymentClient {
26
27
  /**
@@ -62,6 +63,14 @@ class DeploymentClient {
62
63
  builder() {
63
64
  return new DeploymentBuilder_1.DeploymentBuilder(this.blockchainClient);
64
65
  }
66
+ /**
67
+ * Create a builder for upgrading a contract.
68
+ *
69
+ * @returns a {@link UpgradeBuilder}
70
+ */
71
+ upgradeBuilder() {
72
+ return new UpgradeBuilder_1.UpgradeBuilder(this.blockchainClient);
73
+ }
65
74
  }
66
75
  exports.DeploymentClient = DeploymentClient;
67
76
  //# sourceMappingURL=DeploymentClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeploymentClient.js","sourceRoot":"","sources":["../../../src/main/deploymentclient/DeploymentClient.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAGH,6GAK+D;AAC/D,2FAAwF;AACxF,2DAAwD;AAExD,sCAAsC;AACtC,MAAa,gBAAgB;IAG3B;;;;OAIG;IACH,YAAY,gBAA+C;QACzD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,MAAM,CAClB,iBAA8C,EAC9C,eAAmC;QAEnC,OAAO,IAAI,gBAAgB,CACzB,IAAI,qEAAiC,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,oBAA0C;QACrF,MAAM,aAAa,GAAG,IAAI,iDAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/D,MAAM,eAAe,GAAuB,IAAI,sDAAkB,CAAC,aAAa,CAAC,CAAC;QAClF,MAAM,iBAAiB,GAAG,+DAA2B,CAAC,MAAM,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACI,OAAO;QACZ,OAAO,IAAI,qCAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtD,CAAC;CACF;AAlDD,4CAkDC"}
1
+ {"version":3,"file":"DeploymentClient.js","sourceRoot":"","sources":["../../../src/main/deploymentclient/DeploymentClient.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;AAGH,6GAK+D;AAC/D,2FAAwF;AACxF,2DAAwD;AACxD,qDAAkD;AAElD,sCAAsC;AACtC,MAAa,gBAAgB;IAG3B;;;;OAIG;IACH,YAAY,gBAA+C;QACzD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,MAAM,CAClB,iBAA8C,EAC9C,eAAmC;QAEnC,OAAO,IAAI,gBAAgB,CACzB,IAAI,qEAAiC,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAC1E,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,aAAa,CAAC,OAAe,EAAE,oBAA0C;QACrF,MAAM,aAAa,GAAG,IAAI,iDAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/D,MAAM,eAAe,GAAuB,IAAI,sDAAkB,CAAC,aAAa,CAAC,CAAC;QAClF,MAAM,iBAAiB,GAAG,+DAA2B,CAAC,MAAM,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACI,OAAO;QACZ,OAAO,IAAI,qCAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACI,cAAc;QACnB,OAAO,IAAI,+BAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;CACF;AA3DD,4CA2DC"}
@@ -0,0 +1,91 @@
1
+ import { BlockchainClientForDeployment } from "./DeploymentTypes";
2
+ import { PbcFile } from "@partisiablockchain/sections";
3
+ import { SignedTransaction, TransactionTree } from "@partisiablockchain/blockchain-api-transaction-client";
4
+ /** Builder for upgrading contracts through the {@link DeploymentClient}. */
5
+ export declare class UpgradeBuilder {
6
+ static readonly DEFAULT_UPGRADE_COST = 2000000;
7
+ private readonly blockchainClient;
8
+ private abiBytes;
9
+ private contractBytes;
10
+ private upgradeRpcBytes;
11
+ private contractAddressField;
12
+ private gasCostField;
13
+ /**
14
+ * Constructor for {@link UpgradeBuilder}.
15
+ *
16
+ * @param blockchainClient client for getting state and building and sending transactions
17
+ */
18
+ constructor(blockchainClient: BlockchainClientForDeployment);
19
+ /**
20
+ * Set the abi and contract bytes to upgrade to through a pbc file.
21
+ *
22
+ * <p>It is required to provide the abi and the contract bytes, either through this method or
23
+ * through a combination of {@link #abi} and {@link #wasm}.
24
+ *
25
+ * @param pbcFile the bytes of the pbc file to upgrade to
26
+ * @returns this builder
27
+ */
28
+ pbcFile(pbcFile: PbcFile | Buffer): UpgradeBuilder;
29
+ /**
30
+ * Set the abi of the contract to upgrade to.
31
+ *
32
+ * <p>It is required to provide the abi either through this method or through {@link #pbcFile}.
33
+ *
34
+ * @param abi abi bytes to upgrade to
35
+ * @returns this builder
36
+ */
37
+ abi(abi: Buffer): UpgradeBuilder;
38
+ /**
39
+ * Set the contract bytes of the contract to upgrade to.
40
+ *
41
+ * <p>It is required to provide the contract bytes either though this method, or {@link #pbcFile}.
42
+ *
43
+ * @param wasm contract bytes to upgrade to
44
+ * @returns this builder
45
+ */
46
+ wasm(wasm: Buffer): UpgradeBuilder;
47
+ /**
48
+ * Set the address of the contract to be upgraded.
49
+ *
50
+ * <p>This is a required parameter
51
+ *
52
+ * @param contractAddress address of the contract to be upgraded
53
+ * @returns this builder
54
+ */
55
+ contractAddress(contractAddress: string): UpgradeBuilder;
56
+ /**
57
+ * Set the rpc given to contract on its upgrade. If not set an empty upgrade rpc is used
58
+ *
59
+ * @param upgradeRpc the upgrade rpc
60
+ * @returns this builder
61
+ */
62
+ upgradeRpc(upgradeRpc: Buffer): UpgradeBuilder;
63
+ /**
64
+ * Set the gas cost used to upgrade the contract. If not set a default of 2_000_000 gas is used.
65
+ *
66
+ * @param gasCost gas cost used to upgrade the contract
67
+ * @returns this builder
68
+ */
69
+ gasCost(gasCost: number): UpgradeBuilder;
70
+ /**
71
+ * Build the rpc for the upgrade transaction to the deploy-contract.
72
+ *
73
+ * @returns the rpc for the upgrade transaction
74
+ */
75
+ buildRpc(): Promise<Buffer>;
76
+ /**
77
+ * Build the signed transaction of the upgrade call.
78
+ *
79
+ * @returns the signed transaction of the upgrade call.
80
+ */
81
+ build(): Promise<SignedTransaction>;
82
+ /**
83
+ * Build and send the upgrade signed transaction to the pub-deploy contract.
84
+ *
85
+ * @returns the executed transaction tree of the transaction.
86
+ */
87
+ upgrade(): Promise<TransactionTree>;
88
+ private validateRequiredParameters;
89
+ private determineBinderId;
90
+ private createUpgradeBytes;
91
+ }
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (C) 2022 - 2023 Partisia Blockchain Foundation
4
+ *
5
+ * This program is free software: you can redistribute it and/or modify
6
+ * it under the terms of the GNU Affero General Public License as published by
7
+ * the Free Software Foundation, either version 3 of the License, or
8
+ * (at your option) any later version.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ *
18
+ */
19
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
20
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
21
+ return new (P || (P = Promise))(function (resolve, reject) {
22
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
23
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
24
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
25
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
26
+ });
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.UpgradeBuilder = void 0;
30
+ const sections_1 = require("@partisiablockchain/sections");
31
+ const AbiParser_1 = require("../parser/AbiParser");
32
+ const DeploymentBuilder_1 = require("./DeploymentBuilder");
33
+ const FnRpcBuilder_1 = require("../rpc/FnRpcBuilder");
34
+ /** Builder for upgrading contracts through the {@link DeploymentClient}. */
35
+ class UpgradeBuilder {
36
+ /**
37
+ * Constructor for {@link UpgradeBuilder}.
38
+ *
39
+ * @param blockchainClient client for getting state and building and sending transactions
40
+ */
41
+ constructor(blockchainClient) {
42
+ this.upgradeRpcBytes = Buffer.from([]);
43
+ this.gasCostField = UpgradeBuilder.DEFAULT_UPGRADE_COST;
44
+ this.blockchainClient = blockchainClient;
45
+ }
46
+ /**
47
+ * Set the abi and contract bytes to upgrade to through a pbc file.
48
+ *
49
+ * <p>It is required to provide the abi and the contract bytes, either through this method or
50
+ * through a combination of {@link #abi} and {@link #wasm}.
51
+ *
52
+ * @param pbcFile the bytes of the pbc file to upgrade to
53
+ * @returns this builder
54
+ */
55
+ pbcFile(pbcFile) {
56
+ let pbc;
57
+ if (Buffer.isBuffer(pbcFile)) {
58
+ pbc = sections_1.PbcFile.fromBytes(pbcFile);
59
+ }
60
+ else {
61
+ pbc = pbcFile;
62
+ }
63
+ this.abiBytes = pbc.getAbiBytes();
64
+ if (pbc.isZk) {
65
+ throw new Error("Cannot upgrade a zk contract");
66
+ }
67
+ else {
68
+ this.contractBytes = pbc.getWasmBytes();
69
+ }
70
+ return this;
71
+ }
72
+ /**
73
+ * Set the abi of the contract to upgrade to.
74
+ *
75
+ * <p>It is required to provide the abi either through this method or through {@link #pbcFile}.
76
+ *
77
+ * @param abi abi bytes to upgrade to
78
+ * @returns this builder
79
+ */
80
+ abi(abi) {
81
+ this.abiBytes = abi;
82
+ return this;
83
+ }
84
+ /**
85
+ * Set the contract bytes of the contract to upgrade to.
86
+ *
87
+ * <p>It is required to provide the contract bytes either though this method, or {@link #pbcFile}.
88
+ *
89
+ * @param wasm contract bytes to upgrade to
90
+ * @returns this builder
91
+ */
92
+ wasm(wasm) {
93
+ this.contractBytes = wasm;
94
+ return this;
95
+ }
96
+ /**
97
+ * Set the address of the contract to be upgraded.
98
+ *
99
+ * <p>This is a required parameter
100
+ *
101
+ * @param contractAddress address of the contract to be upgraded
102
+ * @returns this builder
103
+ */
104
+ contractAddress(contractAddress) {
105
+ this.contractAddressField = contractAddress;
106
+ return this;
107
+ }
108
+ /**
109
+ * Set the rpc given to contract on its upgrade. If not set an empty upgrade rpc is used
110
+ *
111
+ * @param upgradeRpc the upgrade rpc
112
+ * @returns this builder
113
+ */
114
+ upgradeRpc(upgradeRpc) {
115
+ this.upgradeRpcBytes = upgradeRpc;
116
+ return this;
117
+ }
118
+ /**
119
+ * Set the gas cost used to upgrade the contract. If not set a default of 2_000_000 gas is used.
120
+ *
121
+ * @param gasCost gas cost used to upgrade the contract
122
+ * @returns this builder
123
+ */
124
+ gasCost(gasCost) {
125
+ this.gasCostField = gasCost;
126
+ return this;
127
+ }
128
+ /**
129
+ * Build the rpc for the upgrade transaction to the deploy-contract.
130
+ *
131
+ * @returns the rpc for the upgrade transaction
132
+ */
133
+ buildRpc() {
134
+ return __awaiter(this, void 0, void 0, function* () {
135
+ this.validateRequiredParameters();
136
+ const deployContract = yield this.blockchainClient
137
+ .getContract(DeploymentBuilder_1.DeploymentBuilder.DEFAULT_PUB_ADDRESS)
138
+ .catch(() => {
139
+ throw new Error("Unable to get deploy contract state");
140
+ });
141
+ const deployAbiBytes = Buffer.from(deployContract.abi, "base64");
142
+ const deployState = Buffer.from(deployContract.serializedContract, "base64");
143
+ const deployAbi = new AbiParser_1.AbiParser(deployAbiBytes).parseAbi().contract;
144
+ const abiToBeDeployed = new AbiParser_1.AbiParser(this.abiBytes).parseAbi();
145
+ const binderId = this.determineBinderId(abiToBeDeployed, deployAbi, deployState);
146
+ return this.createUpgradeBytes(deployAbi, binderId);
147
+ });
148
+ }
149
+ /**
150
+ * Build the signed transaction of the upgrade call.
151
+ *
152
+ * @returns the signed transaction of the upgrade call.
153
+ */
154
+ build() {
155
+ return __awaiter(this, void 0, void 0, function* () {
156
+ const rpc = yield this.buildRpc();
157
+ return this.blockchainClient.sign({ address: DeploymentBuilder_1.DeploymentBuilder.DEFAULT_PUB_ADDRESS, rpc }, this.gasCostField);
158
+ });
159
+ }
160
+ /**
161
+ * Build and send the upgrade signed transaction to the pub-deploy contract.
162
+ *
163
+ * @returns the executed transaction tree of the transaction.
164
+ */
165
+ upgrade() {
166
+ return __awaiter(this, void 0, void 0, function* () {
167
+ const signedTransaction = yield this.build();
168
+ const sentTransaction = yield this.blockchainClient.send(signedTransaction).catch(() => {
169
+ throw new Error("Failed to send upgrade transaction");
170
+ });
171
+ const transactionTree = yield this.blockchainClient.waitForSpawnedEvents(sentTransaction);
172
+ if (transactionTree.hasFailures()) {
173
+ throw new Error(`Transaction '${signedTransaction.identifier()}' failed with cause: ${(0, DeploymentBuilder_1.findFailureCause)(transactionTree)}`);
174
+ }
175
+ return transactionTree;
176
+ });
177
+ }
178
+ validateRequiredParameters() {
179
+ if (this.contractBytes === undefined) {
180
+ throw new Error("Missing contract bytes");
181
+ }
182
+ if (this.abiBytes === undefined) {
183
+ throw new Error("Missing abi bytes");
184
+ }
185
+ if (this.contractAddressField === undefined) {
186
+ throw new Error("Missing contract address");
187
+ }
188
+ }
189
+ determineBinderId(abiToBeDeployed, deployAbi, deployState) {
190
+ const binderVersions = (0, DeploymentBuilder_1.getSupportedBinderVersions)(deployState, deployAbi);
191
+ const binderVersion = abiToBeDeployed.versionBinder;
192
+ return (0, DeploymentBuilder_1.findBinderId)(binderVersions, binderVersion);
193
+ }
194
+ createUpgradeBytes(deployAbi, binderId) {
195
+ const fnBuilder = new FnRpcBuilder_1.FnRpcBuilder("upgradeContract", deployAbi);
196
+ fnBuilder.addAddress(this.contractAddressField);
197
+ fnBuilder.addI32(binderId);
198
+ fnBuilder.addVecU8(this.contractBytes);
199
+ fnBuilder.addVecU8(this.abiBytes);
200
+ fnBuilder.addVecU8(this.upgradeRpcBytes);
201
+ return fnBuilder.getBytes();
202
+ }
203
+ }
204
+ exports.UpgradeBuilder = UpgradeBuilder;
205
+ UpgradeBuilder.DEFAULT_UPGRADE_COST = 2000000;
206
+ //# sourceMappingURL=UpgradeBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UpgradeBuilder.js","sourceRoot":"","sources":["../../../src/main/deploymentclient/UpgradeBuilder.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,14 @@ export declare class RustSyntaxPrettyPrinter {
10
10
  printModel(): string;
11
11
  numberCompare(a: number, b: number): number;
12
12
  private buildVersion;
13
+ private printFunctions;
14
+ printAllInvocations(): string;
15
+ printActions(): string;
16
+ printCallbacks(): string;
17
+ printBinderVersion(): string;
18
+ printClientVersion(): string;
13
19
  printFunction(func: FnAbi): string;
20
+ printState(): string;
14
21
  printStruct(struct: StructTypeSpec): string;
15
22
  private readonly FN_KINDS_WITH_EXPLICIT_SHORTNAME;
16
23
  private buildFunction;
@@ -59,10 +59,8 @@ class RustSyntaxPrettyPrinter {
59
59
  headerBuilder.appendLine("\n\n");
60
60
  }
61
61
  // Build version information
62
- builder.push("// Version Binder: ");
63
- this.buildVersion(builder, this.model.versionBinder);
64
- builder.push("// Version Client: ");
65
- this.buildVersion(builder, this.model.versionClient);
62
+ builder.push(this.printBinderVersion());
63
+ builder.push(this.printClientVersion());
66
64
  builder.push("\n");
67
65
  // Build list of struct definition
68
66
  const contract = this.model.contract;
@@ -75,7 +73,20 @@ class RustSyntaxPrettyPrinter {
75
73
  this.buildNamedDefinition(builder, namedTypeSpec);
76
74
  }
77
75
  this.buildStateDefinition(builder);
78
- const functions = [...contract.functions].sort((a, b) => {
76
+ // Build all functions
77
+ builder.push(this.printAllInvocations());
78
+ return builder.join("");
79
+ }
80
+ numberCompare(a, b) {
81
+ return a - b;
82
+ }
83
+ buildVersion(builder, version) {
84
+ builder.push(`${version.major}.${version.minor}.${version.patch}\n`);
85
+ }
86
+ printFunctions(builder, functionKinds) {
87
+ const contract = this.model.contract;
88
+ const functions = contract.functions.filter((f) => functionKinds(f));
89
+ const sortedFunctions = [...functions].sort((a, b) => {
79
90
  if (a.kind.kindId != b.kind.kindId) {
80
91
  return this.numberCompare(a.kind.kindId, b.kind.kindId);
81
92
  }
@@ -83,22 +94,48 @@ class RustSyntaxPrettyPrinter {
83
94
  return a.shortname.compare(b.shortname);
84
95
  }
85
96
  });
86
- for (const func of functions) {
87
- this.buildFunction(builder, func);
97
+ for (const fun of sortedFunctions) {
98
+ this.buildFunction(builder, fun);
99
+ builder.push("\n");
88
100
  }
101
+ }
102
+ printAllInvocations() {
103
+ const builder = [];
104
+ this.printFunctions(builder, (_) => true);
89
105
  return builder.join("");
90
106
  }
91
- numberCompare(a, b) {
92
- return a - b;
107
+ printActions() {
108
+ const builder = [];
109
+ this.printFunctions(builder, (f) => f.kind === FnKinds_1.FnKinds.action || f.kind === FnKinds_1.FnKinds.init);
110
+ return builder.join("");
93
111
  }
94
- buildVersion(builder, version) {
95
- builder.push(`${version.major}.${version.minor}.${version.patch}\n`);
112
+ printCallbacks() {
113
+ const builder = [];
114
+ this.printFunctions(builder, (f) => f.kind === FnKinds_1.FnKinds.callback);
115
+ return builder.join("");
116
+ }
117
+ printBinderVersion() {
118
+ const builder = [];
119
+ builder.push("// Binder Version: ");
120
+ this.buildVersion(builder, this.model.versionBinder);
121
+ return builder.join("");
122
+ }
123
+ printClientVersion() {
124
+ const builder = [];
125
+ builder.push("// Client Version: ");
126
+ this.buildVersion(builder, this.model.versionClient);
127
+ return builder.join("");
96
128
  }
97
129
  printFunction(func) {
98
130
  const builder = [];
99
131
  this.buildFunction(builder, func);
100
132
  return builder.join("");
101
133
  }
134
+ printState() {
135
+ const builder = [];
136
+ this.buildStateDefinition(builder);
137
+ return builder.join("");
138
+ }
102
139
  printStruct(struct) {
103
140
  const builder = [];
104
141
  const stateStruct = this.model.contract.getStateStruct();
@@ -185,7 +222,7 @@ class RustSyntaxPrettyPrinter {
185
222
  for (const variant of enumTypeSpec.variants) {
186
223
  this.buildEnumVariant(builder, variant);
187
224
  }
188
- builder.push("}\n");
225
+ builder.push("}\n\n");
189
226
  }
190
227
  buildEnumVariant(builder, variant) {
191
228
  const namedTypeSpec = this.model.contract.getNamedType(variant.def);
@@ -212,7 +249,7 @@ class RustSyntaxPrettyPrinter {
212
249
  for (const field of state.fields) {
213
250
  this.buildFields(builder, field);
214
251
  }
215
- builder.push("}\n");
252
+ builder.push("}\n\n");
216
253
  }
217
254
  buildStructDefinition(builder, struct) {
218
255
  this.buildDocumentationForStruct(builder, struct, struct.doc);
@@ -220,7 +257,7 @@ class RustSyntaxPrettyPrinter {
220
257
  for (const field of struct.fields) {
221
258
  this.buildFields(builder, field);
222
259
  }
223
- builder.push("}\n");
260
+ builder.push("}\n\n");
224
261
  }
225
262
  buildFields(builder, field) {
226
263
  builder.push(` ${field.name}: `);
@@ -1 +1 @@
1
- {"version":3,"file":"RustSyntaxPrettyPrinter.js","sourceRoot":"","sources":["../../../src/main/parser/RustSyntaxPrettyPrinter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RustSyntaxPrettyPrinter.js","sourceRoot":"","sources":["../../../src/main/parser/RustSyntaxPrettyPrinter.ts"],"names":[],"mappings":"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"}