@h2protocol/v4-client-js 1.3.31-h2.1 → 1.3.33-h2.1

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 (124) hide show
  1. package/__tests__/helpers/constants.ts +131 -131
  2. package/__tests__/lib/helpers.test.ts +3 -3
  3. package/__tests__/lib/validation.test.ts +290 -290
  4. package/__tests__/modules/client/Transfers.test.ts +4 -4
  5. package/build/cjs/__tests__/helpers/constants.js +4 -7
  6. package/build/cjs/__tests__/lib/helpers.test.js +4 -7
  7. package/build/cjs/__tests__/lib/validation.test.js +4 -7
  8. package/build/cjs/__tests__/modules/client/Transfers.test.js +5 -5
  9. package/build/cjs/examples/constants.js +4 -7
  10. package/build/cjs/examples/gov_add_new_market.js +3 -6
  11. package/build/cjs/examples/json-encoding.js +3 -3
  12. package/build/cjs/examples/noble_example.js +4 -4
  13. package/build/cjs/examples/permissioned_keys_example.js +3 -3
  14. package/build/cjs/examples/transfer_example_deposit.js +3 -3
  15. package/build/cjs/examples/transfer_example_send.js +4 -4
  16. package/build/cjs/examples/transfer_example_subaccount_transfer.js +3 -3
  17. package/build/cjs/examples/transfer_example_withdraw.js +3 -3
  18. package/build/cjs/examples/transfer_example_withdraw_other.js +4 -4
  19. package/build/cjs/examples/validator_post_example.js +6 -6
  20. package/build/cjs/src/clients/composite-client.js +12 -14
  21. package/build/cjs/src/clients/constants.js +4 -7
  22. package/build/cjs/src/clients/helpers/chain-helpers.js +6 -6
  23. package/build/cjs/src/clients/helpers/request-helpers.js +3 -6
  24. package/build/cjs/src/clients/lib/cctpProto.js +29 -29
  25. package/build/cjs/src/clients/lib/registry.js +3 -6
  26. package/build/cjs/src/clients/modules/composer.js +12 -12
  27. package/build/cjs/src/clients/modules/get.js +3 -3
  28. package/build/cjs/src/clients/modules/local-wallet.js +3 -3
  29. package/build/cjs/src/clients/modules/post.js +6 -6
  30. package/build/cjs/src/clients/modules/signer.js +4 -4
  31. package/build/cjs/src/clients/native.js +5 -5
  32. package/build/cjs/src/clients/validator-client.js +3 -3
  33. package/build/cjs/src/lib/bigint-long.js +239 -0
  34. package/build/cjs/src/lib/helpers.js +6 -6
  35. package/build/cjs/src/lib/long.js +13 -0
  36. package/build/cjs/src/lib/validation.js +5 -8
  37. package/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  38. package/build/esm/__tests__/helpers/constants.js +2 -2
  39. package/build/esm/__tests__/lib/helpers.test.js +4 -4
  40. package/build/esm/__tests__/lib/validation.test.js +2 -2
  41. package/build/esm/__tests__/modules/client/Transfers.test.js +5 -5
  42. package/build/esm/examples/constants.js +4 -4
  43. package/build/esm/examples/gov_add_new_market.js +2 -2
  44. package/build/esm/examples/json-encoding.js +2 -2
  45. package/build/esm/examples/noble_example.js +2 -2
  46. package/build/esm/examples/permissioned_keys_example.js +2 -2
  47. package/build/esm/examples/transfer_example_deposit.js +3 -3
  48. package/build/esm/examples/transfer_example_send.js +3 -3
  49. package/build/esm/examples/transfer_example_subaccount_transfer.js +3 -3
  50. package/build/esm/examples/transfer_example_withdraw.js +3 -3
  51. package/build/esm/examples/transfer_example_withdraw_other.js +3 -3
  52. package/build/esm/examples/validator_post_example.js +2 -2
  53. package/build/esm/src/clients/composite-client.d.ts.map +1 -1
  54. package/build/esm/src/clients/composite-client.js +6 -8
  55. package/build/esm/src/clients/constants.js +2 -2
  56. package/build/esm/src/clients/helpers/chain-helpers.d.ts +1 -1
  57. package/build/esm/src/clients/helpers/chain-helpers.d.ts.map +1 -1
  58. package/build/esm/src/clients/helpers/chain-helpers.js +2 -2
  59. package/build/esm/src/clients/helpers/request-helpers.js +2 -2
  60. package/build/esm/src/clients/lib/cctpProto.d.ts +1 -1
  61. package/build/esm/src/clients/lib/cctpProto.d.ts.map +1 -1
  62. package/build/esm/src/clients/lib/cctpProto.js +2 -2
  63. package/build/esm/src/clients/lib/registry.js +2 -2
  64. package/build/esm/src/clients/modules/composer.d.ts +1 -1
  65. package/build/esm/src/clients/modules/composer.d.ts.map +1 -1
  66. package/build/esm/src/clients/modules/composer.js +10 -10
  67. package/build/esm/src/clients/modules/get.d.ts +1 -1
  68. package/build/esm/src/clients/modules/get.d.ts.map +1 -1
  69. package/build/esm/src/clients/modules/get.js +2 -2
  70. package/build/esm/src/clients/modules/local-wallet.js +2 -2
  71. package/build/esm/src/clients/modules/post.d.ts +1 -1
  72. package/build/esm/src/clients/modules/post.d.ts.map +1 -1
  73. package/build/esm/src/clients/modules/post.js +2 -2
  74. package/build/esm/src/clients/modules/signer.js +3 -3
  75. package/build/esm/src/clients/native.d.ts +1 -1
  76. package/build/esm/src/clients/native.d.ts.map +1 -1
  77. package/build/esm/src/clients/native.js +2 -2
  78. package/build/esm/src/clients/subaccount.d.ts +1 -1
  79. package/build/esm/src/clients/subaccount.d.ts.map +1 -1
  80. package/build/esm/src/clients/types.d.ts +1 -1
  81. package/build/esm/src/clients/types.d.ts.map +1 -1
  82. package/build/esm/src/clients/validator-client.js +2 -2
  83. package/build/esm/src/lib/bigint-long.d.ts +53 -0
  84. package/build/esm/src/lib/bigint-long.d.ts.map +1 -0
  85. package/build/esm/src/lib/bigint-long.js +235 -0
  86. package/build/esm/src/lib/helpers.d.ts +1 -1
  87. package/build/esm/src/lib/helpers.d.ts.map +1 -1
  88. package/build/esm/src/lib/helpers.js +2 -2
  89. package/build/esm/src/lib/long.d.ts +16 -0
  90. package/build/esm/src/lib/long.d.ts.map +1 -0
  91. package/build/esm/src/lib/long.js +4 -0
  92. package/build/esm/src/lib/validation.js +2 -2
  93. package/build/esm/tsconfig.esm.tsbuildinfo +1 -1
  94. package/examples/constants.ts +3 -3
  95. package/examples/gov_add_new_market.ts +1 -1
  96. package/examples/json-encoding.ts +1 -1
  97. package/examples/noble_example.ts +1 -1
  98. package/examples/permissioned_keys_example.ts +1 -1
  99. package/examples/transfer_example_deposit.ts +2 -2
  100. package/examples/transfer_example_send.ts +2 -2
  101. package/examples/transfer_example_subaccount_transfer.ts +2 -2
  102. package/examples/transfer_example_withdraw.ts +2 -2
  103. package/examples/transfer_example_withdraw_other.ts +2 -2
  104. package/examples/validator_post_example.ts +2 -2
  105. package/package.json +1 -1
  106. package/src/clients/composite-client.ts +6 -8
  107. package/src/clients/constants.ts +3 -3
  108. package/src/clients/helpers/chain-helpers.ts +1 -1
  109. package/src/clients/helpers/request-helpers.ts +2 -2
  110. package/src/clients/lib/cctpProto.ts +1 -1
  111. package/src/clients/lib/registry.ts +227 -227
  112. package/src/clients/modules/composer.ts +10 -10
  113. package/src/clients/modules/get.ts +3 -3
  114. package/src/clients/modules/local-wallet.ts +2 -2
  115. package/src/clients/modules/post.ts +2 -2
  116. package/src/clients/modules/signer.ts +3 -3
  117. package/src/clients/native.ts +1 -1
  118. package/src/clients/subaccount.ts +1 -1
  119. package/src/clients/types.ts +193 -193
  120. package/src/clients/validator-client.ts +2 -2
  121. package/src/lib/bigint-long.ts +274 -0
  122. package/src/lib/helpers.ts +124 -124
  123. package/src/lib/long.ts +21 -0
  124. package/src/lib/validation.ts +196 -196
