@vuu-ui/vuu-data-test 0.13.7 → 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,25 +0,0 @@
1
- const accounts = [
2
- "Account 01",
3
- "Account 02",
4
- "Account 03",
5
- "Account 04",
6
- "Account 105",
7
- "Account 06",
8
- "Account 07",
9
- "Account 08",
10
- "Account 09",
11
- "Account 10",
12
- "Account 11",
13
- "Account 12",
14
- "Account 13",
15
- "Account 14",
16
- "Account 15",
17
- "Account 16",
18
- "Account 17",
19
- "Account 18",
20
- "Account 19",
21
- "Account 20"
22
- ];
23
-
24
- export { accounts };
25
- //# sourceMappingURL=accounts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accounts.js","sources":["../../../src/simul/reference-data/accounts.ts"],"sourcesContent":["export const accounts = [\n \"Account 01\",\n \"Account 02\",\n \"Account 03\",\n \"Account 04\",\n \"Account 105\",\n \"Account 06\",\n \"Account 07\",\n \"Account 08\",\n \"Account 09\",\n \"Account 10\",\n \"Account 11\",\n \"Account 12\",\n \"Account 13\",\n \"Account 14\",\n \"Account 15\",\n \"Account 16\",\n \"Account 17\",\n \"Account 18\",\n \"Account 19\",\n \"Account 20\",\n];\n"],"names":[],"mappings":"AAAO,MAAM,QAAW,GAAA;AAAA,EACtB,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,aAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA,YAAA;AAAA,EACA;AACF;;;;"}
@@ -1,4 +0,0 @@
1
- const algos = ["DARKLIQ", "IS", "SURESHOT", "VWAP", "LITLIQ", "TWAP"];
2
-
3
- export { algos };
4
- //# sourceMappingURL=algos.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"algos.js","sources":["../../../src/simul/reference-data/algos.ts"],"sourcesContent":["export const algos = [\"DARKLIQ\", \"IS\", \"SURESHOT\", \"VWAP\", \"LITLIQ\", \"TWAP\"];\n"],"names":[],"mappings":"AAAO,MAAM,QAAQ,CAAC,SAAA,EAAW,MAAM,UAAY,EAAA,MAAA,EAAQ,UAAU,MAAM;;;;"}
@@ -1,4 +0,0 @@
1
- const currencies = ["CAD", "GBX", "USD", "EUR", "GBP"];
2
-
3
- export { currencies };
4
- //# sourceMappingURL=currencies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"currencies.js","sources":["../../../src/simul/reference-data/currencies.ts"],"sourcesContent":["export const currencies = [\"CAD\", \"GBX\", \"USD\", \"EUR\", \"GBP\"];\n"],"names":[],"mappings":"AAAO,MAAM,aAAa,CAAC,KAAA,EAAO,KAAO,EAAA,KAAA,EAAO,OAAO,KAAK;;;;"}
@@ -1,16 +0,0 @@
1
- import { random } from '../../data-utils.js';
2
- import { Table, buildDataColumnMap } from '../../Table.js';
3
- import { schemas } from '../simul-schemas.js';
4
- import { instrumentsData } from './instruments.js';
5
-
6
- const instrumentsExtendedData = instrumentsData.map(
7
- (row) => row.slice(0, -1).concat([random(0, 1) === 1, random(0, 1) === 1, (/* @__PURE__ */ new Date()).getTime()])
8
- );
9
- const instrumentsExtendedTable = new Table(
10
- schemas.instrumentsExtended,
11
- instrumentsExtendedData,
12
- buildDataColumnMap(schemas, "instrumentsExtended")
13
- );
14
-
15
- export { instrumentsExtendedTable };
16
- //# sourceMappingURL=instruments-extended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instruments-extended.js","sources":["../../../src/simul/reference-data/instruments-extended.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 { instrumentsData } from \"./instruments\";\n\nconst instrumentsExtendedData = instrumentsData.map((row) =>\n (row as VuuRowDataItemType[])\n .slice(0, -1)\n .concat([random(0, 1) === 1, random(0, 1) === 1, new Date().getTime()]),\n);\n\nexport const instrumentsExtendedTable = new Table(\n schemas.instrumentsExtended,\n instrumentsExtendedData,\n buildDataColumnMap(schemas, \"instrumentsExtended\"),\n);\n"],"names":[],"mappings":";;;;;AAMA,MAAM,0BAA0B,eAAgB,CAAA,GAAA;AAAA,EAAI,CAAC,GAClD,KAAA,GAAA,CACE,KAAM,CAAA,CAAA,EAAG,EAAE,CACX,CAAA,MAAA,CAAO,CAAC,MAAA,CAAO,CAAG,EAAA,CAAC,MAAM,CAAG,EAAA,MAAA,CAAO,CAAG,EAAA,CAAC,CAAM,KAAA,CAAA,EAAA,qBAAO,IAAK,EAAA,EAAE,OAAQ,EAAC,CAAC;AAC1E,CAAA;AAEO,MAAM,2BAA2B,IAAI,KAAA;AAAA,EAC1C,OAAQ,CAAA,mBAAA;AAAA,EACR,uBAAA;AAAA,EACA,kBAAA,CAAmB,SAAS,qBAAqB;AACnD;;;;"}
@@ -1,72 +0,0 @@
1
- import { isinGenerator } from './isin-generator/index.js';
2
- import { currencies } from './currencies.js';
3
- import { suffixes, locations } from './locations.js';
4
- import { lotsizes } from './lotsizes.js';
5
- import { random } from '../../data-utils.js';
6
- import { Table, buildDataColumnMap } from '../../Table.js';
7
- import { schemas } from '../simul-schemas.js';
8
-
9
- const InstrumentColumnMap = {
10
- bbg: 0,
11
- currency: 1,
12
- description: 2,
13
- exchange: 3,
14
- string: 4,
15
- number: 5,
16
- ric: 6,
17
- price: 7,
18
- date: 8
19
- };
20
- const instrumentsData = [];
21
- const chars1 = Array.from("ABCEFGHKMN");
22
- const chars2 = Array.from("ABCEFGHKMN");
23
- const chars3 = Array.from("OPQRTUVWYZ");
24
- const chars4 = Array.from("OPQRTUVWYZ");
25
- const randomPrice = () => {
26
- const price = random(0, 1e4);
27
- const multiplier = random(1, 10);
28
- return price / multiplier;
29
- };
30
- let count = 0;
31
- for (const char1 of chars1) {
32
- for (const char2 of chars2) {
33
- for (const char3 of chars3) {
34
- for (const char4 of chars4) {
35
- const suffix = suffixes[count % 8];
36
- const ric = char1 + char2 + char3 + char4 + "." + suffix;
37
- const bbg = char1 + char2 + char3 + char4 + " " + suffix;
38
- const description = `${ric} description`;
39
- const currency = currencies[random(0, 4)];
40
- const isin = isinGenerator();
41
- const lotSize = lotsizes[random(0, lotsizes.length - 1)];
42
- const exchange = locations[suffix][1];
43
- const price = randomPrice();
44
- const date = (/* @__PURE__ */ new Date()).getTime();
45
- instrumentsData.push([
46
- bbg,
47
- currency,
48
- description,
49
- exchange,
50
- String(isin),
51
- lotSize,
52
- ric,
53
- price,
54
- date
55
- ]);
56
- count++;
57
- }
58
- }
59
- }
60
- }
61
- const getRic = (defaultRic) => {
62
- const row = instrumentsData.at(random(0, instrumentsData.length));
63
- return row?.[InstrumentColumnMap.ric] ?? defaultRic;
64
- };
65
- const instrumentsTable = new Table(
66
- schemas.instruments,
67
- instrumentsData,
68
- buildDataColumnMap(schemas, "instruments")
69
- );
70
-
71
- export { InstrumentColumnMap, getRic, instrumentsData, instrumentsTable };
72
- //# sourceMappingURL=instruments.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"instruments.js","sources":["../../../src/simul/reference-data/instruments.ts"],"sourcesContent":["import { isinGenerator } from \"./isin-generator\";\nimport { currencies } from \"./currencies\";\nimport { locations, suffixes } from \"./locations\";\nimport { lotsizes } from \"./lotsizes\";\nimport { random } from \"../../data-utils\";\nimport { buildDataColumnMap, Table } from \"../../Table\";\nimport { schemas } from \"../simul-schemas\";\n\nexport type bbg = string;\nexport type currency = string;\nexport type ric = string;\nexport type description = string;\nexport type exchange = string;\n// seed for price generation\nexport type price = number;\nexport type date = number;\n\nexport type InstrumentsDataRow = [\n bbg,\n currency,\n description,\n exchange,\n string,\n number,\n ric,\n price,\n date,\n];\n\nexport const InstrumentColumnMap = {\n bbg: 0,\n currency: 1,\n description: 2,\n exchange: 3,\n string: 4,\n number: 5,\n ric: 6,\n price: 7,\n date: 8,\n} as const;\n\nconst instrumentsData: InstrumentsDataRow[] = [];\n\nconst chars1 = Array.from(\"ABCEFGHKMN\");\nconst chars2 = Array.from(\"ABCEFGHKMN\");\nconst chars3 = Array.from(\"OPQRTUVWYZ\");\nconst chars4 = Array.from(\"OPQRTUVWYZ\");\n\nconst randomPrice = () => {\n const price = random(0, 10000);\n const multiplier = random(1, 10);\n return price / multiplier;\n};\n\n// const start = performance.now();\n// Create 10_000 Instruments\nlet count = 0;\nfor (const char1 of chars1) {\n for (const char2 of chars2) {\n for (const char3 of chars3) {\n for (const char4 of chars4) {\n const suffix = suffixes[count % 8];\n const ric = char1 + char2 + char3 + char4 + \".\" + suffix;\n const bbg = char1 + char2 + char3 + char4 + \" \" + suffix;\n const description = `${ric} description`;\n const currency = currencies[random(0, 4)];\n const isin = isinGenerator();\n const lotSize = lotsizes[random(0, lotsizes.length - 1)];\n\n const exchange = locations[suffix][1];\n const price = randomPrice();\n const date = new Date().getTime();\n\n instrumentsData.push([\n bbg,\n currency,\n description,\n exchange,\n String(isin),\n lotSize,\n ric,\n price,\n date,\n ]);\n count++;\n }\n }\n }\n}\n\n// const end = performance.now();\n// console.log(`generating 10,000 instruments took ${end - start} ms`);\n\nexport const getRic = (defaultRic: string) => {\n const row = instrumentsData.at(random(0, instrumentsData.length));\n return row?.[InstrumentColumnMap.ric] ?? defaultRic;\n};\n\nexport const instrumentsTable = new Table(\n schemas.instruments,\n instrumentsData,\n buildDataColumnMap(schemas, \"instruments\"),\n);\n\nexport { instrumentsData };\n"],"names":[],"mappings":";;;;;;;;AA6BO,MAAM,mBAAsB,GAAA;AAAA,EACjC,GAAK,EAAA,CAAA;AAAA,EACL,QAAU,EAAA,CAAA;AAAA,EACV,WAAa,EAAA,CAAA;AAAA,EACb,QAAU,EAAA,CAAA;AAAA,EACV,MAAQ,EAAA,CAAA;AAAA,EACR,MAAQ,EAAA,CAAA;AAAA,EACR,GAAK,EAAA,CAAA;AAAA,EACL,KAAO,EAAA,CAAA;AAAA,EACP,IAAM,EAAA;AACR;AAEA,MAAM,kBAAwC;AAE9C,MAAM,MAAA,GAAS,KAAM,CAAA,IAAA,CAAK,YAAY,CAAA;AACtC,MAAM,MAAA,GAAS,KAAM,CAAA,IAAA,CAAK,YAAY,CAAA;AACtC,MAAM,MAAA,GAAS,KAAM,CAAA,IAAA,CAAK,YAAY,CAAA;AACtC,MAAM,MAAA,GAAS,KAAM,CAAA,IAAA,CAAK,YAAY,CAAA;AAEtC,MAAM,cAAc,MAAM;AACxB,EAAM,MAAA,KAAA,GAAQ,MAAO,CAAA,CAAA,EAAG,GAAK,CAAA;AAC7B,EAAM,MAAA,UAAA,GAAa,MAAO,CAAA,CAAA,EAAG,EAAE,CAAA;AAC/B,EAAA,OAAO,KAAQ,GAAA,UAAA;AACjB,CAAA;AAIA,IAAI,KAAQ,GAAA,CAAA;AACZ,KAAA,MAAW,SAAS,MAAQ,EAAA;AAC1B,EAAA,KAAA,MAAW,SAAS,MAAQ,EAAA;AAC1B,IAAA,KAAA,MAAW,SAAS,MAAQ,EAAA;AAC1B,MAAA,KAAA,MAAW,SAAS,MAAQ,EAAA;AAC1B,QAAM,MAAA,MAAA,GAAS,QAAS,CAAA,KAAA,GAAQ,CAAC,CAAA;AACjC,QAAA,MAAM,GAAM,GAAA,KAAA,GAAQ,KAAQ,GAAA,KAAA,GAAQ,QAAQ,GAAM,GAAA,MAAA;AAClD,QAAA,MAAM,GAAM,GAAA,KAAA,GAAQ,KAAQ,GAAA,KAAA,GAAQ,QAAQ,GAAM,GAAA,MAAA;AAClD,QAAM,MAAA,WAAA,GAAc,GAAG,GAAG,CAAA,YAAA,CAAA;AAC1B,QAAA,MAAM,QAAW,GAAA,UAAA,CAAW,MAAO,CAAA,CAAA,EAAG,CAAC,CAAC,CAAA;AACxC,QAAA,MAAM,OAAO,aAAc,EAAA;AAC3B,QAAA,MAAM,UAAU,QAAS,CAAA,MAAA,CAAO,GAAG,QAAS,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAEvD,QAAA,MAAM,QAAW,GAAA,SAAA,CAAU,MAAM,CAAA,CAAE,CAAC,CAAA;AACpC,QAAA,MAAM,QAAQ,WAAY,EAAA;AAC1B,QAAA,MAAM,IAAO,GAAA,iBAAA,IAAI,IAAK,EAAA,EAAE,OAAQ,EAAA;AAEhC,QAAA,eAAA,CAAgB,IAAK,CAAA;AAAA,UACnB,GAAA;AAAA,UACA,QAAA;AAAA,UACA,WAAA;AAAA,UACA,QAAA;AAAA,UACA,OAAO,IAAI,CAAA;AAAA,UACX,OAAA;AAAA,UACA,GAAA;AAAA,UACA,KAAA;AAAA,UACA;AAAA,SACD,CAAA;AACD,QAAA,KAAA,EAAA;AAAA;AACF;AACF;AAEJ;AAKa,MAAA,MAAA,GAAS,CAAC,UAAuB,KAAA;AAC5C,EAAA,MAAM,MAAM,eAAgB,CAAA,EAAA,CAAG,OAAO,CAAG,EAAA,eAAA,CAAgB,MAAM,CAAC,CAAA;AAChE,EAAO,OAAA,GAAA,GAAM,mBAAoB,CAAA,GAAG,CAAK,IAAA,UAAA;AAC3C;AAEO,MAAM,mBAAmB,IAAI,KAAA;AAAA,EAClC,OAAQ,CAAA,WAAA;AAAA,EACR,eAAA;AAAA,EACA,kBAAA,CAAmB,SAAS,aAAa;AAC3C;;;;"}
@@ -1,4 +0,0 @@
1
- const convertStringToBaseTenNumber = (value) => parseInt(value, 10);
2
-
3
- export { convertStringToBaseTenNumber };
4
- //# sourceMappingURL=convert-string-to-base-ten-number.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convert-string-to-base-ten-number.js","sources":["../../../../src/simul/reference-data/isin-generator/convert-string-to-base-ten-number.ts"],"sourcesContent":["export const convertStringToBaseTenNumber = (value: string): number =>\n parseInt(value, 10);\n"],"names":[],"mappings":"AAAO,MAAM,4BAA+B,GAAA,CAAC,KAC3C,KAAA,QAAA,CAAS,OAAO,EAAE;;;;"}
@@ -1,29 +0,0 @@
1
- const alphabet = [
2
- "A",
3
- "B",
4
- "C",
5
- "D",
6
- "E",
7
- "F",
8
- "G",
9
- "H",
10
- "J",
11
- "K",
12
- "L",
13
- "M",
14
- "N",
15
- "P",
16
- "Q",
17
- "R",
18
- "S",
19
- "T",
20
- "U",
21
- "V",
22
- "W",
23
- "X",
24
- "Y",
25
- "Z"
26
- ];
27
-
28
- export { alphabet };
29
- //# sourceMappingURL=alphabet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alphabet.js","sources":["../../../../../src/simul/reference-data/isin-generator/fixtures/alphabet.ts"],"sourcesContent":["export const alphabet = [\n \"A\",\n \"B\",\n \"C\",\n \"D\",\n \"E\",\n \"F\",\n \"G\",\n \"H\",\n \"J\",\n \"K\",\n \"L\",\n \"M\",\n \"N\",\n \"P\",\n \"Q\",\n \"R\",\n \"S\",\n \"T\",\n \"U\",\n \"V\",\n \"W\",\n \"X\",\n \"Y\",\n \"Z\",\n];\n"],"names":[],"mappings":"AAAO,MAAM,QAAW,GAAA;AAAA,EACtB,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA,GAAA;AAAA,EACA;AACF;;;;"}
@@ -1,7 +0,0 @@
1
- import { alphabet } from './alphabet.js';
2
- import { baseTenNumbers } from './base-ten-numbers.js';
3
-
4
- const alphanumeric = [...alphabet, ...baseTenNumbers];
5
-
6
- export { alphanumeric };
7
- //# sourceMappingURL=alphanumeric-values.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"alphanumeric-values.js","sources":["../../../../../src/simul/reference-data/isin-generator/fixtures/alphanumeric-values.ts"],"sourcesContent":["import { alphabet } from \"./alphabet\";\nimport { baseTenNumbers } from \"./base-ten-numbers\";\n\nexport const alphanumeric = [...alphabet, ...baseTenNumbers];\n"],"names":[],"mappings":";;;AAGO,MAAM,YAAe,GAAA,CAAC,GAAG,QAAA,EAAU,GAAG,cAAc;;;;"}
@@ -1,15 +0,0 @@
1
- const baseTenNumbers = [
2
- 0,
3
- 1,
4
- 2,
5
- 3,
6
- 4,
7
- 5,
8
- 6,
9
- 7,
10
- 8,
11
- 9
12
- ];
13
-
14
- export { baseTenNumbers };
15
- //# sourceMappingURL=base-ten-numbers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base-ten-numbers.js","sources":["../../../../../src/simul/reference-data/isin-generator/fixtures/base-ten-numbers.ts"],"sourcesContent":["export const baseTenNumbers = [\n 0,\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n];\n"],"names":[],"mappings":"AAAO,MAAM,cAAiB,GAAA;AAAA,EAC5B,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA,CAAA;AAAA,EACA;AACF;;;;"}
@@ -1,22 +0,0 @@
1
- import { convertStringToBaseTenNumber } from './convert-string-to-base-ten-number.js';
2
- import { isOdd } from './is-odd.js';
3
-
4
- const generateCusipCheckCode = (cusip) => {
5
- const cusipLength = cusip.length;
6
- let currentValue;
7
- let total = 0;
8
- for (let i = 0; i < cusipLength; i++) {
9
- currentValue = cusip[i];
10
- const currentNumberToBaseTen = convertStringToBaseTenNumber(currentValue);
11
- let currentNumberOrPosition = isNaN(currentNumberToBaseTen) ? currentValue.charCodeAt(0) - "A".charCodeAt(0) + 10 : parseInt(currentValue);
12
- if (isOdd(i)) {
13
- currentNumberOrPosition = currentNumberOrPosition * 2;
14
- }
15
- total = total + Math.floor(currentNumberOrPosition / 10) + currentNumberOrPosition % 10;
16
- }
17
- const check = (10 - total % 10) % 10;
18
- return check;
19
- };
20
-
21
- export { generateCusipCheckCode };
22
- //# sourceMappingURL=generate-cusip-check-code.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-cusip-check-code.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-cusip-check-code.ts"],"sourcesContent":["import { convertStringToBaseTenNumber } from \"./convert-string-to-base-ten-number\";\nimport { isOdd } from \"./is-odd\";\n\nexport const generateCusipCheckCode = (cusip: string): number => {\n const cusipLength = cusip.length;\n let currentValue;\n let total = 0;\n\n for (let i = 0; i < cusipLength; i++) {\n currentValue = cusip[i];\n\n const currentNumberToBaseTen = convertStringToBaseTenNumber(currentValue);\n\n let currentNumberOrPosition = isNaN(currentNumberToBaseTen)\n ? currentValue.charCodeAt(0) - \"A\".charCodeAt(0) + 10\n : parseInt(currentValue);\n\n if (isOdd(i)) {\n currentNumberOrPosition = currentNumberOrPosition * 2;\n }\n\n total =\n total +\n Math.floor(currentNumberOrPosition / 10) +\n (currentNumberOrPosition % 10);\n }\n const check = (10 - (total % 10)) % 10;\n return check;\n};\n"],"names":[],"mappings":";;;AAGa,MAAA,sBAAA,GAAyB,CAAC,KAA0B,KAAA;AAC/D,EAAA,MAAM,cAAc,KAAM,CAAA,MAAA;AAC1B,EAAI,IAAA,YAAA;AACJ,EAAA,IAAI,KAAQ,GAAA,CAAA;AAEZ,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,WAAA,EAAa,CAAK,EAAA,EAAA;AACpC,IAAA,YAAA,GAAe,MAAM,CAAC,CAAA;AAEtB,IAAM,MAAA,sBAAA,GAAyB,6BAA6B,YAAY,CAAA;AAExE,IAAA,IAAI,uBAA0B,GAAA,KAAA,CAAM,sBAAsB,CAAA,GACtD,aAAa,UAAW,CAAA,CAAC,CAAI,GAAA,GAAA,CAAI,UAAW,CAAA,CAAC,CAAI,GAAA,EAAA,GACjD,SAAS,YAAY,CAAA;AAEzB,IAAI,IAAA,KAAA,CAAM,CAAC,CAAG,EAAA;AACZ,MAAA,uBAAA,GAA0B,uBAA0B,GAAA,CAAA;AAAA;AAGtD,IAAA,KAAA,GACE,QACA,IAAK,CAAA,KAAA,CAAM,uBAA0B,GAAA,EAAE,IACtC,uBAA0B,GAAA,EAAA;AAAA;AAE/B,EAAM,MAAA,KAAA,GAAA,CAAS,EAAM,GAAA,KAAA,GAAQ,EAAO,IAAA,EAAA;AACpC,EAAO,OAAA,KAAA;AACT;;;;"}
@@ -1,11 +0,0 @@
1
- import { generateRandomStringOfAlphanumericChars } from './generate-random-string-of-alphanumeric-chars.js';
2
- import { generateRandomStringOfBaseTenChars } from './generate-random-string-of-base-ten-chars.js';
3
-
4
- const generateCusipWithoutCheckCode = () => {
5
- const randomBaseTenString = generateRandomStringOfBaseTenChars();
6
- const randomAlphanumericString = generateRandomStringOfAlphanumericChars();
7
- return randomBaseTenString + randomAlphanumericString;
8
- };
9
-
10
- export { generateCusipWithoutCheckCode };
11
- //# sourceMappingURL=generate-cusip-without-check-code.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-cusip-without-check-code.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-cusip-without-check-code.ts"],"sourcesContent":["import { generateRandomStringOfAlphanumericChars } from \"./generate-random-string-of-alphanumeric-chars\";\nimport { generateRandomStringOfBaseTenChars } from \"./generate-random-string-of-base-ten-chars\";\n\nexport const generateCusipWithoutCheckCode = (): string => {\n const randomBaseTenString = generateRandomStringOfBaseTenChars();\n const randomAlphanumericString = generateRandomStringOfAlphanumericChars();\n return randomBaseTenString + randomAlphanumericString;\n};\n"],"names":[],"mappings":";;;AAGO,MAAM,gCAAgC,MAAc;AACzD,EAAA,MAAM,sBAAsB,kCAAmC,EAAA;AAC/D,EAAA,MAAM,2BAA2B,uCAAwC,EAAA;AACzE,EAAA,OAAO,mBAAsB,GAAA,wBAAA;AAC/B;;;;"}
@@ -1,11 +0,0 @@
1
- import { generateCusipCheckCode } from './generate-cusip-check-code.js';
2
- import { generateCusipWithoutCheckCode } from './generate-cusip-without-check-code.js';
3
-
4
- const generateCusip = () => {
5
- const cusip = generateCusipWithoutCheckCode();
6
- const check = generateCusipCheckCode(cusip);
7
- return cusip + check;
8
- };
9
-
10
- export { generateCusip };
11
- //# sourceMappingURL=generate-cusip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-cusip.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-cusip.ts"],"sourcesContent":["import { generateCusipCheckCode } from \"./generate-cusip-check-code\";\nimport { generateCusipWithoutCheckCode } from \"./generate-cusip-without-check-code\";\n\nexport const generateCusip = (): string => {\n const cusip = generateCusipWithoutCheckCode();\n const check = generateCusipCheckCode(cusip);\n\n return cusip + check;\n};\n"],"names":[],"mappings":";;;AAGO,MAAM,gBAAgB,MAAc;AACzC,EAAA,MAAM,QAAQ,6BAA8B,EAAA;AAC5C,EAAM,MAAA,KAAA,GAAQ,uBAAuB,KAAK,CAAA;AAE1C,EAAA,OAAO,KAAQ,GAAA,KAAA;AACjB;;;;"}
@@ -1,6 +0,0 @@
1
- import { alphanumeric } from './fixtures/alphanumeric-values.js';
2
-
3
- const generateRandomAlphanumeric = () => alphanumeric[Math.floor(Math.random() * alphanumeric.length)];
4
-
5
- export { generateRandomAlphanumeric };
6
- //# sourceMappingURL=generate-random-alphanumeric.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-random-alphanumeric.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-random-alphanumeric.ts"],"sourcesContent":["import { alphanumeric } from \"./fixtures/alphanumeric-values\";\n\nexport const generateRandomAlphanumeric = (): string | number =>\n alphanumeric[Math.floor(Math.random() * alphanumeric.length)];\n"],"names":[],"mappings":";;AAEa,MAAA,0BAAA,GAA6B,MACxC,YAAA,CAAa,IAAK,CAAA,KAAA,CAAM,KAAK,MAAO,EAAA,GAAI,YAAa,CAAA,MAAM,CAAC;;;;"}
@@ -1,4 +0,0 @@
1
- const generateRandomBaseTenNumber = () => Math.floor(Math.random() * 10);
2
-
3
- export { generateRandomBaseTenNumber };
4
- //# sourceMappingURL=generate-random-base-ten-number.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-random-base-ten-number.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-random-base-ten-number.ts"],"sourcesContent":["export const generateRandomBaseTenNumber = (): number =>\n Math.floor(Math.random() * 10);\n"],"names":[],"mappings":"AAAO,MAAM,8BAA8B,MACzC,IAAA,CAAK,MAAM,IAAK,CAAA,MAAA,KAAW,EAAE;;;;"}
@@ -1,12 +0,0 @@
1
- import { generateRandomAlphanumeric } from './generate-random-alphanumeric.js';
2
-
3
- const generateRandomStringOfAlphanumericChars = () => {
4
- let string = "";
5
- for (let i = 0; i < 2; i++) {
6
- string = string + generateRandomAlphanumeric();
7
- }
8
- return string;
9
- };
10
-
11
- export { generateRandomStringOfAlphanumericChars };
12
- //# sourceMappingURL=generate-random-string-of-alphanumeric-chars.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-random-string-of-alphanumeric-chars.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.ts"],"sourcesContent":["import { generateRandomAlphanumeric } from \"./generate-random-alphanumeric\";\n\nexport const generateRandomStringOfAlphanumericChars = () => {\n let string = \"\";\n for (let i = 0; i < 2; i++) {\n string = string + generateRandomAlphanumeric();\n }\n return string;\n};\n"],"names":[],"mappings":";;AAEO,MAAM,0CAA0C,MAAM;AAC3D,EAAA,IAAI,MAAS,GAAA,EAAA;AACb,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,CAAA,EAAG,CAAK,EAAA,EAAA;AAC1B,IAAA,MAAA,GAAS,SAAS,0BAA2B,EAAA;AAAA;AAE/C,EAAO,OAAA,MAAA;AACT;;;;"}
@@ -1,12 +0,0 @@
1
- import { generateRandomBaseTenNumber } from './generate-random-base-ten-number.js';
2
-
3
- const generateRandomStringOfBaseTenChars = () => {
4
- let string = "";
5
- for (let i = 0; i < 6; i++) {
6
- string = string + generateRandomBaseTenNumber();
7
- }
8
- return string;
9
- };
10
-
11
- export { generateRandomStringOfBaseTenChars };
12
- //# sourceMappingURL=generate-random-string-of-base-ten-chars.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-random-string-of-base-ten-chars.js","sources":["../../../../src/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.ts"],"sourcesContent":["import { generateRandomBaseTenNumber } from \"./generate-random-base-ten-number\";\n\nexport const generateRandomStringOfBaseTenChars = () => {\n let string = \"\";\n for (let i = 0; i < 6; i++) {\n string = string + generateRandomBaseTenNumber();\n }\n return string;\n};\n"],"names":[],"mappings":";;AAEO,MAAM,qCAAqC,MAAM;AACtD,EAAA,IAAI,MAAS,GAAA,EAAA;AACb,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,CAAA,EAAG,CAAK,EAAA,EAAA;AAC1B,IAAA,MAAA,GAAS,SAAS,2BAA4B,EAAA;AAAA;AAEhD,EAAO,OAAA,MAAA;AACT;;;;"}
@@ -1,293 +0,0 @@
1
- import { generateCusip } from './generate-cusip.js';
2
-
3
- const countryCodes = [
4
- "AD",
5
- "AE",
6
- "AF",
7
- "AG",
8
- "AI",
9
- "AL",
10
- "AM",
11
- "AO",
12
- "AQ",
13
- "AR",
14
- "AS",
15
- "AT",
16
- "AU",
17
- "AW",
18
- "AX",
19
- "AZ",
20
- "BA",
21
- "BB",
22
- "BD",
23
- "BE",
24
- "BF",
25
- "BG",
26
- "BH",
27
- "BI",
28
- "BJ",
29
- "BL",
30
- "BM",
31
- "BN",
32
- "BO",
33
- "BQ",
34
- "BR",
35
- "BS",
36
- "BT",
37
- "BV",
38
- "BW",
39
- "BY",
40
- "BZ",
41
- "CA",
42
- "CC",
43
- "CD",
44
- "CF",
45
- "CG",
46
- "CH",
47
- "CI",
48
- "CK",
49
- "CL",
50
- "CM",
51
- "CN",
52
- "CO",
53
- "CR",
54
- "CU",
55
- "CV",
56
- "CW",
57
- "CX",
58
- "CY",
59
- "CZ",
60
- "DE",
61
- "DJ",
62
- "DK",
63
- "DM",
64
- "DO",
65
- "DZ",
66
- "EC",
67
- "EE",
68
- "EG",
69
- "EH",
70
- "ER",
71
- "ES",
72
- "ET",
73
- "FI",
74
- "FJ",
75
- "FK",
76
- "FM",
77
- "FO",
78
- "FR",
79
- "GA",
80
- "GB",
81
- "GD",
82
- "GE",
83
- "GF",
84
- "GG",
85
- "GH",
86
- "GI",
87
- "GL",
88
- "GM",
89
- "GN",
90
- "GP",
91
- "GQ",
92
- "GR",
93
- "GS",
94
- "GT",
95
- "GU",
96
- "GW",
97
- "GY",
98
- "HK",
99
- "HM",
100
- "HN",
101
- "HR",
102
- "HT",
103
- "HU",
104
- "ID",
105
- "IE",
106
- "IL",
107
- "IM",
108
- "IN",
109
- "IO",
110
- "IQ",
111
- "IR",
112
- "IS",
113
- "IT",
114
- "JE",
115
- "JM",
116
- "JO",
117
- "JP",
118
- "KE",
119
- "KG",
120
- "KH",
121
- "KI",
122
- "KM",
123
- "KN",
124
- "KP",
125
- "KR",
126
- "KW",
127
- "KY",
128
- "KZ",
129
- "LA",
130
- "LB",
131
- "LC",
132
- "LI",
133
- "LK",
134
- "LR",
135
- "LS",
136
- "LT",
137
- "LU",
138
- "LV",
139
- "LY",
140
- "MA",
141
- "MC",
142
- "MD",
143
- "ME",
144
- "MF",
145
- "MG",
146
- "MH",
147
- "MK",
148
- "ML",
149
- "MM",
150
- "MN",
151
- "MO",
152
- "MP",
153
- "MQ",
154
- "MR",
155
- "MS",
156
- "MT",
157
- "MU",
158
- "MV",
159
- "MW",
160
- "MX",
161
- "MY",
162
- "MZ",
163
- "NA",
164
- "NC",
165
- "NE",
166
- "NF",
167
- "NG",
168
- "NI",
169
- "NL",
170
- "NO",
171
- "NP",
172
- "NR",
173
- "NU",
174
- "NZ",
175
- "OM",
176
- "PA",
177
- "PE",
178
- "PF",
179
- "PG",
180
- "PH",
181
- "PK",
182
- "PL",
183
- "PM",
184
- "PN",
185
- "PR",
186
- "PS",
187
- "PT",
188
- "PW",
189
- "PY",
190
- "QA",
191
- "RE",
192
- "RO",
193
- "RS",
194
- "RU",
195
- "RW",
196
- "SA",
197
- "SB",
198
- "SC",
199
- "SD",
200
- "SE",
201
- "SG",
202
- "SH",
203
- "SI",
204
- "SJ",
205
- "SK",
206
- "SL",
207
- "SM",
208
- "SN",
209
- "SO",
210
- "SR",
211
- "SS",
212
- "ST",
213
- "SV",
214
- "SX",
215
- "SY",
216
- "SZ",
217
- "TC",
218
- "TD",
219
- "TF",
220
- "TG",
221
- "TH",
222
- "TJ",
223
- "TK",
224
- "TL",
225
- "TM",
226
- "TN",
227
- "TO",
228
- "TR",
229
- "TT",
230
- "TV",
231
- "TW",
232
- "TZ",
233
- "UA",
234
- "UG",
235
- "UM",
236
- "US",
237
- "UY",
238
- "UZ",
239
- "VA",
240
- "VC",
241
- "VE",
242
- "VG",
243
- "VI",
244
- "VN",
245
- "VU",
246
- "WF",
247
- "WS",
248
- "YE",
249
- "YT",
250
- "ZA",
251
- "ZM",
252
- "ZW"
253
- ];
254
- const cusip = generateCusip();
255
- const generateIsin = (cusip2) => {
256
- const code = countryCodes[Math.floor(Math.random() * countryCodes.length)];
257
- const isin = code + cusip2 + generateIsinCheckDigit(code + cusip2 + "0");
258
- return isin;
259
- };
260
- const generateIsinCheckDigit = (isin) => {
261
- if (isin.length != 12) return false;
262
- const v = [];
263
- for (let i = isin.length - 2; i >= 0; i--) {
264
- const c = isin.charAt(i);
265
- if (isNaN(parseInt(c))) {
266
- const letterCode = isin.charCodeAt(i) - 55;
267
- v.push(letterCode % 10);
268
- if (letterCode > 9) {
269
- v.push(Math.floor(letterCode / 10));
270
- }
271
- } else {
272
- v.push(Number(c));
273
- }
274
- }
275
- let sum = 0;
276
- const l = v.length;
277
- for (let i = 0; i < l; i++) {
278
- if (i % 2 == 0) {
279
- const d = v[i] * 2;
280
- sum += Math.floor(d / 10);
281
- sum += d % 10;
282
- } else {
283
- sum += v[i];
284
- }
285
- }
286
- return (10 - sum % 10) % 10;
287
- };
288
- const isinGenerator = () => {
289
- return generateIsin(cusip);
290
- };
291
-
292
- export { isinGenerator };
293
- //# sourceMappingURL=index.js.map