@arkecosystem/typescript-crypto 0.0.3 → 0.0.4
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/dist/index.js +2 -1
- package/dist/transactions/builders/ValidatorRegistrationBuilder.d.ts.map +1 -1
- package/dist/transactions/builders/ValidatorRegistrationBuilder.js +3 -1
- package/package.json +1 -1
- package/src/transactions/builders/ValidatorRegistrationBuilder.ts +4 -1
- package/tests/unit/transactions/builders/ValidatorRegistrationBuilder.test.ts +28 -0
package/dist/index.js
CHANGED
@@ -28328,7 +28328,8 @@ var ValidatorRegistrationBuilder = class extends AbstractTransactionBuilder {
|
|
28328
28328
|
return new this(data);
|
28329
28329
|
}
|
28330
28330
|
validatorPublicKey(validatorPublicKey) {
|
28331
|
-
|
28331
|
+
validatorPublicKey = Helpers.removeLeadingHexZero(validatorPublicKey);
|
28332
|
+
this.transaction.data.validatorPublicKey = `0x${validatorPublicKey}`;
|
28332
28333
|
this.transaction.refreshPayloadData();
|
28333
28334
|
return this;
|
28334
28335
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ValidatorRegistrationBuilder.d.ts","sourceRoot":"","sources":["../../../src/transactions/builders/ValidatorRegistrationBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,6BAA6B,EAAmB,MAAM,SAAS,CAAC;AAEvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;
|
1
|
+
{"version":3,"file":"ValidatorRegistrationBuilder.d.ts","sourceRoot":"","sources":["../../../src/transactions/builders/ValidatorRegistrationBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,6BAA6B,EAAmB,MAAM,SAAS,CAAC;AAEvF,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAK1E,qBAAa,4BACZ,SAAQ,0BAA0B,CAAC,6BAA6B,CAChE,YAAW,6BAA6B;gBAErB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;WAM/B,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,6BAA6B;IAIrE,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG,6BAA6B;IAUpF,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,YAAY;CAG1E"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { AbstractTransactionBuilder } from "./AbstractTransactionBuilder";
|
2
2
|
import { ContractAddresses } from "@/enums/ContractAddresses";
|
3
3
|
import { ValidatorRegistration } from "@/transactions/types/ValidatorRegistration";
|
4
|
+
import { Helpers } from "@/utils";
|
4
5
|
export class ValidatorRegistrationBuilder extends AbstractTransactionBuilder {
|
5
6
|
constructor(data) {
|
6
7
|
super(data);
|
@@ -10,7 +11,8 @@ export class ValidatorRegistrationBuilder extends AbstractTransactionBuilder {
|
|
10
11
|
return new this(data);
|
11
12
|
}
|
12
13
|
validatorPublicKey(validatorPublicKey) {
|
13
|
-
|
14
|
+
validatorPublicKey = Helpers.removeLeadingHexZero(validatorPublicKey);
|
15
|
+
this.transaction.data.validatorPublicKey = `0x${validatorPublicKey}`;
|
14
16
|
this.transaction.refreshPayloadData();
|
15
17
|
return this;
|
16
18
|
}
|
package/package.json
CHANGED
@@ -3,6 +3,7 @@ import { ITransaction, IValidatorRegistrationBuilder, TransactionData } from "@/
|
|
3
3
|
import { AbstractTransactionBuilder } from "./AbstractTransactionBuilder";
|
4
4
|
import { ContractAddresses } from "@/enums/ContractAddresses";
|
5
5
|
import { ValidatorRegistration } from "@/transactions/types/ValidatorRegistration";
|
6
|
+
import { Helpers } from "@/utils";
|
6
7
|
|
7
8
|
export class ValidatorRegistrationBuilder
|
8
9
|
extends AbstractTransactionBuilder<IValidatorRegistrationBuilder>
|
@@ -19,7 +20,9 @@ export class ValidatorRegistrationBuilder
|
|
19
20
|
}
|
20
21
|
|
21
22
|
public validatorPublicKey(validatorPublicKey: string): IValidatorRegistrationBuilder {
|
22
|
-
|
23
|
+
validatorPublicKey = Helpers.removeLeadingHexZero(validatorPublicKey);
|
24
|
+
|
25
|
+
this.transaction.data.validatorPublicKey = `0x${validatorPublicKey}`;
|
23
26
|
|
24
27
|
this.transaction.refreshPayloadData();
|
25
28
|
|
@@ -4,6 +4,34 @@ import identityFixture from "@tests/fixtures/identity.json";
|
|
4
4
|
import { ValidatorRegistrationBuilder } from "@/transactions/builders/ValidatorRegistrationBuilder";
|
5
5
|
|
6
6
|
it("should build a transaction", async () => {
|
7
|
+
const transaction = (
|
8
|
+
await ValidatorRegistrationBuilder.new()
|
9
|
+
.validatorPublicKey(
|
10
|
+
"30954f46d6097a1d314e900e66e11e0dad0a57cd03e04ec99f0dedd1c765dcb11e6d7fa02e22cf40f9ee23d9cc1c0624",
|
11
|
+
)
|
12
|
+
.nonce(fixture.data.nonce)
|
13
|
+
.gasPrice(fixture.data.gasPrice)
|
14
|
+
.gasLimit(fixture.data.gasLimit)
|
15
|
+
.network(fixture.data.network)
|
16
|
+
.sign(identityFixture.passphrase)
|
17
|
+
).transaction;
|
18
|
+
|
19
|
+
expect(transaction.data.gasPrice).toBe(fixture.data.gasPrice);
|
20
|
+
expect(transaction.data.nonce).toBe(fixture.data.nonce);
|
21
|
+
expect(transaction.data.network).toBe(fixture.data.network);
|
22
|
+
expect(transaction.data.gasLimit).toBe(fixture.data.gasLimit);
|
23
|
+
expect(transaction.data.recipientAddress).toBe(fixture.data.recipientAddress);
|
24
|
+
expect(transaction.data.value).toBe(fixture.data.value);
|
25
|
+
expect(transaction.data.v).toBe(fixture.data.v);
|
26
|
+
expect(transaction.data.r).toBe(fixture.data.r);
|
27
|
+
expect(transaction.data.s).toBe(fixture.data.s);
|
28
|
+
expect(transaction.data.id).toBe(fixture.data.id);
|
29
|
+
|
30
|
+
expect(transaction.serialize().toString("hex")).toEqual(fixture.serialized);
|
31
|
+
expect(transaction.verify()).toBe(true);
|
32
|
+
});
|
33
|
+
|
34
|
+
it("should handle validator public key with leading 0x", async () => {
|
7
35
|
const transaction = (
|
8
36
|
await ValidatorRegistrationBuilder.new()
|
9
37
|
.validatorPublicKey(
|