tardis-machine 17.0.0 → 18.0.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 (792) hide show
  1. package/bin/tardis-machine.js +68 -57
  2. package/dist/tardismachine.d.ts.map +1 -1
  3. package/dist/tardismachine.js +13 -6
  4. package/dist/tardismachine.js.map +1 -1
  5. package/node_modules/debug/LICENSE +20 -0
  6. package/node_modules/debug/README.md +481 -0
  7. package/node_modules/debug/package.json +64 -0
  8. package/node_modules/debug/src/browser.js +272 -0
  9. package/node_modules/debug/src/common.js +292 -0
  10. package/node_modules/debug/src/index.js +10 -0
  11. package/node_modules/debug/src/node.js +263 -0
  12. package/node_modules/follow-redirects/LICENSE +18 -0
  13. package/node_modules/follow-redirects/README.md +157 -0
  14. package/node_modules/follow-redirects/debug.js +15 -0
  15. package/node_modules/follow-redirects/http.js +1 -0
  16. package/node_modules/follow-redirects/https.js +1 -0
  17. package/node_modules/follow-redirects/index.js +709 -0
  18. package/node_modules/follow-redirects/package.json +58 -0
  19. package/node_modules/long/LICENSE +202 -0
  20. package/node_modules/long/README.md +286 -0
  21. package/node_modules/long/index.d.ts +2 -0
  22. package/node_modules/long/index.js +1581 -0
  23. package/node_modules/long/package.json +58 -0
  24. package/node_modules/long/types.d.ts +474 -0
  25. package/node_modules/long/umd/index.d.ts +3 -0
  26. package/node_modules/long/umd/index.js +1622 -0
  27. package/node_modules/long/umd/package.json +3 -0
  28. package/node_modules/long/umd/types.d.ts +474 -0
  29. package/node_modules/ms/index.js +162 -0
  30. package/node_modules/ms/license.md +21 -0
  31. package/node_modules/ms/package.json +38 -0
  32. package/node_modules/ms/readme.md +59 -0
  33. package/node_modules/protobufjs/LICENSE +39 -0
  34. package/node_modules/protobufjs/README.md +440 -0
  35. package/node_modules/protobufjs/dist/light/protobuf.js +9276 -0
  36. package/node_modules/protobufjs/dist/light/protobuf.js.map +1 -0
  37. package/node_modules/protobufjs/dist/light/protobuf.min.js +8 -0
  38. package/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -0
  39. package/node_modules/protobufjs/dist/minimal/protobuf.js +3556 -0
  40. package/node_modules/protobufjs/dist/minimal/protobuf.js.map +1 -0
  41. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +8 -0
  42. package/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +1 -0
  43. package/node_modules/protobufjs/dist/protobuf.js +11233 -0
  44. package/node_modules/protobufjs/dist/protobuf.js.map +1 -0
  45. package/node_modules/protobufjs/dist/protobuf.min.js +8 -0
  46. package/node_modules/protobufjs/dist/protobuf.min.js.map +1 -0
  47. package/node_modules/protobufjs/ext/README.md +70 -0
  48. package/node_modules/protobufjs/ext/debug/README.md +4 -0
  49. package/node_modules/protobufjs/ext/debug/index.js +71 -0
  50. package/node_modules/protobufjs/ext/descriptor/README.md +5 -0
  51. package/node_modules/protobufjs/ext/descriptor/index.d.ts +2 -0
  52. package/node_modules/protobufjs/ext/descriptor/index.js +2 -0
  53. package/node_modules/protobufjs/ext/descriptor.d.ts +87 -0
  54. package/node_modules/protobufjs/ext/descriptor.generated.d.ts +417 -0
  55. package/node_modules/protobufjs/ext/descriptor.js +1356 -0
  56. package/node_modules/protobufjs/ext/protojson.LICENSE +201 -0
  57. package/node_modules/protobufjs/ext/protojson.d.ts +20 -0
  58. package/node_modules/protobufjs/ext/protojson.generated.d.ts +49 -0
  59. package/node_modules/protobufjs/ext/protojson.js +951 -0
  60. package/node_modules/protobufjs/ext/textformat.d.ts +19 -0
  61. package/node_modules/protobufjs/ext/textformat.generated.d.ts +33 -0
  62. package/node_modules/protobufjs/ext/textformat.js +1276 -0
  63. package/node_modules/protobufjs/google/LICENSE +27 -0
  64. package/node_modules/protobufjs/google/README.md +1 -0
  65. package/node_modules/protobufjs/google/api/annotations.json +85 -0
  66. package/node_modules/protobufjs/google/api/annotations.proto +11 -0
  67. package/node_modules/protobufjs/google/api/http.json +87 -0
  68. package/node_modules/protobufjs/google/api/http.proto +31 -0
  69. package/node_modules/protobufjs/google/protobuf/api.json +124 -0
  70. package/node_modules/protobufjs/google/protobuf/api.proto +34 -0
  71. package/node_modules/protobufjs/google/protobuf/compiler/plugin.json +126 -0
  72. package/node_modules/protobufjs/google/protobuf/compiler/plugin.proto +47 -0
  73. package/node_modules/protobufjs/google/protobuf/descriptor.json +1465 -0
  74. package/node_modules/protobufjs/google/protobuf/descriptor.proto +527 -0
  75. package/node_modules/protobufjs/google/protobuf/source_context.json +21 -0
  76. package/node_modules/protobufjs/google/protobuf/source_context.proto +7 -0
  77. package/node_modules/protobufjs/google/protobuf/type.json +209 -0
  78. package/node_modules/protobufjs/google/protobuf/type.proto +89 -0
  79. package/node_modules/protobufjs/index.d.ts +3203 -0
  80. package/node_modules/protobufjs/index.js +4 -0
  81. package/node_modules/protobufjs/light.d.ts +2 -0
  82. package/node_modules/protobufjs/light.js +4 -0
  83. package/node_modules/protobufjs/minimal.d.ts +2 -0
  84. package/node_modules/protobufjs/minimal.js +4 -0
  85. package/node_modules/protobufjs/package.json +93 -0
  86. package/node_modules/protobufjs/src/common.js +405 -0
  87. package/node_modules/protobufjs/src/converter.js +352 -0
  88. package/node_modules/protobufjs/src/decoder.js +279 -0
  89. package/node_modules/protobufjs/src/encoder.js +123 -0
  90. package/node_modules/protobufjs/src/enum.js +239 -0
  91. package/node_modules/protobufjs/src/field.js +505 -0
  92. package/node_modules/protobufjs/src/index-light.js +104 -0
  93. package/node_modules/protobufjs/src/index-minimal.js +35 -0
  94. package/node_modules/protobufjs/src/index.js +12 -0
  95. package/node_modules/protobufjs/src/mapfield.js +144 -0
  96. package/node_modules/protobufjs/src/message.js +137 -0
  97. package/node_modules/protobufjs/src/method.js +183 -0
  98. package/node_modules/protobufjs/src/namespace.js +574 -0
  99. package/node_modules/protobufjs/src/object.js +392 -0
  100. package/node_modules/protobufjs/src/oneof.js +233 -0
  101. package/node_modules/protobufjs/src/parse.js +1111 -0
  102. package/node_modules/protobufjs/src/reader.js +788 -0
  103. package/node_modules/protobufjs/src/reader_buffer.js +77 -0
  104. package/node_modules/protobufjs/src/root.js +424 -0
  105. package/node_modules/protobufjs/src/roots.js +18 -0
  106. package/node_modules/protobufjs/src/rpc/service.js +155 -0
  107. package/node_modules/protobufjs/src/rpc.js +36 -0
  108. package/node_modules/protobufjs/src/service.js +206 -0
  109. package/node_modules/protobufjs/src/tokenize.js +421 -0
  110. package/node_modules/protobufjs/src/type.js +676 -0
  111. package/node_modules/protobufjs/src/types.js +196 -0
  112. package/node_modules/protobufjs/src/typescript.js +25 -0
  113. package/node_modules/protobufjs/src/util/aspromise.d.ts +13 -0
  114. package/node_modules/protobufjs/src/util/aspromise.js +52 -0
  115. package/node_modules/protobufjs/src/util/base64.d.ts +32 -0
  116. package/node_modules/protobufjs/src/util/base64.js +146 -0
  117. package/node_modules/protobufjs/src/util/codegen.d.ts +31 -0
  118. package/node_modules/protobufjs/src/util/codegen.js +118 -0
  119. package/node_modules/protobufjs/src/util/eventemitter.d.ts +45 -0
  120. package/node_modules/protobufjs/src/util/eventemitter.js +86 -0
  121. package/node_modules/protobufjs/src/util/fetch.d.ts +56 -0
  122. package/node_modules/protobufjs/src/util/fetch.js +112 -0
  123. package/node_modules/protobufjs/src/util/float.d.ts +83 -0
  124. package/node_modules/protobufjs/src/util/float.js +335 -0
  125. package/node_modules/protobufjs/src/util/fs.js +11 -0
  126. package/node_modules/protobufjs/src/util/longbits.js +204 -0
  127. package/node_modules/protobufjs/src/util/minimal.js +511 -0
  128. package/node_modules/protobufjs/src/util/path.d.ts +22 -0
  129. package/node_modules/protobufjs/src/util/path.js +100 -0
  130. package/node_modules/protobufjs/src/util/patterns.js +7 -0
  131. package/node_modules/protobufjs/src/util/pool.d.ts +32 -0
  132. package/node_modules/protobufjs/src/util/pool.js +48 -0
  133. package/node_modules/protobufjs/src/util/utf8.d.ts +24 -0
  134. package/node_modules/protobufjs/src/util/utf8.js +190 -0
  135. package/node_modules/protobufjs/src/util.js +264 -0
  136. package/node_modules/protobufjs/src/verifier.js +185 -0
  137. package/node_modules/protobufjs/src/wrappers.js +106 -0
  138. package/node_modules/protobufjs/src/writer.js +700 -0
  139. package/node_modules/protobufjs/src/writer_buffer.js +100 -0
  140. package/node_modules/protobufjs/tsconfig.json +6 -0
  141. package/node_modules/tardis-dev/LICENSE +373 -0
  142. package/node_modules/tardis-dev/README.md +275 -0
  143. package/node_modules/tardis-dev/dist/apikeyaccessinfo.d.ts +11 -0
  144. package/node_modules/tardis-dev/dist/apikeyaccessinfo.d.ts.map +1 -0
  145. package/node_modules/tardis-dev/dist/apikeyaccessinfo.js +13 -0
  146. package/node_modules/tardis-dev/dist/apikeyaccessinfo.js.map +1 -0
  147. package/node_modules/tardis-dev/dist/binarysplit.d.ts +8 -0
  148. package/node_modules/tardis-dev/dist/binarysplit.d.ts.map +1 -0
  149. package/node_modules/tardis-dev/dist/binarysplit.js +41 -0
  150. package/node_modules/tardis-dev/dist/binarysplit.js.map +1 -0
  151. package/node_modules/tardis-dev/dist/boundedqueue.d.ts +19 -0
  152. package/node_modules/tardis-dev/dist/boundedqueue.d.ts.map +1 -0
  153. package/node_modules/tardis-dev/dist/boundedqueue.js +96 -0
  154. package/node_modules/tardis-dev/dist/boundedqueue.js.map +1 -0
  155. package/node_modules/tardis-dev/dist/clearcache.d.ts +4 -0
  156. package/node_modules/tardis-dev/dist/clearcache.d.ts.map +1 -0
  157. package/node_modules/tardis-dev/dist/clearcache.js +48 -0
  158. package/node_modules/tardis-dev/dist/clearcache.js.map +1 -0
  159. package/node_modules/tardis-dev/dist/combine.d.ts +14 -0
  160. package/node_modules/tardis-dev/dist/combine.d.ts.map +1 -0
  161. package/node_modules/tardis-dev/dist/combine.js +97 -0
  162. package/node_modules/tardis-dev/dist/combine.js.map +1 -0
  163. package/node_modules/tardis-dev/dist/computable/booksnapshot.d.ts +14 -0
  164. package/node_modules/tardis-dev/dist/computable/booksnapshot.d.ts.map +1 -0
  165. package/node_modules/tardis-dev/dist/computable/booksnapshot.js +248 -0
  166. package/node_modules/tardis-dev/dist/computable/booksnapshot.js.map +1 -0
  167. package/node_modules/tardis-dev/dist/computable/computable.d.ts +8 -0
  168. package/node_modules/tardis-dev/dist/computable/computable.d.ts.map +1 -0
  169. package/node_modules/tardis-dev/dist/computable/computable.js +72 -0
  170. package/node_modules/tardis-dev/dist/computable/computable.js.map +1 -0
  171. package/node_modules/tardis-dev/dist/computable/context.d.ts +4 -0
  172. package/node_modules/tardis-dev/dist/computable/context.d.ts.map +1 -0
  173. package/node_modules/tardis-dev/dist/computable/context.js +9 -0
  174. package/node_modules/tardis-dev/dist/computable/context.js.map +1 -0
  175. package/node_modules/tardis-dev/dist/computable/index.d.ts +4 -0
  176. package/node_modules/tardis-dev/dist/computable/index.d.ts.map +1 -0
  177. package/node_modules/tardis-dev/dist/computable/index.js +4 -0
  178. package/node_modules/tardis-dev/dist/computable/index.js.map +1 -0
  179. package/node_modules/tardis-dev/dist/computable/tradebar.d.ts +11 -0
  180. package/node_modules/tardis-dev/dist/computable/tradebar.d.ts.map +1 -0
  181. package/node_modules/tardis-dev/dist/computable/tradebar.js +132 -0
  182. package/node_modules/tardis-dev/dist/computable/tradebar.js.map +1 -0
  183. package/node_modules/tardis-dev/dist/consts.d.ts +66 -0
  184. package/node_modules/tardis-dev/dist/consts.d.ts.map +1 -0
  185. package/node_modules/tardis-dev/dist/consts.js +573 -0
  186. package/node_modules/tardis-dev/dist/consts.js.map +1 -0
  187. package/node_modules/tardis-dev/dist/debug.d.ts +3 -0
  188. package/node_modules/tardis-dev/dist/debug.d.ts.map +1 -0
  189. package/node_modules/tardis-dev/dist/debug.js +3 -0
  190. package/node_modules/tardis-dev/dist/debug.js.map +1 -0
  191. package/node_modules/tardis-dev/dist/downloaddatasets.d.ts +25 -0
  192. package/node_modules/tardis-dev/dist/downloaddatasets.d.ts.map +1 -0
  193. package/node_modules/tardis-dev/dist/downloaddatasets.js +118 -0
  194. package/node_modules/tardis-dev/dist/downloaddatasets.js.map +1 -0
  195. package/node_modules/tardis-dev/dist/exchangedetails.d.ts +91 -0
  196. package/node_modules/tardis-dev/dist/exchangedetails.d.ts.map +1 -0
  197. package/node_modules/tardis-dev/dist/exchangedetails.js +8 -0
  198. package/node_modules/tardis-dev/dist/exchangedetails.js.map +1 -0
  199. package/node_modules/tardis-dev/dist/filter.d.ts +8 -0
  200. package/node_modules/tardis-dev/dist/filter.d.ts.map +1 -0
  201. package/node_modules/tardis-dev/dist/filter.js +51 -0
  202. package/node_modules/tardis-dev/dist/filter.js.map +1 -0
  203. package/node_modules/tardis-dev/dist/foreachconcurrent.d.ts +2 -0
  204. package/node_modules/tardis-dev/dist/foreachconcurrent.d.ts.map +1 -0
  205. package/node_modules/tardis-dev/dist/foreachconcurrent.js +28 -0
  206. package/node_modules/tardis-dev/dist/foreachconcurrent.js.map +1 -0
  207. package/node_modules/tardis-dev/dist/handy.d.ts +102 -0
  208. package/node_modules/tardis-dev/dist/handy.d.ts.map +1 -0
  209. package/node_modules/tardis-dev/dist/handy.js +706 -0
  210. package/node_modules/tardis-dev/dist/handy.js.map +1 -0
  211. package/node_modules/tardis-dev/dist/index.d.ts +17 -0
  212. package/node_modules/tardis-dev/dist/index.d.ts.map +1 -0
  213. package/node_modules/tardis-dev/dist/index.js +17 -0
  214. package/node_modules/tardis-dev/dist/index.js.map +1 -0
  215. package/node_modules/tardis-dev/dist/instrumentinfo.d.ts +105 -0
  216. package/node_modules/tardis-dev/dist/instrumentinfo.d.ts.map +1 -0
  217. package/node_modules/tardis-dev/dist/instrumentinfo.js +59 -0
  218. package/node_modules/tardis-dev/dist/instrumentinfo.js.map +1 -0
  219. package/node_modules/tardis-dev/dist/mappers/ascendex.d.ts +10 -0
  220. package/node_modules/tardis-dev/dist/mappers/ascendex.d.ts.map +1 -0
  221. package/node_modules/tardis-dev/dist/mappers/ascendex.js +146 -0
  222. package/node_modules/tardis-dev/dist/mappers/ascendex.js.map +1 -0
  223. package/node_modules/tardis-dev/dist/mappers/binance.d.ts +32 -0
  224. package/node_modules/tardis-dev/dist/mappers/binance.d.ts.map +1 -0
  225. package/node_modules/tardis-dev/dist/mappers/binance.js +420 -0
  226. package/node_modules/tardis-dev/dist/mappers/binance.js.map +1 -0
  227. package/node_modules/tardis-dev/dist/mappers/binancedex.d.ts +9 -0
  228. package/node_modules/tardis-dev/dist/mappers/binancedex.d.ts.map +1 -0
  229. package/node_modules/tardis-dev/dist/mappers/binancedex.js +120 -0
  230. package/node_modules/tardis-dev/dist/mappers/binancedex.js.map +1 -0
  231. package/node_modules/tardis-dev/dist/mappers/binanceeuropeanoptions.d.ts +10 -0
  232. package/node_modules/tardis-dev/dist/mappers/binanceeuropeanoptions.d.ts.map +1 -0
  233. package/node_modules/tardis-dev/dist/mappers/binanceeuropeanoptions.js +389 -0
  234. package/node_modules/tardis-dev/dist/mappers/binanceeuropeanoptions.js.map +1 -0
  235. package/node_modules/tardis-dev/dist/mappers/bitfinex.d.ts +16 -0
  236. package/node_modules/tardis-dev/dist/mappers/bitfinex.d.ts.map +1 -0
  237. package/node_modules/tardis-dev/dist/mappers/bitfinex.js +352 -0
  238. package/node_modules/tardis-dev/dist/mappers/bitfinex.js.map +1 -0
  239. package/node_modules/tardis-dev/dist/mappers/bitflyer.d.ts +9 -0
  240. package/node_modules/tardis-dev/dist/mappers/bitflyer.d.ts.map +1 -0
  241. package/node_modules/tardis-dev/dist/mappers/bitflyer.js +121 -0
  242. package/node_modules/tardis-dev/dist/mappers/bitflyer.js.map +1 -0
  243. package/node_modules/tardis-dev/dist/mappers/bitget.d.ts +16 -0
  244. package/node_modules/tardis-dev/dist/mappers/bitget.d.ts.map +1 -0
  245. package/node_modules/tardis-dev/dist/mappers/bitget.js +335 -0
  246. package/node_modules/tardis-dev/dist/mappers/bitget.js.map +1 -0
  247. package/node_modules/tardis-dev/dist/mappers/bitmex.d.ts +11 -0
  248. package/node_modules/tardis-dev/dist/mappers/bitmex.d.ts.map +1 -0
  249. package/node_modules/tardis-dev/dist/mappers/bitmex.js +248 -0
  250. package/node_modules/tardis-dev/dist/mappers/bitmex.js.map +1 -0
  251. package/node_modules/tardis-dev/dist/mappers/bitnomial.d.ts +8 -0
  252. package/node_modules/tardis-dev/dist/mappers/bitnomial.d.ts.map +1 -0
  253. package/node_modules/tardis-dev/dist/mappers/bitnomial.js +91 -0
  254. package/node_modules/tardis-dev/dist/mappers/bitnomial.js.map +1 -0
  255. package/node_modules/tardis-dev/dist/mappers/bitstamp.d.ts +8 -0
  256. package/node_modules/tardis-dev/dist/mappers/bitstamp.d.ts.map +1 -0
  257. package/node_modules/tardis-dev/dist/mappers/bitstamp.js +151 -0
  258. package/node_modules/tardis-dev/dist/mappers/bitstamp.js.map +1 -0
  259. package/node_modules/tardis-dev/dist/mappers/blockchaincom.d.ts +8 -0
  260. package/node_modules/tardis-dev/dist/mappers/blockchaincom.d.ts.map +1 -0
  261. package/node_modules/tardis-dev/dist/mappers/blockchaincom.js +65 -0
  262. package/node_modules/tardis-dev/dist/mappers/blockchaincom.js.map +1 -0
  263. package/node_modules/tardis-dev/dist/mappers/bullish.d.ts +11 -0
  264. package/node_modules/tardis-dev/dist/mappers/bullish.d.ts.map +1 -0
  265. package/node_modules/tardis-dev/dist/mappers/bullish.js +234 -0
  266. package/node_modules/tardis-dev/dist/mappers/bullish.js.map +1 -0
  267. package/node_modules/tardis-dev/dist/mappers/bybit.d.ts +66 -0
  268. package/node_modules/tardis-dev/dist/mappers/bybit.d.ts.map +1 -0
  269. package/node_modules/tardis-dev/dist/mappers/bybit.js +601 -0
  270. package/node_modules/tardis-dev/dist/mappers/bybit.js.map +1 -0
  271. package/node_modules/tardis-dev/dist/mappers/bybitspot.d.ts +96 -0
  272. package/node_modules/tardis-dev/dist/mappers/bybitspot.d.ts.map +1 -0
  273. package/node_modules/tardis-dev/dist/mappers/bybitspot.js +99 -0
  274. package/node_modules/tardis-dev/dist/mappers/bybitspot.js.map +1 -0
  275. package/node_modules/tardis-dev/dist/mappers/coinbase.d.ts +9 -0
  276. package/node_modules/tardis-dev/dist/mappers/coinbase.d.ts.map +1 -0
  277. package/node_modules/tardis-dev/dist/mappers/coinbase.js +176 -0
  278. package/node_modules/tardis-dev/dist/mappers/coinbase.js.map +1 -0
  279. package/node_modules/tardis-dev/dist/mappers/coinbaseinternational.d.ts +10 -0
  280. package/node_modules/tardis-dev/dist/mappers/coinbaseinternational.d.ts.map +1 -0
  281. package/node_modules/tardis-dev/dist/mappers/coinbaseinternational.js +210 -0
  282. package/node_modules/tardis-dev/dist/mappers/coinbaseinternational.js.map +1 -0
  283. package/node_modules/tardis-dev/dist/mappers/coinflex.d.ts +9 -0
  284. package/node_modules/tardis-dev/dist/mappers/coinflex.d.ts.map +1 -0
  285. package/node_modules/tardis-dev/dist/mappers/coinflex.js +111 -0
  286. package/node_modules/tardis-dev/dist/mappers/coinflex.js.map +1 -0
  287. package/node_modules/tardis-dev/dist/mappers/cryptocom.d.ts +25 -0
  288. package/node_modules/tardis-dev/dist/mappers/cryptocom.d.ts.map +1 -0
  289. package/node_modules/tardis-dev/dist/mappers/cryptocom.js +219 -0
  290. package/node_modules/tardis-dev/dist/mappers/cryptocom.js.map +1 -0
  291. package/node_modules/tardis-dev/dist/mappers/cryptofacilities.d.ts +11 -0
  292. package/node_modules/tardis-dev/dist/mappers/cryptofacilities.d.ts.map +1 -0
  293. package/node_modules/tardis-dev/dist/mappers/cryptofacilities.js +199 -0
  294. package/node_modules/tardis-dev/dist/mappers/cryptofacilities.js.map +1 -0
  295. package/node_modules/tardis-dev/dist/mappers/delta.d.ts +10 -0
  296. package/node_modules/tardis-dev/dist/mappers/delta.d.ts.map +1 -0
  297. package/node_modules/tardis-dev/dist/mappers/delta.js +205 -0
  298. package/node_modules/tardis-dev/dist/mappers/delta.js.map +1 -0
  299. package/node_modules/tardis-dev/dist/mappers/deribit.d.ts +12 -0
  300. package/node_modules/tardis-dev/dist/mappers/deribit.d.ts.map +1 -0
  301. package/node_modules/tardis-dev/dist/mappers/deribit.js +278 -0
  302. package/node_modules/tardis-dev/dist/mappers/deribit.js.map +1 -0
  303. package/node_modules/tardis-dev/dist/mappers/dydx.d.ts +9 -0
  304. package/node_modules/tardis-dev/dist/mappers/dydx.d.ts.map +1 -0
  305. package/node_modules/tardis-dev/dist/mappers/dydx.js +188 -0
  306. package/node_modules/tardis-dev/dist/mappers/dydx.js.map +1 -0
  307. package/node_modules/tardis-dev/dist/mappers/dydxv4.d.ts +10 -0
  308. package/node_modules/tardis-dev/dist/mappers/dydxv4.d.ts.map +1 -0
  309. package/node_modules/tardis-dev/dist/mappers/dydxv4.js +189 -0
  310. package/node_modules/tardis-dev/dist/mappers/dydxv4.js.map +1 -0
  311. package/node_modules/tardis-dev/dist/mappers/ftx.d.ts +16 -0
  312. package/node_modules/tardis-dev/dist/mappers/ftx.d.ts.map +1 -0
  313. package/node_modules/tardis-dev/dist/mappers/ftx.js +222 -0
  314. package/node_modules/tardis-dev/dist/mappers/ftx.js.map +1 -0
  315. package/node_modules/tardis-dev/dist/mappers/gateio.d.ts +9 -0
  316. package/node_modules/tardis-dev/dist/mappers/gateio.d.ts.map +1 -0
  317. package/node_modules/tardis-dev/dist/mappers/gateio.js +370 -0
  318. package/node_modules/tardis-dev/dist/mappers/gateio.js.map +1 -0
  319. package/node_modules/tardis-dev/dist/mappers/gateiofutures.d.ts +10 -0
  320. package/node_modules/tardis-dev/dist/mappers/gateiofutures.d.ts.map +1 -0
  321. package/node_modules/tardis-dev/dist/mappers/gateiofutures.js +183 -0
  322. package/node_modules/tardis-dev/dist/mappers/gateiofutures.js.map +1 -0
  323. package/node_modules/tardis-dev/dist/mappers/gemini.d.ts +9 -0
  324. package/node_modules/tardis-dev/dist/mappers/gemini.d.ts.map +1 -0
  325. package/node_modules/tardis-dev/dist/mappers/gemini.js +145 -0
  326. package/node_modules/tardis-dev/dist/mappers/gemini.js.map +1 -0
  327. package/node_modules/tardis-dev/dist/mappers/hitbtc.d.ts +8 -0
  328. package/node_modules/tardis-dev/dist/mappers/hitbtc.d.ts.map +1 -0
  329. package/node_modules/tardis-dev/dist/mappers/hitbtc.js +76 -0
  330. package/node_modules/tardis-dev/dist/mappers/hitbtc.js.map +1 -0
  331. package/node_modules/tardis-dev/dist/mappers/huobi.d.ts +125 -0
  332. package/node_modules/tardis-dev/dist/mappers/huobi.d.ts.map +1 -0
  333. package/node_modules/tardis-dev/dist/mappers/huobi.js +529 -0
  334. package/node_modules/tardis-dev/dist/mappers/huobi.js.map +1 -0
  335. package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts +10 -0
  336. package/node_modules/tardis-dev/dist/mappers/hyperliquid.d.ts.map +1 -0
  337. package/node_modules/tardis-dev/dist/mappers/hyperliquid.js +161 -0
  338. package/node_modules/tardis-dev/dist/mappers/hyperliquid.js.map +1 -0
  339. package/node_modules/tardis-dev/dist/mappers/index.d.ts +788 -0
  340. package/node_modules/tardis-dev/dist/mappers/index.d.ts.map +1 -0
  341. package/node_modules/tardis-dev/dist/mappers/index.js +66 -0
  342. package/node_modules/tardis-dev/dist/mappers/index.js.map +1 -0
  343. package/node_modules/tardis-dev/dist/mappers/kraken.d.ts +9 -0
  344. package/node_modules/tardis-dev/dist/mappers/kraken.d.ts.map +1 -0
  345. package/node_modules/tardis-dev/dist/mappers/kraken.js +238 -0
  346. package/node_modules/tardis-dev/dist/mappers/kraken.js.map +1 -0
  347. package/node_modules/tardis-dev/dist/mappers/kucoin.d.ts +9 -0
  348. package/node_modules/tardis-dev/dist/mappers/kucoin.d.ts.map +1 -0
  349. package/node_modules/tardis-dev/dist/mappers/kucoin.js +237 -0
  350. package/node_modules/tardis-dev/dist/mappers/kucoin.js.map +1 -0
  351. package/node_modules/tardis-dev/dist/mappers/kucoinfutures.d.ts +10 -0
  352. package/node_modules/tardis-dev/dist/mappers/kucoinfutures.d.ts.map +1 -0
  353. package/node_modules/tardis-dev/dist/mappers/kucoinfutures.js +302 -0
  354. package/node_modules/tardis-dev/dist/mappers/kucoinfutures.js.map +1 -0
  355. package/node_modules/tardis-dev/dist/mappers/lighter.d.ts +11 -0
  356. package/node_modules/tardis-dev/dist/mappers/lighter.d.ts.map +1 -0
  357. package/node_modules/tardis-dev/dist/mappers/lighter.js +186 -0
  358. package/node_modules/tardis-dev/dist/mappers/lighter.js.map +1 -0
  359. package/node_modules/tardis-dev/dist/mappers/mapper.d.ts +32 -0
  360. package/node_modules/tardis-dev/dist/mappers/mapper.d.ts.map +1 -0
  361. package/node_modules/tardis-dev/dist/mappers/mapper.js +120 -0
  362. package/node_modules/tardis-dev/dist/mappers/mapper.js.map +1 -0
  363. package/node_modules/tardis-dev/dist/mappers/mexc.d.ts +122 -0
  364. package/node_modules/tardis-dev/dist/mappers/mexc.d.ts.map +1 -0
  365. package/node_modules/tardis-dev/dist/mappers/mexc.js +205 -0
  366. package/node_modules/tardis-dev/dist/mappers/mexc.js.map +1 -0
  367. package/node_modules/tardis-dev/dist/mappers/mexcfutures.d.ts +137 -0
  368. package/node_modules/tardis-dev/dist/mappers/mexcfutures.d.ts.map +1 -0
  369. package/node_modules/tardis-dev/dist/mappers/mexcfutures.js +225 -0
  370. package/node_modules/tardis-dev/dist/mappers/mexcfutures.js.map +1 -0
  371. package/node_modules/tardis-dev/dist/mappers/okex.d.ts +39 -0
  372. package/node_modules/tardis-dev/dist/mappers/okex.d.ts.map +1 -0
  373. package/node_modules/tardis-dev/dist/mappers/okex.js +913 -0
  374. package/node_modules/tardis-dev/dist/mappers/okex.js.map +1 -0
  375. package/node_modules/tardis-dev/dist/mappers/okexspreads.d.ts +69 -0
  376. package/node_modules/tardis-dev/dist/mappers/okexspreads.d.ts.map +1 -0
  377. package/node_modules/tardis-dev/dist/mappers/okexspreads.js +116 -0
  378. package/node_modules/tardis-dev/dist/mappers/okexspreads.js.map +1 -0
  379. package/node_modules/tardis-dev/dist/mappers/phemex.d.ts +9 -0
  380. package/node_modules/tardis-dev/dist/mappers/phemex.d.ts.map +1 -0
  381. package/node_modules/tardis-dev/dist/mappers/phemex.js +406 -0
  382. package/node_modules/tardis-dev/dist/mappers/phemex.js.map +1 -0
  383. package/node_modules/tardis-dev/dist/mappers/poloniex.d.ts +8 -0
  384. package/node_modules/tardis-dev/dist/mappers/poloniex.d.ts.map +1 -0
  385. package/node_modules/tardis-dev/dist/mappers/poloniex.js +207 -0
  386. package/node_modules/tardis-dev/dist/mappers/poloniex.js.map +1 -0
  387. package/node_modules/tardis-dev/dist/mappers/polymarket.d.ts +59 -0
  388. package/node_modules/tardis-dev/dist/mappers/polymarket.d.ts.map +1 -0
  389. package/node_modules/tardis-dev/dist/mappers/polymarket.js +121 -0
  390. package/node_modules/tardis-dev/dist/mappers/polymarket.js.map +1 -0
  391. package/node_modules/tardis-dev/dist/mappers/registry.d.ts +41 -0
  392. package/node_modules/tardis-dev/dist/mappers/registry.d.ts.map +1 -0
  393. package/node_modules/tardis-dev/dist/mappers/registry.js +111 -0
  394. package/node_modules/tardis-dev/dist/mappers/registry.js.map +1 -0
  395. package/node_modules/tardis-dev/dist/mappers/serum.d.ts +19 -0
  396. package/node_modules/tardis-dev/dist/mappers/serum.d.ts.map +1 -0
  397. package/node_modules/tardis-dev/dist/mappers/serum.js +127 -0
  398. package/node_modules/tardis-dev/dist/mappers/serum.js.map +1 -0
  399. package/node_modules/tardis-dev/dist/mappers/upbit.d.ts +8 -0
  400. package/node_modules/tardis-dev/dist/mappers/upbit.d.ts.map +1 -0
  401. package/node_modules/tardis-dev/dist/mappers/upbit.js +78 -0
  402. package/node_modules/tardis-dev/dist/mappers/upbit.js.map +1 -0
  403. package/node_modules/tardis-dev/dist/mappers/woox.d.ts +10 -0
  404. package/node_modules/tardis-dev/dist/mappers/woox.d.ts.map +1 -0
  405. package/node_modules/tardis-dev/dist/mappers/woox.js +488 -0
  406. package/node_modules/tardis-dev/dist/mappers/woox.js.map +1 -0
  407. package/node_modules/tardis-dev/dist/okexsymbols.d.ts +3 -0
  408. package/node_modules/tardis-dev/dist/okexsymbols.d.ts.map +1 -0
  409. package/node_modules/tardis-dev/dist/okexsymbols.js +10 -0
  410. package/node_modules/tardis-dev/dist/okexsymbols.js.map +1 -0
  411. package/node_modules/tardis-dev/dist/options.d.ts +13 -0
  412. package/node_modules/tardis-dev/dist/options.d.ts.map +1 -0
  413. package/node_modules/tardis-dev/dist/options.js +21 -0
  414. package/node_modules/tardis-dev/dist/options.js.map +1 -0
  415. package/node_modules/tardis-dev/dist/orderbook.d.ts +23 -0
  416. package/node_modules/tardis-dev/dist/orderbook.d.ts.map +1 -0
  417. package/node_modules/tardis-dev/dist/orderbook.js +133 -0
  418. package/node_modules/tardis-dev/dist/orderbook.js.map +1 -0
  419. package/node_modules/tardis-dev/dist/priceleveltree.d.ts +27 -0
  420. package/node_modules/tardis-dev/dist/priceleveltree.d.ts.map +1 -0
  421. package/node_modules/tardis-dev/dist/priceleveltree.js +165 -0
  422. package/node_modules/tardis-dev/dist/priceleveltree.js.map +1 -0
  423. package/node_modules/tardis-dev/dist/realtimefeeds/binance.d.ts +99 -0
  424. package/node_modules/tardis-dev/dist/realtimefeeds/binance.d.ts.map +1 -0
  425. package/node_modules/tardis-dev/dist/realtimefeeds/binance.js +370 -0
  426. package/node_modules/tardis-dev/dist/realtimefeeds/binance.js.map +1 -0
  427. package/node_modules/tardis-dev/dist/realtimefeeds/binancedex.d.ts +14 -0
  428. package/node_modules/tardis-dev/dist/realtimefeeds/binancedex.d.ts.map +1 -0
  429. package/node_modules/tardis-dev/dist/realtimefeeds/binancedex.js +53 -0
  430. package/node_modules/tardis-dev/dist/realtimefeeds/binancedex.js.map +1 -0
  431. package/node_modules/tardis-dev/dist/realtimefeeds/binanceeuropeanoptions.d.ts +14 -0
  432. package/node_modules/tardis-dev/dist/realtimefeeds/binanceeuropeanoptions.d.ts.map +1 -0
  433. package/node_modules/tardis-dev/dist/realtimefeeds/binanceeuropeanoptions.js +95 -0
  434. package/node_modules/tardis-dev/dist/realtimefeeds/binanceeuropeanoptions.js.map +1 -0
  435. package/node_modules/tardis-dev/dist/realtimefeeds/bitfinex.d.ts +36 -0
  436. package/node_modules/tardis-dev/dist/realtimefeeds/bitfinex.d.ts.map +1 -0
  437. package/node_modules/tardis-dev/dist/realtimefeeds/bitfinex.js +73 -0
  438. package/node_modules/tardis-dev/dist/realtimefeeds/bitfinex.js.map +1 -0
  439. package/node_modules/tardis-dev/dist/realtimefeeds/bitflyer.d.ts +9 -0
  440. package/node_modules/tardis-dev/dist/realtimefeeds/bitflyer.d.ts.map +1 -0
  441. package/node_modules/tardis-dev/dist/realtimefeeds/bitflyer.js +36 -0
  442. package/node_modules/tardis-dev/dist/realtimefeeds/bitflyer.js.map +1 -0
  443. package/node_modules/tardis-dev/dist/realtimefeeds/bitget.d.ts +19 -0
  444. package/node_modules/tardis-dev/dist/realtimefeeds/bitget.d.ts.map +1 -0
  445. package/node_modules/tardis-dev/dist/realtimefeeds/bitget.js +61 -0
  446. package/node_modules/tardis-dev/dist/realtimefeeds/bitget.js.map +1 -0
  447. package/node_modules/tardis-dev/dist/realtimefeeds/bitmex.d.ts +11 -0
  448. package/node_modules/tardis-dev/dist/realtimefeeds/bitmex.d.ts.map +1 -0
  449. package/node_modules/tardis-dev/dist/realtimefeeds/bitmex.js +37 -0
  450. package/node_modules/tardis-dev/dist/realtimefeeds/bitmex.js.map +1 -0
  451. package/node_modules/tardis-dev/dist/realtimefeeds/bitnomial.d.ts +11 -0
  452. package/node_modules/tardis-dev/dist/realtimefeeds/bitnomial.d.ts.map +1 -0
  453. package/node_modules/tardis-dev/dist/realtimefeeds/bitnomial.js +52 -0
  454. package/node_modules/tardis-dev/dist/realtimefeeds/bitnomial.js.map +1 -0
  455. package/node_modules/tardis-dev/dist/realtimefeeds/bitstamp.d.ts +10 -0
  456. package/node_modules/tardis-dev/dist/realtimefeeds/bitstamp.d.ts.map +1 -0
  457. package/node_modules/tardis-dev/dist/realtimefeeds/bitstamp.js +57 -0
  458. package/node_modules/tardis-dev/dist/realtimefeeds/bitstamp.js.map +1 -0
  459. package/node_modules/tardis-dev/dist/realtimefeeds/blockchaincom.d.ts +11 -0
  460. package/node_modules/tardis-dev/dist/realtimefeeds/blockchaincom.d.ts.map +1 -0
  461. package/node_modules/tardis-dev/dist/realtimefeeds/blockchaincom.js +37 -0
  462. package/node_modules/tardis-dev/dist/realtimefeeds/blockchaincom.js.map +1 -0
  463. package/node_modules/tardis-dev/dist/realtimefeeds/bullish.d.ts +18 -0
  464. package/node_modules/tardis-dev/dist/realtimefeeds/bullish.d.ts.map +1 -0
  465. package/node_modules/tardis-dev/dist/realtimefeeds/bullish.js +113 -0
  466. package/node_modules/tardis-dev/dist/realtimefeeds/bullish.js.map +1 -0
  467. package/node_modules/tardis-dev/dist/realtimefeeds/bybit.d.ts +28 -0
  468. package/node_modules/tardis-dev/dist/realtimefeeds/bybit.d.ts.map +1 -0
  469. package/node_modules/tardis-dev/dist/realtimefeeds/bybit.js +95 -0
  470. package/node_modules/tardis-dev/dist/realtimefeeds/bybit.js.map +1 -0
  471. package/node_modules/tardis-dev/dist/realtimefeeds/coinbase.d.ts +16 -0
  472. package/node_modules/tardis-dev/dist/realtimefeeds/coinbase.d.ts.map +1 -0
  473. package/node_modules/tardis-dev/dist/realtimefeeds/coinbase.js +98 -0
  474. package/node_modules/tardis-dev/dist/realtimefeeds/coinbase.js.map +1 -0
  475. package/node_modules/tardis-dev/dist/realtimefeeds/coinbaseinternational.d.ts +10 -0
  476. package/node_modules/tardis-dev/dist/realtimefeeds/coinbaseinternational.d.ts.map +1 -0
  477. package/node_modules/tardis-dev/dist/realtimefeeds/coinbaseinternational.js +47 -0
  478. package/node_modules/tardis-dev/dist/realtimefeeds/coinbaseinternational.js.map +1 -0
  479. package/node_modules/tardis-dev/dist/realtimefeeds/coinflex.d.ts +8 -0
  480. package/node_modules/tardis-dev/dist/realtimefeeds/coinflex.d.ts.map +1 -0
  481. package/node_modules/tardis-dev/dist/realtimefeeds/coinflex.js +23 -0
  482. package/node_modules/tardis-dev/dist/realtimefeeds/coinflex.js.map +1 -0
  483. package/node_modules/tardis-dev/dist/realtimefeeds/cryptocom.d.ts +10 -0
  484. package/node_modules/tardis-dev/dist/realtimefeeds/cryptocom.d.ts.map +1 -0
  485. package/node_modules/tardis-dev/dist/realtimefeeds/cryptocom.js +43 -0
  486. package/node_modules/tardis-dev/dist/realtimefeeds/cryptocom.js.map +1 -0
  487. package/node_modules/tardis-dev/dist/realtimefeeds/cryptofacilities.d.ts +9 -0
  488. package/node_modules/tardis-dev/dist/realtimefeeds/cryptofacilities.d.ts.map +1 -0
  489. package/node_modules/tardis-dev/dist/realtimefeeds/cryptofacilities.js +25 -0
  490. package/node_modules/tardis-dev/dist/realtimefeeds/cryptofacilities.js.map +1 -0
  491. package/node_modules/tardis-dev/dist/realtimefeeds/delta.d.ts +18 -0
  492. package/node_modules/tardis-dev/dist/realtimefeeds/delta.d.ts.map +1 -0
  493. package/node_modules/tardis-dev/dist/realtimefeeds/delta.js +29 -0
  494. package/node_modules/tardis-dev/dist/realtimefeeds/delta.js.map +1 -0
  495. package/node_modules/tardis-dev/dist/realtimefeeds/deribit.d.ts +13 -0
  496. package/node_modules/tardis-dev/dist/realtimefeeds/deribit.d.ts.map +1 -0
  497. package/node_modules/tardis-dev/dist/realtimefeeds/deribit.js +81 -0
  498. package/node_modules/tardis-dev/dist/realtimefeeds/deribit.js.map +1 -0
  499. package/node_modules/tardis-dev/dist/realtimefeeds/dydx.d.ts +8 -0
  500. package/node_modules/tardis-dev/dist/realtimefeeds/dydx.d.ts.map +1 -0
  501. package/node_modules/tardis-dev/dist/realtimefeeds/dydx.js +34 -0
  502. package/node_modules/tardis-dev/dist/realtimefeeds/dydx.js.map +1 -0
  503. package/node_modules/tardis-dev/dist/realtimefeeds/dydx_v4.d.ts +8 -0
  504. package/node_modules/tardis-dev/dist/realtimefeeds/dydx_v4.d.ts.map +1 -0
  505. package/node_modules/tardis-dev/dist/realtimefeeds/dydx_v4.js +33 -0
  506. package/node_modules/tardis-dev/dist/realtimefeeds/dydx_v4.js.map +1 -0
  507. package/node_modules/tardis-dev/dist/realtimefeeds/ftx.d.ts +33 -0
  508. package/node_modules/tardis-dev/dist/realtimefeeds/ftx.d.ts.map +1 -0
  509. package/node_modules/tardis-dev/dist/realtimefeeds/ftx.js +107 -0
  510. package/node_modules/tardis-dev/dist/realtimefeeds/ftx.js.map +1 -0
  511. package/node_modules/tardis-dev/dist/realtimefeeds/gateio.d.ts +9 -0
  512. package/node_modules/tardis-dev/dist/realtimefeeds/gateio.d.ts.map +1 -0
  513. package/node_modules/tardis-dev/dist/realtimefeeds/gateio.js +41 -0
  514. package/node_modules/tardis-dev/dist/realtimefeeds/gateio.js.map +1 -0
  515. package/node_modules/tardis-dev/dist/realtimefeeds/gateiofutures.d.ts +17 -0
  516. package/node_modules/tardis-dev/dist/realtimefeeds/gateiofutures.d.ts.map +1 -0
  517. package/node_modules/tardis-dev/dist/realtimefeeds/gateiofutures.js +68 -0
  518. package/node_modules/tardis-dev/dist/realtimefeeds/gateiofutures.js.map +1 -0
  519. package/node_modules/tardis-dev/dist/realtimefeeds/gemini.d.ts +9 -0
  520. package/node_modules/tardis-dev/dist/realtimefeeds/gemini.d.ts.map +1 -0
  521. package/node_modules/tardis-dev/dist/realtimefeeds/gemini.js +32 -0
  522. package/node_modules/tardis-dev/dist/realtimefeeds/gemini.js.map +1 -0
  523. package/node_modules/tardis-dev/dist/realtimefeeds/hitbtc.d.ts +12 -0
  524. package/node_modules/tardis-dev/dist/realtimefeeds/hitbtc.d.ts.map +1 -0
  525. package/node_modules/tardis-dev/dist/realtimefeeds/hitbtc.js +55 -0
  526. package/node_modules/tardis-dev/dist/realtimefeeds/hitbtc.js.map +1 -0
  527. package/node_modules/tardis-dev/dist/realtimefeeds/huobi.d.ts +108 -0
  528. package/node_modules/tardis-dev/dist/realtimefeeds/huobi.d.ts.map +1 -0
  529. package/node_modules/tardis-dev/dist/realtimefeeds/huobi.js +339 -0
  530. package/node_modules/tardis-dev/dist/realtimefeeds/huobi.js.map +1 -0
  531. package/node_modules/tardis-dev/dist/realtimefeeds/hyperliquid.d.ts +10 -0
  532. package/node_modules/tardis-dev/dist/realtimefeeds/hyperliquid.d.ts.map +1 -0
  533. package/node_modules/tardis-dev/dist/realtimefeeds/hyperliquid.js +34 -0
  534. package/node_modules/tardis-dev/dist/realtimefeeds/hyperliquid.js.map +1 -0
  535. package/node_modules/tardis-dev/dist/realtimefeeds/index.d.ts +6 -0
  536. package/node_modules/tardis-dev/dist/realtimefeeds/index.d.ts.map +1 -0
  537. package/node_modules/tardis-dev/dist/realtimefeeds/index.js +119 -0
  538. package/node_modules/tardis-dev/dist/realtimefeeds/index.js.map +1 -0
  539. package/node_modules/tardis-dev/dist/realtimefeeds/kraken.d.ts +10 -0
  540. package/node_modules/tardis-dev/dist/realtimefeeds/kraken.d.ts.map +1 -0
  541. package/node_modules/tardis-dev/dist/realtimefeeds/kraken.js +41 -0
  542. package/node_modules/tardis-dev/dist/realtimefeeds/kraken.js.map +1 -0
  543. package/node_modules/tardis-dev/dist/realtimefeeds/kucoin.d.ts +13 -0
  544. package/node_modules/tardis-dev/dist/realtimefeeds/kucoin.d.ts.map +1 -0
  545. package/node_modules/tardis-dev/dist/realtimefeeds/kucoin.js +66 -0
  546. package/node_modules/tardis-dev/dist/realtimefeeds/kucoin.js.map +1 -0
  547. package/node_modules/tardis-dev/dist/realtimefeeds/kucoinfutures.d.ts +25 -0
  548. package/node_modules/tardis-dev/dist/realtimefeeds/kucoinfutures.d.ts.map +1 -0
  549. package/node_modules/tardis-dev/dist/realtimefeeds/kucoinfutures.js +110 -0
  550. package/node_modules/tardis-dev/dist/realtimefeeds/kucoinfutures.js.map +1 -0
  551. package/node_modules/tardis-dev/dist/realtimefeeds/lighter.d.ts +8 -0
  552. package/node_modules/tardis-dev/dist/realtimefeeds/lighter.d.ts.map +1 -0
  553. package/node_modules/tardis-dev/dist/realtimefeeds/lighter.js +25 -0
  554. package/node_modules/tardis-dev/dist/realtimefeeds/lighter.js.map +1 -0
  555. package/node_modules/tardis-dev/dist/realtimefeeds/mango.d.ts +5 -0
  556. package/node_modules/tardis-dev/dist/realtimefeeds/mango.d.ts.map +1 -0
  557. package/node_modules/tardis-dev/dist/realtimefeeds/mango.js +5 -0
  558. package/node_modules/tardis-dev/dist/realtimefeeds/mango.js.map +1 -0
  559. package/node_modules/tardis-dev/dist/realtimefeeds/mexc.d.ts +35 -0
  560. package/node_modules/tardis-dev/dist/realtimefeeds/mexc.d.ts.map +1 -0
  561. package/node_modules/tardis-dev/dist/realtimefeeds/mexc.js +261 -0
  562. package/node_modules/tardis-dev/dist/realtimefeeds/mexc.js.map +1 -0
  563. package/node_modules/tardis-dev/dist/realtimefeeds/mexcfutures.d.ts +25 -0
  564. package/node_modules/tardis-dev/dist/realtimefeeds/mexcfutures.d.ts.map +1 -0
  565. package/node_modules/tardis-dev/dist/realtimefeeds/mexcfutures.js +203 -0
  566. package/node_modules/tardis-dev/dist/realtimefeeds/mexcfutures.js.map +1 -0
  567. package/node_modules/tardis-dev/dist/realtimefeeds/okex.d.ts +31 -0
  568. package/node_modules/tardis-dev/dist/realtimefeeds/okex.d.ts.map +1 -0
  569. package/node_modules/tardis-dev/dist/realtimefeeds/okex.js +147 -0
  570. package/node_modules/tardis-dev/dist/realtimefeeds/okex.js.map +1 -0
  571. package/node_modules/tardis-dev/dist/realtimefeeds/okexspreads.d.ts +11 -0
  572. package/node_modules/tardis-dev/dist/realtimefeeds/okexspreads.d.ts.map +1 -0
  573. package/node_modules/tardis-dev/dist/realtimefeeds/okexspreads.js +53 -0
  574. package/node_modules/tardis-dev/dist/realtimefeeds/okexspreads.js.map +1 -0
  575. package/node_modules/tardis-dev/dist/realtimefeeds/phemex.d.ts +14 -0
  576. package/node_modules/tardis-dev/dist/realtimefeeds/phemex.d.ts.map +1 -0
  577. package/node_modules/tardis-dev/dist/realtimefeeds/phemex.js +46 -0
  578. package/node_modules/tardis-dev/dist/realtimefeeds/phemex.js.map +1 -0
  579. package/node_modules/tardis-dev/dist/realtimefeeds/poloniex.d.ts +14 -0
  580. package/node_modules/tardis-dev/dist/realtimefeeds/poloniex.d.ts.map +1 -0
  581. package/node_modules/tardis-dev/dist/realtimefeeds/poloniex.js +28 -0
  582. package/node_modules/tardis-dev/dist/realtimefeeds/poloniex.js.map +1 -0
  583. package/node_modules/tardis-dev/dist/realtimefeeds/polymarket.d.ts +26 -0
  584. package/node_modules/tardis-dev/dist/realtimefeeds/polymarket.d.ts.map +1 -0
  585. package/node_modules/tardis-dev/dist/realtimefeeds/polymarket.js +92 -0
  586. package/node_modules/tardis-dev/dist/realtimefeeds/polymarket.js.map +1 -0
  587. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.d.ts +75 -0
  588. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.d.ts.map +1 -0
  589. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js +423 -0
  590. package/node_modules/tardis-dev/dist/realtimefeeds/realtimefeed.js.map +1 -0
  591. package/node_modules/tardis-dev/dist/realtimefeeds/serum.d.ts +14 -0
  592. package/node_modules/tardis-dev/dist/realtimefeeds/serum.d.ts.map +1 -0
  593. package/node_modules/tardis-dev/dist/realtimefeeds/serum.js +58 -0
  594. package/node_modules/tardis-dev/dist/realtimefeeds/serum.js.map +1 -0
  595. package/node_modules/tardis-dev/dist/realtimefeeds/staratlas.d.ts +5 -0
  596. package/node_modules/tardis-dev/dist/realtimefeeds/staratlas.d.ts.map +1 -0
  597. package/node_modules/tardis-dev/dist/realtimefeeds/staratlas.js +5 -0
  598. package/node_modules/tardis-dev/dist/realtimefeeds/staratlas.js.map +1 -0
  599. package/node_modules/tardis-dev/dist/realtimefeeds/upbit.d.ts +8 -0
  600. package/node_modules/tardis-dev/dist/realtimefeeds/upbit.d.ts.map +1 -0
  601. package/node_modules/tardis-dev/dist/realtimefeeds/upbit.js +29 -0
  602. package/node_modules/tardis-dev/dist/realtimefeeds/upbit.js.map +1 -0
  603. package/node_modules/tardis-dev/dist/realtimefeeds/woox.d.ts +12 -0
  604. package/node_modules/tardis-dev/dist/realtimefeeds/woox.d.ts.map +1 -0
  605. package/node_modules/tardis-dev/dist/realtimefeeds/woox.js +77 -0
  606. package/node_modules/tardis-dev/dist/realtimefeeds/woox.js.map +1 -0
  607. package/node_modules/tardis-dev/dist/realtimeiterator.d.ts +10 -0
  608. package/node_modules/tardis-dev/dist/realtimeiterator.d.ts.map +1 -0
  609. package/node_modules/tardis-dev/dist/realtimeiterator.js +106 -0
  610. package/node_modules/tardis-dev/dist/realtimeiterator.js.map +1 -0
  611. package/node_modules/tardis-dev/dist/replay.d.ts +42 -0
  612. package/node_modules/tardis-dev/dist/replay.d.ts.map +1 -0
  613. package/node_modules/tardis-dev/dist/replay.js +417 -0
  614. package/node_modules/tardis-dev/dist/replay.js.map +1 -0
  615. package/node_modules/tardis-dev/dist/stream.d.ts +28 -0
  616. package/node_modules/tardis-dev/dist/stream.d.ts.map +1 -0
  617. package/node_modules/tardis-dev/dist/stream.js +112 -0
  618. package/node_modules/tardis-dev/dist/stream.js.map +1 -0
  619. package/node_modules/tardis-dev/dist/types.d.ts +154 -0
  620. package/node_modules/tardis-dev/dist/types.d.ts.map +1 -0
  621. package/node_modules/tardis-dev/dist/types.js +2 -0
  622. package/node_modules/tardis-dev/dist/types.js.map +1 -0
  623. package/node_modules/tardis-dev/dist/worker.d.ts +24 -0
  624. package/node_modules/tardis-dev/dist/worker.d.ts.map +1 -0
  625. package/node_modules/tardis-dev/dist/worker.js +143 -0
  626. package/node_modules/tardis-dev/dist/worker.js.map +1 -0
  627. package/node_modules/tardis-dev/example.js +171 -0
  628. package/node_modules/tardis-dev/package.json +85 -0
  629. package/node_modules/tardis-dev/src/apikeyaccessinfo.ts +25 -0
  630. package/node_modules/tardis-dev/src/binarysplit.ts +50 -0
  631. package/node_modules/tardis-dev/src/boundedqueue.ts +118 -0
  632. package/node_modules/tardis-dev/src/clearcache.ts +62 -0
  633. package/node_modules/tardis-dev/src/combine.ts +134 -0
  634. package/node_modules/tardis-dev/src/computable/booksnapshot.ts +327 -0
  635. package/node_modules/tardis-dev/src/computable/computable.ts +104 -0
  636. package/node_modules/tardis-dev/src/computable/context.ts +12 -0
  637. package/node_modules/tardis-dev/src/computable/index.ts +3 -0
  638. package/node_modules/tardis-dev/src/computable/tradebar.ts +173 -0
  639. package/node_modules/tardis-dev/src/consts.ts +623 -0
  640. package/node_modules/tardis-dev/src/debug.ts +3 -0
  641. package/node_modules/tardis-dev/src/downloaddatasets.ts +193 -0
  642. package/node_modules/tardis-dev/src/exchangedetails.ts +120 -0
  643. package/node_modules/tardis-dev/src/filter.ts +69 -0
  644. package/node_modules/tardis-dev/src/foreachconcurrent.ts +29 -0
  645. package/node_modules/tardis-dev/src/handy.ts +880 -0
  646. package/node_modules/tardis-dev/src/index.ts +16 -0
  647. package/node_modules/tardis-dev/src/instrumentinfo.ts +197 -0
  648. package/node_modules/tardis-dev/src/mappers/ascendex.ts +210 -0
  649. package/node_modules/tardis-dev/src/mappers/binance.ts +598 -0
  650. package/node_modules/tardis-dev/src/mappers/binancedex.ts +180 -0
  651. package/node_modules/tardis-dev/src/mappers/binanceeuropeanoptions.ts +624 -0
  652. package/node_modules/tardis-dev/src/mappers/bitfinex.ts +472 -0
  653. package/node_modules/tardis-dev/src/mappers/bitflyer.ts +199 -0
  654. package/node_modules/tardis-dev/src/mappers/bitget.ts +490 -0
  655. package/node_modules/tardis-dev/src/mappers/bitmex.ts +359 -0
  656. package/node_modules/tardis-dev/src/mappers/bitnomial.ts +134 -0
  657. package/node_modules/tardis-dev/src/mappers/bitstamp.ts +219 -0
  658. package/node_modules/tardis-dev/src/mappers/blockchaincom.ts +106 -0
  659. package/node_modules/tardis-dev/src/mappers/bullish.ts +392 -0
  660. package/node_modules/tardis-dev/src/mappers/bybit.ts +947 -0
  661. package/node_modules/tardis-dev/src/mappers/bybitspot.ts +129 -0
  662. package/node_modules/tardis-dev/src/mappers/coinbase.ts +259 -0
  663. package/node_modules/tardis-dev/src/mappers/coinbaseinternational.ts +338 -0
  664. package/node_modules/tardis-dev/src/mappers/coinflex.ts +175 -0
  665. package/node_modules/tardis-dev/src/mappers/cryptocom.ts +504 -0
  666. package/node_modules/tardis-dev/src/mappers/cryptofacilities.ts +319 -0
  667. package/node_modules/tardis-dev/src/mappers/delta.ts +315 -0
  668. package/node_modules/tardis-dev/src/mappers/deribit.ts +406 -0
  669. package/node_modules/tardis-dev/src/mappers/dydx.ts +330 -0
  670. package/node_modules/tardis-dev/src/mappers/dydxv4.ts +349 -0
  671. package/node_modules/tardis-dev/src/mappers/ftx.ts +307 -0
  672. package/node_modules/tardis-dev/src/mappers/gateio.ts +543 -0
  673. package/node_modules/tardis-dev/src/mappers/gateiofutures.ts +290 -0
  674. package/node_modules/tardis-dev/src/mappers/gemini.ts +225 -0
  675. package/node_modules/tardis-dev/src/mappers/hitbtc.ts +124 -0
  676. package/node_modules/tardis-dev/src/mappers/huobi.ts +815 -0
  677. package/node_modules/tardis-dev/src/mappers/hyperliquid.ts +248 -0
  678. package/node_modules/tardis-dev/src/mappers/index.ts +140 -0
  679. package/node_modules/tardis-dev/src/mappers/kraken.ts +382 -0
  680. package/node_modules/tardis-dev/src/mappers/kucoin.ts +353 -0
  681. package/node_modules/tardis-dev/src/mappers/kucoinfutures.ts +508 -0
  682. package/node_modules/tardis-dev/src/mappers/lighter.ts +363 -0
  683. package/node_modules/tardis-dev/src/mappers/mapper.ts +163 -0
  684. package/node_modules/tardis-dev/src/mappers/mexc.ts +324 -0
  685. package/node_modules/tardis-dev/src/mappers/mexcfutures.ts +352 -0
  686. package/node_modules/tardis-dev/src/mappers/okex.ts +1362 -0
  687. package/node_modules/tardis-dev/src/mappers/okexspreads.ts +172 -0
  688. package/node_modules/tardis-dev/src/mappers/phemex.ts +562 -0
  689. package/node_modules/tardis-dev/src/mappers/poloniex.ts +304 -0
  690. package/node_modules/tardis-dev/src/mappers/polymarket.ts +204 -0
  691. package/node_modules/tardis-dev/src/mappers/registry.ts +203 -0
  692. package/node_modules/tardis-dev/src/mappers/serum.ts +196 -0
  693. package/node_modules/tardis-dev/src/mappers/upbit.ts +117 -0
  694. package/node_modules/tardis-dev/src/mappers/woox.ts +700 -0
  695. package/node_modules/tardis-dev/src/okexsymbols.ts +10 -0
  696. package/node_modules/tardis-dev/src/options.ts +36 -0
  697. package/node_modules/tardis-dev/src/orderbook.ts +169 -0
  698. package/node_modules/tardis-dev/src/priceleveltree.ts +188 -0
  699. package/node_modules/tardis-dev/src/realtimefeeds/binance.ts +577 -0
  700. package/node_modules/tardis-dev/src/realtimefeeds/binancedex.ts +64 -0
  701. package/node_modules/tardis-dev/src/realtimefeeds/binanceeuropeanoptions.ts +132 -0
  702. package/node_modules/tardis-dev/src/realtimefeeds/bitfinex.ts +83 -0
  703. package/node_modules/tardis-dev/src/realtimefeeds/bitflyer.ts +41 -0
  704. package/node_modules/tardis-dev/src/realtimefeeds/bitget.ts +76 -0
  705. package/node_modules/tardis-dev/src/realtimefeeds/bitmex.ts +42 -0
  706. package/node_modules/tardis-dev/src/realtimefeeds/bitnomial.ts +60 -0
  707. package/node_modules/tardis-dev/src/realtimefeeds/bitstamp.ts +70 -0
  708. package/node_modules/tardis-dev/src/realtimefeeds/blockchaincom.ts +44 -0
  709. package/node_modules/tardis-dev/src/realtimefeeds/bullish.ts +140 -0
  710. package/node_modules/tardis-dev/src/realtimefeeds/bybit.ts +123 -0
  711. package/node_modules/tardis-dev/src/realtimefeeds/coinbase.ts +112 -0
  712. package/node_modules/tardis-dev/src/realtimefeeds/coinbaseinternational.ts +60 -0
  713. package/node_modules/tardis-dev/src/realtimefeeds/coinflex.ts +29 -0
  714. package/node_modules/tardis-dev/src/realtimefeeds/cryptocom.ts +49 -0
  715. package/node_modules/tardis-dev/src/realtimefeeds/cryptofacilities.ts +30 -0
  716. package/node_modules/tardis-dev/src/realtimefeeds/delta.ts +35 -0
  717. package/node_modules/tardis-dev/src/realtimefeeds/deribit.ts +95 -0
  718. package/node_modules/tardis-dev/src/realtimefeeds/dydx.ts +40 -0
  719. package/node_modules/tardis-dev/src/realtimefeeds/dydx_v4.ts +39 -0
  720. package/node_modules/tardis-dev/src/realtimefeeds/ftx.ts +137 -0
  721. package/node_modules/tardis-dev/src/realtimefeeds/gateio.ts +46 -0
  722. package/node_modules/tardis-dev/src/realtimefeeds/gateiofutures.ts +91 -0
  723. package/node_modules/tardis-dev/src/realtimefeeds/gemini.ts +38 -0
  724. package/node_modules/tardis-dev/src/realtimefeeds/hitbtc.ts +65 -0
  725. package/node_modules/tardis-dev/src/realtimefeeds/huobi.ts +435 -0
  726. package/node_modules/tardis-dev/src/realtimefeeds/hyperliquid.ts +41 -0
  727. package/node_modules/tardis-dev/src/realtimefeeds/index.ts +145 -0
  728. package/node_modules/tardis-dev/src/realtimefeeds/kraken.ts +48 -0
  729. package/node_modules/tardis-dev/src/realtimefeeds/kucoin.ts +80 -0
  730. package/node_modules/tardis-dev/src/realtimefeeds/kucoinfutures.ts +139 -0
  731. package/node_modules/tardis-dev/src/realtimefeeds/lighter.ts +31 -0
  732. package/node_modules/tardis-dev/src/realtimefeeds/mango.ts +5 -0
  733. package/node_modules/tardis-dev/src/realtimefeeds/mexc.ts +327 -0
  734. package/node_modules/tardis-dev/src/realtimefeeds/mexcfutures.ts +269 -0
  735. package/node_modules/tardis-dev/src/realtimefeeds/okex.ts +189 -0
  736. package/node_modules/tardis-dev/src/realtimefeeds/okexspreads.ts +64 -0
  737. package/node_modules/tardis-dev/src/realtimefeeds/phemex.ts +52 -0
  738. package/node_modules/tardis-dev/src/realtimefeeds/poloniex.ts +34 -0
  739. package/node_modules/tardis-dev/src/realtimefeeds/polymarket.ts +112 -0
  740. package/node_modules/tardis-dev/src/realtimefeeds/realtimefeed.ts +561 -0
  741. package/node_modules/tardis-dev/src/realtimefeeds/serum.ts +67 -0
  742. package/node_modules/tardis-dev/src/realtimefeeds/staratlas.ts +5 -0
  743. package/node_modules/tardis-dev/src/realtimefeeds/upbit.ts +35 -0
  744. package/node_modules/tardis-dev/src/realtimefeeds/woox.ts +110 -0
  745. package/node_modules/tardis-dev/src/realtimeiterator.ts +124 -0
  746. package/node_modules/tardis-dev/src/replay.ts +616 -0
  747. package/node_modules/tardis-dev/src/stream.ts +186 -0
  748. package/node_modules/tardis-dev/src/types.ts +178 -0
  749. package/node_modules/tardis-dev/src/worker.ts +221 -0
  750. package/node_modules/uWebSockets.js/ESM_wrapper.mjs +53 -0
  751. package/node_modules/uWebSockets.js/LICENSE +201 -0
  752. package/node_modules/uWebSockets.js/README.md +6 -0
  753. package/node_modules/uWebSockets.js/index.d.ts +468 -0
  754. package/node_modules/uWebSockets.js/package.json +12 -0
  755. package/node_modules/uWebSockets.js/source_commit +1 -0
  756. package/node_modules/uWebSockets.js/uws.js +76 -0
  757. package/node_modules/uWebSockets.js/uws_darwin_arm64_127.node +0 -0
  758. package/node_modules/uWebSockets.js/uws_darwin_arm64_137.node +0 -0
  759. package/node_modules/uWebSockets.js/uws_darwin_arm64_147.node +0 -0
  760. package/node_modules/uWebSockets.js/uws_darwin_x64_127.node +0 -0
  761. package/node_modules/uWebSockets.js/uws_darwin_x64_137.node +0 -0
  762. package/node_modules/uWebSockets.js/uws_darwin_x64_147.node +0 -0
  763. package/node_modules/uWebSockets.js/uws_linux_arm64_127.node +0 -0
  764. package/node_modules/uWebSockets.js/uws_linux_arm64_137.node +0 -0
  765. package/node_modules/uWebSockets.js/uws_linux_arm64_147.node +0 -0
  766. package/node_modules/uWebSockets.js/uws_linux_x64_127.node +0 -0
  767. package/node_modules/uWebSockets.js/uws_linux_x64_137.node +0 -0
  768. package/node_modules/uWebSockets.js/uws_linux_x64_147.node +0 -0
  769. package/node_modules/uWebSockets.js/uws_win32_x64_127.node +0 -0
  770. package/node_modules/uWebSockets.js/uws_win32_x64_137.node +0 -0
  771. package/node_modules/uWebSockets.js/uws_win32_x64_147.node +0 -0
  772. package/node_modules/ws/LICENSE +20 -0
  773. package/node_modules/ws/README.md +548 -0
  774. package/node_modules/ws/browser.js +8 -0
  775. package/node_modules/ws/index.js +22 -0
  776. package/node_modules/ws/lib/buffer-util.js +131 -0
  777. package/node_modules/ws/lib/constants.js +19 -0
  778. package/node_modules/ws/lib/event-target.js +292 -0
  779. package/node_modules/ws/lib/extension.js +203 -0
  780. package/node_modules/ws/lib/limiter.js +55 -0
  781. package/node_modules/ws/lib/permessage-deflate.js +528 -0
  782. package/node_modules/ws/lib/receiver.js +743 -0
  783. package/node_modules/ws/lib/sender.js +607 -0
  784. package/node_modules/ws/lib/stream.js +161 -0
  785. package/node_modules/ws/lib/subprotocol.js +62 -0
  786. package/node_modules/ws/lib/validation.js +152 -0
  787. package/node_modules/ws/lib/websocket-server.js +562 -0
  788. package/node_modules/ws/lib/websocket.js +1407 -0
  789. package/node_modules/ws/package.json +74 -0
  790. package/node_modules/ws/wrapper.mjs +21 -0
  791. package/package.json +8 -20
  792. package/src/tardismachine.ts +15 -7
