ccxt 4.5.18 → 4.5.20

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 (152) hide show
  1. package/README.md +7 -6
  2. package/dist/ccxt.browser.min.js +40 -16
  3. package/dist/cjs/_virtual/index.cjs.js +1459 -9
  4. package/dist/cjs/ccxt.js +8 -2
  5. package/dist/cjs/src/abstract/dydx.js +11 -0
  6. package/dist/cjs/src/base/Exchange.js +164 -10
  7. package/dist/cjs/src/base/ws/Client.js +3 -1
  8. package/dist/cjs/src/binance.js +8 -1
  9. package/dist/cjs/src/bingx.js +20 -0
  10. package/dist/cjs/src/bitget.js +43 -41
  11. package/dist/cjs/src/bybit.js +21 -23
  12. package/dist/cjs/src/deribit.js +6 -0
  13. package/dist/cjs/src/dydx.js +2454 -0
  14. package/dist/cjs/src/gate.js +4 -4
  15. package/dist/cjs/src/hibachi.js +1 -1
  16. package/dist/cjs/src/hyperliquid.js +207 -9
  17. package/dist/cjs/src/kucoin.js +711 -109
  18. package/dist/cjs/src/mexc.js +2 -3
  19. package/dist/cjs/src/pro/binance.js +59 -144
  20. package/dist/cjs/src/pro/dydx.js +418 -0
  21. package/dist/cjs/src/pro/kraken.js +4 -3
  22. package/dist/cjs/src/pro/xt.js +218 -4
  23. package/dist/cjs/src/protobuf/mexc/compiled.cjs.js +1 -0
  24. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +56 -0
  25. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +56 -0
  26. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +48 -0
  27. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +343 -0
  28. package/dist/cjs/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +717 -0
  29. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +60 -0
  30. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +45 -0
  31. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +380 -0
  32. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +72 -0
  33. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +211 -0
  34. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +195 -0
  35. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +49 -0
  36. package/dist/cjs/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +57 -0
  37. package/dist/cjs/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +56 -0
  38. package/dist/cjs/src/static_dependencies/dydx-v4-client/helpers.js +79 -0
  39. package/dist/cjs/src/static_dependencies/dydx-v4-client/long/index.cjs.js +9 -0
  40. package/dist/cjs/src/static_dependencies/dydx-v4-client/onboarding.js +59 -0
  41. package/dist/cjs/src/static_dependencies/dydx-v4-client/registry.js +39 -0
  42. package/dist/cjs/src/static_dependencies/noble-hashes/pbkdf2.js +69 -0
  43. package/dist/cjs/src/static_dependencies/noble-hashes/ripemd160.js +108 -0
  44. package/dist/cjs/src/static_dependencies/noble-hashes/utils.js +50 -1
  45. package/dist/cjs/src/static_dependencies/scure-base/index.js +29 -0
  46. package/dist/cjs/src/static_dependencies/scure-bip32/index.js +278 -0
  47. package/dist/cjs/src/static_dependencies/scure-bip39/index.js +97 -0
  48. package/dist/cjs/src/static_dependencies/scure-bip39/wordlists/english.js +2060 -0
  49. package/dist/cjs/src/static_dependencies/zklink/zklink-sdk-web.js +2 -0
  50. package/dist/cjs/src/toobit.js +2 -1
  51. package/js/ccxt.d.ts +8 -2
  52. package/js/ccxt.js +6 -2
  53. package/js/src/abstract/binance.d.ts +7 -0
  54. package/js/src/abstract/binancecoinm.d.ts +7 -0
  55. package/js/src/abstract/binanceus.d.ts +7 -0
  56. package/js/src/abstract/binanceusdm.d.ts +7 -0
  57. package/js/src/abstract/bitget.d.ts +1 -0
  58. package/js/src/abstract/dydx.d.ts +61 -0
  59. package/js/src/abstract/dydx.js +11 -0
  60. package/js/src/abstract/kucoin.d.ts +1 -1
  61. package/js/src/abstract/kucoinfutures.d.ts +1 -1
  62. package/js/src/base/Exchange.d.ts +7 -0
  63. package/js/src/base/Exchange.js +163 -10
  64. package/js/src/base/ws/Client.js +3 -1
  65. package/js/src/binance.js +8 -1
  66. package/js/src/bingx.js +20 -0
  67. package/js/src/bitget.d.ts +3 -3
  68. package/js/src/bitget.js +43 -41
  69. package/js/src/bybit.d.ts +3 -3
  70. package/js/src/bybit.js +21 -23
  71. package/js/src/deribit.js +6 -0
  72. package/js/src/dydx.d.ts +364 -0
  73. package/js/src/dydx.js +2453 -0
  74. package/js/src/gate.d.ts +2 -2
  75. package/js/src/gate.js +4 -4
  76. package/js/src/hibachi.js +1 -1
  77. package/js/src/hyperliquid.d.ts +17 -0
  78. package/js/src/hyperliquid.js +207 -9
  79. package/js/src/kucoin.d.ts +48 -1
  80. package/js/src/kucoin.js +711 -109
  81. package/js/src/mexc.js +2 -3
  82. package/js/src/pro/binance.d.ts +2 -2
  83. package/js/src/pro/binance.js +59 -144
  84. package/js/src/pro/dydx.d.ts +81 -0
  85. package/js/src/pro/dydx.js +417 -0
  86. package/js/src/pro/kraken.js +4 -3
  87. package/js/src/pro/xt.d.ts +85 -2
  88. package/js/src/pro/xt.js +218 -4
  89. package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.d.ts +90 -0
  90. package/js/src/static_dependencies/dydx-v4-client/cosmos/base/v1beta1/coin.js +163 -0
  91. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.d.ts +26 -0
  92. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/keys.js +51 -0
  93. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.d.ts +48 -0
  94. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/multisig/v1beta1/multisig.js +85 -0
  95. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.d.ts +40 -0
  96. package/js/src/static_dependencies/dydx-v4-client/cosmos/crypto/secp256k1/keys.js +77 -0
  97. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.d.ts +162 -0
  98. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/signing/v1beta1/signing.js +329 -0
  99. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.d.ts +460 -0
  100. package/js/src/static_dependencies/dydx-v4-client/cosmos/tx/v1beta1/tx.js +698 -0
  101. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.d.ts +127 -0
  102. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/accountplus/tx.js +286 -0
  103. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.d.ts +66 -0
  104. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/block_rate_limit_config.js +109 -0
  105. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.d.ts +127 -0
  106. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/clob_pair.js +257 -0
  107. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.d.ts +48 -0
  108. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/equity_tier_limit_config.js +93 -0
  109. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.d.ts +23 -0
  110. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/finalize_block.js +43 -0
  111. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.d.ts +92 -0
  112. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations.js +164 -0
  113. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.d.ts +124 -0
  114. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/liquidations_config.js +196 -0
  115. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.d.ts +159 -0
  116. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/matches.js +324 -0
  117. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.d.ts +546 -0
  118. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order.js +872 -0
  119. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.d.ts +84 -0
  120. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/order_removals.js +181 -0
  121. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.d.ts +397 -0
  122. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/clob/tx.js +757 -0
  123. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.d.ts +120 -0
  124. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/transfer.js +246 -0
  125. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.d.ts +79 -0
  126. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/sending/tx.js +147 -0
  127. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.d.ts +32 -0
  128. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/asset_position.js +59 -0
  129. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.d.ts +34 -0
  130. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/perpetual_position.js +66 -0
  131. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.d.ts +62 -0
  132. package/js/src/static_dependencies/dydx-v4-client/dydxprotocol/subaccounts/subaccount.js +111 -0
  133. package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.d.ts +207 -0
  134. package/js/src/static_dependencies/dydx-v4-client/google/protobuf/any.js +50 -0
  135. package/js/src/static_dependencies/dydx-v4-client/helpers.d.ts +82 -0
  136. package/js/src/static_dependencies/dydx-v4-client/helpers.js +172 -0
  137. package/js/src/static_dependencies/dydx-v4-client/long/index.cjs +1473 -0
  138. package/js/src/static_dependencies/dydx-v4-client/long/index.d.cts +2 -0
  139. package/js/src/static_dependencies/dydx-v4-client/onboarding.d.ts +35 -0
  140. package/js/src/static_dependencies/dydx-v4-client/onboarding.js +56 -0
  141. package/js/src/static_dependencies/dydx-v4-client/registry.d.ts +7 -0
  142. package/js/src/static_dependencies/dydx-v4-client/registry.js +36 -0
  143. package/js/src/static_dependencies/noble-hashes/utils.d.ts +1 -0
  144. package/js/src/static_dependencies/noble-hashes/utils.js +4 -0
  145. package/js/src/static_dependencies/scure-bip32/index.d.ts +49 -0
  146. package/js/src/static_dependencies/scure-bip32/index.js +295 -0
  147. package/js/src/static_dependencies/scure-bip39/index.d.ts +54 -0
  148. package/js/src/static_dependencies/scure-bip39/index.js +140 -0
  149. package/js/src/static_dependencies/scure-bip39/wordlists/english.d.ts +1 -0
  150. package/js/src/static_dependencies/scure-bip39/wordlists/english.js +2054 -0
  151. package/js/src/toobit.js +2 -1
  152. package/package.json +9 -3
