@tigeropenapi/tigeropen 0.1.0 → 0.4.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.
Files changed (141) hide show
  1. package/README.md +475 -104
  2. package/dist/cjs/client/api-request.js +16 -10
  3. package/dist/cjs/client/api-response.js +23 -3
  4. package/dist/cjs/client/case-convert.js +35 -0
  5. package/dist/cjs/client/http-client.js +47 -21
  6. package/dist/cjs/client/index.js +6 -2
  7. package/dist/cjs/config/client-config.js +130 -49
  8. package/dist/cjs/config/domain.js +21 -2
  9. package/dist/cjs/config/index.js +3 -1
  10. package/dist/cjs/index.js +1 -1
  11. package/dist/cjs/model/contract.js +1 -2
  12. package/dist/cjs/model/enums.js +89 -7
  13. package/dist/cjs/model/order-helpers.js +9 -9
  14. package/dist/cjs/model/order-status.js +46 -0
  15. package/dist/cjs/model/order.js +5 -2
  16. package/dist/cjs/model/position.js +1 -2
  17. package/dist/cjs/model/quote-requests.js +11 -0
  18. package/dist/cjs/model/quote.js +7 -0
  19. package/dist/cjs/model/trade-requests.js +13 -0
  20. package/dist/cjs/model/trade.js +2 -0
  21. package/dist/cjs/push/index.js +6 -3
  22. package/dist/cjs/push/pb/AssetData.js +208 -0
  23. package/dist/cjs/push/pb/KlineData.js +184 -0
  24. package/dist/cjs/push/pb/OptionTopData.js +427 -0
  25. package/dist/cjs/push/pb/OrderStatusData.js +592 -0
  26. package/dist/cjs/push/pb/OrderTransactionData.js +256 -0
  27. package/dist/cjs/push/pb/PositionData.js +316 -0
  28. package/dist/cjs/push/pb/PushData.js +219 -0
  29. package/dist/cjs/push/pb/QuoteBBOData.js +160 -0
  30. package/dist/cjs/push/pb/QuoteBasicData.js +329 -0
  31. package/dist/cjs/push/pb/QuoteData.js +507 -0
  32. package/dist/cjs/push/pb/QuoteDepthData.js +220 -0
  33. package/dist/cjs/push/pb/Request.js +278 -0
  34. package/dist/cjs/push/pb/Response.js +97 -0
  35. package/dist/cjs/push/pb/SocketCommon.js +86 -0
  36. package/dist/cjs/push/pb/StockTopData.js +199 -0
  37. package/dist/cjs/push/pb/TickData.js +202 -0
  38. package/dist/cjs/push/pb/TradeTickData.js +308 -0
  39. package/dist/cjs/push/pb/index.js +49 -0
  40. package/dist/cjs/push/proto-message.js +135 -0
  41. package/dist/cjs/push/push-client.js +361 -163
  42. package/dist/cjs/push/push-message.js +8 -60
  43. package/dist/cjs/push/varint.js +76 -0
  44. package/dist/cjs/quote/index.js +3 -2
  45. package/dist/cjs/quote/quote-client.js +440 -94
  46. package/dist/cjs/signer/signer.js +10 -10
  47. package/dist/cjs/trade/trade-client.js +197 -62
  48. package/dist/esm/client/api-request.js +14 -8
  49. package/dist/esm/client/api-response.js +22 -3
  50. package/dist/esm/client/case-convert.js +31 -0
  51. package/dist/esm/client/http-client.js +48 -22
  52. package/dist/esm/client/index.js +3 -2
  53. package/dist/esm/config/client-config.js +131 -51
  54. package/dist/esm/config/domain.js +20 -2
  55. package/dist/esm/config/index.js +2 -2
  56. package/dist/esm/index.js +1 -1
  57. package/dist/esm/model/contract.js +1 -2
  58. package/dist/esm/model/enums.js +87 -6
  59. package/dist/esm/model/order-helpers.js +9 -9
  60. package/dist/esm/model/order-status.js +43 -0
  61. package/dist/esm/model/order.js +5 -2
  62. package/dist/esm/model/position.js +1 -2
  63. package/dist/esm/model/quote-requests.js +10 -0
  64. package/dist/esm/model/quote.js +6 -0
  65. package/dist/esm/model/trade-requests.js +12 -0
  66. package/dist/esm/model/trade.js +1 -0
  67. package/dist/esm/push/index.js +4 -2
  68. package/dist/esm/push/pb/AssetData.js +205 -0
  69. package/dist/esm/push/pb/KlineData.js +181 -0
  70. package/dist/esm/push/pb/OptionTopData.js +424 -0
  71. package/dist/esm/push/pb/OrderStatusData.js +589 -0
  72. package/dist/esm/push/pb/OrderTransactionData.js +253 -0
  73. package/dist/esm/push/pb/PositionData.js +313 -0
  74. package/dist/esm/push/pb/PushData.js +216 -0
  75. package/dist/esm/push/pb/QuoteBBOData.js +157 -0
  76. package/dist/esm/push/pb/QuoteBasicData.js +326 -0
  77. package/dist/esm/push/pb/QuoteData.js +504 -0
  78. package/dist/esm/push/pb/QuoteDepthData.js +217 -0
  79. package/dist/esm/push/pb/Request.js +275 -0
  80. package/dist/esm/push/pb/Response.js +94 -0
  81. package/dist/esm/push/pb/SocketCommon.js +83 -0
  82. package/dist/esm/push/pb/StockTopData.js +196 -0
  83. package/dist/esm/push/pb/TickData.js +199 -0
  84. package/dist/esm/push/pb/TradeTickData.js +305 -0
  85. package/dist/esm/push/pb/index.js +25 -0
  86. package/dist/esm/push/proto-message.js +127 -0
  87. package/dist/esm/push/push-client.js +329 -164
  88. package/dist/esm/push/push-message.js +7 -56
  89. package/dist/esm/push/varint.js +72 -0
  90. package/dist/esm/quote/index.js +2 -2
  91. package/dist/esm/quote/quote-client.js +439 -94
  92. package/dist/esm/signer/signer.js +10 -10
  93. package/dist/esm/trade/trade-client.js +197 -62
  94. package/dist/types/client/api-request.d.ts +12 -11
  95. package/dist/types/client/api-response.d.ts +15 -7
  96. package/dist/types/client/case-convert.d.ts +16 -0
  97. package/dist/types/client/http-client.d.ts +26 -14
  98. package/dist/types/client/index.d.ts +3 -2
  99. package/dist/types/config/client-config.d.ts +29 -13
  100. package/dist/types/config/domain.d.ts +9 -0
  101. package/dist/types/config/index.d.ts +2 -2
  102. package/dist/types/index.d.ts +1 -1
  103. package/dist/types/model/contract.d.ts +13 -29
  104. package/dist/types/model/enums.d.ts +60 -6
  105. package/dist/types/model/order-helpers.d.ts +21 -20
  106. package/dist/types/model/order-status.d.ts +14 -0
  107. package/dist/types/model/order.d.ts +101 -55
  108. package/dist/types/model/position.d.ts +26 -24
  109. package/dist/types/model/quote-requests.d.ts +344 -0
  110. package/dist/types/model/quote.d.ts +572 -0
  111. package/dist/types/model/trade-requests.d.ts +195 -0
  112. package/dist/types/model/trade.d.ts +235 -0
  113. package/dist/types/push/callbacks.d.ts +32 -51
  114. package/dist/types/push/index.d.ts +5 -3
  115. package/dist/types/push/pb/AssetData.d.ts +47 -0
  116. package/dist/types/push/pb/KlineData.d.ts +43 -0
  117. package/dist/types/push/pb/OptionTopData.d.ts +76 -0
  118. package/dist/types/push/pb/OrderStatusData.d.ts +100 -0
  119. package/dist/types/push/pb/OrderTransactionData.d.ts +51 -0
  120. package/dist/types/push/pb/PositionData.d.ts +63 -0
  121. package/dist/types/push/pb/PushData.d.ts +46 -0
  122. package/dist/types/push/pb/QuoteBBOData.d.ts +35 -0
  123. package/dist/types/push/pb/QuoteBasicData.d.ts +66 -0
  124. package/dist/types/push/pb/QuoteData.d.ts +94 -0
  125. package/dist/types/push/pb/QuoteDepthData.d.ts +37 -0
  126. package/dist/types/push/pb/Request.d.ts +44 -0
  127. package/dist/types/push/pb/Response.d.ts +30 -0
  128. package/dist/types/push/pb/SocketCommon.d.ts +64 -0
  129. package/dist/types/push/pb/StockTopData.d.ts +37 -0
  130. package/dist/types/push/pb/TickData.d.ts +44 -0
  131. package/dist/types/push/pb/TradeTickData.d.ts +53 -0
  132. package/dist/types/push/pb/index.d.ts +39 -0
  133. package/dist/types/push/proto-message.d.ts +33 -0
  134. package/dist/types/push/push-client.d.ts +100 -68
  135. package/dist/types/push/push-message.d.ts +7 -147
  136. package/dist/types/push/varint.d.ts +23 -0
  137. package/dist/types/quote/index.d.ts +2 -2
  138. package/dist/types/quote/quote-client.d.ts +154 -47
  139. package/dist/types/signer/signer.d.ts +6 -6
  140. package/dist/types/trade/trade-client.d.ts +106 -38
  141. package/package.json +11 -6
