@vuu-ui/vuu-data-test 0.13.6 → 0.13.8

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 (205) hide show
  1. package/cjs/index.js +3047 -46
  2. package/cjs/index.js.map +1 -1
  3. package/esm/index.js +3019 -14
  4. package/esm/index.js.map +1 -1
  5. package/package.json +6 -6
  6. package/cjs/ArrayProxy.js +0 -72
  7. package/cjs/ArrayProxy.js.map +0 -1
  8. package/cjs/RuntimeVisualLink.js +0 -89
  9. package/cjs/RuntimeVisualLink.js.map +0 -1
  10. package/cjs/Table.js +0 -184
  11. package/cjs/Table.js.map +0 -1
  12. package/cjs/TickingArrayDataSource.js +0 -208
  13. package/cjs/TickingArrayDataSource.js.map +0 -1
  14. package/cjs/UpdateGenerator.js +0 -94
  15. package/cjs/UpdateGenerator.js.map +0 -1
  16. package/cjs/VuuModule.js +0 -370
  17. package/cjs/VuuModule.js.map +0 -1
  18. package/cjs/basket/basket-module.js +0 -255
  19. package/cjs/basket/basket-module.js.map +0 -1
  20. package/cjs/basket/basket-schemas.js +0 -123
  21. package/cjs/basket/basket-schemas.js.map +0 -1
  22. package/cjs/basket/reference-data/constituents.js +0 -40
  23. package/cjs/basket/reference-data/constituents.js.map +0 -1
  24. package/cjs/basket/reference-data/ftse100.js +0 -105
  25. package/cjs/basket/reference-data/ftse100.js.map +0 -1
  26. package/cjs/basket/reference-data/hsi.js +0 -87
  27. package/cjs/basket/reference-data/hsi.js.map +0 -1
  28. package/cjs/basket/reference-data/nasdaq100.js +0 -108
  29. package/cjs/basket/reference-data/nasdaq100.js.map +0 -1
  30. package/cjs/basket/reference-data/prices.js +0 -54
  31. package/cjs/basket/reference-data/prices.js.map +0 -1
  32. package/cjs/basket/reference-data/sp500.js +0 -46
  33. package/cjs/basket/reference-data/sp500.js.map +0 -1
  34. package/cjs/data-utils.js +0 -57
  35. package/cjs/data-utils.js.map +0 -1
  36. package/cjs/local-datasource-provider/LocalDatasourceProvider.js +0 -84
  37. package/cjs/local-datasource-provider/LocalDatasourceProvider.js.map +0 -1
  38. package/cjs/makeSuggestions.js +0 -43
  39. package/cjs/makeSuggestions.js.map +0 -1
  40. package/cjs/schemas.js +0 -28
  41. package/cjs/schemas.js.map +0 -1
  42. package/cjs/simul/SimulModule.js +0 -24
  43. package/cjs/simul/SimulModule.js.map +0 -1
  44. package/cjs/simul/reference-data/accounts.js +0 -27
  45. package/cjs/simul/reference-data/accounts.js.map +0 -1
  46. package/cjs/simul/reference-data/algos.js +0 -6
  47. package/cjs/simul/reference-data/algos.js.map +0 -1
  48. package/cjs/simul/reference-data/currencies.js +0 -6
  49. package/cjs/simul/reference-data/currencies.js.map +0 -1
  50. package/cjs/simul/reference-data/instruments-extended.js +0 -18
  51. package/cjs/simul/reference-data/instruments-extended.js.map +0 -1
  52. package/cjs/simul/reference-data/instruments.js +0 -77
  53. package/cjs/simul/reference-data/instruments.js.map +0 -1
  54. package/cjs/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js +0 -6
  55. package/cjs/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js.map +0 -1
  56. package/cjs/simul/reference-data/isin-generator/fixtures/alphabet.js +0 -31
  57. package/cjs/simul/reference-data/isin-generator/fixtures/alphabet.js.map +0 -1
  58. package/cjs/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js +0 -9
  59. package/cjs/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js.map +0 -1
  60. package/cjs/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js +0 -17
  61. package/cjs/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js.map +0 -1
  62. package/cjs/simul/reference-data/isin-generator/generate-cusip-check-code.js +0 -24
  63. package/cjs/simul/reference-data/isin-generator/generate-cusip-check-code.js.map +0 -1
  64. package/cjs/simul/reference-data/isin-generator/generate-cusip-without-check-code.js +0 -13
  65. package/cjs/simul/reference-data/isin-generator/generate-cusip-without-check-code.js.map +0 -1
  66. package/cjs/simul/reference-data/isin-generator/generate-cusip.js +0 -13
  67. package/cjs/simul/reference-data/isin-generator/generate-cusip.js.map +0 -1
  68. package/cjs/simul/reference-data/isin-generator/generate-random-alphanumeric.js +0 -8
  69. package/cjs/simul/reference-data/isin-generator/generate-random-alphanumeric.js.map +0 -1
  70. package/cjs/simul/reference-data/isin-generator/generate-random-base-ten-number.js +0 -6
  71. package/cjs/simul/reference-data/isin-generator/generate-random-base-ten-number.js.map +0 -1
  72. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js +0 -14
  73. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js.map +0 -1
  74. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js +0 -14
  75. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js.map +0 -1
  76. package/cjs/simul/reference-data/isin-generator/index.js +0 -295
  77. package/cjs/simul/reference-data/isin-generator/index.js.map +0 -1
  78. package/cjs/simul/reference-data/isin-generator/is-odd.js +0 -6
  79. package/cjs/simul/reference-data/isin-generator/is-odd.js.map +0 -1
  80. package/cjs/simul/reference-data/locations.js +0 -17
  81. package/cjs/simul/reference-data/locations.js.map +0 -1
  82. package/cjs/simul/reference-data/lotsizes.js +0 -28
  83. package/cjs/simul/reference-data/lotsizes.js.map +0 -1
  84. package/cjs/simul/reference-data/orderStatus.js +0 -6
  85. package/cjs/simul/reference-data/orderStatus.js.map +0 -1
  86. package/cjs/simul/reference-data/orders.js +0 -54
  87. package/cjs/simul/reference-data/orders.js.map +0 -1
  88. package/cjs/simul/reference-data/parent-child-orders.js +0 -122
  89. package/cjs/simul/reference-data/parent-child-orders.js.map +0 -1
  90. package/cjs/simul/reference-data/prices.js +0 -71
  91. package/cjs/simul/reference-data/prices.js.map +0 -1
  92. package/cjs/simul/reference-data/sides.js +0 -6
  93. package/cjs/simul/reference-data/sides.js.map +0 -1
  94. package/cjs/simul/simul-module.js +0 -126
  95. package/cjs/simul/simul-module.js.map +0 -1
  96. package/cjs/simul/simul-schemas.js +0 -142
  97. package/cjs/simul/simul-schemas.js.map +0 -1
  98. package/cjs/test/test-module.js +0 -26
  99. package/cjs/test/test-module.js.map +0 -1
  100. package/cjs/test/test-schemas.js +0 -17
  101. package/cjs/test/test-schemas.js.map +0 -1
  102. package/cjs/vuu-modules.js +0 -15
  103. package/cjs/vuu-modules.js.map +0 -1
  104. package/cjs/vuu-row-generator.js +0 -74
  105. package/cjs/vuu-row-generator.js.map +0 -1
  106. package/esm/ArrayProxy.js +0 -70
  107. package/esm/ArrayProxy.js.map +0 -1
  108. package/esm/RuntimeVisualLink.js +0 -87
  109. package/esm/RuntimeVisualLink.js.map +0 -1
  110. package/esm/Table.js +0 -179
  111. package/esm/Table.js.map +0 -1
  112. package/esm/TickingArrayDataSource.js +0 -206
  113. package/esm/TickingArrayDataSource.js.map +0 -1
  114. package/esm/UpdateGenerator.js +0 -92
  115. package/esm/UpdateGenerator.js.map +0 -1
  116. package/esm/VuuModule.js +0 -366
  117. package/esm/VuuModule.js.map +0 -1
  118. package/esm/basket/basket-module.js +0 -251
  119. package/esm/basket/basket-module.js.map +0 -1
  120. package/esm/basket/basket-schemas.js +0 -120
  121. package/esm/basket/basket-schemas.js.map +0 -1
  122. package/esm/basket/reference-data/constituents.js +0 -38
  123. package/esm/basket/reference-data/constituents.js.map +0 -1
  124. package/esm/basket/reference-data/ftse100.js +0 -103
  125. package/esm/basket/reference-data/ftse100.js.map +0 -1
  126. package/esm/basket/reference-data/hsi.js +0 -85
  127. package/esm/basket/reference-data/hsi.js.map +0 -1
  128. package/esm/basket/reference-data/nasdaq100.js +0 -106
  129. package/esm/basket/reference-data/nasdaq100.js.map +0 -1
  130. package/esm/basket/reference-data/prices.js +0 -52
  131. package/esm/basket/reference-data/prices.js.map +0 -1
  132. package/esm/basket/reference-data/sp500.js +0 -44
  133. package/esm/basket/reference-data/sp500.js.map +0 -1
  134. package/esm/data-utils.js +0 -52
  135. package/esm/data-utils.js.map +0 -1
  136. package/esm/local-datasource-provider/LocalDatasourceProvider.js +0 -82
  137. package/esm/local-datasource-provider/LocalDatasourceProvider.js.map +0 -1
  138. package/esm/makeSuggestions.js +0 -41
  139. package/esm/makeSuggestions.js.map +0 -1
  140. package/esm/schemas.js +0 -24
  141. package/esm/schemas.js.map +0 -1
  142. package/esm/simul/SimulModule.js +0 -22
  143. package/esm/simul/SimulModule.js.map +0 -1
  144. package/esm/simul/reference-data/accounts.js +0 -25
  145. package/esm/simul/reference-data/accounts.js.map +0 -1
  146. package/esm/simul/reference-data/algos.js +0 -4
  147. package/esm/simul/reference-data/algos.js.map +0 -1
  148. package/esm/simul/reference-data/currencies.js +0 -4
  149. package/esm/simul/reference-data/currencies.js.map +0 -1
  150. package/esm/simul/reference-data/instruments-extended.js +0 -16
  151. package/esm/simul/reference-data/instruments-extended.js.map +0 -1
  152. package/esm/simul/reference-data/instruments.js +0 -72
  153. package/esm/simul/reference-data/instruments.js.map +0 -1
  154. package/esm/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js +0 -4
  155. package/esm/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js.map +0 -1
  156. package/esm/simul/reference-data/isin-generator/fixtures/alphabet.js +0 -29
  157. package/esm/simul/reference-data/isin-generator/fixtures/alphabet.js.map +0 -1
  158. package/esm/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js +0 -7
  159. package/esm/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js.map +0 -1
  160. package/esm/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js +0 -15
  161. package/esm/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js.map +0 -1
  162. package/esm/simul/reference-data/isin-generator/generate-cusip-check-code.js +0 -22
  163. package/esm/simul/reference-data/isin-generator/generate-cusip-check-code.js.map +0 -1
  164. package/esm/simul/reference-data/isin-generator/generate-cusip-without-check-code.js +0 -11
  165. package/esm/simul/reference-data/isin-generator/generate-cusip-without-check-code.js.map +0 -1
  166. package/esm/simul/reference-data/isin-generator/generate-cusip.js +0 -11
  167. package/esm/simul/reference-data/isin-generator/generate-cusip.js.map +0 -1
  168. package/esm/simul/reference-data/isin-generator/generate-random-alphanumeric.js +0 -6
  169. package/esm/simul/reference-data/isin-generator/generate-random-alphanumeric.js.map +0 -1
  170. package/esm/simul/reference-data/isin-generator/generate-random-base-ten-number.js +0 -4
  171. package/esm/simul/reference-data/isin-generator/generate-random-base-ten-number.js.map +0 -1
  172. package/esm/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js +0 -12
  173. package/esm/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js.map +0 -1
  174. package/esm/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js +0 -12
  175. package/esm/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js.map +0 -1
  176. package/esm/simul/reference-data/isin-generator/index.js +0 -293
  177. package/esm/simul/reference-data/isin-generator/index.js.map +0 -1
  178. package/esm/simul/reference-data/isin-generator/is-odd.js +0 -4
  179. package/esm/simul/reference-data/isin-generator/is-odd.js.map +0 -1
  180. package/esm/simul/reference-data/locations.js +0 -14
  181. package/esm/simul/reference-data/locations.js.map +0 -1
  182. package/esm/simul/reference-data/lotsizes.js +0 -26
  183. package/esm/simul/reference-data/lotsizes.js.map +0 -1
  184. package/esm/simul/reference-data/orderStatus.js +0 -4
  185. package/esm/simul/reference-data/orderStatus.js.map +0 -1
  186. package/esm/simul/reference-data/orders.js +0 -51
  187. package/esm/simul/reference-data/orders.js.map +0 -1
  188. package/esm/simul/reference-data/parent-child-orders.js +0 -117
  189. package/esm/simul/reference-data/parent-child-orders.js.map +0 -1
  190. package/esm/simul/reference-data/prices.js +0 -68
  191. package/esm/simul/reference-data/prices.js.map +0 -1
  192. package/esm/simul/reference-data/sides.js +0 -4
  193. package/esm/simul/reference-data/sides.js.map +0 -1
  194. package/esm/simul/simul-module.js +0 -124
  195. package/esm/simul/simul-module.js.map +0 -1
  196. package/esm/simul/simul-schemas.js +0 -139
  197. package/esm/simul/simul-schemas.js.map +0 -1
  198. package/esm/test/test-module.js +0 -24
  199. package/esm/test/test-module.js.map +0 -1
  200. package/esm/test/test-schemas.js +0 -15
  201. package/esm/test/test-schemas.js.map +0 -1
  202. package/esm/vuu-modules.js +0 -13
  203. package/esm/vuu-modules.js.map +0 -1
  204. package/esm/vuu-row-generator.js +0 -68
  205. package/esm/vuu-row-generator.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/simul/reference-data/isin-generator/index.ts"],"sourcesContent":["/**\n * all code in here taken from @thomaschaplin\n * https://github.com/thomaschaplin/isin-generator\n * https://github.com/thomaschaplin/cusip-generator\n */\nimport { generateCusip } from \"./generate-cusip\";\nconst countryCodes = [\n \"AD\",\n \"AE\",\n \"AF\",\n \"AG\",\n \"AI\",\n \"AL\",\n \"AM\",\n \"AO\",\n \"AQ\",\n \"AR\",\n \"AS\",\n \"AT\",\n \"AU\",\n \"AW\",\n \"AX\",\n \"AZ\",\n \"BA\",\n \"BB\",\n \"BD\",\n \"BE\",\n \"BF\",\n \"BG\",\n \"BH\",\n \"BI\",\n \"BJ\",\n \"BL\",\n \"BM\",\n \"BN\",\n \"BO\",\n \"BQ\",\n \"BR\",\n \"BS\",\n \"BT\",\n \"BV\",\n \"BW\",\n \"BY\",\n \"BZ\",\n \"CA\",\n \"CC\",\n \"CD\",\n \"CF\",\n \"CG\",\n \"CH\",\n \"CI\",\n \"CK\",\n \"CL\",\n \"CM\",\n \"CN\",\n \"CO\",\n \"CR\",\n \"CU\",\n \"CV\",\n \"CW\",\n \"CX\",\n \"CY\",\n \"CZ\",\n \"DE\",\n \"DJ\",\n \"DK\",\n \"DM\",\n \"DO\",\n \"DZ\",\n \"EC\",\n \"EE\",\n \"EG\",\n \"EH\",\n \"ER\",\n \"ES\",\n \"ET\",\n \"FI\",\n \"FJ\",\n \"FK\",\n \"FM\",\n \"FO\",\n \"FR\",\n \"GA\",\n \"GB\",\n \"GD\",\n \"GE\",\n \"GF\",\n \"GG\",\n \"GH\",\n \"GI\",\n \"GL\",\n \"GM\",\n \"GN\",\n \"GP\",\n \"GQ\",\n \"GR\",\n \"GS\",\n \"GT\",\n \"GU\",\n \"GW\",\n \"GY\",\n \"HK\",\n \"HM\",\n \"HN\",\n \"HR\",\n \"HT\",\n \"HU\",\n \"ID\",\n \"IE\",\n \"IL\",\n \"IM\",\n \"IN\",\n \"IO\",\n \"IQ\",\n \"IR\",\n \"IS\",\n \"IT\",\n \"JE\",\n \"JM\",\n \"JO\",\n \"JP\",\n \"KE\",\n \"KG\",\n \"KH\",\n \"KI\",\n \"KM\",\n \"KN\",\n \"KP\",\n \"KR\",\n \"KW\",\n \"KY\",\n \"KZ\",\n \"LA\",\n \"LB\",\n \"LC\",\n \"LI\",\n \"LK\",\n \"LR\",\n \"LS\",\n \"LT\",\n \"LU\",\n \"LV\",\n \"LY\",\n \"MA\",\n \"MC\",\n \"MD\",\n \"ME\",\n \"MF\",\n \"MG\",\n \"MH\",\n \"MK\",\n \"ML\",\n \"MM\",\n \"MN\",\n \"MO\",\n \"MP\",\n \"MQ\",\n \"MR\",\n \"MS\",\n \"MT\",\n \"MU\",\n \"MV\",\n \"MW\",\n \"MX\",\n \"MY\",\n \"MZ\",\n \"NA\",\n \"NC\",\n \"NE\",\n \"NF\",\n \"NG\",\n \"NI\",\n \"NL\",\n \"NO\",\n \"NP\",\n \"NR\",\n \"NU\",\n \"NZ\",\n \"OM\",\n \"PA\",\n \"PE\",\n \"PF\",\n \"PG\",\n \"PH\",\n \"PK\",\n \"PL\",\n \"PM\",\n \"PN\",\n \"PR\",\n \"PS\",\n \"PT\",\n \"PW\",\n \"PY\",\n \"QA\",\n \"RE\",\n \"RO\",\n \"RS\",\n \"RU\",\n \"RW\",\n \"SA\",\n \"SB\",\n \"SC\",\n \"SD\",\n \"SE\",\n \"SG\",\n \"SH\",\n \"SI\",\n \"SJ\",\n \"SK\",\n \"SL\",\n \"SM\",\n \"SN\",\n \"SO\",\n \"SR\",\n \"SS\",\n \"ST\",\n \"SV\",\n \"SX\",\n \"SY\",\n \"SZ\",\n \"TC\",\n \"TD\",\n \"TF\",\n \"TG\",\n \"TH\",\n \"TJ\",\n \"TK\",\n \"TL\",\n \"TM\",\n \"TN\",\n \"TO\",\n \"TR\",\n \"TT\",\n \"TV\",\n \"TW\",\n \"TZ\",\n \"UA\",\n \"UG\",\n \"UM\",\n \"US\",\n \"UY\",\n \"UZ\",\n \"VA\",\n \"VC\",\n \"VE\",\n \"VG\",\n \"VI\",\n \"VN\",\n \"VU\",\n \"WF\",\n \"WS\",\n \"YE\",\n \"YT\",\n \"ZA\",\n \"ZM\",\n \"ZW\",\n];\n\nconst cusip = generateCusip();\n\nconst generateIsin = (cusip: string) => {\n const code = countryCodes[Math.floor(Math.random() * countryCodes.length)];\n const isin = code + cusip + generateIsinCheckDigit(code + cusip + \"0\");\n return isin;\n};\n\nconst generateIsinCheckDigit = (isin: string) => {\n if (isin.length != 12) return false;\n const v = [];\n for (let i = isin.length - 2; i >= 0; i--) {\n const c = isin.charAt(i);\n if (isNaN(parseInt(c))) {\n const letterCode = isin.charCodeAt(i) - 55;\n v.push(letterCode % 10);\n if (letterCode > 9) {\n v.push(Math.floor(letterCode / 10));\n }\n } else {\n v.push(Number(c));\n }\n }\n let sum = 0;\n const l = v.length;\n for (let i = 0; i < l; i++) {\n if (i % 2 == 0) {\n const d = v[i] * 2;\n sum += Math.floor(d / 10);\n sum += d % 10;\n } else {\n sum += v[i];\n }\n }\n return (10 - (sum % 10)) % 10;\n};\n\nexport const isinGenerator = () => {\n return generateIsin(cusip);\n};\n"],"names":["cusip"],"mappings":";;AAMA,MAAM,YAAe,GAAA;AAAA,EACnB,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAAA;AAEA,MAAM,QAAQ,aAAc,EAAA;AAE5B,MAAM,YAAA,GAAe,CAACA,MAAkB,KAAA;AACtC,EAAM,MAAA,IAAA,GAAO,aAAa,IAAK,CAAA,KAAA,CAAM,KAAK,MAAO,EAAA,GAAI,YAAa,CAAA,MAAM,CAAC,CAAA;AACzE,EAAA,MAAM,OAAO,IAAOA,GAAAA,MAAAA,GAAQ,sBAAuB,CAAA,IAAA,GAAOA,SAAQ,GAAG,CAAA;AACrE,EAAO,OAAA,IAAA;AACT,CAAA;AAEA,MAAM,sBAAA,GAAyB,CAAC,IAAiB,KAAA;AAC/C,EAAI,IAAA,IAAA,CAAK,MAAU,IAAA,EAAA,EAAW,OAAA,KAAA;AAC9B,EAAA,MAAM,IAAI,EAAC;AACX,EAAA,KAAA,IAAS,IAAI,IAAK,CAAA,MAAA,GAAS,CAAG,EAAA,CAAA,IAAK,GAAG,CAAK,EAAA,EAAA;AACzC,IAAM,MAAA,CAAA,GAAI,IAAK,CAAA,MAAA,CAAO,CAAC,CAAA;AACvB,IAAA,IAAI,KAAM,CAAA,QAAA,CAAS,CAAC,CAAC,CAAG,EAAA;AACtB,MAAA,MAAM,UAAa,GAAA,IAAA,CAAK,UAAW,CAAA,CAAC,CAAI,GAAA,EAAA;AACxC,MAAE,CAAA,CAAA,IAAA,CAAK,aAAa,EAAE,CAAA;AACtB,MAAA,IAAI,aAAa,CAAG,EAAA;AAClB,QAAA,CAAA,CAAE,IAAK,CAAA,IAAA,CAAK,KAAM,CAAA,UAAA,GAAa,EAAE,CAAC,CAAA;AAAA;AACpC,KACK,MAAA;AACL,MAAE,CAAA,CAAA,IAAA,CAAK,MAAO,CAAA,CAAC,CAAC,CAAA;AAAA;AAClB;AAEF,EAAA,IAAI,GAAM,GAAA,CAAA;AACV,EAAA,MAAM,IAAI,CAAE,CAAA,MAAA;AACZ,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,CAAA,EAAG,CAAK,EAAA,EAAA;AAC1B,IAAI,IAAA,CAAA,GAAI,KAAK,CAAG,EAAA;AACd,MAAM,MAAA,CAAA,GAAI,CAAE,CAAA,CAAC,CAAI,GAAA,CAAA;AACjB,MAAO,GAAA,IAAA,IAAA,CAAK,KAAM,CAAA,CAAA,GAAI,EAAE,CAAA;AACxB,MAAA,GAAA,IAAO,CAAI,GAAA,EAAA;AAAA,KACN,MAAA;AACL,MAAA,GAAA,IAAO,EAAE,CAAC,CAAA;AAAA;AACZ;AAEF,EAAQ,OAAA,CAAA,EAAA,GAAM,MAAM,EAAO,IAAA,EAAA;AAC7B,CAAA;AAEO,MAAM,gBAAgB,MAAM;AACjC,EAAA,OAAO,aAAa,KAAK,CAAA;AAC3B;;;;"}