@@ -1,131 +1,131 @@
1
- import Long from 'long';
2
-
3
- import { generateRandomClientId } from '../../src/lib/utils';
4
- import { bigIntToBytes } from '../../src/lib/helpers';
5
- import {
6
- ClobPairId,
7
- TransactionOptions,
8
- ICancelOrder,
9
- Transfer,
10
- OrderFlags,
11
- IPlaceOrder,
12
- Order_Side,
13
- Order_TimeInForce,
14
- IBatchCancelOrder,
15
- } from '../../src/types';
16
-
17
- export const TEST_ADDRESS: string = 'dydx1vl9h9nkmau4e9v7tm30wekespu3d2qhd9404wa';
18
- export const TEST_RECIPIENT_ADDRESS: string = 'dydx1slanxj8x9ntk9knwa6cvfv2tzlsq5gk3dshml0';
19
- export const TEST_CHAIN_ID: string = 'dydxprotocol';
20
- export const TEST_HOST: string = 'http://localhost:26657';
21
-
22
- export const defaultTransactionOptions: TransactionOptions = {
23
- accountNumber: 1,
24
- sequence: 10,
25
- chainId: TEST_CHAIN_ID,
26
- };
27
-
28
- // PlaceOrder variables
29
- export const defaultOrder: IPlaceOrder = {
30
- clientId: 0,
31
- orderFlags: OrderFlags.SHORT_TERM,
32
- clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
33
- side: Order_Side.SIDE_BUY,
34
- quantums: Long.fromNumber(10),
35
- subticks: Long.fromNumber(100),
36
- goodTilBlock: 10000,
37
- timeInForce: Order_TimeInForce.TIME_IN_FORCE_UNSPECIFIED,
38
- reduceOnly: false,
39
- clientMetadata: 0,
40
- // New optional fields
41
- twapParameters: undefined,
42
- builderCodeParameters: undefined,
43
- orderRouterAddress: undefined,
44
- };
45
-
46
- // PlaceOrder with TWAP parameters for testing
47
- export const twapOrder: IPlaceOrder = {
48
- ...defaultOrder,
49
- clientId: 1,
50
- twapParameters: {
51
- duration: 3600, // 1 hour
52
- interval: 300, // 5 minutes
53
- priceTolerance: 50000, // 5% in ppm
54
- },
55
- };
56
-
57
- // PlaceOrder with builder code parameters for testing
58
- export const builderOrder: IPlaceOrder = {
59
- ...defaultOrder,
60
- clientId: 2,
61
- builderCodeParameters: {
62
- builderAddress: 'dydx1test_builder_address',
63
- feePpm: 1000, // 0.1% fee
64
- }
65
- };
66
-
67
- export const orderRouterOrder: IPlaceOrder = {
68
- ...defaultOrder,
69
- clientId: 2,
70
- orderRouterAddress: 'dydx1test_router_address',
71
- };
72
-
73
- // CancelOrder variables
74
- export const defaultCancelOrder: ICancelOrder = {
75
- clientId: generateRandomClientId(),
76
- orderFlags: OrderFlags.SHORT_TERM,
77
- clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
78
- goodTilBlock: 4250,
79
- };
80
-
81
- // BatchCancelOrder variables
82
- export const defaultBatchCancelOrder: IBatchCancelOrder = {
83
- shortTermOrders: [
84
- {
85
- clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
86
- clientIds: [generateRandomClientId(), generateRandomClientId()],
87
- },
88
- ],
89
- goodTilBlock: 4250,
90
- };
91
-
92
- // Transfer variables
93
- export const defaultTransfer: Transfer = {
94
- sender: {
95
- owner: TEST_ADDRESS,
96
- number: 0,
97
- },
98
- recipient: {
99
- owner: 'dydx14063jves4u9zhm7eja5ltf3t8zspxd92qnk23t',
100
- number: 0,
101
- },
102
- assetId: 0,
103
- amount: bigIntToBytes(BigInt(1000)),
104
- };
105
-
106
- // ------ Onboarding Constants ------ //
107
- // Base Signature Result
108
- export const SIGNATURE_RESULT =
109
- '0xf2006b4fc0afa08a6048b40d3d67e437ac2e20e6bacf3f947f9b33aa2756d204287f5fb2155bec067d879a25d7ddac791826cf28e2786919065e19848020f1531b';
110
-
111
- // Derived privateKeyBytes from Base Signature Result
112
- export const ENTROPY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
113
- 247, 183, 226, 106, 76, 125, 241, 35, 149, 75, 103, 180, 165, 243, 80, 128, 34, 20, 238, 201, 131,
114
- 180, 61, 76, 223, 179, 37, 211, 144, 197, 171, 251,
115
- ]);
116
-
117
- // Derived HDKey privateKey from Base Signature Result
118
- export const PRIVATE_KEY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
119
- 14, 92, 178, 198, 64, 65, 27, 153, 11, 45, 118, 194, 71, 194, 10, 140, 145, 40, 203, 107, 231,
120
- 191, 138, 220, 168, 104, 28, 69, 58, 193, 203, 213,
121
- ]);
122
-
123
- // Derived HDKey publicKey from Base Signature Result
124
- export const PUBLIC_KEY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
125
- 2, 204, 94, 45, 7, 83, 196, 55, 195, 107, 10, 35, 169, 32, 24, 37, 193, 196, 34, 210, 84, 26, 107,
126
- 89, 119, 240, 211, 63, 187, 34, 162, 197, 36,
127
- ]);
128
-
129
- // Derived HDKey mnemonic from Base Signature Result
130
- export const MNEMONIC_FROM_SIGNATURE_RESULT =
131
- 'waste sample once ocean tenant mushroom festival hollow regret convince stage able candy jazz champion isolate diary group under entry decorate glare quiz job';
1
+ import { Long } from '../../src/lib/long';
2
+
3
+ import { generateRandomClientId } from '../../src/lib/utils';
4
+ import { bigIntToBytes } from '../../src/lib/helpers';
5
+ import {
6
+ ClobPairId,
7
+ TransactionOptions,
8
+ ICancelOrder,
9
+ Transfer,
10
+ OrderFlags,
11
+ IPlaceOrder,
12
+ Order_Side,
13
+ Order_TimeInForce,
14
+ IBatchCancelOrder,
15
+ } from '../../src/types';
16
+
17
+ export const TEST_ADDRESS: string = 'dydx1vl9h9nkmau4e9v7tm30wekespu3d2qhd9404wa';
18
+ export const TEST_RECIPIENT_ADDRESS: string = 'dydx1slanxj8x9ntk9knwa6cvfv2tzlsq5gk3dshml0';
19
+ export const TEST_CHAIN_ID: string = 'dydxprotocol';
20
+ export const TEST_HOST: string = 'http://localhost:26657';
21
+
22
+ export const defaultTransactionOptions: TransactionOptions = {
23
+ accountNumber: 1,
24
+ sequence: 10,
25
+ chainId: TEST_CHAIN_ID,
26
+ };
27
+
28
+ // PlaceOrder variables
29
+ export const defaultOrder: IPlaceOrder = {
30
+ clientId: 0,
31
+ orderFlags: OrderFlags.SHORT_TERM,
32
+ clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
33
+ side: Order_Side.SIDE_BUY,
34
+ quantums: Long.fromNumber(10),
35
+ subticks: Long.fromNumber(100),
36
+ goodTilBlock: 10000,
37
+ timeInForce: Order_TimeInForce.TIME_IN_FORCE_UNSPECIFIED,
38
+ reduceOnly: false,
39
+ clientMetadata: 0,
40
+ // New optional fields
41
+ twapParameters: undefined,
42
+ builderCodeParameters: undefined,
43
+ orderRouterAddress: undefined,
44
+ };
45
+
46
+ // PlaceOrder with TWAP parameters for testing
47
+ export const twapOrder: IPlaceOrder = {
48
+ ...defaultOrder,
49
+ clientId: 1,
50
+ twapParameters: {
51
+ duration: 3600, // 1 hour
52
+ interval: 300, // 5 minutes
53
+ priceTolerance: 50000, // 5% in ppm
54
+ },
55
+ };
56
+
57
+ // PlaceOrder with builder code parameters for testing
58
+ export const builderOrder: IPlaceOrder = {
59
+ ...defaultOrder,
60
+ clientId: 2,
61
+ builderCodeParameters: {
62
+ builderAddress: 'dydx1test_builder_address',
63
+ feePpm: 1000, // 0.1% fee
64
+ }
65
+ };
66
+
67
+ export const orderRouterOrder: IPlaceOrder = {
68
+ ...defaultOrder,
69
+ clientId: 2,
70
+ orderRouterAddress: 'dydx1test_router_address',
71
+ };
72
+
73
+ // CancelOrder variables
74
+ export const defaultCancelOrder: ICancelOrder = {
75
+ clientId: generateRandomClientId(),
76
+ orderFlags: OrderFlags.SHORT_TERM,
77
+ clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
78
+ goodTilBlock: 4250,
79
+ };
80
+
81
+ // BatchCancelOrder variables
82
+ export const defaultBatchCancelOrder: IBatchCancelOrder = {
83
+ shortTermOrders: [
84
+ {
85
+ clobPairId: ClobPairId.PERPETUAL_PAIR_BTC_USD,
86
+ clientIds: [generateRandomClientId(), generateRandomClientId()],
87
+ },
88
+ ],
89
+ goodTilBlock: 4250,
90
+ };
91
+
92
+ // Transfer variables
93
+ export const defaultTransfer: Transfer = {
94
+ sender: {
95
+ owner: TEST_ADDRESS,
96
+ number: 0,
97
+ },
98
+ recipient: {
99
+ owner: 'dydx14063jves4u9zhm7eja5ltf3t8zspxd92qnk23t',
100
+ number: 0,
101
+ },
102
+ assetId: 0,
103
+ amount: bigIntToBytes(BigInt(1000)),
104
+ };
105
+
106
+ // ------ Onboarding Constants ------ //
107
+ // Base Signature Result
108
+ export const SIGNATURE_RESULT =
109
+ '0xf2006b4fc0afa08a6048b40d3d67e437ac2e20e6bacf3f947f9b33aa2756d204287f5fb2155bec067d879a25d7ddac791826cf28e2786919065e19848020f1531b';
110
+
111
+ // Derived privateKeyBytes from Base Signature Result
112
+ export const ENTROPY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
113
+ 247, 183, 226, 106, 76, 125, 241, 35, 149, 75, 103, 180, 165, 243, 80, 128, 34, 20, 238, 201, 131,
114
+ 180, 61, 76, 223, 179, 37, 211, 144, 197, 171, 251,
115
+ ]);
116
+
117
+ // Derived HDKey privateKey from Base Signature Result
118
+ export const PRIVATE_KEY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
119
+ 14, 92, 178, 198, 64, 65, 27, 153, 11, 45, 118, 194, 71, 194, 10, 140, 145, 40, 203, 107, 231,
120
+ 191, 138, 220, 168, 104, 28, 69, 58, 193, 203, 213,
121
+ ]);
122
+
123
+ // Derived HDKey publicKey from Base Signature Result
124
+ export const PUBLIC_KEY_FROM_SIGNATURE_RESULT: Uint8Array = new Uint8Array([
125
+ 2, 204, 94, 45, 7, 83, 196, 55, 195, 107, 10, 35, 169, 32, 24, 37, 193, 196, 34, 210, 84, 26, 107,
126
+ 89, 119, 240, 211, 63, 187, 34, 162, 197, 36,
127
+ ]);
128
+
129
+ // Derived HDKey mnemonic from Base Signature Result
130
+ export const MNEMONIC_FROM_SIGNATURE_RESULT =
131
+ 'waste sample once ocean tenant mushroom festival hollow regret convince stage able candy jazz champion isolate diary group under entry decorate glare quiz job';
@@ -3,18 +3,18 @@ import { DEFAULT_SEQUENCE } from '../../src/lib/constants';
3
3
  import { convertPartialTransactionOptionsToFull, stripHexPrefix } from '../../src/lib/helpers';
4
4
  import { defaultTransactionOptions } from '../helpers/constants';
5
5
  import { calculateSubticks, calculateQuantums } from '../../src/clients/helpers/chain-helpers';
6
- import Long from 'long';
6
+ import { Long } from '../../src/lib/long';
7
7
 
8
8
  describe('helpers', () => {
9
9
  describe('calculateSubticks', () => {
10
10
  it('correctly handles decimals', () => {
11
- expect(calculateSubticks(8.45, -7, -9, 1000000)).toEqual(new Long(845_000_000));
11
+ expect(calculateSubticks(8.45, -7, -9, 1000000)).toEqual(Long.fromInt(845_000_000));
12
12
  });
13
13
  });
14
14
 
15
15
  describe('calculateQuantums', () => {
16
16
  it('correctly handles decimals', () => {
17
- expect(calculateQuantums(0.0003, -10, 1000000)).toEqual(new Long(3_000_000));
17
+ expect(calculateQuantums(0.0003, -10, 1000000)).toEqual(Long.fromInt(3_000_000));
18
18
  });
19
19
  });
20
20