@@ -0,0 +1,196 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.6
4
+ // protoc v5.28.3
5
+ // source: StockTopData.proto
6
+ /* eslint-disable */
7
+ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
8
+ export const protobufPackage = "com.tigerbrokers.stock.openapi.client.socket.data.pb";
9
+ function createBaseStockTopData() {
10
+ return { market: "", timestamp: 0, topData: [] };
11
+ }
12
+ export const StockTopData = {
13
+ encode(message, writer = new BinaryWriter()) {
14
+ if (message.market !== "") {
15
+ writer.uint32(10).string(message.market);
16
+ }
17
+ if (message.timestamp !== 0) {
18
+ writer.uint32(16).int64(message.timestamp);
19
+ }
20
+ for (const v of message.topData) {
21
+ StockTopData_TopData.encode(v, writer.uint32(26).fork()).join();
22
+ }
23
+ return writer;
24
+ },
25
+ decode(input, length) {
26
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
27
+ const end = length === undefined ? reader.len : reader.pos + length;
28
+ const message = createBaseStockTopData();
29
+ while (reader.pos < end) {
30
+ const tag = reader.uint32();
31
+ switch (tag >>> 3) {
32
+ case 1: {
33
+ if (tag !== 10) {
34
+ break;
35
+ }
36
+ message.market = reader.string();
37
+ continue;
38
+ }
39
+ case 2: {
40
+ if (tag !== 16) {
41
+ break;
42
+ }
43
+ message.timestamp = longToNumber(reader.int64());
44
+ continue;
45
+ }
46
+ case 3: {
47
+ if (tag !== 26) {
48
+ break;
49
+ }
50
+ message.topData.push(StockTopData_TopData.decode(reader, reader.uint32()));
51
+ continue;
52
+ }
53
+ }
54
+ if ((tag & 7) === 4 || tag === 0) {
55
+ break;
56
+ }
57
+ reader.skip(tag & 7);
58
+ }
59
+ return message;
60
+ },
61
+ create(base) {
62
+ return StockTopData.fromPartial(base ?? {});
63
+ },
64
+ fromPartial(object) {
65
+ const message = createBaseStockTopData();
66
+ message.market = object.market ?? "";
67
+ message.timestamp = object.timestamp ?? 0;
68
+ message.topData = object.topData?.map((e) => StockTopData_TopData.fromPartial(e)) || [];
69
+ return message;
70
+ },
71
+ };
72
+ function createBaseStockTopData_TopData() {
73
+ return { targetName: "", item: [] };
74
+ }
75
+ export const StockTopData_TopData = {
76
+ encode(message, writer = new BinaryWriter()) {
77
+ if (message.targetName !== "") {
78
+ writer.uint32(10).string(message.targetName);
79
+ }
80
+ for (const v of message.item) {
81
+ StockTopData_StockItem.encode(v, writer.uint32(18).fork()).join();
82
+ }
83
+ return writer;
84
+ },
85
+ decode(input, length) {
86
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
87
+ const end = length === undefined ? reader.len : reader.pos + length;
88
+ const message = createBaseStockTopData_TopData();
89
+ while (reader.pos < end) {
90
+ const tag = reader.uint32();
91
+ switch (tag >>> 3) {
92
+ case 1: {
93
+ if (tag !== 10) {
94
+ break;
95
+ }
96
+ message.targetName = reader.string();
97
+ continue;
98
+ }
99
+ case 2: {
100
+ if (tag !== 18) {
101
+ break;
102
+ }
103
+ message.item.push(StockTopData_StockItem.decode(reader, reader.uint32()));
104
+ continue;
105
+ }
106
+ }
107
+ if ((tag & 7) === 4 || tag === 0) {
108
+ break;
109
+ }
110
+ reader.skip(tag & 7);
111
+ }
112
+ return message;
113
+ },
114
+ create(base) {
115
+ return StockTopData_TopData.fromPartial(base ?? {});
116
+ },
117
+ fromPartial(object) {
118
+ const message = createBaseStockTopData_TopData();
119
+ message.targetName = object.targetName ?? "";
120
+ message.item = object.item?.map((e) => StockTopData_StockItem.fromPartial(e)) || [];
121
+ return message;
122
+ },
123
+ };
124
+ function createBaseStockTopData_StockItem() {
125
+ return { symbol: "", latestPrice: 0, targetValue: 0 };
126
+ }
127
+ export const StockTopData_StockItem = {
128
+ encode(message, writer = new BinaryWriter()) {
129
+ if (message.symbol !== "") {
130
+ writer.uint32(10).string(message.symbol);
131
+ }
132
+ if (message.latestPrice !== 0) {
133
+ writer.uint32(17).double(message.latestPrice);
134
+ }
135
+ if (message.targetValue !== 0) {
136
+ writer.uint32(25).double(message.targetValue);
137
+ }
138
+ return writer;
139
+ },
140
+ decode(input, length) {
141
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
142
+ const end = length === undefined ? reader.len : reader.pos + length;
143
+ const message = createBaseStockTopData_StockItem();
144
+ while (reader.pos < end) {
145
+ const tag = reader.uint32();
146
+ switch (tag >>> 3) {
147
+ case 1: {
148
+ if (tag !== 10) {
149
+ break;
150
+ }
151
+ message.symbol = reader.string();
152
+ continue;
153
+ }
154
+ case 2: {
155
+ if (tag !== 17) {
156
+ break;
157
+ }
158
+ message.latestPrice = reader.double();
159
+ continue;
160
+ }
161
+ case 3: {
162
+ if (tag !== 25) {
163
+ break;
164
+ }
165
+ message.targetValue = reader.double();
166
+ continue;
167
+ }
168
+ }
169
+ if ((tag & 7) === 4 || tag === 0) {
170
+ break;
171
+ }
172
+ reader.skip(tag & 7);
173
+ }
174
+ return message;
175
+ },
176
+ create(base) {
177
+ return StockTopData_StockItem.fromPartial(base ?? {});
178
+ },
179
+ fromPartial(object) {
180
+ const message = createBaseStockTopData_StockItem();
181
+ message.symbol = object.symbol ?? "";
182
+ message.latestPrice = object.latestPrice ?? 0;
183
+ message.targetValue = object.targetValue ?? 0;
184
+ return message;
185
+ },
186
+ };
187
+ function longToNumber(int64) {
188
+ const num = globalThis.Number(int64.toString());
189
+ if (num > globalThis.Number.MAX_SAFE_INTEGER) {
190
+ throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
191
+ }
192
+ if (num < globalThis.Number.MIN_SAFE_INTEGER) {
193
+ throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER");
194
+ }
195
+ return num;
196
+ }
@@ -0,0 +1,199 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.6
4
+ // protoc v5.28.3
5
+ // source: TickData.proto
6
+ /* eslint-disable */
7
+ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
8
+ export const protobufPackage = "com.tigerbrokers.stock.openapi.client.socket.data.pb";
9
+ function createBaseTickData() {
10
+ return { symbol: "", ticks: [], timestamp: 0, source: "" };
11
+ }
12
+ export const TickData = {
13
+ encode(message, writer = new BinaryWriter()) {
14
+ if (message.symbol !== "") {
15
+ writer.uint32(10).string(message.symbol);
16
+ }
17
+ for (const v of message.ticks) {
18
+ TickData_Tick.encode(v, writer.uint32(18).fork()).join();
19
+ }
20
+ if (message.timestamp !== 0) {
21
+ writer.uint32(24).int64(message.timestamp);
22
+ }
23
+ if (message.source !== "") {
24
+ writer.uint32(34).string(message.source);
25
+ }
26
+ return writer;
27
+ },
28
+ decode(input, length) {
29
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
30
+ const end = length === undefined ? reader.len : reader.pos + length;
31
+ const message = createBaseTickData();
32
+ while (reader.pos < end) {
33
+ const tag = reader.uint32();
34
+ switch (tag >>> 3) {
35
+ case 1: {
36
+ if (tag !== 10) {
37
+ break;
38
+ }
39
+ message.symbol = reader.string();
40
+ continue;
41
+ }
42
+ case 2: {
43
+ if (tag !== 18) {
44
+ break;
45
+ }
46
+ message.ticks.push(TickData_Tick.decode(reader, reader.uint32()));
47
+ continue;
48
+ }
49
+ case 3: {
50
+ if (tag !== 24) {
51
+ break;
52
+ }
53
+ message.timestamp = longToNumber(reader.int64());
54
+ continue;
55
+ }
56
+ case 4: {
57
+ if (tag !== 34) {
58
+ break;
59
+ }
60
+ message.source = reader.string();
61
+ continue;
62
+ }
63
+ }
64
+ if ((tag & 7) === 4 || tag === 0) {
65
+ break;
66
+ }
67
+ reader.skip(tag & 7);
68
+ }
69
+ return message;
70
+ },
71
+ create(base) {
72
+ return TickData.fromPartial(base ?? {});
73
+ },
74
+ fromPartial(object) {
75
+ const message = createBaseTickData();
76
+ message.symbol = object.symbol ?? "";
77
+ message.ticks = object.ticks?.map((e) => TickData_Tick.fromPartial(e)) || [];
78
+ message.timestamp = object.timestamp ?? 0;
79
+ message.source = object.source ?? "";
80
+ return message;
81
+ },
82
+ };
83
+ function createBaseTickData_Tick() {
84
+ return { sn: 0, time: 0, price: 0, volume: 0, type: "", cond: "", partCode: "" };
85
+ }
86
+ export const TickData_Tick = {
87
+ encode(message, writer = new BinaryWriter()) {
88
+ if (message.sn !== 0) {
89
+ writer.uint32(8).int64(message.sn);
90
+ }
91
+ if (message.time !== 0) {
92
+ writer.uint32(16).int64(message.time);
93
+ }
94
+ if (message.price !== 0) {
95
+ writer.uint32(29).float(message.price);
96
+ }
97
+ if (message.volume !== 0) {
98
+ writer.uint32(32).int32(message.volume);
99
+ }
100
+ if (message.type !== "") {
101
+ writer.uint32(42).string(message.type);
102
+ }
103
+ if (message.cond !== "") {
104
+ writer.uint32(50).string(message.cond);
105
+ }
106
+ if (message.partCode !== "") {
107
+ writer.uint32(58).string(message.partCode);
108
+ }
109
+ return writer;
110
+ },
111
+ decode(input, length) {
112
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
113
+ const end = length === undefined ? reader.len : reader.pos + length;
114
+ const message = createBaseTickData_Tick();
115
+ while (reader.pos < end) {
116
+ const tag = reader.uint32();
117
+ switch (tag >>> 3) {
118
+ case 1: {
119
+ if (tag !== 8) {
120
+ break;
121
+ }
122
+ message.sn = longToNumber(reader.int64());
123
+ continue;
124
+ }
125
+ case 2: {
126
+ if (tag !== 16) {
127
+ break;
128
+ }
129
+ message.time = longToNumber(reader.int64());
130
+ continue;
131
+ }
132
+ case 3: {
133
+ if (tag !== 29) {
134
+ break;
135
+ }
136
+ message.price = reader.float();
137
+ continue;
138
+ }
139
+ case 4: {
140
+ if (tag !== 32) {
141
+ break;
142
+ }
143
+ message.volume = reader.int32();
144
+ continue;
145
+ }
146
+ case 5: {
147
+ if (tag !== 42) {
148
+ break;
149
+ }
150
+ message.type = reader.string();
151
+ continue;
152
+ }
153
+ case 6: {
154
+ if (tag !== 50) {
155
+ break;
156
+ }
157
+ message.cond = reader.string();
158
+ continue;
159
+ }
160
+ case 7: {
161
+ if (tag !== 58) {
162
+ break;
163
+ }
164
+ message.partCode = reader.string();
165
+ continue;
166
+ }
167
+ }
168
+ if ((tag & 7) === 4 || tag === 0) {
169
+ break;
170
+ }
171
+ reader.skip(tag & 7);
172
+ }
173
+ return message;
174
+ },
175
+ create(base) {
176
+ return TickData_Tick.fromPartial(base ?? {});
177
+ },
178
+ fromPartial(object) {
179
+ const message = createBaseTickData_Tick();
180
+ message.sn = object.sn ?? 0;
181
+ message.time = object.time ?? 0;
182
+ message.price = object.price ?? 0;
183
+ message.volume = object.volume ?? 0;
184
+ message.type = object.type ?? "";
185
+ message.cond = object.cond ?? "";
186
+ message.partCode = object.partCode ?? "";
187
+ return message;
188
+ },
189
+ };
190
+ function longToNumber(int64) {
191
+ const num = globalThis.Number(int64.toString());
192
+ if (num > globalThis.Number.MAX_SAFE_INTEGER) {
193
+ throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
194
+ }
195
+ if (num < globalThis.Number.MIN_SAFE_INTEGER) {
196
+ throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER");
197
+ }
198
+ return num;
199
+ }
@@ -0,0 +1,305 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.6
4
+ // protoc v5.28.3
5
+ // source: TradeTickData.proto
6
+ /* eslint-disable */
7
+ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
8
+ export const protobufPackage = "com.tigerbrokers.stock.openapi.client.socket.data.pb";
9
+ function createBaseTradeTickData() {
10
+ return {
11
+ symbol: "",
12
+ type: "",
13
+ cond: "",
14
+ sn: 0,
15
+ priceBase: 0,
16
+ priceOffset: 0,
17
+ time: [],
18
+ price: [],
19
+ volume: [],
20
+ partCode: [],
21
+ quoteLevel: "",
22
+ timestamp: 0,
23
+ secType: "",
24
+ mergedVols: [],
25
+ };
26
+ }
27
+ export const TradeTickData = {
28
+ encode(message, writer = new BinaryWriter()) {
29
+ if (message.symbol !== "") {
30
+ writer.uint32(10).string(message.symbol);
31
+ }
32
+ if (message.type !== "") {
33
+ writer.uint32(18).string(message.type);
34
+ }
35
+ if (message.cond !== "") {
36
+ writer.uint32(26).string(message.cond);
37
+ }
38
+ if (message.sn !== 0) {
39
+ writer.uint32(32).int64(message.sn);
40
+ }
41
+ if (message.priceBase !== 0) {
42
+ writer.uint32(40).int64(message.priceBase);
43
+ }
44
+ if (message.priceOffset !== 0) {
45
+ writer.uint32(48).int32(message.priceOffset);
46
+ }
47
+ writer.uint32(58).fork();
48
+ for (const v of message.time) {
49
+ writer.int64(v);
50
+ }
51
+ writer.join();
52
+ writer.uint32(66).fork();
53
+ for (const v of message.price) {
54
+ writer.int64(v);
55
+ }
56
+ writer.join();
57
+ writer.uint32(74).fork();
58
+ for (const v of message.volume) {
59
+ writer.int64(v);
60
+ }
61
+ writer.join();
62
+ for (const v of message.partCode) {
63
+ writer.uint32(82).string(v);
64
+ }
65
+ if (message.quoteLevel !== "") {
66
+ writer.uint32(90).string(message.quoteLevel);
67
+ }
68
+ if (message.timestamp !== 0) {
69
+ writer.uint32(96).uint64(message.timestamp);
70
+ }
71
+ if (message.secType !== "") {
72
+ writer.uint32(106).string(message.secType);
73
+ }
74
+ for (const v of message.mergedVols) {
75
+ TradeTickData_MergedVol.encode(v, writer.uint32(114).fork()).join();
76
+ }
77
+ return writer;
78
+ },
79
+ decode(input, length) {
80
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
81
+ const end = length === undefined ? reader.len : reader.pos + length;
82
+ const message = createBaseTradeTickData();
83
+ while (reader.pos < end) {
84
+ const tag = reader.uint32();
85
+ switch (tag >>> 3) {
86
+ case 1: {
87
+ if (tag !== 10) {
88
+ break;
89
+ }
90
+ message.symbol = reader.string();
91
+ continue;
92
+ }
93
+ case 2: {
94
+ if (tag !== 18) {
95
+ break;
96
+ }
97
+ message.type = reader.string();
98
+ continue;
99
+ }
100
+ case 3: {
101
+ if (tag !== 26) {
102
+ break;
103
+ }
104
+ message.cond = reader.string();
105
+ continue;
106
+ }
107
+ case 4: {
108
+ if (tag !== 32) {
109
+ break;
110
+ }
111
+ message.sn = longToNumber(reader.int64());
112
+ continue;
113
+ }
114
+ case 5: {
115
+ if (tag !== 40) {
116
+ break;
117
+ }
118
+ message.priceBase = longToNumber(reader.int64());
119
+ continue;
120
+ }
121
+ case 6: {
122
+ if (tag !== 48) {
123
+ break;
124
+ }
125
+ message.priceOffset = reader.int32();
126
+ continue;
127
+ }
128
+ case 7: {
129
+ if (tag === 56) {
130
+ message.time.push(longToNumber(reader.int64()));
131
+ continue;
132
+ }
133
+ if (tag === 58) {
134
+ const end2 = reader.uint32() + reader.pos;
135
+ while (reader.pos < end2) {
136
+ message.time.push(longToNumber(reader.int64()));
137
+ }
138
+ continue;
139
+ }
140
+ break;
141
+ }
142
+ case 8: {
143
+ if (tag === 64) {
144
+ message.price.push(longToNumber(reader.int64()));
145
+ continue;
146
+ }
147
+ if (tag === 66) {
148
+ const end2 = reader.uint32() + reader.pos;
149
+ while (reader.pos < end2) {
150
+ message.price.push(longToNumber(reader.int64()));
151
+ }
152
+ continue;
153
+ }
154
+ break;
155
+ }
156
+ case 9: {
157
+ if (tag === 72) {
158
+ message.volume.push(longToNumber(reader.int64()));
159
+ continue;
160
+ }
161
+ if (tag === 74) {
162
+ const end2 = reader.uint32() + reader.pos;
163
+ while (reader.pos < end2) {
164
+ message.volume.push(longToNumber(reader.int64()));
165
+ }
166
+ continue;
167
+ }
168
+ break;
169
+ }
170
+ case 10: {
171
+ if (tag !== 82) {
172
+ break;
173
+ }
174
+ message.partCode.push(reader.string());
175
+ continue;
176
+ }
177
+ case 11: {
178
+ if (tag !== 90) {
179
+ break;
180
+ }
181
+ message.quoteLevel = reader.string();
182
+ continue;
183
+ }
184
+ case 12: {
185
+ if (tag !== 96) {
186
+ break;
187
+ }
188
+ message.timestamp = longToNumber(reader.uint64());
189
+ continue;
190
+ }
191
+ case 13: {
192
+ if (tag !== 106) {
193
+ break;
194
+ }
195
+ message.secType = reader.string();
196
+ continue;
197
+ }
198
+ case 14: {
199
+ if (tag !== 114) {
200
+ break;
201
+ }
202
+ message.mergedVols.push(TradeTickData_MergedVol.decode(reader, reader.uint32()));
203
+ continue;
204
+ }
205
+ }
206
+ if ((tag & 7) === 4 || tag === 0) {
207
+ break;
208
+ }
209
+ reader.skip(tag & 7);
210
+ }
211
+ return message;
212
+ },
213
+ create(base) {
214
+ return TradeTickData.fromPartial(base ?? {});
215
+ },
216
+ fromPartial(object) {
217
+ const message = createBaseTradeTickData();
218
+ message.symbol = object.symbol ?? "";
219
+ message.type = object.type ?? "";
220
+ message.cond = object.cond ?? "";
221
+ message.sn = object.sn ?? 0;
222
+ message.priceBase = object.priceBase ?? 0;
223
+ message.priceOffset = object.priceOffset ?? 0;
224
+ message.time = object.time?.map((e) => e) || [];
225
+ message.price = object.price?.map((e) => e) || [];
226
+ message.volume = object.volume?.map((e) => e) || [];
227
+ message.partCode = object.partCode?.map((e) => e) || [];
228
+ message.quoteLevel = object.quoteLevel ?? "";
229
+ message.timestamp = object.timestamp ?? 0;
230
+ message.secType = object.secType ?? "";
231
+ message.mergedVols = object.mergedVols?.map((e) => TradeTickData_MergedVol.fromPartial(e)) || [];
232
+ return message;
233
+ },
234
+ };
235
+ function createBaseTradeTickData_MergedVol() {
236
+ return { mergeTimes: 0, vol: [] };
237
+ }
238
+ export const TradeTickData_MergedVol = {
239
+ encode(message, writer = new BinaryWriter()) {
240
+ if (message.mergeTimes !== 0) {
241
+ writer.uint32(8).int32(message.mergeTimes);
242
+ }
243
+ writer.uint32(18).fork();
244
+ for (const v of message.vol) {
245
+ writer.int64(v);
246
+ }
247
+ writer.join();
248
+ return writer;
249
+ },
250
+ decode(input, length) {
251
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
252
+ const end = length === undefined ? reader.len : reader.pos + length;
253
+ const message = createBaseTradeTickData_MergedVol();
254
+ while (reader.pos < end) {
255
+ const tag = reader.uint32();
256
+ switch (tag >>> 3) {
257
+ case 1: {
258
+ if (tag !== 8) {
259
+ break;
260
+ }
261
+ message.mergeTimes = reader.int32();
262
+ continue;
263
+ }
264
+ case 2: {
265
+ if (tag === 16) {
266
+ message.vol.push(longToNumber(reader.int64()));
267
+ continue;
268
+ }
269
+ if (tag === 18) {
270
+ const end2 = reader.uint32() + reader.pos;
271
+ while (reader.pos < end2) {
272
+ message.vol.push(longToNumber(reader.int64()));
273
+ }
274
+ continue;
275
+ }
276
+ break;
277
+ }
278
+ }
279
+ if ((tag & 7) === 4 || tag === 0) {
280
+ break;
281
+ }
282
+ reader.skip(tag & 7);
283
+ }
284
+ return message;
285
+ },
286
+ create(base) {
287
+ return TradeTickData_MergedVol.fromPartial(base ?? {});
288
+ },
289
+ fromPartial(object) {
290
+ const message = createBaseTradeTickData_MergedVol();
291
+ message.mergeTimes = object.mergeTimes ?? 0;
292
+ message.vol = object.vol?.map((e) => e) || [];
293
+ return message;
294
+ },
295
+ };
296
+ function longToNumber(int64) {
297
+ const num = globalThis.Number(int64.toString());
298
+ if (num > globalThis.Number.MAX_SAFE_INTEGER) {
299
+ throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER");
300
+ }
301
+ if (num < globalThis.Number.MIN_SAFE_INTEGER) {
302
+ throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER");
303
+ }
304
+ return num;
305
+ }