tardis-machine 18.0.0 → 18.1.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.
- package/benchmark.js +35 -14
- package/bin/tardis-machine.js +0 -1
- package/dist/tardismachine.d.ts.map +1 -1
- package/dist/tardismachine.js +20 -55
- package/dist/tardismachine.js.map +1 -1
- package/dist/ws/replay.d.ts +2 -2
- package/dist/ws/replay.d.ts.map +1 -1
- package/dist/ws/replay.js +11 -5
- package/dist/ws/replay.js.map +1 -1
- package/dist/ws/replaynormalized.d.ts +2 -2
- package/dist/ws/replaynormalized.d.ts.map +1 -1
- package/dist/ws/replaynormalized.js +7 -5
- package/dist/ws/replaynormalized.js.map +1 -1
- package/dist/ws/server.d.ts +20 -0
- package/dist/ws/server.d.ts.map +1 -0
- package/dist/ws/server.js +154 -0
- package/dist/ws/server.js.map +1 -0
- package/dist/ws/streamnormalized.d.ts +2 -2
- package/dist/ws/streamnormalized.d.ts.map +1 -1
- package/dist/ws/streamnormalized.js +7 -5
- package/dist/ws/streamnormalized.js.map +1 -1
- package/dist/ws/subscriptionsmappers.d.ts +1 -1
- package/dist/ws/subscriptionsmappers.d.ts.map +1 -1
- package/node_modules/tardis-dev/README.md +1 -1
- package/node_modules/tardis-dev/dist/debug.d.ts +12 -2
- package/node_modules/tardis-dev/dist/debug.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/debug.js +2 -1
- package/node_modules/tardis-dev/dist/debug.js.map +1 -1
- package/node_modules/tardis-dev/dist/downloaddatasets.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/downloaddatasets.js +3 -1
- package/node_modules/tardis-dev/dist/downloaddatasets.js.map +1 -1
- package/node_modules/tardis-dev/dist/handy.d.ts +5 -2
- package/node_modules/tardis-dev/dist/handy.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/handy.js +77 -90
- package/node_modules/tardis-dev/dist/handy.js.map +1 -1
- package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts +1 -1
- package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/mappers/hyperliquid.js +15 -4
- package/node_modules/tardis-dev/dist/mappers/hyperliquid.js.map +1 -1
- package/node_modules/tardis-dev/dist/mappers/index.d.ts +1 -1
- package/node_modules/tardis-dev/dist/realtimefeeds/mexc.d.ts +0 -7
- package/node_modules/tardis-dev/dist/realtimefeeds/mexc.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/realtimefeeds/mexc.js +2 -70
- package/node_modules/tardis-dev/dist/realtimefeeds/mexc.js.map +1 -1
- package/node_modules/tardis-dev/dist/realtimefeeds/mexcprotobuf.d.ts +43 -0
- package/node_modules/tardis-dev/dist/realtimefeeds/mexcprotobuf.d.ts.map +1 -0
- package/node_modules/tardis-dev/dist/realtimefeeds/mexcprotobuf.js +294 -0
- package/node_modules/tardis-dev/dist/realtimefeeds/mexcprotobuf.js.map +1 -0
- package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.d.ts +3 -3
- package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js +3 -3
- package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js.map +1 -1
- package/node_modules/tardis-dev/dist/replay.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/replay.js +6 -4
- package/node_modules/tardis-dev/dist/replay.js.map +1 -1
- package/node_modules/tardis-dev/dist/worker.d.ts.map +1 -1
- package/node_modules/tardis-dev/dist/worker.js +7 -4
- package/node_modules/tardis-dev/dist/worker.js.map +1 -1
- package/node_modules/tardis-dev/dist/zstd.d.ts +3 -0
- package/node_modules/tardis-dev/dist/zstd.d.ts.map +1 -0
- package/node_modules/tardis-dev/dist/zstd.js +122 -0
- package/node_modules/tardis-dev/dist/zstd.js.map +1 -0
- package/node_modules/tardis-dev/package.json +3 -7
- package/node_modules/tardis-dev/src/debug.ts +16 -1
- package/node_modules/tardis-dev/src/downloaddatasets.ts +3 -1
- package/node_modules/tardis-dev/src/external-modules.d.ts +5 -0
- package/node_modules/tardis-dev/src/handy.ts +100 -93
- package/node_modules/tardis-dev/src/mappers/hyperliquid.ts +19 -5
- package/node_modules/tardis-dev/src/realtimefeeds/mexc.ts +2 -72
- package/node_modules/tardis-dev/src/realtimefeeds/mexcprotobuf.ts +364 -0
- package/node_modules/tardis-dev/src/realtimefeeds/realtimefeed.ts +5 -5
- package/node_modules/tardis-dev/src/replay.ts +6 -4
- package/node_modules/tardis-dev/src/worker.ts +7 -4
- package/node_modules/tardis-dev/src/zstd.ts +139 -0
- package/package.json +9 -35
- package/src/tardismachine.ts +25 -66
- package/src/ws/replay.ts +13 -8
- package/src/ws/replaynormalized.ts +8 -6
- package/src/ws/server.ts +173 -0
- package/src/ws/streamnormalized.ts +8 -6
- package/src/ws/subscriptionsmappers.ts +1 -1
- package/node_modules/follow-redirects/LICENSE +0 -18
- package/node_modules/follow-redirects/README.md +0 -157
- package/node_modules/follow-redirects/debug.js +0 -15
- package/node_modules/follow-redirects/http.js +0 -1
- package/node_modules/follow-redirects/https.js +0 -1
- package/node_modules/follow-redirects/index.js +0 -709
- package/node_modules/follow-redirects/package.json +0 -58
- package/node_modules/long/LICENSE +0 -202
- package/node_modules/long/README.md +0 -286
- package/node_modules/long/index.d.ts +0 -2
- package/node_modules/long/index.js +0 -1581
- package/node_modules/long/package.json +0 -58
- package/node_modules/long/types.d.ts +0 -474
- package/node_modules/long/umd/index.d.ts +0 -3
- package/node_modules/long/umd/index.js +0 -1622
- package/node_modules/long/umd/package.json +0 -3
- package/node_modules/long/umd/types.d.ts +0 -474
- package/node_modules/protobufjs/LICENSE +0 -39
- package/node_modules/protobufjs/README.md +0 -440
- package/node_modules/protobufjs/dist/light/protobuf.js +0 -9276
- package/node_modules/protobufjs/dist/light/protobuf.js.map +0 -1
- package/node_modules/protobufjs/dist/light/protobuf.min.js +0 -8
- package/node_modules/protobufjs/dist/light/protobuf.min.js.map +0 -1
- package/node_modules/protobufjs/dist/minimal/protobuf.js +0 -3556
- package/node_modules/protobufjs/dist/minimal/protobuf.js.map +0 -1
- package/node_modules/protobufjs/dist/minimal/protobuf.min.js +0 -8
- package/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +0 -1
- package/node_modules/protobufjs/dist/protobuf.js +0 -11233
- package/node_modules/protobufjs/dist/protobuf.js.map +0 -1
- package/node_modules/protobufjs/dist/protobuf.min.js +0 -8
- package/node_modules/protobufjs/dist/protobuf.min.js.map +0 -1
- package/node_modules/protobufjs/ext/README.md +0 -70
- package/node_modules/protobufjs/ext/debug/README.md +0 -4
- package/node_modules/protobufjs/ext/debug/index.js +0 -71
- package/node_modules/protobufjs/ext/descriptor/README.md +0 -5
- package/node_modules/protobufjs/ext/descriptor/index.d.ts +0 -2
- package/node_modules/protobufjs/ext/descriptor/index.js +0 -2
- package/node_modules/protobufjs/ext/descriptor.d.ts +0 -87
- package/node_modules/protobufjs/ext/descriptor.generated.d.ts +0 -417
- package/node_modules/protobufjs/ext/descriptor.js +0 -1356
- package/node_modules/protobufjs/ext/protojson.LICENSE +0 -201
- package/node_modules/protobufjs/ext/protojson.d.ts +0 -20
- package/node_modules/protobufjs/ext/protojson.generated.d.ts +0 -49
- package/node_modules/protobufjs/ext/protojson.js +0 -951
- package/node_modules/protobufjs/ext/textformat.d.ts +0 -19
- package/node_modules/protobufjs/ext/textformat.generated.d.ts +0 -33
- package/node_modules/protobufjs/ext/textformat.js +0 -1276
- package/node_modules/protobufjs/google/LICENSE +0 -27
- package/node_modules/protobufjs/google/README.md +0 -1
- package/node_modules/protobufjs/google/api/annotations.json +0 -85
- package/node_modules/protobufjs/google/api/annotations.proto +0 -11
- package/node_modules/protobufjs/google/api/http.json +0 -87
- package/node_modules/protobufjs/google/api/http.proto +0 -31
- package/node_modules/protobufjs/google/protobuf/api.json +0 -124
- package/node_modules/protobufjs/google/protobuf/api.proto +0 -34
- package/node_modules/protobufjs/google/protobuf/compiler/plugin.json +0 -126
- package/node_modules/protobufjs/google/protobuf/compiler/plugin.proto +0 -47
- package/node_modules/protobufjs/google/protobuf/descriptor.json +0 -1465
- package/node_modules/protobufjs/google/protobuf/descriptor.proto +0 -527
- package/node_modules/protobufjs/google/protobuf/source_context.json +0 -21
- package/node_modules/protobufjs/google/protobuf/source_context.proto +0 -7
- package/node_modules/protobufjs/google/protobuf/type.json +0 -209
- package/node_modules/protobufjs/google/protobuf/type.proto +0 -89
- package/node_modules/protobufjs/index.d.ts +0 -3203
- package/node_modules/protobufjs/index.js +0 -4
- package/node_modules/protobufjs/light.d.ts +0 -2
- package/node_modules/protobufjs/light.js +0 -4
- package/node_modules/protobufjs/minimal.d.ts +0 -2
- package/node_modules/protobufjs/minimal.js +0 -4
- package/node_modules/protobufjs/package.json +0 -93
- package/node_modules/protobufjs/src/common.js +0 -405
- package/node_modules/protobufjs/src/converter.js +0 -352
- package/node_modules/protobufjs/src/decoder.js +0 -279
- package/node_modules/protobufjs/src/encoder.js +0 -123
- package/node_modules/protobufjs/src/enum.js +0 -239
- package/node_modules/protobufjs/src/field.js +0 -505
- package/node_modules/protobufjs/src/index-light.js +0 -104
- package/node_modules/protobufjs/src/index-minimal.js +0 -35
- package/node_modules/protobufjs/src/index.js +0 -12
- package/node_modules/protobufjs/src/mapfield.js +0 -144
- package/node_modules/protobufjs/src/message.js +0 -137
- package/node_modules/protobufjs/src/method.js +0 -183
- package/node_modules/protobufjs/src/namespace.js +0 -574
- package/node_modules/protobufjs/src/object.js +0 -392
- package/node_modules/protobufjs/src/oneof.js +0 -233
- package/node_modules/protobufjs/src/parse.js +0 -1111
- package/node_modules/protobufjs/src/reader.js +0 -788
- package/node_modules/protobufjs/src/reader_buffer.js +0 -77
- package/node_modules/protobufjs/src/root.js +0 -424
- package/node_modules/protobufjs/src/roots.js +0 -18
- package/node_modules/protobufjs/src/rpc/service.js +0 -155
- package/node_modules/protobufjs/src/rpc.js +0 -36
- package/node_modules/protobufjs/src/service.js +0 -206
- package/node_modules/protobufjs/src/tokenize.js +0 -421
- package/node_modules/protobufjs/src/type.js +0 -676
- package/node_modules/protobufjs/src/types.js +0 -196
- package/node_modules/protobufjs/src/typescript.js +0 -25
- package/node_modules/protobufjs/src/util/aspromise.d.ts +0 -13
- package/node_modules/protobufjs/src/util/aspromise.js +0 -52
- package/node_modules/protobufjs/src/util/base64.d.ts +0 -32
- package/node_modules/protobufjs/src/util/base64.js +0 -146
- package/node_modules/protobufjs/src/util/codegen.d.ts +0 -31
- package/node_modules/protobufjs/src/util/codegen.js +0 -118
- package/node_modules/protobufjs/src/util/eventemitter.d.ts +0 -45
- package/node_modules/protobufjs/src/util/eventemitter.js +0 -86
- package/node_modules/protobufjs/src/util/fetch.d.ts +0 -56
- package/node_modules/protobufjs/src/util/fetch.js +0 -112
- package/node_modules/protobufjs/src/util/float.d.ts +0 -83
- package/node_modules/protobufjs/src/util/float.js +0 -335
- package/node_modules/protobufjs/src/util/fs.js +0 -11
- package/node_modules/protobufjs/src/util/longbits.js +0 -204
- package/node_modules/protobufjs/src/util/minimal.js +0 -511
- package/node_modules/protobufjs/src/util/path.d.ts +0 -22
- package/node_modules/protobufjs/src/util/path.js +0 -100
- package/node_modules/protobufjs/src/util/patterns.js +0 -7
- package/node_modules/protobufjs/src/util/pool.d.ts +0 -32
- package/node_modules/protobufjs/src/util/pool.js +0 -48
- package/node_modules/protobufjs/src/util/utf8.d.ts +0 -24
- package/node_modules/protobufjs/src/util/utf8.js +0 -190
- package/node_modules/protobufjs/src/util.js +0 -264
- package/node_modules/protobufjs/src/verifier.js +0 -185
- package/node_modules/protobufjs/src/wrappers.js +0 -106
- package/node_modules/protobufjs/src/writer.js +0 -700
- package/node_modules/protobufjs/src/writer_buffer.js +0 -100
- package/node_modules/protobufjs/tsconfig.json +0 -6
- package/node_modules/uWebSockets.js/ESM_wrapper.mjs +0 -53
- package/node_modules/uWebSockets.js/LICENSE +0 -201
- package/node_modules/uWebSockets.js/README.md +0 -6
- package/node_modules/uWebSockets.js/index.d.ts +0 -468
- package/node_modules/uWebSockets.js/package.json +0 -12
- package/node_modules/uWebSockets.js/source_commit +0 -1
- package/node_modules/uWebSockets.js/uws.js +0 -76
- package/node_modules/uWebSockets.js/uws_darwin_arm64_127.node +0 -0
- package/node_modules/uWebSockets.js/uws_darwin_arm64_137.node +0 -0
- package/node_modules/uWebSockets.js/uws_darwin_arm64_147.node +0 -0
- package/node_modules/uWebSockets.js/uws_darwin_x64_127.node +0 -0
- package/node_modules/uWebSockets.js/uws_darwin_x64_137.node +0 -0
- package/node_modules/uWebSockets.js/uws_darwin_x64_147.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_arm64_127.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_arm64_137.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_arm64_147.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_x64_127.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_x64_137.node +0 -0
- package/node_modules/uWebSockets.js/uws_linux_x64_147.node +0 -0
- package/node_modules/uWebSockets.js/uws_win32_x64_127.node +0 -0
- package/node_modules/uWebSockets.js/uws_win32_x64_137.node +0 -0
- package/node_modules/uWebSockets.js/uws_win32_x64_147.node +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hyperliquid.js","sourceRoot":"","sources":["../../src/mappers/hyperliquid.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"hyperliquid.js","sourceRoot":"","sources":["../../src/mappers/hyperliquid.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEvD,MAAM,iCAAiC,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;IAChD,WAAW,EAAE;QACX,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,uBAAuB,EAAE;QAC3C,WAAW,EAAE,MAAM,CAAC;YAClB,EAAE,KAAK,EAAE,iCAAiC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,2BAA2B,CAAC,QAAQ,CAAC,EAAE;YAClG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,2BAA2B,CAAC,UAAU,CAAC,EAAE;SAC3D,CAAC;QACF,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI,iCAAiC,EAAE;QAChE,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,2BAA2B,EAAE;KACrD;CACF,CAAC,CAAA;AAEF,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;AAEtF,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACzE,IAAI,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC5C,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC1C,OAAO,MAAM,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG,MAAM,CAAA;IAC5C,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AACD,SAAS,UAAU,CAAC,OAAkB;IACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IACpC,CAAC;IACD,OAAM;AACR,CAAC;AACD,MAAM,uBAAuB;IACV,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;IAEjD,SAAS,CAAC,OAAgC;QACxC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAA;IACrC,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO;YACL;gBACE,OAAO,EAAE,QAAQ;gBACjB,OAAO;aACR;SACF,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAgC,EAAE,cAAoB;QACzD,KAAK,MAAM,gBAAgB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;gBAC3D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;gBAC5C,MAAK;YACP,CAAC;YACD,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE;gBAC3C,QAAQ,EAAE,aAAa;gBACvB,EAAE,EAAE,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACnC,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAClC,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACnC,IAAI,EAAE,gBAAgB,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;gBACpD,SAAS,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBAC1C,cAAc,EAAE,cAAc;aAC/B,CAAA;QACH,CAAC;IACH,CAAC;CACF;AAED,SAAS,mBAAmB,CAAC,KAAyB;IACpD,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;KACzB,CAAA;AACH,CAAC;AACD,MAAM,2BAA2B;IACF;IAA7B,YAA6B,aAAqC;QAArC,kBAAa,GAAb,aAAa,CAAwB;IAAG,CAAC;IAEtE,SAAS,CAAC,OAAiC;QACzC,2GAA2G;QAC3G,mGAAmG;QACnG,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;QAEjH,OAAO,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,KAAK,CAAA;IAC9G,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO;YACL;gBACE,OAAO,EAAE,IAAI,CAAC,aAAa;gBAC3B,OAAO;aACR;SACF,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAiC,EAAE,cAAoB;QAC1D,MAAM;YACJ,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACvC,QAAQ,EAAE,aAAa;YACvB,UAAU,EAAE,IAAI;YAChB,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACrF,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACrF,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACtC,cAAc;SACf,CAAA;IACH,CAAC;CACF;AAED,MAAM,2BAA2B;IAC/B,SAAS,CAAC,OAA8B;QACtC,OAAO,OAAO,CAAC,OAAO,KAAK,KAAK,CAAA;IAClC,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO;YACL;gBACE,OAAO,EAAE,KAAK;gBACd,OAAO;aACR;SACF,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAA8B,EAAE,cAAoB;QACvD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA;QAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QACtB,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QAEtB,MAAM,MAAM,GAAe;YACzB,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACvC,QAAQ,EAAE,aAAa;YACvB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAClD,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACnD,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAClD,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YACnD,SAAS,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACtC,cAAc,EAAE,cAAc;SAC/B,CAAA;QAED,MAAM,MAAM,CAAA;IACd,CAAC;CACF;AAED,MAAM,iCAAiC;IACpB,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAA;IAExE,SAAS,CAAC,OAAkC;QAC1C,OAAO,OAAO,CAAC,OAAO,KAAK,gBAAgB,CAAA;IAC7C,CAAC;IAED,UAAU,CAAC,OAAkB;QAC3B,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO;YACL;gBACE,OAAO,EAAE,gBAAgB;gBACzB,OAAO;aACR;SACF,CAAA;IACH,CAAC;IAED,CAAC,GAAG,CAAC,OAAkC,EAAE,cAAoB;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;QAE9C,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QAElG,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3C,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;QACvE,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1C,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAA;QACpE,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAChD,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAA;QAC7E,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5C,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QACvE,CAAC;QAED,IAAI,iBAAiB,CAAC,UAAU,EAAE,EAAE,CAAC;YACnC,iBAAiB,CAAC,eAAe,CAAC,cAAc,CAAC,CAAA;YACjD,MAAM,iBAAiB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAA;QACrD,CAAC;IACH,CAAC;CACF"}
|
|
@@ -330,7 +330,7 @@ export declare const normalizeBookChanges: Normalizer<{
|
|
|
330
330
|
readonly localTimestamp: Date;
|
|
331
331
|
}>;
|
|
332
332
|
} & {
|
|
333
|
-
hyperliquid: import("./registry.ts").MapperCreator<
|
|
333
|
+
hyperliquid: import("./registry.ts").MapperCreator<any, BookChange>;
|
|
334
334
|
} & {
|
|
335
335
|
kraken: import("./registry.ts").MapperCreator<"kraken", BookChange>;
|
|
336
336
|
} & {
|
|
@@ -4,12 +4,6 @@ export declare class MexcRealTimeFeed extends RealTimeFeedBase {
|
|
|
4
4
|
private static readonly depthChannel;
|
|
5
5
|
private static readonly depthSnapshotChannel;
|
|
6
6
|
private static readonly jsonObjectStart;
|
|
7
|
-
private static pushDataV3ApiWrapper;
|
|
8
|
-
/**
|
|
9
|
-
* MEXC protobuf docs at @see https://www.mexc.com/api-docs/spot-v3/websocket-market-streams/protocol-buffers-integration
|
|
10
|
-
* and schemas from @see https://github.com/mexcdevelop/websocket-proto, mirrored in tardis-recorder/datafeeds/src/mexc/proto.
|
|
11
|
-
*/
|
|
12
|
-
private static readonly pushDataV3ApiWrapperSchema;
|
|
13
7
|
private readonly pendingDepthSnapshotSymbols;
|
|
14
8
|
private readonly bufferedDepthUpdates;
|
|
15
9
|
protected readonly wssURL = "wss://wbs-api.mexc.com/ws";
|
|
@@ -22,7 +16,6 @@ export declare class MexcRealTimeFeed extends RealTimeFeedBase {
|
|
|
22
16
|
protected onMessage(message: any): void;
|
|
23
17
|
protected provideManualSnapshots(filters: Filter<string>[], shouldCancel: () => boolean): Promise<void>;
|
|
24
18
|
protected sendCustomPing: () => void;
|
|
25
|
-
private getPushDataV3ApiWrapper;
|
|
26
19
|
private resetDepthSnapshotTracking;
|
|
27
20
|
private validateDepthSnapshotFilters;
|
|
28
21
|
private provideManualSnapshot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mexc.d.ts","sourceRoot":"","sources":["../../src/realtimefeeds/mexc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mexc.d.ts","sourceRoot":"","sources":["../../src/realtimefeeds/mexc.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAGpD,qBAAa,gBAAiB,SAAQ,gBAAgB;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAA2C;IAC/E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAoD;IAChG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAoB;IAE3D,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAoB;IAChE,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAyD;IAC9F,SAAS,CAAC,QAAQ,CAAC,MAAM,+BAA8B;IACvD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAyB;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAKvB;cAEiB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,EAAE;cA6BxD,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,GAAG,GAAG;cAUnD,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO;cAIrC,kBAAkB,CAAC,OAAO,EAAE,GAAG;cAI/B,SAAS,CAAC,OAAO,EAAE,GAAG;cAoBhB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO;IAetG,SAAS,CAAC,cAAc,aAEvB;IAED,OAAO,CAAC,0BAA0B;IAalC,OAAO,CAAC,4BAA4B;YAsBtB,qBAAqB;YA4CrB,sBAAsB;IAcpC,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,oBAAoB;CAa7B"}
|
|
@@ -1,68 +1,10 @@
|
|
|
1
|
-
import protobuf from 'protobufjs';
|
|
2
1
|
import { CircularBuffer, getJSON, wait } from "../handy.js";
|
|
3
2
|
import { RealTimeFeedBase } from "./realtimefeed.js";
|
|
3
|
+
import { decodeMexcProtobufMessage } from "./mexcprotobuf.js";
|
|
4
4
|
export class MexcRealTimeFeed extends RealTimeFeedBase {
|
|
5
5
|
static depthChannel = 'spot@public.aggre.depth.v3.api.pb@10ms';
|
|
6
6
|
static depthSnapshotChannel = 'spot@public.aggre.depth.snapshot.v3.api.pb@10ms';
|
|
7
7
|
static jsonObjectStart = '{'.charCodeAt(0);
|
|
8
|
-
static pushDataV3ApiWrapper;
|
|
9
|
-
/**
|
|
10
|
-
* MEXC protobuf docs at @see https://www.mexc.com/api-docs/spot-v3/websocket-market-streams/protocol-buffers-integration
|
|
11
|
-
* and schemas from @see https://github.com/mexcdevelop/websocket-proto, mirrored in tardis-recorder/datafeeds/src/mexc/proto.
|
|
12
|
-
*/
|
|
13
|
-
static pushDataV3ApiWrapperSchema = `
|
|
14
|
-
syntax = "proto3";
|
|
15
|
-
|
|
16
|
-
message PushDataV3ApiWrapper {
|
|
17
|
-
string channel = 1;
|
|
18
|
-
oneof body {
|
|
19
|
-
PublicAggreDepthsV3Api publicAggreDepths = 313;
|
|
20
|
-
PublicAggreDealsV3Api publicAggreDeals = 314;
|
|
21
|
-
PublicAggreBookTickerV3Api publicAggreBookTicker = 315;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
optional string symbol = 3;
|
|
25
|
-
optional string symbolId = 4;
|
|
26
|
-
optional int64 createTime = 5;
|
|
27
|
-
optional int64 sendTime = 6;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
message PublicAggreDealsV3Api {
|
|
31
|
-
repeated PublicAggreDealsV3ApiItem deals = 1;
|
|
32
|
-
string eventType = 2;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
message PublicAggreDealsV3ApiItem {
|
|
36
|
-
string price = 1;
|
|
37
|
-
string quantity = 2;
|
|
38
|
-
int32 tradeType = 3;
|
|
39
|
-
int64 time = 4;
|
|
40
|
-
string tradeId = 5;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
message PublicAggreDepthsV3Api {
|
|
44
|
-
repeated PublicAggreDepthV3ApiItem asks = 1;
|
|
45
|
-
repeated PublicAggreDepthV3ApiItem bids = 2;
|
|
46
|
-
string eventType = 3;
|
|
47
|
-
string fromVersion = 4;
|
|
48
|
-
string toVersion = 5;
|
|
49
|
-
int64 lastOrderCreateTime = 6;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
message PublicAggreDepthV3ApiItem {
|
|
53
|
-
string price = 1;
|
|
54
|
-
string quantity = 2;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
message PublicAggreBookTickerV3Api {
|
|
58
|
-
string bidPrice = 1;
|
|
59
|
-
string bidQuantity = 2;
|
|
60
|
-
string askPrice = 3;
|
|
61
|
-
string askQuantity = 4;
|
|
62
|
-
string version = 5;
|
|
63
|
-
int64 lastOrderCreateTime = 6;
|
|
64
|
-
}
|
|
65
|
-
`;
|
|
66
8
|
pendingDepthSnapshotSymbols = new Set();
|
|
67
9
|
bufferedDepthUpdates = new Map();
|
|
68
10
|
wssURL = 'wss://wbs-api.mexc.com/ws';
|
|
@@ -100,11 +42,7 @@ export class MexcRealTimeFeed extends RealTimeFeedBase {
|
|
|
100
42
|
if (buffer.length > 0 && buffer[0] === MexcRealTimeFeed.jsonObjectStart) {
|
|
101
43
|
return JSON.parse(buffer.toString());
|
|
102
44
|
}
|
|
103
|
-
|
|
104
|
-
return pushDataV3ApiWrapper.toObject(pushDataV3ApiWrapper.decode(buffer), {
|
|
105
|
-
longs: String,
|
|
106
|
-
arrays: true
|
|
107
|
-
});
|
|
45
|
+
return decodeMexcProtobufMessage(buffer);
|
|
108
46
|
}
|
|
109
47
|
messageIsError(message) {
|
|
110
48
|
return message.code !== undefined && message.code !== 0;
|
|
@@ -141,12 +79,6 @@ export class MexcRealTimeFeed extends RealTimeFeedBase {
|
|
|
141
79
|
sendCustomPing = () => {
|
|
142
80
|
this.send({ method: 'PING' });
|
|
143
81
|
};
|
|
144
|
-
getPushDataV3ApiWrapper() {
|
|
145
|
-
MexcRealTimeFeed.pushDataV3ApiWrapper ??= protobuf
|
|
146
|
-
.parse(MexcRealTimeFeed.pushDataV3ApiWrapperSchema)
|
|
147
|
-
.root.lookupType('PushDataV3ApiWrapper');
|
|
148
|
-
return MexcRealTimeFeed.pushDataV3ApiWrapper;
|
|
149
|
-
}
|
|
150
82
|
resetDepthSnapshotTracking(filters) {
|
|
151
83
|
this.pendingDepthSnapshotSymbols.clear();
|
|
152
84
|
this.bufferedDepthUpdates.clear();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mexc.js","sourceRoot":"","sources":["../../src/realtimefeeds/mexc.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"mexc.js","sourceRoot":"","sources":["../../src/realtimefeeds/mexc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export declare function decodeMexcProtobufMessage(data: Uint8Array): {
|
|
2
|
+
channel?: string;
|
|
3
|
+
symbol?: string;
|
|
4
|
+
symbolId?: string;
|
|
5
|
+
createTime?: string;
|
|
6
|
+
sendTime?: string;
|
|
7
|
+
publicAggreDepths?: ReturnType<typeof decodeDepths>;
|
|
8
|
+
publicAggreDeals?: ReturnType<typeof decodeDeals>;
|
|
9
|
+
publicAggreBookTicker?: ReturnType<typeof decodeBookTicker>;
|
|
10
|
+
};
|
|
11
|
+
declare function decodeDeals(data: Uint8Array): {
|
|
12
|
+
deals: ReturnType<typeof decodeTrade>[];
|
|
13
|
+
eventType?: string;
|
|
14
|
+
};
|
|
15
|
+
declare function decodeTrade(data: Uint8Array): {
|
|
16
|
+
price?: string;
|
|
17
|
+
quantity?: string;
|
|
18
|
+
tradeType?: number;
|
|
19
|
+
time?: string;
|
|
20
|
+
tradeId?: string;
|
|
21
|
+
};
|
|
22
|
+
declare function decodeDepths(data: Uint8Array): {
|
|
23
|
+
asks: ReturnType<typeof decodePriceLevel>[];
|
|
24
|
+
bids: ReturnType<typeof decodePriceLevel>[];
|
|
25
|
+
eventType?: string;
|
|
26
|
+
fromVersion?: string;
|
|
27
|
+
toVersion?: string;
|
|
28
|
+
lastOrderCreateTime?: string;
|
|
29
|
+
};
|
|
30
|
+
declare function decodePriceLevel(data: Uint8Array): {
|
|
31
|
+
price?: string;
|
|
32
|
+
quantity?: string;
|
|
33
|
+
};
|
|
34
|
+
declare function decodeBookTicker(data: Uint8Array): {
|
|
35
|
+
bidPrice?: string;
|
|
36
|
+
bidQuantity?: string;
|
|
37
|
+
askPrice?: string;
|
|
38
|
+
askQuantity?: string;
|
|
39
|
+
version?: string;
|
|
40
|
+
lastOrderCreateTime?: string;
|
|
41
|
+
};
|
|
42
|
+
export {};
|
|
43
|
+
//# sourceMappingURL=mexcprotobuf.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mexcprotobuf.d.ts","sourceRoot":"","sources":["../../src/realtimefeeds/mexcprotobuf.ts"],"names":[],"mappings":"AAOA,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,UAAU;cAG5C,MAAM;aACP,MAAM;eACJ,MAAM;iBACJ,MAAM;eACR,MAAM;wBACG,UAAU,CAAC,OAAO,YAAY,CAAC;uBAChC,UAAU,CAAC,OAAO,WAAW,CAAC;4BACzB,UAAU,CAAC,OAAO,gBAAgB,CAAC;EAqC9D;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,UAAU;WAEX,UAAU,CAAC,OAAO,WAAW,CAAC,EAAE;gBAAc,MAAM;EAkB7E;AAED,iBAAS,WAAW,CAAC,IAAI,EAAE,UAAU;YAEV,MAAM;eAAa,MAAM;gBAAc,MAAM;WAAS,MAAM;cAAY,MAAM;EA2BxG;AAED,iBAAS,YAAY,CAAC,IAAI,EAAE,UAAU;UAG5B,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAAE;UACrC,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAAE;gBAC/B,MAAM;kBACJ,MAAM;gBACR,MAAM;0BACI,MAAM;EA+B/B;AAED,iBAAS,gBAAgB,CAAC,IAAI,EAAE,UAAU;YAEf,MAAM;eAAa,MAAM;EAkBnD;AAED,iBAAS,gBAAgB,CAAC,IAAI,EAAE,UAAU;eAG3B,MAAM;kBACH,MAAM;eACT,MAAM;kBACH,MAAM;cACV,MAAM;0BACM,MAAM;EA+B/B"}
|
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
const textDecoder = new TextDecoder();
|
|
2
|
+
// Decodes only the current MEXC real-time channels supported by MexcRealTimeFeed.
|
|
3
|
+
// Field numbers mirror the official schemas at commit 7b8ac7a6681f28551612a5a7cefbb7e09b56bb85:
|
|
4
|
+
// https://github.com/mexcdevelop/websocket-proto/tree/7b8ac7a6681f28551612a5a7cefbb7e09b56bb85
|
|
5
|
+
// int64 values remain decimal strings and repeated fields remain empty arrays when absent,
|
|
6
|
+
// preserving the output shape previously produced by protobufjs.
|
|
7
|
+
export function decodeMexcProtobufMessage(data) {
|
|
8
|
+
const reader = new ProtobufReader(data);
|
|
9
|
+
const message = {};
|
|
10
|
+
while (reader.done === false) {
|
|
11
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
12
|
+
switch (fieldNumber) {
|
|
13
|
+
case 1:
|
|
14
|
+
message.channel = reader.readString(wireType);
|
|
15
|
+
break;
|
|
16
|
+
case 3:
|
|
17
|
+
message.symbol = reader.readString(wireType);
|
|
18
|
+
break;
|
|
19
|
+
case 4:
|
|
20
|
+
message.symbolId = reader.readString(wireType);
|
|
21
|
+
break;
|
|
22
|
+
case 5:
|
|
23
|
+
message.createTime = reader.readInt64String(wireType);
|
|
24
|
+
break;
|
|
25
|
+
case 6:
|
|
26
|
+
message.sendTime = reader.readInt64String(wireType);
|
|
27
|
+
break;
|
|
28
|
+
case 313:
|
|
29
|
+
message.publicAggreDepths = decodeDepths(reader.readBytes(wireType));
|
|
30
|
+
break;
|
|
31
|
+
case 314:
|
|
32
|
+
message.publicAggreDeals = decodeDeals(reader.readBytes(wireType));
|
|
33
|
+
break;
|
|
34
|
+
case 315:
|
|
35
|
+
message.publicAggreBookTicker = decodeBookTicker(reader.readBytes(wireType));
|
|
36
|
+
break;
|
|
37
|
+
default:
|
|
38
|
+
reader.skipField(wireType);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return message;
|
|
42
|
+
}
|
|
43
|
+
function decodeDeals(data) {
|
|
44
|
+
const reader = new ProtobufReader(data);
|
|
45
|
+
const message = { deals: [] };
|
|
46
|
+
while (reader.done === false) {
|
|
47
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
48
|
+
switch (fieldNumber) {
|
|
49
|
+
case 1:
|
|
50
|
+
message.deals.push(decodeTrade(reader.readBytes(wireType)));
|
|
51
|
+
break;
|
|
52
|
+
case 2:
|
|
53
|
+
message.eventType = reader.readString(wireType);
|
|
54
|
+
break;
|
|
55
|
+
default:
|
|
56
|
+
reader.skipField(wireType);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return message;
|
|
60
|
+
}
|
|
61
|
+
function decodeTrade(data) {
|
|
62
|
+
const reader = new ProtobufReader(data);
|
|
63
|
+
const message = {};
|
|
64
|
+
while (reader.done === false) {
|
|
65
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
66
|
+
switch (fieldNumber) {
|
|
67
|
+
case 1:
|
|
68
|
+
message.price = reader.readString(wireType);
|
|
69
|
+
break;
|
|
70
|
+
case 2:
|
|
71
|
+
message.quantity = reader.readString(wireType);
|
|
72
|
+
break;
|
|
73
|
+
case 3:
|
|
74
|
+
message.tradeType = reader.readInt32(wireType);
|
|
75
|
+
break;
|
|
76
|
+
case 4:
|
|
77
|
+
message.time = reader.readInt64String(wireType);
|
|
78
|
+
break;
|
|
79
|
+
case 5:
|
|
80
|
+
message.tradeId = reader.readString(wireType);
|
|
81
|
+
break;
|
|
82
|
+
default:
|
|
83
|
+
reader.skipField(wireType);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return message;
|
|
87
|
+
}
|
|
88
|
+
function decodeDepths(data) {
|
|
89
|
+
const reader = new ProtobufReader(data);
|
|
90
|
+
const message = { asks: [], bids: [] };
|
|
91
|
+
while (reader.done === false) {
|
|
92
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
93
|
+
switch (fieldNumber) {
|
|
94
|
+
case 1:
|
|
95
|
+
message.asks.push(decodePriceLevel(reader.readBytes(wireType)));
|
|
96
|
+
break;
|
|
97
|
+
case 2:
|
|
98
|
+
message.bids.push(decodePriceLevel(reader.readBytes(wireType)));
|
|
99
|
+
break;
|
|
100
|
+
case 3:
|
|
101
|
+
message.eventType = reader.readString(wireType);
|
|
102
|
+
break;
|
|
103
|
+
case 4:
|
|
104
|
+
message.fromVersion = reader.readString(wireType);
|
|
105
|
+
break;
|
|
106
|
+
case 5:
|
|
107
|
+
message.toVersion = reader.readString(wireType);
|
|
108
|
+
break;
|
|
109
|
+
case 6:
|
|
110
|
+
message.lastOrderCreateTime = reader.readInt64String(wireType);
|
|
111
|
+
break;
|
|
112
|
+
default:
|
|
113
|
+
reader.skipField(wireType);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return message;
|
|
117
|
+
}
|
|
118
|
+
function decodePriceLevel(data) {
|
|
119
|
+
const reader = new ProtobufReader(data);
|
|
120
|
+
const message = {};
|
|
121
|
+
while (reader.done === false) {
|
|
122
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
123
|
+
switch (fieldNumber) {
|
|
124
|
+
case 1:
|
|
125
|
+
message.price = reader.readString(wireType);
|
|
126
|
+
break;
|
|
127
|
+
case 2:
|
|
128
|
+
message.quantity = reader.readString(wireType);
|
|
129
|
+
break;
|
|
130
|
+
default:
|
|
131
|
+
reader.skipField(wireType);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
return message;
|
|
135
|
+
}
|
|
136
|
+
function decodeBookTicker(data) {
|
|
137
|
+
const reader = new ProtobufReader(data);
|
|
138
|
+
const message = {};
|
|
139
|
+
while (reader.done === false) {
|
|
140
|
+
const { fieldNumber, wireType } = reader.readTag();
|
|
141
|
+
switch (fieldNumber) {
|
|
142
|
+
case 1:
|
|
143
|
+
message.bidPrice = reader.readString(wireType);
|
|
144
|
+
break;
|
|
145
|
+
case 2:
|
|
146
|
+
message.bidQuantity = reader.readString(wireType);
|
|
147
|
+
break;
|
|
148
|
+
case 3:
|
|
149
|
+
message.askPrice = reader.readString(wireType);
|
|
150
|
+
break;
|
|
151
|
+
case 4:
|
|
152
|
+
message.askQuantity = reader.readString(wireType);
|
|
153
|
+
break;
|
|
154
|
+
case 5:
|
|
155
|
+
message.version = reader.readString(wireType);
|
|
156
|
+
break;
|
|
157
|
+
case 6:
|
|
158
|
+
message.lastOrderCreateTime = reader.readInt64String(wireType);
|
|
159
|
+
break;
|
|
160
|
+
default:
|
|
161
|
+
reader.skipField(wireType);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return message;
|
|
165
|
+
}
|
|
166
|
+
class ProtobufReader {
|
|
167
|
+
data;
|
|
168
|
+
offset = 0;
|
|
169
|
+
constructor(data) {
|
|
170
|
+
this.data = data;
|
|
171
|
+
}
|
|
172
|
+
get done() {
|
|
173
|
+
return this.offset === this.data.length;
|
|
174
|
+
}
|
|
175
|
+
readTag() {
|
|
176
|
+
const tag = this.readVarint();
|
|
177
|
+
if (typeof tag === 'bigint' || tag > 0xffffffff) {
|
|
178
|
+
throw new Error('Invalid protobuf tag');
|
|
179
|
+
}
|
|
180
|
+
const fieldNumber = tag >>> 3;
|
|
181
|
+
const wireType = tag & 7;
|
|
182
|
+
if (fieldNumber === 0) {
|
|
183
|
+
throw new Error('Invalid protobuf field number 0');
|
|
184
|
+
}
|
|
185
|
+
return { fieldNumber, wireType };
|
|
186
|
+
}
|
|
187
|
+
readString(wireType) {
|
|
188
|
+
this.expectWireType(wireType, 2);
|
|
189
|
+
const length = this.readLength();
|
|
190
|
+
const start = this.offset;
|
|
191
|
+
const end = start + length;
|
|
192
|
+
if (end > this.data.length) {
|
|
193
|
+
throw new Error('Invalid protobuf message length');
|
|
194
|
+
}
|
|
195
|
+
this.offset = end;
|
|
196
|
+
return Buffer.isBuffer(this.data) ? this.data.toString('utf8', start, end) : textDecoder.decode(this.data.subarray(start, end));
|
|
197
|
+
}
|
|
198
|
+
readBytes(wireType) {
|
|
199
|
+
this.expectWireType(wireType, 2);
|
|
200
|
+
const length = this.readLength();
|
|
201
|
+
const end = this.offset + length;
|
|
202
|
+
if (end > this.data.length) {
|
|
203
|
+
throw new Error('Invalid protobuf message length');
|
|
204
|
+
}
|
|
205
|
+
const value = this.data.subarray(this.offset, end);
|
|
206
|
+
this.offset = end;
|
|
207
|
+
return value;
|
|
208
|
+
}
|
|
209
|
+
readInt32(wireType) {
|
|
210
|
+
this.expectWireType(wireType, 0);
|
|
211
|
+
const value = this.readVarint();
|
|
212
|
+
return typeof value === 'number' ? value | 0 : Number(BigInt.asIntN(32, value));
|
|
213
|
+
}
|
|
214
|
+
readInt64String(wireType) {
|
|
215
|
+
this.expectWireType(wireType, 0);
|
|
216
|
+
const value = this.readVarint();
|
|
217
|
+
return typeof value === 'number' ? value.toString() : BigInt.asIntN(64, value).toString();
|
|
218
|
+
}
|
|
219
|
+
skipField(wireType) {
|
|
220
|
+
switch (wireType) {
|
|
221
|
+
case 0:
|
|
222
|
+
this.skipVarint();
|
|
223
|
+
return;
|
|
224
|
+
case 1:
|
|
225
|
+
this.skipBytes(8);
|
|
226
|
+
return;
|
|
227
|
+
case 2:
|
|
228
|
+
this.skipBytes(this.readLength());
|
|
229
|
+
return;
|
|
230
|
+
case 5:
|
|
231
|
+
this.skipBytes(4);
|
|
232
|
+
return;
|
|
233
|
+
default:
|
|
234
|
+
throw new Error(`Unsupported protobuf wire type ${wireType}`);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
readVarint() {
|
|
238
|
+
let value = 0;
|
|
239
|
+
let multiplier = 1;
|
|
240
|
+
// Seven base-128 digits use at most 49 bits, so they remain exact and fast as a number.
|
|
241
|
+
for (let index = 0; index < 7; index++) {
|
|
242
|
+
const byte = this.readByte();
|
|
243
|
+
value += (byte & 0x7f) * multiplier;
|
|
244
|
+
if ((byte & 0x80) === 0) {
|
|
245
|
+
return value;
|
|
246
|
+
}
|
|
247
|
+
multiplier *= 0x80;
|
|
248
|
+
}
|
|
249
|
+
// Larger int64 values need BigInt to preserve every bit before converting them to strings.
|
|
250
|
+
let bigValue = BigInt(value);
|
|
251
|
+
for (let index = 7; index < 10; index++) {
|
|
252
|
+
const byte = this.readByte();
|
|
253
|
+
bigValue |= BigInt(byte & 0x7f) << BigInt(index * 7);
|
|
254
|
+
if ((byte & 0x80) === 0) {
|
|
255
|
+
return bigValue;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
throw new Error('Invalid protobuf varint');
|
|
259
|
+
}
|
|
260
|
+
readLength() {
|
|
261
|
+
const length = this.readVarint();
|
|
262
|
+
if (typeof length === 'bigint' || Number.isSafeInteger(length) === false) {
|
|
263
|
+
throw new Error('Invalid protobuf message length');
|
|
264
|
+
}
|
|
265
|
+
return length;
|
|
266
|
+
}
|
|
267
|
+
skipVarint() {
|
|
268
|
+
for (let index = 0; index < 10; index++) {
|
|
269
|
+
if ((this.readByte() & 0x80) === 0) {
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
throw new Error('Invalid protobuf varint');
|
|
274
|
+
}
|
|
275
|
+
readByte() {
|
|
276
|
+
if (this.offset >= this.data.length) {
|
|
277
|
+
throw new Error('Unexpected end of protobuf message');
|
|
278
|
+
}
|
|
279
|
+
return this.data[this.offset++];
|
|
280
|
+
}
|
|
281
|
+
skipBytes(length) {
|
|
282
|
+
const end = this.offset + length;
|
|
283
|
+
if (Number.isSafeInteger(length) === false || end > this.data.length) {
|
|
284
|
+
throw new Error('Invalid protobuf message length');
|
|
285
|
+
}
|
|
286
|
+
this.offset = end;
|
|
287
|
+
}
|
|
288
|
+
expectWireType(actual, expected) {
|
|
289
|
+
if (actual !== expected) {
|
|
290
|
+
throw new Error(`Invalid protobuf wire type ${actual}, expected ${expected}`);
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
//# sourceMappingURL=mexcprotobuf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mexcprotobuf.js","sourceRoot":"","sources":["../../src/realtimefeeds/mexcprotobuf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import dbg from 'debug';
|
|
2
1
|
import { Writable } from 'stream';
|
|
2
|
+
import { type DebugLogger } from '../debug.ts';
|
|
3
3
|
import { type ManagedRealTimeIterator } from '../realtimeiterator.ts';
|
|
4
4
|
import { Exchange, Filter } from '../types.ts';
|
|
5
5
|
export type RealTimeFeed = {
|
|
@@ -11,7 +11,7 @@ export declare abstract class RealTimeFeedBase implements RealTimeFeedIterable {
|
|
|
11
11
|
private readonly _timeoutIntervalMS;
|
|
12
12
|
private readonly _onError?;
|
|
13
13
|
[Symbol.asyncIterator](): ManagedRealTimeIterator<any>;
|
|
14
|
-
protected readonly debug:
|
|
14
|
+
protected readonly debug: DebugLogger;
|
|
15
15
|
protected abstract readonly wssURL: string;
|
|
16
16
|
protected readonly throttleSubscribeMS: number;
|
|
17
17
|
protected readonly manualSnapshotsBuffer: any[];
|
|
@@ -61,7 +61,7 @@ export declare abstract class MultiConnectionRealTimeFeedBase implements RealTim
|
|
|
61
61
|
export declare abstract class PoolingClientBase implements RealTimeFeedIterable {
|
|
62
62
|
private readonly _poolingIntervalSeconds;
|
|
63
63
|
protected readonly onError?: ((error: Error) => void) | undefined;
|
|
64
|
-
protected readonly debug:
|
|
64
|
+
protected readonly debug: DebugLogger;
|
|
65
65
|
private _tid;
|
|
66
66
|
private _outputStream;
|
|
67
67
|
constructor(exchange: string, _poolingIntervalSeconds: number, onError?: ((error: Error) => void) | undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtimefeed.d.ts","sourceRoot":"","sources":["../../src/realtimefeeds/realtimefeed.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"realtimefeed.d.ts","sourceRoot":"","sources":["../../src/realtimefeeds/realtimefeed.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import dbg from 'debug';
|
|
2
1
|
import WebSocket, { createWebSocketStream } from 'ws';
|
|
3
2
|
import { PassThrough } from 'stream';
|
|
4
3
|
import { setTimeout as sleep } from 'node:timers/promises';
|
|
4
|
+
import { createDebug } from "../debug.js";
|
|
5
5
|
import { getProxyAgent, ONE_SEC_IN_MS, optimizeFilters } from "../handy.js";
|
|
6
6
|
import { createManagedRealTimeIterator, mergeRealTime } from "../realtimeiterator.js";
|
|
7
7
|
let connectionCounter = 1;
|
|
@@ -28,7 +28,7 @@ export class RealTimeFeedBase {
|
|
|
28
28
|
this._timeoutIntervalMS = _timeoutIntervalMS;
|
|
29
29
|
this._onError = _onError;
|
|
30
30
|
this._filters = optimizeFilters(filters);
|
|
31
|
-
this.debug =
|
|
31
|
+
this.debug = createDebug(`tardis-dev:realtime:${_exchange}`);
|
|
32
32
|
this._wsClientOptions = {
|
|
33
33
|
headers: {
|
|
34
34
|
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36'
|
|
@@ -361,7 +361,7 @@ export class PoolingClientBase {
|
|
|
361
361
|
constructor(exchange, _poolingIntervalSeconds, onError) {
|
|
362
362
|
this._poolingIntervalSeconds = _poolingIntervalSeconds;
|
|
363
363
|
this.onError = onError;
|
|
364
|
-
this.debug =
|
|
364
|
+
this.debug = createDebug(`tardis-dev:pooling-client:${exchange}`);
|
|
365
365
|
}
|
|
366
366
|
[Symbol.asyncIterator]() {
|
|
367
367
|
return createManagedRealTimeIterator(this._stream(), () => this._close());
|