@@ -0,0 +1,324 @@
1
+ // ----------------------------------------------------------------------------
2
+
3
+ // PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
4
+ // https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
5
+ // EDIT THE CORRESPONDENT .ts FILE INSTEAD
6
+
7
+ import { OrderId } from "./order.js";
8
+ import { SubaccountId } from "../subaccounts/subaccount.js";
9
+ import _m0 from "protobufjs/minimal.js";
10
+ import { Long } from "../../helpers.js";
11
+ function createBaseClobMatch() {
12
+ return {
13
+ matchOrders: undefined,
14
+ matchPerpetualLiquidation: undefined,
15
+ matchPerpetualDeleveraging: undefined
16
+ };
17
+ }
18
+ export const ClobMatch = {
19
+ encode(message, writer = _m0.Writer.create()) {
20
+ if (message.matchOrders !== undefined) {
21
+ MatchOrders.encode(message.matchOrders, writer.uint32(10).fork()).ldelim();
22
+ }
23
+ if (message.matchPerpetualLiquidation !== undefined) {
24
+ MatchPerpetualLiquidation.encode(message.matchPerpetualLiquidation, writer.uint32(18).fork()).ldelim();
25
+ }
26
+ if (message.matchPerpetualDeleveraging !== undefined) {
27
+ MatchPerpetualDeleveraging.encode(message.matchPerpetualDeleveraging, writer.uint32(26).fork()).ldelim();
28
+ }
29
+ return writer;
30
+ },
31
+ decode(input, length) {
32
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
33
+ let end = length === undefined ? reader.len : reader.pos + length;
34
+ const message = createBaseClobMatch();
35
+ while (reader.pos < end) {
36
+ const tag = reader.uint32();
37
+ switch (tag >>> 3) {
38
+ case 1:
39
+ message.matchOrders = MatchOrders.decode(reader, reader.uint32());
40
+ break;
41
+ case 2:
42
+ message.matchPerpetualLiquidation = MatchPerpetualLiquidation.decode(reader, reader.uint32());
43
+ break;
44
+ case 3:
45
+ message.matchPerpetualDeleveraging = MatchPerpetualDeleveraging.decode(reader, reader.uint32());
46
+ break;
47
+ default:
48
+ reader.skipType(tag & 7);
49
+ break;
50
+ }
51
+ }
52
+ return message;
53
+ },
54
+ fromPartial(object) {
55
+ const message = createBaseClobMatch();
56
+ message.matchOrders = object.matchOrders !== undefined && object.matchOrders !== null ? MatchOrders.fromPartial(object.matchOrders) : undefined;
57
+ message.matchPerpetualLiquidation = object.matchPerpetualLiquidation !== undefined && object.matchPerpetualLiquidation !== null ? MatchPerpetualLiquidation.fromPartial(object.matchPerpetualLiquidation) : undefined;
58
+ message.matchPerpetualDeleveraging = object.matchPerpetualDeleveraging !== undefined && object.matchPerpetualDeleveraging !== null ? MatchPerpetualDeleveraging.fromPartial(object.matchPerpetualDeleveraging) : undefined;
59
+ return message;
60
+ }
61
+ };
62
+ function createBaseMakerFill() {
63
+ return {
64
+ fillAmount: Long.UZERO,
65
+ makerOrderId: undefined
66
+ };
67
+ }
68
+ export const MakerFill = {
69
+ encode(message, writer = _m0.Writer.create()) {
70
+ if (!message.fillAmount.isZero()) {
71
+ writer.uint32(8).uint64(message.fillAmount);
72
+ }
73
+ if (message.makerOrderId !== undefined) {
74
+ OrderId.encode(message.makerOrderId, writer.uint32(18).fork()).ldelim();
75
+ }
76
+ return writer;
77
+ },
78
+ decode(input, length) {
79
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
80
+ let end = length === undefined ? reader.len : reader.pos + length;
81
+ const message = createBaseMakerFill();
82
+ while (reader.pos < end) {
83
+ const tag = reader.uint32();
84
+ switch (tag >>> 3) {
85
+ case 1:
86
+ message.fillAmount = reader.uint64();
87
+ break;
88
+ case 2:
89
+ message.makerOrderId = OrderId.decode(reader, reader.uint32());
90
+ break;
91
+ default:
92
+ reader.skipType(tag & 7);
93
+ break;
94
+ }
95
+ }
96
+ return message;
97
+ },
98
+ fromPartial(object) {
99
+ const message = createBaseMakerFill();
100
+ message.fillAmount = object.fillAmount !== undefined && object.fillAmount !== null ? Long.fromValue(object.fillAmount) : Long.UZERO;
101
+ message.makerOrderId = object.makerOrderId !== undefined && object.makerOrderId !== null ? OrderId.fromPartial(object.makerOrderId) : undefined;
102
+ return message;
103
+ }
104
+ };
105
+ function createBaseMatchOrders() {
106
+ return {
107
+ takerOrderId: undefined,
108
+ fills: []
109
+ };
110
+ }
111
+ export const MatchOrders = {
112
+ encode(message, writer = _m0.Writer.create()) {
113
+ if (message.takerOrderId !== undefined) {
114
+ OrderId.encode(message.takerOrderId, writer.uint32(10).fork()).ldelim();
115
+ }
116
+ for (const v of message.fills) {
117
+ MakerFill.encode(v, writer.uint32(18).fork()).ldelim();
118
+ }
119
+ return writer;
120
+ },
121
+ decode(input, length) {
122
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
123
+ let end = length === undefined ? reader.len : reader.pos + length;
124
+ const message = createBaseMatchOrders();
125
+ while (reader.pos < end) {
126
+ const tag = reader.uint32();
127
+ switch (tag >>> 3) {
128
+ case 1:
129
+ message.takerOrderId = OrderId.decode(reader, reader.uint32());
130
+ break;
131
+ case 2:
132
+ message.fills.push(MakerFill.decode(reader, reader.uint32()));
133
+ break;
134
+ default:
135
+ reader.skipType(tag & 7);
136
+ break;
137
+ }
138
+ }
139
+ return message;
140
+ },
141
+ fromPartial(object) {
142
+ const message = createBaseMatchOrders();
143
+ message.takerOrderId = object.takerOrderId !== undefined && object.takerOrderId !== null ? OrderId.fromPartial(object.takerOrderId) : undefined;
144
+ message.fills = object.fills?.map(e => MakerFill.fromPartial(e)) || [];
145
+ return message;
146
+ }
147
+ };
148
+ function createBaseMatchPerpetualLiquidation() {
149
+ return {
150
+ liquidated: undefined,
151
+ clobPairId: 0,
152
+ perpetualId: 0,
153
+ totalSize: Long.UZERO,
154
+ isBuy: false,
155
+ fills: []
156
+ };
157
+ }
158
+ export const MatchPerpetualLiquidation = {
159
+ encode(message, writer = _m0.Writer.create()) {
160
+ if (message.liquidated !== undefined) {
161
+ SubaccountId.encode(message.liquidated, writer.uint32(10).fork()).ldelim();
162
+ }
163
+ if (message.clobPairId !== 0) {
164
+ writer.uint32(16).uint32(message.clobPairId);
165
+ }
166
+ if (message.perpetualId !== 0) {
167
+ writer.uint32(24).uint32(message.perpetualId);
168
+ }
169
+ if (!message.totalSize.isZero()) {
170
+ writer.uint32(32).uint64(message.totalSize);
171
+ }
172
+ if (message.isBuy === true) {
173
+ writer.uint32(40).bool(message.isBuy);
174
+ }
175
+ for (const v of message.fills) {
176
+ MakerFill.encode(v, writer.uint32(50).fork()).ldelim();
177
+ }
178
+ return writer;
179
+ },
180
+ decode(input, length) {
181
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
182
+ let end = length === undefined ? reader.len : reader.pos + length;
183
+ const message = createBaseMatchPerpetualLiquidation();
184
+ while (reader.pos < end) {
185
+ const tag = reader.uint32();
186
+ switch (tag >>> 3) {
187
+ case 1:
188
+ message.liquidated = SubaccountId.decode(reader, reader.uint32());
189
+ break;
190
+ case 2:
191
+ message.clobPairId = reader.uint32();
192
+ break;
193
+ case 3:
194
+ message.perpetualId = reader.uint32();
195
+ break;
196
+ case 4:
197
+ message.totalSize = reader.uint64();
198
+ break;
199
+ case 5:
200
+ message.isBuy = reader.bool();
201
+ break;
202
+ case 6:
203
+ message.fills.push(MakerFill.decode(reader, reader.uint32()));
204
+ break;
205
+ default:
206
+ reader.skipType(tag & 7);
207
+ break;
208
+ }
209
+ }
210
+ return message;
211
+ },
212
+ fromPartial(object) {
213
+ const message = createBaseMatchPerpetualLiquidation();
214
+ message.liquidated = object.liquidated !== undefined && object.liquidated !== null ? SubaccountId.fromPartial(object.liquidated) : undefined;
215
+ message.clobPairId = object.clobPairId ?? 0;
216
+ message.perpetualId = object.perpetualId ?? 0;
217
+ message.totalSize = object.totalSize !== undefined && object.totalSize !== null ? Long.fromValue(object.totalSize) : Long.UZERO;
218
+ message.isBuy = object.isBuy ?? false;
219
+ message.fills = object.fills?.map(e => MakerFill.fromPartial(e)) || [];
220
+ return message;
221
+ }
222
+ };
223
+ function createBaseMatchPerpetualDeleveraging() {
224
+ return {
225
+ liquidated: undefined,
226
+ perpetualId: 0,
227
+ fills: [],
228
+ isFinalSettlement: false
229
+ };
230
+ }
231
+ export const MatchPerpetualDeleveraging = {
232
+ encode(message, writer = _m0.Writer.create()) {
233
+ if (message.liquidated !== undefined) {
234
+ SubaccountId.encode(message.liquidated, writer.uint32(10).fork()).ldelim();
235
+ }
236
+ if (message.perpetualId !== 0) {
237
+ writer.uint32(16).uint32(message.perpetualId);
238
+ }
239
+ for (const v of message.fills) {
240
+ MatchPerpetualDeleveraging_Fill.encode(v, writer.uint32(26).fork()).ldelim();
241
+ }
242
+ if (message.isFinalSettlement === true) {
243
+ writer.uint32(32).bool(message.isFinalSettlement);
244
+ }
245
+ return writer;
246
+ },
247
+ decode(input, length) {
248
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
249
+ let end = length === undefined ? reader.len : reader.pos + length;
250
+ const message = createBaseMatchPerpetualDeleveraging();
251
+ while (reader.pos < end) {
252
+ const tag = reader.uint32();
253
+ switch (tag >>> 3) {
254
+ case 1:
255
+ message.liquidated = SubaccountId.decode(reader, reader.uint32());
256
+ break;
257
+ case 2:
258
+ message.perpetualId = reader.uint32();
259
+ break;
260
+ case 3:
261
+ message.fills.push(MatchPerpetualDeleveraging_Fill.decode(reader, reader.uint32()));
262
+ break;
263
+ case 4:
264
+ message.isFinalSettlement = reader.bool();
265
+ break;
266
+ default:
267
+ reader.skipType(tag & 7);
268
+ break;
269
+ }
270
+ }
271
+ return message;
272
+ },
273
+ fromPartial(object) {
274
+ const message = createBaseMatchPerpetualDeleveraging();
275
+ message.liquidated = object.liquidated !== undefined && object.liquidated !== null ? SubaccountId.fromPartial(object.liquidated) : undefined;
276
+ message.perpetualId = object.perpetualId ?? 0;
277
+ message.fills = object.fills?.map(e => MatchPerpetualDeleveraging_Fill.fromPartial(e)) || [];
278
+ message.isFinalSettlement = object.isFinalSettlement ?? false;
279
+ return message;
280
+ }
281
+ };
282
+ function createBaseMatchPerpetualDeleveraging_Fill() {
283
+ return {
284
+ offsettingSubaccountId: undefined,
285
+ fillAmount: Long.UZERO
286
+ };
287
+ }
288
+ export const MatchPerpetualDeleveraging_Fill = {
289
+ encode(message, writer = _m0.Writer.create()) {
290
+ if (message.offsettingSubaccountId !== undefined) {
291
+ SubaccountId.encode(message.offsettingSubaccountId, writer.uint32(10).fork()).ldelim();
292
+ }
293
+ if (!message.fillAmount.isZero()) {
294
+ writer.uint32(16).uint64(message.fillAmount);
295
+ }
296
+ return writer;
297
+ },
298
+ decode(input, length) {
299
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
300
+ let end = length === undefined ? reader.len : reader.pos + length;
301
+ const message = createBaseMatchPerpetualDeleveraging_Fill();
302
+ while (reader.pos < end) {
303
+ const tag = reader.uint32();
304
+ switch (tag >>> 3) {
305
+ case 1:
306
+ message.offsettingSubaccountId = SubaccountId.decode(reader, reader.uint32());
307
+ break;
308
+ case 2:
309
+ message.fillAmount = reader.uint64();
310
+ break;
311
+ default:
312
+ reader.skipType(tag & 7);
313
+ break;
314
+ }
315
+ }
316
+ return message;
317
+ },
318
+ fromPartial(object) {
319
+ const message = createBaseMatchPerpetualDeleveraging_Fill();
320
+ message.offsettingSubaccountId = object.offsettingSubaccountId !== undefined && object.offsettingSubaccountId !== null ? SubaccountId.fromPartial(object.offsettingSubaccountId) : undefined;
321
+ message.fillAmount = object.fillAmount !== undefined && object.fillAmount !== null ? Long.fromValue(object.fillAmount) : Long.UZERO;
322
+ return message;
323
+ }
324
+ };