@@ -0,0 +1,1111 @@
1
+ "use strict";
2
+ module.exports = parse;
3
+
4
+ parse.filename = null;
5
+ parse.defaults = { keepCase: false };
6
+
7
+ var tokenize = require("./tokenize"),
8
+ Root = require("./root"),
9
+ Type = require("./type"),
10
+ Field = require("./field"),
11
+ MapField = require("./mapfield"),
12
+ OneOf = require("./oneof"),
13
+ Enum = require("./enum"),
14
+ Service = require("./service"),
15
+ Method = require("./method"),
16
+ ReflectionObject = require("./object"),
17
+ types = require("./types"),
18
+ util = require("./util");
19
+
20
+ var base10Re = /^[1-9][0-9]*$/,
21
+ base10NegRe = /^-?[1-9][0-9]*$/,
22
+ base16Re = /^0[x][0-9a-fA-F]+$/,
23
+ base16NegRe = /^-?0[x][0-9a-fA-F]+$/,
24
+ base8Re = /^0[0-7]+$/,
25
+ base8NegRe = /^-?0[0-7]+$/,
26
+ numberRe = util.patterns.numberRe,
27
+ nameRe = /^[a-zA-Z_][a-zA-Z_0-9]*$/,
28
+ typeRefRe = util.patterns.typeRefRe;
29
+
30
+ var maxFieldId = 536870911, // 2^29 - 1
31
+ maxEnumId = 2147483647; // 2^31 - 1
32
+
33
+ /**
34
+ * Result object returned from {@link parse}.
35
+ * @interface IParserResult
36
+ * @property {string|undefined} package Package name, if declared
37
+ * @property {string[]|undefined} imports Imports, if any
38
+ * @property {string[]|undefined} weakImports Weak imports, if any
39
+ * @property {Root} root Populated root instance
40
+ */
41
+
42
+ /**
43
+ * Options modifying the behavior of {@link parse}.
44
+ * @interface IParseOptions
45
+ * @property {boolean} [keepCase=false] Keeps field casing instead of converting to camel case
46
+ * @property {boolean} [alternateCommentMode=false] Recognize double-slash comments in addition to doc-block comments.
47
+ * @property {boolean} [preferTrailingComment=false] Use trailing comment when both leading comment and trailing comment exist.
48
+ */
49
+
50
+ /**
51
+ * Options modifying the behavior of JSON serialization.
52
+ * @interface IToJSONOptions
53
+ * @property {boolean} [keepComments=false] Serializes comments.
54
+ */
55
+
56
+ /**
57
+ * Parses the given .proto source and returns an object with the parsed contents.
58
+ * @param {string} source Source contents
59
+ * @param {Root} root Root to populate
60
+ * @param {IParseOptions} [options] Parse options. Defaults to {@link parse.defaults} when omitted.
61
+ * @returns {IParserResult} Parser result
62
+ * @property {string} filename=null Currently processing file name for error reporting, if known
63
+ * @property {IParseOptions} defaults Default {@link IParseOptions}
64
+ */
65
+ function parse(source, root, options) {
66
+ /* eslint-disable callback-return */
67
+ if (!(root instanceof Root)) {
68
+ options = root;
69
+ root = new Root();
70
+ }
71
+ if (!options)
72
+ options = parse.defaults;
73
+
74
+ var preferTrailingComment = options.preferTrailingComment || false;
75
+ var tn = tokenize(source, options.alternateCommentMode || false),
76
+ next = tn.next,
77
+ push = tn.push,
78
+ peek = tn.peek,
79
+ skip = tn.skip,
80
+ cmnt = tn.cmnt;
81
+
82
+ var head = true,
83
+ pkg,
84
+ imports,
85
+ weakImports,
86
+ edition = "proto2";
87
+
88
+ var ptr = root;
89
+
90
+ var topLevelObjects = [];
91
+ var topLevelOptions = {};
92
+
93
+ var applyCase = options.keepCase ? function(name) { return name; } : util.camelCase;
94
+
95
+ function resolveFileFeatures() {
96
+ topLevelObjects.forEach(obj => {
97
+ obj._edition = edition;
98
+ Object.keys(topLevelOptions).forEach(opt => {
99
+ if (obj.getOption(opt) !== undefined) return;
100
+ obj.setOption(opt, topLevelOptions[opt], true);
101
+ });
102
+ });
103
+ }
104
+
105
+ /* istanbul ignore next */
106
+ function illegal(token, name, insideTryCatch) {
107
+ var filename = parse.filename;
108
+ if (!insideTryCatch)
109
+ parse.filename = null;
110
+ return Error("illegal " + (name || "token") + " '" + token + "' (" + (filename ? filename + ", " : "") + "line " + tn.line + ")");
111
+ }
112
+
113
+ function readString() {
114
+ var values = [],
115
+ token;
116
+ do {
117
+ /* istanbul ignore if */
118
+ if ((token = next()) !== "\"" && token !== "'")
119
+ throw illegal(token);
120
+
121
+ values.push(next());
122
+ skip(token);
123
+ token = peek();
124
+ } while (token === "\"" || token === "'");
125
+ return values.join("");
126
+ }
127
+
128
+ function readValue(acceptTypeRef) {
129
+ var token = next();
130
+ switch (token) {
131
+ case "'":
132
+ case "\"":
133
+ push(token);
134
+ return readString();
135
+ case "true": case "TRUE":
136
+ return true;
137
+ case "false": case "FALSE":
138
+ return false;
139
+ }
140
+ try {
141
+ return parseNumber(token, /* insideTryCatch */ true);
142
+ } catch (e) {
143
+ /* istanbul ignore else */
144
+ if (acceptTypeRef && typeRefRe.test(token))
145
+ return token;
146
+
147
+ /* istanbul ignore next */
148
+ throw illegal(token, "value");
149
+ }
150
+ }
151
+
152
+ function readRanges(target, acceptStrings, max, acceptNegative) {
153
+ var token, start;
154
+ do {
155
+ if (acceptStrings && ((token = peek()) === "\"" || token === "'")) {
156
+ var str = readString();
157
+ target.push(str);
158
+ if (edition >= 2023) {
159
+ throw illegal(str, "id");
160
+ }
161
+ } else {
162
+ try {
163
+ target.push([ start = parseId(next(), acceptNegative, max), skip("to", true) ? parseId(next(), acceptNegative, max) : start ]);
164
+ } catch (err) {
165
+ if (acceptStrings && typeRefRe.test(token) && edition >= 2023) {
166
+ target.push(token);
167
+ } else {
168
+ throw err;
169
+ }
170
+ }
171
+ }
172
+ } while (skip(",", true));
173
+ var dummy = {options: undefined};
174
+ dummy.setOption = function(name, value) {
175
+ if (this.options === undefined) this.options = {};
176
+ this.options[name] = value;
177
+ };
178
+ ifBlock(
179
+ dummy,
180
+ function parseRange_block(token) {
181
+ /* istanbul ignore else */
182
+ if (token === "option") {
183
+ parseOption(dummy, token); // skip
184
+ skip(";");
185
+ } else
186
+ throw illegal(token);
187
+ },
188
+ function parseRange_line() {
189
+ parseInlineOptions(dummy); // skip
190
+ });
191
+ }
192
+
193
+ function parseNumber(token, insideTryCatch) {
194
+ var sign = 1;
195
+ if (token.charAt(0) === "-") {
196
+ sign = -1;
197
+ token = token.substring(1);
198
+ }
199
+ switch (token) {
200
+ case "inf": case "INF": case "Inf":
201
+ return sign * Infinity;
202
+ case "nan": case "NAN": case "Nan": case "NaN":
203
+ return NaN;
204
+ case "0":
205
+ return 0;
206
+ }
207
+ if (base10Re.test(token))
208
+ return sign * parseInt(token, 10);
209
+ if (base16Re.test(token))
210
+ return sign * parseInt(token, 16);
211
+ if (base8Re.test(token))
212
+ return sign * parseInt(token, 8);
213
+
214
+ /* istanbul ignore else */
215
+ if (numberRe.test(token))
216
+ return sign * parseFloat(token);
217
+
218
+ /* istanbul ignore next */
219
+ throw illegal(token, "number", insideTryCatch);
220
+ }
221
+
222
+ function parseId(token, acceptNegative, max) {
223
+ if (token === null) {
224
+ throw illegal(token, "end of input");
225
+ }
226
+ switch (token) {
227
+ case "max": case "MAX": case "Max":
228
+ return max || maxFieldId;
229
+ case "0":
230
+ return 0;
231
+ }
232
+
233
+ /* istanbul ignore if */
234
+ if (!acceptNegative && token.charAt(0) === "-")
235
+ throw illegal(token, "id");
236
+
237
+ if (base10NegRe.test(token))
238
+ return parseInt(token, 10);
239
+ if (base16NegRe.test(token))
240
+ return parseInt(token, 16);
241
+
242
+ /* istanbul ignore else */
243
+ if (base8NegRe.test(token))
244
+ return parseInt(token, 8);
245
+
246
+ /* istanbul ignore next */
247
+ throw illegal(token, "id");
248
+ }
249
+
250
+ function parsePackage() {
251
+ /* istanbul ignore if */
252
+ if (pkg !== undefined)
253
+ throw illegal("package");
254
+
255
+ pkg = next();
256
+
257
+ /* istanbul ignore if */
258
+ if (pkg === null || !typeRefRe.test(pkg))
259
+ throw illegal(pkg, "name");
260
+
261
+ ptr = ptr.define(pkg);
262
+
263
+ skip(";");
264
+ }
265
+
266
+ function parseImport() {
267
+ var token = peek();
268
+ var whichImports;
269
+ switch (token) {
270
+ case "option":
271
+ if (edition < "2024") {
272
+ throw illegal("option");
273
+ }
274
+ // Import options are only used for resolving options, which we don't
275
+ // do. We can just throw them out.
276
+ next();
277
+ readString();
278
+ skip(";");
279
+ return;
280
+ case "weak":
281
+ whichImports = weakImports || (weakImports = []);
282
+ next();
283
+ break;
284
+ case "public":
285
+ next();
286
+ // eslint-disable-next-line no-fallthrough
287
+ default:
288
+ whichImports = imports || (imports = []);
289
+ break;
290
+ }
291
+ token = readString();
292
+ skip(";");
293
+ whichImports.push(token);
294
+ }
295
+
296
+ function parseSyntax() {
297
+ skip("=");
298
+ edition = readString();
299
+
300
+ /* istanbul ignore if */
301
+ if (edition < 2023)
302
+ throw illegal(edition, "syntax");
303
+
304
+ skip(";");
305
+ }
306
+
307
+ function parseEdition() {
308
+ skip("=");
309
+ edition = readString();
310
+ const supportedEditions = ["2023", "2024"];
311
+
312
+ /* istanbul ignore if */
313
+ if (!supportedEditions.includes(edition))
314
+ throw illegal(edition, "edition");
315
+
316
+ skip(";");
317
+ }
318
+
319
+
320
+ function parseCommon(parent, token, depth) {
321
+ if (depth === undefined)
322
+ depth = 0;
323
+ // depth is checked by dispatched functions
324
+ switch (token) {
325
+
326
+ case "option":
327
+ parseOption(parent, token);
328
+ skip(";");
329
+ return true;
330
+
331
+ case "message":
332
+ parseType(parent, token, depth + 1);
333
+ return true;
334
+
335
+ case "enum":
336
+ parseEnum(parent, token);
337
+ return true;
338
+
339
+ case "export":
340
+ case "local":
341
+ if (edition < "2024") {
342
+ return false;
343
+ }
344
+ token = next();
345
+ if (token === "export" || token === "local") {
346
+ return false;
347
+ }
348
+ if (token !== "message" && token !== "enum") {
349
+ return false;
350
+ }
351
+ /* eslint-disable no-warning-comments */
352
+ // TODO: actually enforce visiblity modifiers like protoc does.
353
+ return parseCommon(parent, token, depth);
354
+
355
+ case "service":
356
+ parseService(parent, token, depth + 1);
357
+ return true;
358
+
359
+ case "extend":
360
+ parseExtension(parent, token, depth);
361
+ return true;
362
+ }
363
+ return false;
364
+ }
365
+
366
+ function ifBlock(obj, fnIf, fnElse) {
367
+ var trailingLine = tn.line;
368
+ if (obj) {
369
+ if(typeof obj.comment !== "string") {
370
+ obj.comment = cmnt(); // try block-type comment
371
+ }
372
+ obj.filename = parse.filename;
373
+ }
374
+ if (skip("{", true)) {
375
+ var token;
376
+ while ((token = next()) !== "}")
377
+ fnIf(token);
378
+ skip(";", true);
379
+ } else {
380
+ if (fnElse)
381
+ fnElse();
382
+ skip(";");
383
+ if (obj && (typeof obj.comment !== "string" || preferTrailingComment))
384
+ obj.comment = cmnt(trailingLine) || obj.comment; // try line-type comment
385
+ }
386
+ }
387
+
388
+ function parseType(parent, token, depth) {
389
+ if (depth === undefined)
390
+ depth = 0;
391
+ if (depth > util.nestingLimit)
392
+ throw Error("max depth exceeded");
393
+
394
+ /* istanbul ignore if */
395
+ if ((token = next()) === null || !nameRe.test(token))
396
+ throw illegal(token, "type name");
397
+
398
+ var type = new Type(token);
399
+ ifBlock(type, function parseType_block(token) {
400
+ if (parseCommon(type, token, depth))
401
+ return;
402
+
403
+ switch (token) {
404
+
405
+ case ";":
406
+ break;
407
+
408
+ case "map":
409
+ parseMapField(type, token);
410
+ break;
411
+
412
+ case "required":
413
+ if (edition !== "proto2")
414
+ throw illegal(token);
415
+ /* eslint-disable no-fallthrough */
416
+ case "repeated":
417
+ parseField(type, token, undefined, depth + 1);
418
+ break;
419
+
420
+ case "optional":
421
+ /* istanbul ignore if */
422
+ if (edition === "proto3") {
423
+ parseField(type, "proto3_optional", undefined, depth + 1);
424
+ } else if (edition !== "proto2") {
425
+ throw illegal(token);
426
+ } else {
427
+ parseField(type, "optional", undefined, depth + 1);
428
+ }
429
+ break;
430
+
431
+ case "oneof":
432
+ parseOneOf(type, token, depth + 1);
433
+ break;
434
+
435
+ case "extensions":
436
+ readRanges(type.extensions || (type.extensions = []));
437
+ break;
438
+
439
+ case "reserved":
440
+ readRanges(type.reserved || (type.reserved = []), true);
441
+ break;
442
+
443
+ default:
444
+ /* istanbul ignore if */
445
+ if (edition === "proto2" || !typeRefRe.test(token)) {
446
+ throw illegal(token);
447
+ }
448
+
449
+ push(token);
450
+ parseField(type, "optional", undefined, depth + 1);
451
+ break;
452
+ }
453
+ });
454
+ parent.add(type);
455
+ if (parent === ptr) {
456
+ topLevelObjects.push(type);
457
+ }
458
+ }
459
+
460
+ function parseField(parent, rule, extend, depth) {
461
+ var type = next();
462
+ if (type === null) {
463
+ throw illegal(type, "end of input");
464
+ }
465
+ if (type === "group") {
466
+ parseGroup(parent, rule, extend, depth);
467
+ return;
468
+ }
469
+ // Type names can consume multiple tokens, in multiple variants:
470
+ // package.subpackage field tokens: "package.subpackage" [TYPE NAME ENDS HERE] "field"
471
+ // package . subpackage field tokens: "package" "." "subpackage" [TYPE NAME ENDS HERE] "field"
472
+ // package. subpackage field tokens: "package." "subpackage" [TYPE NAME ENDS HERE] "field"
473
+ // package .subpackage field tokens: "package" ".subpackage" [TYPE NAME ENDS HERE] "field"
474
+ // Keep reading tokens until we get a type name with no period at the end,
475
+ // and the next token does not start with a period.
476
+ while (type.endsWith(".") || (peek() || "").startsWith(".")) {
477
+ var part = next();
478
+ if (part === null) {
479
+ throw illegal(part, "end of input");
480
+ }
481
+ type += part;
482
+ }
483
+
484
+ /* istanbul ignore if */
485
+ if (!typeRefRe.test(type))
486
+ throw illegal(type, "type");
487
+
488
+ var name = next();
489
+ if (name === null) {
490
+ throw illegal(name, "end of input");
491
+ }
492
+
493
+ /* istanbul ignore if */
494
+
495
+ if (!nameRe.test(name))
496
+ throw illegal(name, "name");
497
+
498
+ var protoName = name;
499
+ name = applyCase(name);
500
+ skip("=");
501
+
502
+ var field = new Field(name, parseId(next()), type, rule === "proto3_optional" ? "optional" : rule, extend);
503
+ if (protoName !== name)
504
+ field.protoName = protoName;
505
+
506
+ ifBlock(field, function parseField_block(token) {
507
+
508
+ /* istanbul ignore else */
509
+ if (token === "option") {
510
+ parseOption(field, token);
511
+ skip(";");
512
+ } else
513
+ throw illegal(token);
514
+
515
+ }, function parseField_line() {
516
+ parseInlineOptions(field);
517
+ });
518
+
519
+ if (rule === "proto3_optional") {
520
+ // for proto3 optional fields, we create a single-member Oneof to mimic "optional" behavior
521
+ var oneof = new OneOf("_" + name);
522
+ field.setOption("proto3_optional", true);
523
+ oneof.add(field);
524
+ parent.add(oneof);
525
+ } else {
526
+ parent.add(field);
527
+ }
528
+ if (parent === ptr) {
529
+ topLevelObjects.push(field);
530
+ }
531
+ }
532
+
533
+ function parseGroup(parent, rule, extend, depth) {
534
+ if (depth === undefined)
535
+ depth = 0;
536
+ if (depth > util.nestingLimit)
537
+ throw Error("max depth exceeded");
538
+ if (edition >= 2023) {
539
+ throw illegal("group");
540
+ }
541
+ var name = next();
542
+
543
+ /* istanbul ignore if */
544
+ if (name === null || !nameRe.test(name))
545
+ throw illegal(name, "name");
546
+
547
+ var fieldName = util.lcFirst(name);
548
+ if (name === fieldName)
549
+ name = util.ucFirst(name);
550
+ skip("=");
551
+ var id = parseId(next());
552
+ var type = new Type(name);
553
+ type.group = true;
554
+ var field = new Field(fieldName, id, name, rule, extend);
555
+ field.filename = parse.filename;
556
+ ifBlock(type, function parseGroup_block(token) {
557
+ switch (token) {
558
+
559
+ case ";":
560
+ break;
561
+
562
+ case "map":
563
+ parseMapField(type);
564
+ break;
565
+
566
+ case "option":
567
+ parseOption(type, token);
568
+ skip(";");
569
+ break;
570
+ case "required":
571
+ case "repeated":
572
+ parseField(type, token, undefined, depth + 1);
573
+ break;
574
+
575
+ case "optional":
576
+ /* istanbul ignore if */
577
+ if (edition === "proto3") {
578
+ parseField(type, "proto3_optional", undefined, depth + 1);
579
+ } else {
580
+ parseField(type, "optional", undefined, depth + 1);
581
+ }
582
+ break;
583
+
584
+ case "message":
585
+ parseType(type, token, depth + 1);
586
+ break;
587
+
588
+ case "enum":
589
+ parseEnum(type, token);
590
+ break;
591
+
592
+ case "reserved":
593
+ readRanges(type.reserved || (type.reserved = []), true);
594
+ break;
595
+
596
+ case "export":
597
+ case "local":
598
+ if (edition < "2024") {
599
+ throw illegal(token);
600
+ }
601
+ token = next();
602
+ switch (token) {
603
+ case "message":
604
+ parseType(type, token, depth + 1);
605
+ break;
606
+ case "enum":
607
+ parseType(type, token, depth + 1);
608
+ break;
609
+ default:
610
+ throw illegal(token);
611
+ }
612
+ break;
613
+
614
+ /* istanbul ignore next */
615
+ default:
616
+ throw illegal(token); // there are no groups with proto3 semantics
617
+ }
618
+ });
619
+ parent.add(type)
620
+ .add(field);
621
+ if (parent === ptr) {
622
+ topLevelObjects.push(type);
623
+ topLevelObjects.push(field);
624
+ }
625
+ }
626
+
627
+ function parseMapField(parent) {
628
+ skip("<");
629
+ var keyType = next();
630
+
631
+ /* istanbul ignore if */
632
+ if (types.mapKey[keyType] === undefined)
633
+ throw illegal(keyType, "type");
634
+
635
+ skip(",");
636
+ var valueType = next();
637
+
638
+ /* istanbul ignore if */
639
+ if (!typeRefRe.test(valueType))
640
+ throw illegal(valueType, "type");
641
+
642
+ skip(">");
643
+ var name = next();
644
+
645
+ /* istanbul ignore if */
646
+ if (name === null || !nameRe.test(name))
647
+ throw illegal(name, "name");
648
+
649
+ skip("=");
650
+ var protoName = name;
651
+ name = applyCase(name);
652
+ var field = new MapField(name, parseId(next()), keyType, valueType);
653
+ if (protoName !== name)
654
+ field.protoName = protoName;
655
+ ifBlock(field, function parseMapField_block(token) {
656
+
657
+ /* istanbul ignore else */
658
+ if (token === "option") {
659
+ parseOption(field, token);
660
+ skip(";");
661
+ } else
662
+ throw illegal(token);
663
+
664
+ }, function parseMapField_line() {
665
+ parseInlineOptions(field);
666
+ });
667
+ parent.add(field);
668
+ }
669
+
670
+ function parseOneOf(parent, token, depth) {
671
+
672
+ /* istanbul ignore if */
673
+ if ((token = next()) === null || !nameRe.test(token))
674
+ throw illegal(token, "name");
675
+
676
+ var oneof = new OneOf(applyCase(token));
677
+ ifBlock(oneof, function parseOneOf_block(token) {
678
+ if (token === "option") {
679
+ parseOption(oneof, token);
680
+ skip(";");
681
+ } else {
682
+ push(token);
683
+ parseField(oneof, "optional", undefined, depth);
684
+ }
685
+ });
686
+ parent.add(oneof);
687
+ }
688
+
689
+ function parseEnum(parent, token) {
690
+
691
+ /* istanbul ignore if */
692
+ if ((token = next()) === null || !nameRe.test(token))
693
+ throw illegal(token, "name");
694
+
695
+ var enm = new Enum(token),
696
+ values = [];
697
+ ifBlock(enm, function parseEnum_block(token) {
698
+ switch(token) {
699
+ case ";":
700
+ break;
701
+
702
+ case "option":
703
+ parseOption(enm, token);
704
+ skip(";");
705
+ break;
706
+
707
+ case "reserved":
708
+ readRanges(enm.reserved || (enm.reserved = []), true, maxEnumId, true);
709
+ if(enm.reserved === undefined) enm.reserved = [];
710
+ break;
711
+
712
+ default:
713
+ values.push(parseEnumValue(token));
714
+ }
715
+ });
716
+ for (var i = 0; i < values.length; ++i)
717
+ enm.add(values[i].name, values[i].id, values[i].comment, values[i].options);
718
+ parent.add(enm);
719
+ if (parent === ptr) {
720
+ topLevelObjects.push(enm);
721
+ }
722
+ }
723
+
724
+ function parseEnumValue(token) {
725
+
726
+ /* istanbul ignore if */
727
+ if (!nameRe.test(token))
728
+ throw illegal(token, "name");
729
+
730
+ skip("=");
731
+ var value = parseId(next(), true),
732
+ dummy = {
733
+ options: undefined
734
+ };
735
+ dummy.getOption = function(name) {
736
+ return this.options[name];
737
+ };
738
+ dummy.setOption = function(name, value) {
739
+ ReflectionObject.prototype.setOption.call(dummy, name, value);
740
+ };
741
+ dummy.setParsedOption = function() {
742
+ return undefined;
743
+ };
744
+ ifBlock(dummy, function parseEnumValue_block(token) {
745
+
746
+ /* istanbul ignore else */
747
+ if (token === "option") {
748
+ parseOption(dummy, token); // skip
749
+ skip(";");
750
+ } else
751
+ throw illegal(token);
752
+
753
+ }, function parseEnumValue_line() {
754
+ parseInlineOptions(dummy); // skip
755
+ });
756
+ return {
757
+ name: token,
758
+ id: value,
759
+ comment: dummy.comment,
760
+ options: dummy.parsedOptions || dummy.options
761
+ };
762
+ }
763
+
764
+ function parseOption(parent, token) {
765
+ var option;
766
+ var propName;
767
+ var isOption = true;
768
+ if (token === "option") {
769
+ token = next();
770
+ }
771
+
772
+ while (token !== "=") {
773
+ if (token === null) {
774
+ throw illegal(token, "end of input");
775
+ }
776
+ if (token === "(") {
777
+ var parensValue = next();
778
+ skip(")");
779
+ token = "(" + parensValue + ")";
780
+ }
781
+ if (isOption) {
782
+ isOption = false;
783
+ if (token.includes(".") && !token.includes("(")) {
784
+ var tokens = token.split(".");
785
+ option = tokens[0] + ".";
786
+ token = tokens[1];
787
+ continue;
788
+ }
789
+ option = token;
790
+ } else {
791
+ propName = propName ? propName += token : token;
792
+ }
793
+ token = next();
794
+ }
795
+ var name = propName ? option.concat(propName) : option;
796
+ var optionValue = parseOptionValue(parent, name);
797
+ propName = propName && propName[0] === "." ? propName.slice(1) : propName;
798
+ option = option && option[option.length - 1] === "." ? option.slice(0, -1) : option;
799
+ setParsedOption(parent, option, optionValue, propName);
800
+ }
801
+
802
+ function parseOptionValue(parent, name, depth) {
803
+ if (depth === undefined)
804
+ depth = 0;
805
+ if (depth > util.recursionLimit)
806
+ throw Error("max depth exceeded");
807
+ // { a: "foo" b { c: "bar" } }
808
+ if (skip("{", true)) {
809
+ var objectResult = {};
810
+
811
+ while (!skip("}", true)) {
812
+ token = next();
813
+ var propName;
814
+ if (token === null)
815
+ throw illegal(token, "end of input");
816
+ if (token === "[") {
817
+ token = next();
818
+ // Extension name or, for Any, a type URL: "<prefix>/<fully.qualified.Type>".
819
+ var slash = token === null ? -1 : token.lastIndexOf("/");
820
+ if (token === null || !typeRefRe.test(slash < 0 ? token : token.slice(slash + 1)))
821
+ throw illegal(token, "name");
822
+ propName = "[" + token + "]";
823
+ skip("]");
824
+ } else {
825
+ /* istanbul ignore if */
826
+ if (!nameRe.test(token)) {
827
+ throw illegal(token, "name");
828
+ }
829
+ propName = token;
830
+ }
831
+
832
+ var value;
833
+
834
+ skip(":", true);
835
+
836
+ if (peek() === "{") {
837
+ // option (my_option) = {
838
+ // repeated_value: [ "foo", "bar" ]
839
+ // };
840
+ value = parseOptionValue(parent, name + "." + propName, depth + 1);
841
+ } else if (peek() === "[") {
842
+ value = [];
843
+ var lastValue,
844
+ lastValueIsAggregate;
845
+ if (skip("[", true)) {
846
+ if (!skip("]", true)) {
847
+ do {
848
+ lastValueIsAggregate = peek() === "{";
849
+ lastValue = lastValueIsAggregate
850
+ ? parseOptionValue(parent, name + "." + propName, depth + 1)
851
+ : readValue(true);
852
+ value.push(lastValue);
853
+ } while (skip(",", true));
854
+ skip("]");
855
+ if (typeof lastValue !== "undefined") {
856
+ if (!lastValueIsAggregate)
857
+ setOption(parent, name + "." + propName, lastValue);
858
+ }
859
+ }
860
+ }
861
+ } else {
862
+ value = readValue(true);
863
+ setOption(parent, name + "." + propName, value);
864
+ }
865
+
866
+ var prevValue = Object.prototype.hasOwnProperty.call(objectResult, propName)
867
+ ? objectResult[propName]
868
+ : undefined;
869
+
870
+ if (prevValue)
871
+ value = [].concat(prevValue).concat(value);
872
+
873
+ if (propName !== "__proto__")
874
+ objectResult[propName] = value;
875
+
876
+ // Semicolons and commas can be optional
877
+ skip(",", true);
878
+ skip(";", true);
879
+ }
880
+
881
+ return objectResult;
882
+ }
883
+
884
+ var simpleValue = readValue(true);
885
+ setOption(parent, name, simpleValue);
886
+ return simpleValue;
887
+ // Does not enforce a delimiter to be universal
888
+ }
889
+
890
+ function setOption(parent, name, value) {
891
+ if (ptr === parent && /^features\./.test(name)) {
892
+ topLevelOptions[name] = value;
893
+ return;
894
+ }
895
+ // lift json_name onto Field
896
+ if (name === "json_name" && parent instanceof Field) {
897
+ parent.jsonName = value;
898
+ }
899
+ if (parent.setOption)
900
+ parent.setOption(name, value);
901
+ }
902
+
903
+ function setParsedOption(parent, name, value, propName) {
904
+ if (parent.setParsedOption)
905
+ parent.setParsedOption(name, value, propName);
906
+ }
907
+
908
+ function parseInlineOptions(parent) {
909
+ if (skip("[", true)) {
910
+ do {
911
+ parseOption(parent, "option");
912
+ } while (skip(",", true));
913
+ skip("]");
914
+ }
915
+ return parent;
916
+ }
917
+
918
+ function parseService(parent, token, depth) {
919
+ if (depth === undefined)
920
+ depth = 0;
921
+ if (depth > util.recursionLimit)
922
+ throw Error("max depth exceeded");
923
+
924
+ /* istanbul ignore if */
925
+ if ((token = next()) === null || !nameRe.test(token))
926
+ throw illegal(token, "service name");
927
+
928
+ var service = new Service(token);
929
+ ifBlock(service, function parseService_block(token) {
930
+ if (parseCommon(service, token, depth)) {
931
+ return;
932
+ }
933
+
934
+ /* istanbul ignore else */
935
+ if (token === ";")
936
+ return;
937
+ if (token === "rpc")
938
+ parseMethod(service, token);
939
+ else
940
+ throw illegal(token);
941
+ });
942
+ parent.add(service);
943
+ if (parent === ptr) {
944
+ topLevelObjects.push(service);
945
+ }
946
+ }
947
+
948
+ function parseMethod(parent, token) {
949
+ // Get the comment of the preceding line now (if one exists) in case the
950
+ // method is defined across multiple lines.
951
+ var commentText = cmnt();
952
+
953
+ var type = token;
954
+
955
+ /* istanbul ignore if */
956
+ if (!nameRe.test(token = next()))
957
+ throw illegal(token, "name");
958
+
959
+ var name = token,
960
+ requestType, requestStream,
961
+ responseType, responseStream;
962
+
963
+ skip("(");
964
+ if (skip("stream", true))
965
+ requestStream = true;
966
+
967
+ /* istanbul ignore if */
968
+ if (!typeRefRe.test(token = next()))
969
+ throw illegal(token);
970
+
971
+ requestType = token;
972
+ skip(")"); skip("returns"); skip("(");
973
+ if (skip("stream", true))
974
+ responseStream = true;
975
+
976
+ /* istanbul ignore if */
977
+ if (!typeRefRe.test(token = next()))
978
+ throw illegal(token);
979
+
980
+ responseType = token;
981
+ skip(")");
982
+
983
+ var method = new Method(name, type, requestType, responseType, requestStream, responseStream);
984
+ method.comment = commentText;
985
+ ifBlock(method, function parseMethod_block(token) {
986
+
987
+ /* istanbul ignore else */
988
+ if (token === ";")
989
+ return;
990
+ if (token === "option") {
991
+ parseOption(method, token);
992
+ skip(";");
993
+ } else
994
+ throw illegal(token);
995
+
996
+ });
997
+ parent.add(method);
998
+ }
999
+
1000
+ function parseExtension(parent, token, depth) {
1001
+
1002
+ /* istanbul ignore if */
1003
+ if ((token = next()) === null || !typeRefRe.test(token))
1004
+ throw illegal(token, "reference");
1005
+
1006
+ var reference = token;
1007
+ ifBlock(null, function parseExtension_block(token) {
1008
+ switch (token) {
1009
+
1010
+ case "required":
1011
+ case "repeated":
1012
+ parseField(parent, token, reference, depth + 1);
1013
+ break;
1014
+
1015
+ case "optional":
1016
+ /* istanbul ignore if */
1017
+ if (edition === "proto3") {
1018
+ parseField(parent, "proto3_optional", reference, depth + 1);
1019
+ } else {
1020
+ parseField(parent, "optional", reference, depth + 1);
1021
+ }
1022
+ break;
1023
+
1024
+ default:
1025
+ /* istanbul ignore if */
1026
+ if (edition === "proto2" || !typeRefRe.test(token))
1027
+ throw illegal(token);
1028
+ push(token);
1029
+ parseField(parent, "optional", reference, depth + 1);
1030
+ break;
1031
+ }
1032
+ });
1033
+ }
1034
+
1035
+ var token;
1036
+ while ((token = next()) !== null) {
1037
+ switch (token) {
1038
+
1039
+ case ";":
1040
+ break;
1041
+
1042
+ case "package":
1043
+
1044
+ /* istanbul ignore if */
1045
+ if (!head)
1046
+ throw illegal(token);
1047
+
1048
+ parsePackage();
1049
+ break;
1050
+
1051
+ case "import":
1052
+
1053
+ parseImport();
1054
+ break;
1055
+
1056
+ case "syntax":
1057
+
1058
+ /* istanbul ignore if */
1059
+ if (!head)
1060
+ throw illegal(token);
1061
+
1062
+ parseSyntax();
1063
+ break;
1064
+
1065
+ case "edition":
1066
+ /* istanbul ignore if */
1067
+ if (!head)
1068
+ throw illegal(token);
1069
+ parseEdition();
1070
+ break;
1071
+
1072
+ case "option":
1073
+ parseOption(ptr, token);
1074
+ skip(";", true);
1075
+ break;
1076
+
1077
+ default:
1078
+
1079
+ /* istanbul ignore else */
1080
+ if (parseCommon(ptr, token, 0)) {
1081
+ head = false;
1082
+ continue;
1083
+ }
1084
+
1085
+ /* istanbul ignore next */
1086
+ throw illegal(token);
1087
+ }
1088
+ }
1089
+
1090
+ resolveFileFeatures();
1091
+
1092
+ parse.filename = null;
1093
+ return {
1094
+ "package" : pkg,
1095
+ "imports" : imports,
1096
+ weakImports : weakImports,
1097
+ root : root
1098
+ };
1099
+ }
1100
+
1101
+ /**
1102
+ * Parses the given .proto source and returns an object with the parsed contents.
1103
+ * @name parse
1104
+ * @function
1105
+ * @param {string} source Source contents
1106
+ * @param {IParseOptions} [options] Parse options. Defaults to {@link parse.defaults} when omitted.
1107
+ * @returns {IParserResult} Parser result
1108
+ * @property {string} filename=null Currently processing file name for error reporting, if known
1109
+ * @property {IParseOptions} defaults Default {@link IParseOptions}
1110
+ * @variation 2
1111
+ */