@@ -1,4 +0,0 @@
1
- const isOdd = (value) => value % 2 === 1;
2
-
3
- export { isOdd };
4
- //# sourceMappingURL=is-odd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-odd.js","sources":["../../../../src/simul/reference-data/isin-generator/is-odd.ts"],"sourcesContent":["export const isOdd = (value: number): boolean => value % 2 === 1;\n"],"names":[],"mappings":"AAAO,MAAM,KAAQ,GAAA,CAAC,KAA2B,KAAA,KAAA,GAAQ,CAAM,KAAA;;;;"}
@@ -1,14 +0,0 @@
1
- const locations = {
2
- L: ["London PLC", "XLON/LSE-SETS"],
3
- N: ["Corporation", "XNGS/NAS-GSM"],
4
- AS: ["B.V.", "XAMS/ENA-MAIN"],
5
- OQ: ["Co.", "XNYS/NYS-MAIN"],
6
- PA: ["Paris", "PAR/EUR_FR"],
7
- MI: ["Milan", "MIL/EUR_IT"],
8
- FR: ["Frankfurt", "FR/EUR_DE"],
9
- AT: ["Athens", "AT/EUR_GR"]
10
- };
11
- const suffixes = ["L", "N", "OQ", "AS", "PA", "MI", "FR", "AT"];
12
-
13
- export { locations, suffixes };
14
- //# sourceMappingURL=locations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"locations.js","sources":["../../../src/simul/reference-data/locations.ts"],"sourcesContent":["export const locations: { [key: string]: string[] } = {\n L: [\"London PLC\", \"XLON/LSE-SETS\"],\n N: [\"Corporation\", \"XNGS/NAS-GSM\"],\n AS: [\"B.V.\", \"XAMS/ENA-MAIN\"],\n OQ: [\"Co.\", \"XNYS/NYS-MAIN\"],\n PA: [\"Paris\", \"PAR/EUR_FR\"],\n MI: [\"Milan\", \"MIL/EUR_IT\"],\n FR: [\"Frankfurt\", \"FR/EUR_DE\"],\n AT: [\"Athens\", \"AT/EUR_GR\"],\n};\nexport const suffixes = [\"L\", \"N\", \"OQ\", \"AS\", \"PA\", \"MI\", \"FR\", \"AT\"];\n"],"names":[],"mappings":"AAAO,MAAM,SAAyC,GAAA;AAAA,EACpD,CAAA,EAAG,CAAC,YAAA,EAAc,eAAe,CAAA;AAAA,EACjC,CAAA,EAAG,CAAC,aAAA,EAAe,cAAc,CAAA;AAAA,EACjC,EAAA,EAAI,CAAC,MAAA,EAAQ,eAAe,CAAA;AAAA,EAC5B,EAAA,EAAI,CAAC,KAAA,EAAO,eAAe,CAAA;AAAA,EAC3B,EAAA,EAAI,CAAC,OAAA,EAAS,YAAY,CAAA;AAAA,EAC1B,EAAA,EAAI,CAAC,OAAA,EAAS,YAAY,CAAA;AAAA,EAC1B,EAAA,EAAI,CAAC,WAAA,EAAa,WAAW,CAAA;AAAA,EAC7B,EAAA,EAAI,CAAC,QAAA,EAAU,WAAW;AAC5B;AACa,MAAA,QAAA,GAAW,CAAC,GAAK,EAAA,GAAA,EAAK,MAAM,IAAM,EAAA,IAAA,EAAM,IAAM,EAAA,IAAA,EAAM,IAAI;;;;"}
@@ -1,26 +0,0 @@
1
- const lotsizes = [
2
- 1,
3
- 2,
4
- 5,
5
- 10,
6
- 50,
7
- 50,
8
- 70,
9
- 100,
10
- 100,
11
- 100,
12
- 120,
13
- 150,
14
- 150,
15
- 200,
16
- 500,
17
- 700,
18
- 1e3,
19
- 2e3,
20
- 2500,
21
- 5e3,
22
- 1e4
23
- ];
24
-
25
- export { lotsizes };
26
- //# sourceMappingURL=lotsizes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lotsizes.js","sources":["../../../src/simul/reference-data/lotsizes.ts"],"sourcesContent":["export const lotsizes = [\n 1, 2, 5, 10, 50, 50, 70, 100, 100, 100, 120, 150, 150, 200, 500, 700, 1000,\n 2000, 2500, 5000, 10000,\n];\n"],"names":[],"mappings":"AAAO,MAAM,QAAW,GAAA;AAAA,EACtB,CAAA;AAAA,EAAG,CAAA;AAAA,EAAG,CAAA;AAAA,EAAG,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EACtE,GAAA;AAAA,EAAM,IAAA;AAAA,EAAM,GAAA;AAAA,EAAM;AACpB;;;;"}
@@ -1,4 +0,0 @@
1
- const orderStatus = ["NEW", "CANCELLED", "FILLED"];
2
-
3
- export { orderStatus };
4
- //# sourceMappingURL=orderStatus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orderStatus.js","sources":["../../../src/simul/reference-data/orderStatus.ts"],"sourcesContent":["export const orderStatus = [\"NEW\", \"CANCELLED\", \"FILLED\"];\n"],"names":[],"mappings":"AAAO,MAAM,WAAc,GAAA,CAAC,KAAO,EAAA,WAAA,EAAa,QAAQ;;;;"}
@@ -1,51 +0,0 @@
1
- import { currencies } from './currencies.js';
2
- import { getRic } from './instruments.js';
3
- import { random } from '../../data-utils.js';
4
- import { Table, buildDataColumnMap } from '../../Table.js';
5
- import { schemas } from '../simul-schemas.js';
6
- import { sides } from './sides.js';
7
-
8
- const traders = ["Trader A", "Trader B", "Trader C"];
9
- const orderStatus = [
10
- "Filled",
11
- "Cancelled",
12
- "New",
13
- "Partial Exec",
14
- "Booked",
15
- "All Done"
16
- ];
17
- const isComplete = (status) => ["Filled", "All Done", "Booked"].includes(status);
18
- const ordersData = [];
19
- const now = +/* @__PURE__ */ new Date();
20
- for (let i = 0; i < 100; i++) {
21
- const status = orderStatus[random(0, orderStatus.length - 1)];
22
- const ccy = currencies[random(0, currencies.length - 1)];
23
- const created = now;
24
- const lastUpdate = now;
25
- const orderId = `ORD${("0000" + i).slice(-4)}`;
26
- const quantity = random(1e3, 1e4);
27
- const filledQuantity = isComplete(status) ? quantity : status === "New" ? 0 : random(0, quantity);
28
- const ric = getRic("AAP.L");
29
- const side = sides[random(0, sides.length - 1)];
30
- const trader = traders[random(0, traders.length - 1)];
31
- ordersData.push([
32
- status,
33
- ccy,
34
- created,
35
- filledQuantity,
36
- lastUpdate,
37
- orderId,
38
- quantity,
39
- ric,
40
- side,
41
- trader
42
- ]);
43
- }
44
- const ordersTable = new Table(
45
- schemas.orders,
46
- ordersData,
47
- buildDataColumnMap(schemas, "orders")
48
- );
49
-
50
- export { ordersData, ordersTable };
51
- //# sourceMappingURL=orders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orders.js","sources":["../../../src/simul/reference-data/orders.ts"],"sourcesContent":["import { currencies } from \"./currencies\";\nimport { getRic } from \"./instruments\";\nimport { random } from \"../../data-utils\";\nimport { buildDataColumnMap, Table } from \"../../Table\";\nimport { schemas } from \"../simul-schemas\";\nimport { sides } from \"./sides\";\n\nexport type status = string;\nexport type ccy = string;\nexport type created = number;\nexport type filledQuantity = number;\nexport type lastUpdate = number;\nexport type orderId = string;\nexport type quantity = number;\nexport type ric = string;\nexport type side = string;\nexport type trader = string;\n\nconst traders = [\"Trader A\", \"Trader B\", \"Trader C\"];\nconst orderStatus = [\n \"Filled\",\n \"Cancelled\",\n \"New\",\n \"Partial Exec\",\n \"Booked\",\n \"All Done\",\n];\n\nconst isComplete = (status: string) =>\n [\"Filled\", \"All Done\", \"Booked\"].includes(status);\n\nexport type OrdersDataRow = [\n status,\n ccy,\n created,\n filledQuantity,\n lastUpdate,\n orderId,\n quantity,\n ric,\n side,\n trader,\n];\n\nexport const OrderColumnMap = {\n ccy: 0,\n created: 1,\n filledQuantity: 2,\n lastUpdate: 3,\n orderId: 4,\n quantity: 5,\n ric: 6,\n side: 7,\n trader: 8,\n} as const;\n\nconst ordersData: OrdersDataRow[] = [];\n\n// const start = performance.now();\n// Create 10_000 Instruments\n\nconst now = +new Date();\nfor (let i = 0; i < 100; i++) {\n const status = orderStatus[random(0, orderStatus.length - 1)];\n const ccy = currencies[random(0, currencies.length - 1)];\n const created = now;\n const lastUpdate = now;\n const orderId = `ORD${(\"0000\" + i).slice(-4)}`;\n const quantity = random(1000, 10000);\n const filledQuantity = isComplete(status)\n ? quantity\n : status === \"New\"\n ? 0\n : random(0, quantity);\n const ric = getRic(\"AAP.L\");\n const side = sides[random(0, sides.length - 1)];\n const trader = traders[random(0, traders.length - 1)];\n\n ordersData.push([\n status,\n ccy,\n created,\n filledQuantity,\n lastUpdate,\n orderId,\n quantity,\n ric,\n side,\n trader,\n ]);\n}\n// const end = performance.now();\n// console.log(`generating 10,000 instruments took ${end - start} ms`);\n\nexport const ordersTable = new Table(\n schemas.orders,\n ordersData,\n buildDataColumnMap(schemas, \"orders\"),\n);\n\nexport { ordersData };\n"],"names":[],"mappings":";;;;;;;AAkBA,MAAM,OAAU,GAAA,CAAC,UAAY,EAAA,UAAA,EAAY,UAAU,CAAA;AACnD,MAAM,WAAc,GAAA;AAAA,EAClB,QAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,cAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF,CAAA;AAEA,MAAM,UAAA,GAAa,CAAC,MAClB,KAAA,CAAC,UAAU,UAAY,EAAA,QAAQ,CAAE,CAAA,QAAA,CAAS,MAAM,CAAA;AA2BlD,MAAM,aAA8B;AAKpC,MAAM,GAAA,GAAM,iBAAC,IAAI,IAAK,EAAA;AACtB,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,GAAA,EAAK,CAAK,EAAA,EAAA;AAC5B,EAAA,MAAM,SAAS,WAAY,CAAA,MAAA,CAAO,GAAG,WAAY,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC5D,EAAA,MAAM,MAAM,UAAW,CAAA,MAAA,CAAO,GAAG,UAAW,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AACvD,EAAA,MAAM,OAAU,GAAA,GAAA;AAChB,EAAA,MAAM,UAAa,GAAA,GAAA;AACnB,EAAA,MAAM,UAAU,CAAO,GAAA,EAAA,CAAA,MAAA,GAAS,CAAG,EAAA,KAAA,CAAM,EAAE,CAAC,CAAA,CAAA;AAC5C,EAAM,MAAA,QAAA,GAAW,MAAO,CAAA,GAAA,EAAM,GAAK,CAAA;AACnC,EAAM,MAAA,cAAA,GAAiB,UAAW,CAAA,MAAM,CACpC,GAAA,QAAA,GACA,WAAW,KACT,GAAA,CAAA,GACA,MAAO,CAAA,CAAA,EAAG,QAAQ,CAAA;AACxB,EAAM,MAAA,GAAA,GAAM,OAAO,OAAO,CAAA;AAC1B,EAAA,MAAM,OAAO,KAAM,CAAA,MAAA,CAAO,GAAG,KAAM,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC9C,EAAA,MAAM,SAAS,OAAQ,CAAA,MAAA,CAAO,GAAG,OAAQ,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAEpD,EAAA,UAAA,CAAW,IAAK,CAAA;AAAA,IACd,MAAA;AAAA,IACA,GAAA;AAAA,IACA,OAAA;AAAA,IACA,cAAA;AAAA,IACA,UAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,IAAA;AAAA,IACA;AAAA,GACD,CAAA;AACH;AAIO,MAAM,cAAc,IAAI,KAAA;AAAA,EAC7B,OAAQ,CAAA,MAAA;AAAA,EACR,UAAA;AAAA,EACA,kBAAA,CAAmB,SAAS,QAAQ;AACtC;;;;"}
@@ -1,117 +0,0 @@
1
- import { random } from '../../data-utils.js';
2
- import { buildDataColumnMap, Table } from '../../Table.js';
3
- import { schemas } from '../simul-schemas.js';
4
- import { accounts } from './accounts.js';
5
- import { instrumentsData } from './instruments.js';
6
- import { orderStatus } from './orderStatus.js';
7
- import { sides } from './sides.js';
8
- import { algos } from './algos.js';
9
-
10
- const childOrderData = [];
11
- const parentOrderData = [];
12
- const instrumentMap = buildDataColumnMap(schemas, "instruments");
13
- const PARENT_ORDER_COUNT = 75e3;
14
- const CHILD_ORDER_COUNT = 2e5;
15
- const avgChildOrderPerOrder = Math.round(
16
- CHILD_ORDER_COUNT / PARENT_ORDER_COUNT
17
- );
18
- const childMaxMultiple = 10;
19
- const start = performance.now();
20
- let childOrderId = 0;
21
- for (let i = 0; i < PARENT_ORDER_COUNT; i++) {
22
- const now = +/* @__PURE__ */ new Date();
23
- const instrument = instrumentsData[random(0, instrumentsData.length - 1)];
24
- const orderQuantity = 1e3 * random(1, 100);
25
- const orderStatus$1 = orderStatus[random(0, orderStatus.length - 1)];
26
- const filledQty = orderStatus$1 === "FILLED" ? orderQuantity : orderStatus$1 === "NEW" ? 0 : orderQuantity - random(100, orderQuantity);
27
- const openQty = orderQuantity - filledQty;
28
- const account = accounts[random(0, accounts.length - 1)];
29
- const algo = algos[random(0, algos.length - 1)];
30
- const averagePrice = 0;
31
- const ccy = "GBP";
32
- const exchange = instrument[instrumentMap.exchange];
33
- const parentOrderIdAsInt = i;
34
- const parentOrderId = `${parentOrderIdAsInt}`;
35
- const lastUpdate = now;
36
- const price = 100;
37
- const quantity = orderQuantity;
38
- const ric = instrument[instrumentMap.ric];
39
- const side = sides[random(0, sides.length - 1)];
40
- const status = orderStatus$1;
41
- const volLimit = 100;
42
- const childOrderCount = random(
43
- 0,
44
- avgChildOrderPerOrder * random(1, childMaxMultiple)
45
- );
46
- let remainingQty = orderQuantity;
47
- for (let j = 0; j < childOrderCount; j++) {
48
- const childOrderQuantity = Math.round(remainingQty / (childOrderCount - j));
49
- remainingQty -= childOrderQuantity;
50
- const childOrderStatus = orderStatus[random(0, orderStatus.length - 1)];
51
- const childFilledQty = orderStatus$1 === "FILLED" ? childOrderQuantity : childOrderStatus === "NEW" ? 0 : childOrderQuantity - random(100, childOrderQuantity);
52
- const childOpenQty = childOrderQuantity - childFilledQty;
53
- const averagePrice2 = 0;
54
- const childIdAsInt = childOrderId++;
55
- const childId = `${childIdAsInt}`;
56
- const lastUpdate2 = 0;
57
- const price2 = 100;
58
- const strategy = 0;
59
- const row2 = [
60
- account,
61
- averagePrice2,
62
- ccy,
63
- exchange,
64
- childFilledQty,
65
- childId,
66
- childIdAsInt,
67
- lastUpdate2,
68
- childOpenQty,
69
- parentOrderId,
70
- price2,
71
- childOrderQuantity,
72
- ric,
73
- side,
74
- childOrderStatus,
75
- strategy,
76
- volLimit
77
- ];
78
- childOrderData.push(row2);
79
- }
80
- const row = [
81
- account,
82
- algo,
83
- averagePrice,
84
- ccy,
85
- childOrderCount,
86
- exchange,
87
- filledQty,
88
- parentOrderId,
89
- parentOrderIdAsInt,
90
- lastUpdate,
91
- openQty,
92
- price,
93
- quantity,
94
- ric,
95
- side,
96
- status,
97
- volLimit
98
- ];
99
- parentOrderData.push(row);
100
- }
101
- const end = performance.now();
102
- console.log(
103
- `took ${end - start} to create ${parentOrderData.length} orders and ${childOrderData.length} child orders`
104
- );
105
- const parentOrdersTable = new Table(
106
- schemas.parentOrders,
107
- parentOrderData,
108
- buildDataColumnMap(schemas, "parentOrders")
109
- );
110
- const childOrdersTable = new Table(
111
- schemas.childOrders,
112
- childOrderData,
113
- buildDataColumnMap(schemas, "childOrders")
114
- );
115
-
116
- export { childOrderData, childOrdersTable, parentOrderData, parentOrdersTable };
117
- //# sourceMappingURL=parent-child-orders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parent-child-orders.js","sources":["../../../src/simul/reference-data/parent-child-orders.ts"],"sourcesContent":["import { VuuRowDataItemType } from \"@vuu-ui/vuu-protocol-types\";\nimport { random } from \"../../data-utils\";\nimport { buildDataColumnMap, Table } from \"../../Table\";\nimport { schemas } from \"../simul-schemas\";\nimport { accounts } from \"./accounts\";\nimport { instrumentsData } from \"./instruments\";\nimport { orderStatus as statusValues } from \"./orderStatus\";\nimport { sides } from \"./sides\";\nimport { algos } from \"./algos\";\n\nconst childOrderData: VuuRowDataItemType[][] = [];\nconst parentOrderData: VuuRowDataItemType[][] = [];\n\nconst instrumentMap = buildDataColumnMap(schemas, \"instruments\");\n\nconst PARENT_ORDER_COUNT = 75_000;\nconst CHILD_ORDER_COUNT = 200_000;\n\nconst avgChildOrderPerOrder = Math.round(\n CHILD_ORDER_COUNT / PARENT_ORDER_COUNT,\n);\nconst childMaxMultiple = 10;\n\nconst start = performance.now();\n\nlet childOrderId = 0;\n\nfor (let i = 0; i < PARENT_ORDER_COUNT; i++) {\n const now = +new Date();\n const instrument = instrumentsData[random(0, instrumentsData.length - 1)];\n\n const orderQuantity = 1000 * random(1, 100);\n const orderStatus = statusValues[random(0, statusValues.length - 1)];\n const filledQty =\n orderStatus === \"FILLED\"\n ? orderQuantity\n : orderStatus === \"NEW\"\n ? 0\n : orderQuantity - random(100, orderQuantity);\n const openQty = orderQuantity - filledQty;\n\n const account = accounts[random(0, accounts.length - 1)];\n const algo = algos[random(0, algos.length - 1)];\n const averagePrice = 0;\n const ccy = \"GBP\";\n const exchange = instrument[instrumentMap.exchange];\n const parentOrderIdAsInt = i;\n const parentOrderId = `${parentOrderIdAsInt}`;\n const lastUpdate = now;\n const price = 100;\n const quantity = orderQuantity;\n const ric = instrument[instrumentMap.ric];\n const side = sides[random(0, sides.length - 1)];\n const status = orderStatus;\n const volLimit = 100;\n\n const childOrderCount = random(\n 0,\n avgChildOrderPerOrder * random(1, childMaxMultiple),\n );\n\n let remainingQty = orderQuantity;\n for (let j = 0; j < childOrderCount; j++) {\n // console.log(`create child`);\n\n const childOrderQuantity = Math.round(remainingQty / (childOrderCount - j));\n remainingQty -= childOrderQuantity;\n const childOrderStatus = statusValues[random(0, statusValues.length - 1)];\n const childFilledQty =\n orderStatus === \"FILLED\"\n ? childOrderQuantity\n : childOrderStatus === \"NEW\"\n ? 0\n : childOrderQuantity - random(100, childOrderQuantity);\n const childOpenQty = childOrderQuantity - childFilledQty;\n\n const averagePrice = 0;\n const childIdAsInt = childOrderId++;\n const childId = `${childIdAsInt}`;\n const lastUpdate = 0;\n const price = 100;\n const strategy = 0;\n\n const row: VuuRowDataItemType[] = [\n account,\n averagePrice,\n ccy,\n exchange,\n childFilledQty,\n childId,\n childIdAsInt,\n lastUpdate,\n childOpenQty,\n parentOrderId,\n price,\n childOrderQuantity,\n ric,\n side,\n childOrderStatus,\n strategy,\n volLimit,\n ];\n\n childOrderData.push(row);\n }\n\n const row: VuuRowDataItemType[] = [\n account,\n algo,\n averagePrice,\n ccy,\n childOrderCount,\n exchange,\n filledQty,\n parentOrderId,\n parentOrderIdAsInt,\n lastUpdate,\n openQty,\n price,\n quantity,\n ric,\n side,\n status,\n volLimit,\n ];\n\n parentOrderData.push(row);\n}\nconst end = performance.now();\n\nconsole.log(\n `took ${end - start} to create ${parentOrderData.length} orders and ${childOrderData.length} child orders`,\n);\n\nexport const parentOrdersTable = new Table(\n schemas.parentOrders,\n parentOrderData,\n buildDataColumnMap(schemas, \"parentOrders\"),\n);\n\nexport const childOrdersTable = new Table(\n schemas.childOrders,\n childOrderData,\n buildDataColumnMap(schemas, \"childOrders\"),\n);\n\nexport { childOrderData, parentOrderData };\n"],"names":["orderStatus","statusValues","averagePrice","lastUpdate","price","row"],"mappings":";;;;;;;;;AAUA,MAAM,iBAAyC;AAC/C,MAAM,kBAA0C;AAEhD,MAAM,aAAA,GAAgB,kBAAmB,CAAA,OAAA,EAAS,aAAa,CAAA;AAE/D,MAAM,kBAAqB,GAAA,IAAA;AAC3B,MAAM,iBAAoB,GAAA,GAAA;AAE1B,MAAM,wBAAwB,IAAK,CAAA,KAAA;AAAA,EACjC,iBAAoB,GAAA;AACtB,CAAA;AACA,MAAM,gBAAmB,GAAA,EAAA;AAEzB,MAAM,KAAA,GAAQ,YAAY,GAAI,EAAA;AAE9B,IAAI,YAAe,GAAA,CAAA;AAEnB,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,kBAAA,EAAoB,CAAK,EAAA,EAAA;AAC3C,EAAM,MAAA,GAAA,GAAM,iBAAC,IAAI,IAAK,EAAA;AACtB,EAAA,MAAM,aAAa,eAAgB,CAAA,MAAA,CAAO,GAAG,eAAgB,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAExE,EAAA,MAAM,aAAgB,GAAA,GAAA,GAAO,MAAO,CAAA,CAAA,EAAG,GAAG,CAAA;AAC1C,EAAA,MAAMA,gBAAcC,WAAa,CAAA,MAAA,CAAO,GAAGA,WAAa,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AACnE,EAAM,MAAA,SAAA,GACJD,aAAgB,KAAA,QAAA,GACZ,aACA,GAAAA,aAAA,KAAgB,QACd,CACA,GAAA,aAAA,GAAgB,MAAO,CAAA,GAAA,EAAK,aAAa,CAAA;AACjD,EAAA,MAAM,UAAU,aAAgB,GAAA,SAAA;AAEhC,EAAA,MAAM,UAAU,QAAS,CAAA,MAAA,CAAO,GAAG,QAAS,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AACvD,EAAA,MAAM,OAAO,KAAM,CAAA,MAAA,CAAO,GAAG,KAAM,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC9C,EAAA,MAAM,YAAe,GAAA,CAAA;AACrB,EAAA,MAAM,GAAM,GAAA,KAAA;AACZ,EAAM,MAAA,QAAA,GAAW,UAAW,CAAA,aAAA,CAAc,QAAQ,CAAA;AAClD,EAAA,MAAM,kBAAqB,GAAA,CAAA;AAC3B,EAAM,MAAA,aAAA,GAAgB,GAAG,kBAAkB,CAAA,CAAA;AAC3C,EAAA,MAAM,UAAa,GAAA,GAAA;AACnB,EAAA,MAAM,KAAQ,GAAA,GAAA;AACd,EAAA,MAAM,QAAW,GAAA,aAAA;AACjB,EAAM,MAAA,GAAA,GAAM,UAAW,CAAA,aAAA,CAAc,GAAG,CAAA;AACxC,EAAA,MAAM,OAAO,KAAM,CAAA,MAAA,CAAO,GAAG,KAAM,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC9C,EAAA,MAAM,MAAS,GAAAA,aAAA;AACf,EAAA,MAAM,QAAW,GAAA,GAAA;AAEjB,EAAA,MAAM,eAAkB,GAAA,MAAA;AAAA,IACtB,CAAA;AAAA,IACA,qBAAA,GAAwB,MAAO,CAAA,CAAA,EAAG,gBAAgB;AAAA,GACpD;AAEA,EAAA,IAAI,YAAe,GAAA,aAAA;AACnB,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,eAAA,EAAiB,CAAK,EAAA,EAAA;AAGxC,IAAA,MAAM,kBAAqB,GAAA,IAAA,CAAK,KAAM,CAAA,YAAA,IAAgB,kBAAkB,CAAE,CAAA,CAAA;AAC1E,IAAgB,YAAA,IAAA,kBAAA;AAChB,IAAA,MAAM,mBAAmBC,WAAa,CAAA,MAAA,CAAO,GAAGA,WAAa,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AACxE,IAAM,MAAA,cAAA,GACJD,aAAgB,KAAA,QAAA,GACZ,kBACA,GAAA,gBAAA,KAAqB,QACnB,CACA,GAAA,kBAAA,GAAqB,MAAO,CAAA,GAAA,EAAK,kBAAkB,CAAA;AAC3D,IAAA,MAAM,eAAe,kBAAqB,GAAA,cAAA;AAE1C,IAAA,MAAME,aAAe,GAAA,CAAA;AACrB,IAAA,MAAM,YAAe,GAAA,YAAA,EAAA;AACrB,IAAM,MAAA,OAAA,GAAU,GAAG,YAAY,CAAA,CAAA;AAC/B,IAAA,MAAMC,WAAa,GAAA,CAAA;AACnB,IAAA,MAAMC,MAAQ,GAAA,GAAA;AACd,IAAA,MAAM,QAAW,GAAA,CAAA;AAEjB,IAAA,MAAMC,IAA4B,GAAA;AAAA,MAChC,OAAA;AAAA,MACAH,aAAAA;AAAA,MACA,GAAA;AAAA,MACA,QAAA;AAAA,MACA,cAAA;AAAA,MACA,OAAA;AAAA,MACA,YAAA;AAAA,MACAC,WAAAA;AAAA,MACA,YAAA;AAAA,MACA,aAAA;AAAA,MACAC,MAAAA;AAAA,MACA,kBAAA;AAAA,MACA,GAAA;AAAA,MACA,IAAA;AAAA,MACA,gBAAA;AAAA,MACA,QAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,cAAA,CAAe,KAAKC,IAAG,CAAA;AAAA;AAGzB,EAAA,MAAM,GAA4B,GAAA;AAAA,IAChC,OAAA;AAAA,IACA,IAAA;AAAA,IACA,YAAA;AAAA,IACA,GAAA;AAAA,IACA,eAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,aAAA;AAAA,IACA,kBAAA;AAAA,IACA,UAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,IAAA;AAAA,IACA,MAAA;AAAA,IACA;AAAA,GACF;AAEA,EAAA,eAAA,CAAgB,KAAK,GAAG,CAAA;AAC1B;AACA,MAAM,GAAA,GAAM,YAAY,GAAI,EAAA;AAE5B,OAAQ,CAAA,GAAA;AAAA,EACN,CAAA,KAAA,EAAQ,MAAM,KAAK,CAAA,WAAA,EAAc,gBAAgB,MAAM,CAAA,YAAA,EAAe,eAAe,MAAM,CAAA,aAAA;AAC7F,CAAA;AAEO,MAAM,oBAAoB,IAAI,KAAA;AAAA,EACnC,OAAQ,CAAA,YAAA;AAAA,EACR,eAAA;AAAA,EACA,kBAAA,CAAmB,SAAS,cAAc;AAC5C;AAEO,MAAM,mBAAmB,IAAI,KAAA;AAAA,EAClC,OAAQ,CAAA,WAAA;AAAA,EACR,cAAA;AAAA,EACA,kBAAA,CAAmB,SAAS,aAAa;AAC3C;;;;"}
@@ -1,68 +0,0 @@
1
- import { buildDataColumnMap, Table } from '../../Table.js';
2
- import { BaseUpdateGenerator } from '../../UpdateGenerator.js';
3
- import { schemas } from '../simul-schemas.js';
4
- import { instrumentsData, InstrumentColumnMap } from './instruments.js';
5
- import { random } from '../../data-utils.js';
6
- import basketConstituentData from '../../basket/reference-data/constituents.js';
7
-
8
- const { bid, bidSize, ask, askSize } = buildDataColumnMap(schemas, "prices");
9
- const pricesUpdateGenerator = new BaseUpdateGenerator({
10
- bid,
11
- bidSize,
12
- ask,
13
- askSize
14
- });
15
- const requiredInstrumentFields = ["ric", "price"];
16
- const pricesData = instrumentsData.map((instrument) => {
17
- const { ric, price: priceSeed } = requiredInstrumentFields.reduce(
18
- (obj, f) => ({ ...obj, [f]: instrument[InstrumentColumnMap[f]] }),
19
- {}
20
- );
21
- const spread = random(0, 10);
22
- const ask2 = priceSeed + spread / 2;
23
- const askSize2 = random(1e3, 3e3);
24
- const bid2 = priceSeed - spread / 2;
25
- const bidSize2 = random(1e3, 3e3);
26
- const close = priceSeed + random(0, 1) / 10;
27
- const last = priceSeed + random(0, 1) / 10;
28
- const open = priceSeed + random(0, 1) / 10;
29
- const phase = "C";
30
- const scenario = "close";
31
- return [ask2, askSize2, bid2, bidSize2, close, last, open, phase, ric, scenario];
32
- });
33
- for (const [, , , lastTrade, ric] of basketConstituentData) {
34
- const priceSeed = parseFloat(String(lastTrade));
35
- if (!isNaN(priceSeed)) {
36
- const spread = random(0, 10);
37
- const ask2 = priceSeed + spread / 2;
38
- const askSize2 = random(1e3, 3e3);
39
- const bid2 = priceSeed - spread / 2;
40
- const bidSize2 = random(1e3, 3e3);
41
- const close = priceSeed + random(0, 1) / 10;
42
- const last = priceSeed + random(0, 1) / 10;
43
- const open = priceSeed + random(0, 1) / 10;
44
- const phase = "C";
45
- const scenario = "close";
46
- pricesData.push([
47
- ask2,
48
- askSize2,
49
- bid2,
50
- bidSize2,
51
- close,
52
- last,
53
- open,
54
- phase,
55
- ric,
56
- scenario
57
- ]);
58
- }
59
- }
60
- const pricesTable = new Table(
61
- schemas.prices,
62
- pricesData,
63
- buildDataColumnMap(schemas, "prices"),
64
- pricesUpdateGenerator
65
- );
66
-
67
- export { pricesData, pricesTable };
68
- //# sourceMappingURL=prices.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prices.js","sources":["../../../src/simul/reference-data/prices.ts"],"sourcesContent":["import { buildDataColumnMap, Table } from \"../../Table\";\nimport { BaseUpdateGenerator } from \"../../UpdateGenerator\";\nimport { schemas } from \"../simul-schemas\";\nimport { instrumentsData, InstrumentColumnMap } from \"./instruments\";\nimport { random } from \"../../data-utils\";\nimport basketConstituentData from \"../../basket/reference-data/constituents\";\n\ntype ask = number;\ntype askSize = number;\ntype bid = number;\ntype bidSize = number;\ntype close = number;\ntype last = number;\ntype open = number;\ntype phase = \"C\";\ntype ric = string;\ntype scenario = \"close\";\n\nexport type PricesDataRow = [\n ask,\n askSize,\n bid,\n bidSize,\n close,\n last,\n open,\n phase,\n ric,\n scenario\n];\n\nconst { bid, bidSize, ask, askSize } = buildDataColumnMap(schemas, \"prices\");\nconst pricesUpdateGenerator = new BaseUpdateGenerator({\n bid,\n bidSize,\n ask,\n askSize,\n});\n\n// const start = performance.now();\n// Create 100_000 Instruments\nconst requiredInstrumentFields = [\"ric\", \"price\"] as const;\nconst pricesData: Array<PricesDataRow> = instrumentsData.map((instrument) => {\n const { ric, price: priceSeed } = requiredInstrumentFields.reduce(\n (obj, f) => ({ ...obj, [f]: instrument[InstrumentColumnMap[f]] }),\n {} as { ric: string; price: number }\n );\n const spread = random(0, 10);\n\n const ask = priceSeed + spread / 2;\n const askSize = random(1000, 3000);\n const bid = priceSeed - spread / 2;\n const bidSize = random(1000, 3000);\n const close = priceSeed + random(0, 1) / 10;\n const last = priceSeed + random(0, 1) / 10;\n const open = priceSeed + random(0, 1) / 10;\n const phase = \"C\";\n const scenario = \"close\";\n return [ask, askSize, bid, bidSize, close, last, open, phase, ric, scenario];\n});\n\n// prettier-ignore\nfor (const [,,,lastTrade,ric] of basketConstituentData) {\n const priceSeed = parseFloat(String(lastTrade));\n if (!isNaN(priceSeed)) {\n const spread = random(0, 10);\n const ask = priceSeed + spread / 2;\n const askSize = random(1000, 3000);\n const bid = priceSeed - spread / 2;\n const bidSize = random(1000, 3000);\n const close = priceSeed + random(0, 1) / 10;\n const last = priceSeed + random(0, 1) / 10;\n const open = priceSeed + random(0, 1) / 10;\n const phase = \"C\";\n const scenario = \"close\";\n pricesData.push([\n ask,\n askSize,\n bid,\n bidSize,\n close,\n last,\n open,\n phase,\n ric as string,\n scenario,\n ]);\n }\n}\n\n// const end = performance.now();\n// console.log(`generating 100,000 prices took ${end - start} ms`);\n\nexport const pricesTable = new Table(\n schemas.prices,\n pricesData,\n buildDataColumnMap(schemas, \"prices\"),\n pricesUpdateGenerator\n);\n\nexport { pricesData };\n"],"names":["ask","askSize","bid","bidSize"],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- const sides = ["BUY", "SELL"];
2
-
3
- export { sides };
4
- //# sourceMappingURL=sides.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sides.js","sources":["../../../src/simul/reference-data/sides.ts"],"sourcesContent":["export const sides = [\"BUY\", \"SELL\"];\n"],"names":[],"mappings":"AAAa,MAAA,KAAA,GAAQ,CAAC,KAAA,EAAO,MAAM;;;;"}
@@ -1,124 +0,0 @@
1
- import { isVuuMenuRpcRequest } from '@vuu-ui/vuu-utils';
2
- import { joinTables } from '../Table.js';
3
- import { SimulModule } from './SimulModule.js';
4
- import { instrumentsTable } from './reference-data/instruments.js';
5
- import { instrumentsExtendedTable } from './reference-data/instruments-extended.js';
6
- import { ordersTable } from './reference-data/orders.js';
7
- import { pricesTable } from './reference-data/prices.js';
8
- import { childOrdersTable, parentOrdersTable } from './reference-data/parent-child-orders.js';
9
- import { schemas } from './simul-schemas.js';
10
-
11
- const undefinedTables = {
12
- childOrders: void 0,
13
- instruments: void 0,
14
- instrumentsExtended: void 0,
15
- instrumentPrices: void 0,
16
- orders: void 0,
17
- parentOrders: void 0,
18
- prices: void 0
19
- };
20
- const tables = {
21
- childOrders: childOrdersTable,
22
- instruments: instrumentsTable,
23
- instrumentsExtended: instrumentsExtendedTable,
24
- instrumentPrices: joinTables(
25
- { module: "SIMUL", table: "instrumentPrices" },
26
- instrumentsTable,
27
- pricesTable,
28
- "ric"
29
- ),
30
- orders: ordersTable,
31
- parentOrders: parentOrdersTable,
32
- prices: pricesTable
33
- };
34
- const vuuLinks = {
35
- ...undefinedTables,
36
- childOrders: [
37
- { fromColumn: "parentOrderId", toColumn: "id", toTable: "parentOrders" }
38
- ],
39
- parentOrders: [
40
- { fromColumn: "ric", toColumn: "ric", toTable: "instruments" }
41
- ]
42
- };
43
- const menus = {
44
- childOrders: void 0,
45
- instruments: {
46
- name: "ROOT",
47
- menus: [
48
- {
49
- context: "selected-rows",
50
- filter: "",
51
- name: "Add Instruments To Order",
52
- rpcName: "ADD_INSTRUMENTS_TO_ORDER"
53
- },
54
- {
55
- context: "selected-rows",
56
- filter: "",
57
- name: "Edit Row",
58
- rpcName: "EDIT_ROW"
59
- },
60
- {
61
- context: "selected-rows",
62
- filter: "",
63
- name: "Edit Rows",
64
- rpcName: "VP_BULK_EDIT_BEGIN_RPC"
65
- }
66
- ]
67
- },
68
- instrumentsExtended: void 0,
69
- instrumentPrices: void 0,
70
- orders: {
71
- name: "ROOT",
72
- menus: [
73
- {
74
- context: "row",
75
- filter: `status in ["New","Partial Exec"]`,
76
- name: "Cancel Order",
77
- rpcName: "CANCEL_ORDER"
78
- }
79
- ]
80
- },
81
- parentOrders: void 0,
82
- prices: void 0
83
- };
84
- const cancelOrder = async (rpcRequest) => {
85
- if (isVuuMenuRpcRequest(rpcRequest)) {
86
- const { rowKey, vpId } = rpcRequest;
87
- const table = tables.orders;
88
- const row = table.findByKey(rowKey);
89
- row[table.map.status] = "Cancelled";
90
- table.updateRow(row);
91
- return {
92
- action: {
93
- type: "SHOW_NOTIFICATION_ACTION",
94
- message: `Order id: ${rowKey}`,
95
- title: "Order cancelled"
96
- },
97
- rpcName: "CANCEL_ORDER",
98
- type: "VIEW_PORT_MENU_RESP",
99
- vpId
100
- };
101
- } else {
102
- throw Error("cancelOrder invalid rpcRequest");
103
- }
104
- };
105
- const services = {
106
- ...undefinedTables,
107
- orders: [
108
- {
109
- rpcName: "CANCEL_ORDER",
110
- service: cancelOrder
111
- }
112
- ]
113
- };
114
- const simulModule = new SimulModule({
115
- menus,
116
- name: "SIMUL",
117
- schemas,
118
- services,
119
- tables,
120
- vuuLinks
121
- });
122
-
123
- export { simulModule };
124
- //# sourceMappingURL=simul-module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"simul-module.js","sources":["../../src/simul/simul-module.ts"],"sourcesContent":["import {\n ClientToServerMenuRowRPC,\n VuuLink,\n VuuMenu,\n} from \"@vuu-ui/vuu-protocol-types\";\nimport { isVuuMenuRpcRequest } from \"@vuu-ui/vuu-utils\";\nimport { Table, joinTables } from \"../Table\";\nimport { RpcService, ServiceHandler } from \"../VuuModule\";\nimport { SimulModule } from \"./SimulModule\";\nimport { instrumentsTable } from \"./reference-data/instruments\";\nimport { instrumentsExtendedTable } from \"./reference-data/instruments-extended\";\nimport { ordersTable } from \"./reference-data/orders\";\nimport { pricesTable } from \"./reference-data/prices\";\nimport {\n parentOrdersTable,\n childOrdersTable,\n} from \"./reference-data/parent-child-orders\";\nimport { schemas, type SimulTableName } from \"./simul-schemas\";\n\nconst undefinedTables = {\n childOrders: undefined,\n instruments: undefined,\n instrumentsExtended: undefined,\n instrumentPrices: undefined,\n orders: undefined,\n parentOrders: undefined,\n prices: undefined,\n};\n\nconst tables: Record<SimulTableName, Table> = {\n childOrders: childOrdersTable,\n instruments: instrumentsTable,\n instrumentsExtended: instrumentsExtendedTable,\n instrumentPrices: joinTables(\n { module: \"SIMUL\", table: \"instrumentPrices\" },\n instrumentsTable,\n pricesTable,\n \"ric\",\n ),\n orders: ordersTable,\n parentOrders: parentOrdersTable,\n prices: pricesTable,\n};\n\nconst vuuLinks: Record<SimulTableName, VuuLink[] | undefined> = {\n ...undefinedTables,\n childOrders: [\n { fromColumn: \"parentOrderId\", toColumn: \"id\", toTable: \"parentOrders\" },\n ],\n parentOrders: [\n { fromColumn: \"ric\", toColumn: \"ric\", toTable: \"instruments\" },\n ],\n};\n\nconst menus: Record<SimulTableName, VuuMenu | undefined> = {\n childOrders: undefined,\n instruments: {\n name: \"ROOT\",\n menus: [\n {\n context: \"selected-rows\",\n filter: \"\",\n name: \"Add Instruments To Order\",\n rpcName: \"ADD_INSTRUMENTS_TO_ORDER\",\n },\n {\n context: \"selected-rows\",\n filter: \"\",\n name: \"Edit Row\",\n rpcName: \"EDIT_ROW\",\n },\n {\n context: \"selected-rows\",\n filter: \"\",\n name: \"Edit Rows\",\n rpcName: \"VP_BULK_EDIT_BEGIN_RPC\",\n },\n ],\n },\n instrumentsExtended: undefined,\n instrumentPrices: undefined,\n orders: {\n name: \"ROOT\",\n menus: [\n {\n context: \"row\",\n filter: `status in [\"New\",\"Partial Exec\"]`,\n name: \"Cancel Order\",\n rpcName: \"CANCEL_ORDER\",\n },\n ],\n },\n parentOrders: undefined,\n prices: undefined,\n};\n\nconst cancelOrder: ServiceHandler = async (rpcRequest) => {\n if (isVuuMenuRpcRequest(rpcRequest)) {\n const { rowKey, vpId } = rpcRequest as ClientToServerMenuRowRPC;\n const table = tables.orders;\n const row = table.findByKey(rowKey);\n row[table.map.status] = \"Cancelled\";\n table.updateRow(row);\n\n return {\n action: {\n type: \"SHOW_NOTIFICATION_ACTION\",\n message: `Order id: ${rowKey}`,\n title: \"Order cancelled\",\n },\n rpcName: \"CANCEL_ORDER\",\n type: \"VIEW_PORT_MENU_RESP\",\n vpId,\n };\n } else {\n throw Error(\"cancelOrder invalid rpcRequest\");\n }\n};\n\nconst services: Record<SimulTableName, RpcService[] | undefined> = {\n ...undefinedTables,\n orders: [\n {\n rpcName: \"CANCEL_ORDER\",\n service: cancelOrder,\n },\n ],\n};\n\nexport const simulModule = new SimulModule({\n menus,\n name: \"SIMUL\",\n schemas,\n services,\n tables,\n vuuLinks,\n});\n"],"names":[],"mappings":"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"}