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