@marketeer-intelligence/framework-device 0.1.0-alpha.12 → 0.1.0-alpha.13

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 (127) hide show
  1. package/dist/EnvironmentVariables.d.ts +9 -0
  2. package/dist/EnvironmentVariables.d.ts.map +1 -0
  3. package/dist/{task/ConfigureEnvironmentVariables.js → EnvironmentVariables.js} +3 -6
  4. package/dist/EnvironmentVariables.js.map +1 -0
  5. package/dist/{task/ConnectToMongoDb.d.ts → MongoDbConnector.d.ts} +3 -3
  6. package/dist/MongoDbConnector.d.ts.map +1 -0
  7. package/dist/{task/ConnectToMongoDb.js → MongoDbConnector.js} +3 -3
  8. package/dist/MongoDbConnector.js.map +1 -0
  9. package/dist/MongoDbDisconnector.d.ts +8 -0
  10. package/dist/MongoDbDisconnector.d.ts.map +1 -0
  11. package/dist/{task/DisconnectFromMongoDb.js → MongoDbDisconnector.js} +3 -4
  12. package/dist/MongoDbDisconnector.js.map +1 -0
  13. package/dist/MongoDbUri.d.ts.map +1 -0
  14. package/dist/MongoDbUri.js.map +1 -0
  15. package/dist/StaticWebpageScraper.d.ts +7 -0
  16. package/dist/StaticWebpageScraper.d.ts.map +1 -0
  17. package/dist/{data-source/StaticWebpageScraper.js → StaticWebpageScraper.js} +8 -17
  18. package/dist/StaticWebpageScraper.js.map +1 -0
  19. package/dist/Webpage.d.ts +16 -0
  20. package/dist/Webpage.d.ts.map +1 -0
  21. package/dist/Webpage.js +29 -0
  22. package/dist/Webpage.js.map +1 -0
  23. package/dist/WebpageBody.d.ts.map +1 -0
  24. package/dist/WebpageBody.js.map +1 -0
  25. package/dist/WebpageUrl.d.ts.map +1 -0
  26. package/dist/WebpageUrl.js.map +1 -0
  27. package/dist/{data-store/InstrumentMongoDbCollection.d.ts → financial-instrument/MongoDbCollection.d.ts} +4 -4
  28. package/dist/financial-instrument/MongoDbCollection.d.ts.map +1 -0
  29. package/dist/{data-store/InstrumentMongoDbCollection.js → financial-instrument/MongoDbCollection.js} +6 -6
  30. package/dist/financial-instrument/MongoDbCollection.js.map +1 -0
  31. package/dist/financial-instrument/index.d.ts +2 -0
  32. package/dist/financial-instrument/index.d.ts.map +1 -0
  33. package/dist/financial-instrument/index.js +2 -0
  34. package/dist/financial-instrument/index.js.map +1 -0
  35. package/dist/index.d.ts +11 -3
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +11 -3
  38. package/dist/index.js.map +1 -1
  39. package/dist/{data-store/MarketIndexMongoDbCollection.d.ts → market-index/MongoDbCollection.d.ts} +4 -4
  40. package/dist/market-index/MongoDbCollection.d.ts.map +1 -0
  41. package/dist/{data-store/MarketIndexMongoDbCollection.js → market-index/MongoDbCollection.js} +4 -4
  42. package/dist/market-index/MongoDbCollection.js.map +1 -0
  43. package/dist/market-index/WebpageBodyParser.d.ts +8 -0
  44. package/dist/market-index/WebpageBodyParser.d.ts.map +1 -0
  45. package/dist/{data-source/MarketIndexTableParser.js → market-index/WebpageBodyParser.js} +4 -4
  46. package/dist/market-index/WebpageBodyParser.js.map +1 -0
  47. package/dist/market-index/index.d.ts +4 -0
  48. package/dist/market-index/index.d.ts.map +1 -0
  49. package/dist/market-index/index.js +4 -0
  50. package/dist/market-index/index.js.map +1 -0
  51. package/dist/market-index/webpageUrl.d.ts +3 -0
  52. package/dist/market-index/webpageUrl.d.ts.map +1 -0
  53. package/dist/{data-source/marketIndexTableUrl.js → market-index/webpageUrl.js} +3 -3
  54. package/dist/market-index/webpageUrl.js.map +1 -0
  55. package/dist/{data-store/SecurityMongoDbCollection.d.ts → marketable-security/MongoDbCollection.d.ts} +4 -4
  56. package/dist/marketable-security/MongoDbCollection.d.ts.map +1 -0
  57. package/dist/{data-store/SecurityMongoDbCollection.js → marketable-security/MongoDbCollection.js} +4 -4
  58. package/dist/marketable-security/MongoDbCollection.js.map +1 -0
  59. package/dist/{data-source/SecurityTableParser.d.ts → marketable-security/WebpageBodyParser.d.ts} +4 -4
  60. package/dist/marketable-security/WebpageBodyParser.d.ts.map +1 -0
  61. package/dist/{data-source/SecurityTableParser.js → marketable-security/WebpageBodyParser.js} +4 -4
  62. package/dist/marketable-security/WebpageBodyParser.js.map +1 -0
  63. package/dist/marketable-security/index.d.ts +4 -0
  64. package/dist/marketable-security/index.d.ts.map +1 -0
  65. package/dist/marketable-security/index.js +4 -0
  66. package/dist/marketable-security/index.js.map +1 -0
  67. package/dist/marketable-security/webpageUrl.d.ts +3 -0
  68. package/dist/marketable-security/webpageUrl.d.ts.map +1 -0
  69. package/dist/{data-source/securityTableUrl.js → marketable-security/webpageUrl.js} +3 -3
  70. package/dist/marketable-security/webpageUrl.js.map +1 -0
  71. package/package.json +1 -1
  72. package/dist/data-source/MarketIndexTableParser.d.ts +0 -8
  73. package/dist/data-source/MarketIndexTableParser.d.ts.map +0 -1
  74. package/dist/data-source/MarketIndexTableParser.js.map +0 -1
  75. package/dist/data-source/SecurityTableParser.d.ts.map +0 -1
  76. package/dist/data-source/SecurityTableParser.js.map +0 -1
  77. package/dist/data-source/StaticWebpageScraper.d.ts +0 -12
  78. package/dist/data-source/StaticWebpageScraper.d.ts.map +0 -1
  79. package/dist/data-source/StaticWebpageScraper.js.map +0 -1
  80. package/dist/data-source/Webpage.d.ts +0 -11
  81. package/dist/data-source/Webpage.d.ts.map +0 -1
  82. package/dist/data-source/Webpage.js +0 -22
  83. package/dist/data-source/Webpage.js.map +0 -1
  84. package/dist/data-source/WebpageBody.d.ts.map +0 -1
  85. package/dist/data-source/WebpageBody.js.map +0 -1
  86. package/dist/data-source/WebpageUrl.d.ts.map +0 -1
  87. package/dist/data-source/WebpageUrl.js.map +0 -1
  88. package/dist/data-source/index.d.ts +0 -10
  89. package/dist/data-source/index.d.ts.map +0 -1
  90. package/dist/data-source/index.js +0 -10
  91. package/dist/data-source/index.js.map +0 -1
  92. package/dist/data-source/marketIndexTableUrl.d.ts +0 -3
  93. package/dist/data-source/marketIndexTableUrl.d.ts.map +0 -1
  94. package/dist/data-source/marketIndexTableUrl.js.map +0 -1
  95. package/dist/data-source/securityTableUrl.d.ts +0 -3
  96. package/dist/data-source/securityTableUrl.d.ts.map +0 -1
  97. package/dist/data-source/securityTableUrl.js.map +0 -1
  98. package/dist/data-store/InstrumentMongoDbCollection.d.ts.map +0 -1
  99. package/dist/data-store/InstrumentMongoDbCollection.js.map +0 -1
  100. package/dist/data-store/MarketIndexMongoDbCollection.d.ts.map +0 -1
  101. package/dist/data-store/MarketIndexMongoDbCollection.js.map +0 -1
  102. package/dist/data-store/SecurityMongoDbCollection.d.ts.map +0 -1
  103. package/dist/data-store/SecurityMongoDbCollection.js.map +0 -1
  104. package/dist/data-store/index.d.ts +0 -5
  105. package/dist/data-store/index.d.ts.map +0 -1
  106. package/dist/data-store/index.js +0 -5
  107. package/dist/data-store/index.js.map +0 -1
  108. package/dist/task/ConfigureEnvironmentVariables.d.ts +0 -10
  109. package/dist/task/ConfigureEnvironmentVariables.d.ts.map +0 -1
  110. package/dist/task/ConfigureEnvironmentVariables.js.map +0 -1
  111. package/dist/task/ConnectToMongoDb.d.ts.map +0 -1
  112. package/dist/task/ConnectToMongoDb.js.map +0 -1
  113. package/dist/task/DisconnectFromMongoDb.d.ts +0 -8
  114. package/dist/task/DisconnectFromMongoDb.d.ts.map +0 -1
  115. package/dist/task/DisconnectFromMongoDb.js.map +0 -1
  116. package/dist/task/MongoDbUri.d.ts.map +0 -1
  117. package/dist/task/MongoDbUri.js.map +0 -1
  118. package/dist/task/index.d.ts +0 -6
  119. package/dist/task/index.d.ts.map +0 -1
  120. package/dist/task/index.js +0 -6
  121. package/dist/task/index.js.map +0 -1
  122. /package/dist/{task/MongoDbUri.d.ts → MongoDbUri.d.ts} +0 -0
  123. /package/dist/{task/MongoDbUri.js → MongoDbUri.js} +0 -0
  124. /package/dist/{data-source/WebpageBody.d.ts → WebpageBody.d.ts} +0 -0
  125. /package/dist/{data-source/WebpageBody.js → WebpageBody.js} +0 -0
  126. /package/dist/{data-source/WebpageUrl.d.ts → WebpageUrl.d.ts} +0 -0
  127. /package/dist/{data-source/WebpageUrl.js → WebpageUrl.js} +0 -0
@@ -0,0 +1,9 @@
1
+ import { IRunnable, Status } from './index.js';
2
+ export declare class EnvironmentVariables implements IRunnable {
3
+ private _configured;
4
+ private constructor();
5
+ private static _instance;
6
+ static create(): EnvironmentVariables;
7
+ run(): Promise<Status<Error>>;
8
+ }
9
+ //# sourceMappingURL=EnvironmentVariables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentVariables.d.ts","sourceRoot":"","sources":["../src/EnvironmentVariables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,SAAS,EAAE,MAAM,EAAU,MAAM,YAAY,CAAA;AAG9D,qBAAa,oBAAqB,YAAW,SAAS;IACpD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO;IAGP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAsB;IAC9C,MAAM,CAAC,MAAM,IAAI,oBAAoB;IAG/B,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CAepC"}
@@ -1,16 +1,13 @@
1
1
  import { Failure, Success } from './index.js';
2
2
  import dotenv from 'dotenv-safe';
3
- export class ConfigureEnvironmentVariables {
3
+ export class EnvironmentVariables {
4
4
  _configured;
5
5
  constructor() {
6
6
  this._configured = false;
7
7
  }
8
8
  static _instance;
9
9
  static create() {
10
- return (this._instance || (this._instance = new ConfigureEnvironmentVariables()));
11
- }
12
- get configured() {
13
- return this._configured;
10
+ return this._instance || (this._instance = new EnvironmentVariables());
14
11
  }
15
12
  async run() {
16
13
  try {
@@ -29,4 +26,4 @@ export class ConfigureEnvironmentVariables {
29
26
  }
30
27
  }
31
28
  }
32
- //# sourceMappingURL=ConfigureEnvironmentVariables.js.map
29
+ //# sourceMappingURL=EnvironmentVariables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentVariables.js","sourceRoot":"","sources":["../src/EnvironmentVariables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAqB,OAAO,EAAC,MAAM,YAAY,CAAA;AAC9D,OAAO,MAAM,MAAM,aAAa,CAAA;AAEhC,MAAM,OAAO,oBAAoB;IACvB,WAAW,CAAS;IAC5B;QACE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;IAC1B,CAAC;IACO,MAAM,CAAC,SAAS,CAAsB;IAC9C,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC,CAAA;IACxE,CAAC;IACD,KAAK,CAAC,GAAG;QACP,IAAI;YACF,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACrB,MAAM,CAAC,MAAM,EAAE,CAAA;gBACf,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;gBACvB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;aACtD;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF"}
@@ -1,9 +1,9 @@
1
1
  import { IRunnable, MongoDbUri, Status } from './index.js';
2
- export declare class ConnectToMongoDb implements IRunnable {
2
+ export declare class MongoDbConnector implements IRunnable {
3
3
  private _uri;
4
4
  private constructor();
5
5
  private static _instance;
6
- static create(uri: MongoDbUri): ConnectToMongoDb;
6
+ static create(uri: MongoDbUri): MongoDbConnector;
7
7
  run(): Promise<Status<Error>>;
8
8
  }
9
- //# sourceMappingURL=ConnectToMongoDb.d.ts.map
9
+ //# sourceMappingURL=MongoDbConnector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbConnector.d.ts","sourceRoot":"","sources":["../src/MongoDbConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,SAAS,EAAE,UAAU,EAAE,MAAM,EAAU,MAAM,YAAY,CAAA;AAG1E,qBAAa,gBAAiB,YAAW,SAAS;IAC5B,OAAO,CAAC,IAAI;IAAhC,OAAO;IACP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAkB;IAC1C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU;IAGvB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CAiBpC"}
@@ -1,13 +1,13 @@
1
1
  import { Failure, Success } from './index.js';
2
2
  import mongoose from 'mongoose';
3
- export class ConnectToMongoDb {
3
+ export class MongoDbConnector {
4
4
  _uri;
5
5
  constructor(_uri) {
6
6
  this._uri = _uri;
7
7
  }
8
8
  static _instance;
9
9
  static create(uri) {
10
- return this._instance || (this._instance = new ConnectToMongoDb(uri));
10
+ return this._instance || (this._instance = new MongoDbConnector(uri));
11
11
  }
12
12
  async run() {
13
13
  try {
@@ -26,4 +26,4 @@ export class ConnectToMongoDb {
26
26
  }
27
27
  }
28
28
  }
29
- //# sourceMappingURL=ConnectToMongoDb.js.map
29
+ //# sourceMappingURL=MongoDbConnector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbConnector.js","sourceRoot":"","sources":["../src/MongoDbConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAiC,OAAO,EAAC,MAAM,YAAY,CAAA;AAC1E,OAAO,QAAQ,MAAM,UAAU,CAAA;AAE/B,MAAM,OAAO,gBAAgB;IACC;IAA5B,YAA4B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IACxC,MAAM,CAAC,SAAS,CAAkB;IAC1C,MAAM,CAAC,MAAM,CAAC,GAAe;QAC3B,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC;IACD,KAAK,CAAC,GAAG;QACP,IAAI;YACF,IACE,QAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EACtE;gBACA,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;gBAClC,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACvC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;aACpC;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import { IRunnable, Status } from './index.js';
2
+ export declare class MongoDbDisconnector implements IRunnable {
3
+ private constructor();
4
+ private static _instance;
5
+ static create(): MongoDbDisconnector;
6
+ run(): Promise<Status<Error>>;
7
+ }
8
+ //# sourceMappingURL=MongoDbDisconnector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbDisconnector.d.ts","sourceRoot":"","sources":["../src/MongoDbDisconnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,SAAS,EAAc,MAAM,EAAU,MAAM,YAAY,CAAA;AAG1E,qBAAa,mBAAoB,YAAW,SAAS;IACnD,OAAO;IACP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAqB;IAC7C,MAAM,CAAC,MAAM;IAGP,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;CAgBpC"}
@@ -1,16 +1,15 @@
1
1
  import { Failure, Success } from './index.js';
2
2
  import mongoose from 'mongoose';
3
- export class DisconnectFromMongoDb {
3
+ export class MongoDbDisconnector {
4
4
  constructor() { }
5
5
  static _instance;
6
6
  static create() {
7
- return this._instance || (this._instance = new DisconnectFromMongoDb());
7
+ return this._instance || (this._instance = new MongoDbDisconnector());
8
8
  }
9
9
  async run() {
10
10
  try {
11
11
  if (mongoose.connection.readyState === mongoose.ConnectionStates.connected) {
12
12
  await mongoose.disconnect();
13
- await mongoose.connection.close();
14
13
  console.log('disconnected from MongoDb');
15
14
  }
16
15
  return Success.create();
@@ -23,4 +22,4 @@ export class DisconnectFromMongoDb {
23
22
  }
24
23
  }
25
24
  }
26
- //# sourceMappingURL=DisconnectFromMongoDb.js.map
25
+ //# sourceMappingURL=MongoDbDisconnector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbDisconnector.js","sourceRoot":"","sources":["../src/MongoDbDisconnector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAiC,OAAO,EAAC,MAAM,YAAY,CAAA;AAC1E,OAAO,QAAQ,MAAM,UAAU,CAAA;AAE/B,MAAM,OAAO,mBAAmB;IAC9B,gBAAuB,CAAC;IAChB,MAAM,CAAC,SAAS,CAAqB;IAC7C,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAC,CAAA;IACvE,CAAC;IACD,KAAK,CAAC,GAAG;QACP,IAAI;YACF,IACE,QAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EACtE;gBACA,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAA;gBAC3B,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;aACzC;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbUri.d.ts","sourceRoot":"","sources":["../src/MongoDbUri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAU,YAAY,EAAC,MAAM,YAAY,CAAA;AAElE,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;AAK9C,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,OAAO,GACjB,SAAS,IAAI,eAAe,CAI9B;AAED,qBAAa,UAAW,YAAW,YAAY,CAAC,eAAe,CAAC;IAC1C,OAAO,CAAC,MAAM;IAAlC,OAAO;IACP,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAgB9D,IAAI,KAAK,IAAI,eAAe,CAE3B;CACF;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,UAAU,CAExE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbUri.js","sourceRoot":"","sources":["../src/MongoDbUri.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAY,MAAM,EAAe,MAAM,YAAY,CAAA;AAIlE,MAAM,WAAW,GACf,yHAAyH,CAAA;AAE3H,MAAM,UAAU,iBAAiB,CAC/B,SAAkB;IAElB,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAA;IAC9C,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,OAAO,UAAU;IACO;IAA5B,YAA4B,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IACvD,MAAM,CAAC,MAAM,CAAC,SAAkB;QAC9B,IAAI;YACF,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;gBACjC,MAAM,GAAG,GAAG,mCAAmC,CAAA;gBAC/C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,CAAA;YAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SACjC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAC,SAAkB;IAC7C,OAAO,SAAS,YAAY,UAAU,CAAA;AACxC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Feedback, IWebpageScraper, WebpageBody, WebpageUrl } from './index.js';
2
+ export declare class StaticWebpageScraper implements IWebpageScraper {
3
+ private constructor();
4
+ static create(): StaticWebpageScraper;
5
+ scrape(url: WebpageUrl): Promise<Feedback<WebpageBody, Error>>;
6
+ }
7
+ //# sourceMappingURL=StaticWebpageScraper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticWebpageScraper.d.ts","sourceRoot":"","sources":["../src/StaticWebpageScraper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACX,MAAM,YAAY,CAAA;AAInB,qBAAa,oBAAqB,YAAW,eAAe;IAC1D,OAAO;IACP,MAAM,CAAC,MAAM,IAAI,oBAAoB;IAG/B,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;CAiCrE"}
@@ -1,19 +1,14 @@
1
- import { Failure, WebpageBody, isFailure, } from './index.js';
1
+ import { Failure, WebpageBody, } from './index.js';
2
2
  import got from 'got';
3
3
  import iconv from 'iconv-lite';
4
4
  export class StaticWebpageScraper {
5
- _url;
6
- bodyParser;
7
- constructor(_url, bodyParser) {
8
- this._url = _url;
9
- this.bodyParser = bodyParser;
5
+ constructor() { }
6
+ static create() {
7
+ return new StaticWebpageScraper();
10
8
  }
11
- static create(url, bodyParser) {
12
- return new StaticWebpageScraper(url, bodyParser);
13
- }
14
- async scrapPage() {
9
+ async scrape(url) {
15
10
  try {
16
- const response = await got(this._url.value, { responseType: 'buffer' });
11
+ const response = await got(url.value, { responseType: 'buffer' });
17
12
  if (response.statusCode !== 200) {
18
13
  const { statusCode } = response;
19
14
  const statusMessage = response.statusMessage || 'status message is unavailable';
@@ -28,16 +23,12 @@ export class StaticWebpageScraper {
28
23
  ? 'utf-8'
29
24
  : contentType.split('charset=')[1].split(';')[0];
30
25
  if (!iconv.encodingExists(encoding)) {
31
- const msg = `${this._url.value} is encoded with unsupported "${encoding}" encoding`;
26
+ const msg = `${url.value} is encoded with unsupported "${encoding}" encoding`;
32
27
  const error = new Error(msg);
33
28
  return Failure.create(error);
34
29
  }
35
30
  const decoded = iconv.decode(response.body, encoding);
36
- const webpageBodyOrError = WebpageBody.create(decoded);
37
- if (isFailure(webpageBodyOrError))
38
- return webpageBodyOrError;
39
- const { value: webpageBody } = webpageBodyOrError;
40
- return await this.bodyParser.parse(webpageBody);
31
+ return WebpageBody.create(decoded);
41
32
  }
42
33
  catch (error) {
43
34
  if (error instanceof Error) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaticWebpageScraper.js","sourceRoot":"","sources":["../src/StaticWebpageScraper.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAGP,WAAW,GAEZ,MAAM,YAAY,CAAA;AACnB,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B,MAAM,OAAO,oBAAoB;IAC/B,gBAAuB,CAAC;IACxB,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,oBAAoB,EAAE,CAAA;IACnC,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAe;QAC1B,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAC,YAAY,EAAE,QAAQ,EAAC,CAAC,CAAA;YAC/D,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,EAAE;gBAC/B,MAAM,EAAC,UAAU,EAAC,GAAG,QAAQ,CAAA;gBAC7B,MAAM,aAAa,GACjB,QAAQ,CAAC,aAAa,IAAI,+BAA+B,CAAA;gBAC3D,MAAM,GAAG,GAAG,GAAG,UAAU,KAAK,aAAa,EAAE,CAAA;gBAC7C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,WAAW,GACf,OAAO,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,QAAQ;gBAClD,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE;gBAChD,CAAC,CAAC,SAAS,CAAA;YACf,MAAM,QAAQ,GACZ,WAAW,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC5D,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACpD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;gBACnC,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,iCAAiC,QAAQ,YAAY,CAAA;gBAC7E,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACrD,OAAO,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF"}
@@ -0,0 +1,16 @@
1
+ import { Feedback, IFetchable, WebpageBody, WebpageUrl } from './index.js';
2
+ export interface IWebpageScraper {
3
+ scrape(url: WebpageUrl): Promise<Feedback<WebpageBody, Error>>;
4
+ }
5
+ export interface IWebpageBodyParser<DATA> {
6
+ parse(body: WebpageBody): Promise<Feedback<DATA, Error>>;
7
+ }
8
+ export declare class Webpage<DATA> implements IFetchable<DATA> {
9
+ private _url;
10
+ private scraper;
11
+ private parser;
12
+ private constructor();
13
+ static create<DATA>(url: WebpageUrl, scraper: IWebpageScraper, parser: IWebpageBodyParser<DATA>): Webpage<DATA>;
14
+ fetchData(): Promise<Feedback<DATA, Error>>;
15
+ }
16
+ //# sourceMappingURL=Webpage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Webpage.d.ts","sourceRoot":"","sources":["../src/Webpage.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,UAAU,EACV,WAAW,EACX,UAAU,EAEX,MAAM,YAAY,CAAA;AAEnB,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAA;CAC/D;AAED,MAAM,WAAW,kBAAkB,CAAC,IAAI;IACtC,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;CACzD;AAED,qBAAa,OAAO,CAAC,IAAI,CAAE,YAAW,UAAU,CAAC,IAAI,CAAC;IAElD,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IAHhB,OAAO;IAKP,MAAM,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,kBAAkB,CAAC,IAAI,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC;IAGV,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;CAYlD"}
@@ -0,0 +1,29 @@
1
+ import { Failure, isFailure, } from './index.js';
2
+ export class Webpage {
3
+ _url;
4
+ scraper;
5
+ parser;
6
+ constructor(_url, scraper, parser) {
7
+ this._url = _url;
8
+ this.scraper = scraper;
9
+ this.parser = parser;
10
+ }
11
+ static create(url, scraper, parser) {
12
+ return new Webpage(url, scraper, parser);
13
+ }
14
+ async fetchData() {
15
+ try {
16
+ const bodyOrError = await this.scraper.scrape(this._url);
17
+ if (isFailure(bodyOrError))
18
+ return bodyOrError;
19
+ return await this.parser.parse(bodyOrError.value);
20
+ }
21
+ catch (error) {
22
+ if (error instanceof Error) {
23
+ return Failure.create(error);
24
+ }
25
+ throw error;
26
+ }
27
+ }
28
+ }
29
+ //# sourceMappingURL=Webpage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Webpage.js","sourceRoot":"","sources":["../src/Webpage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,SAAS,GACV,MAAM,YAAY,CAAA;AAUnB,MAAM,OAAO,OAAO;IAER;IACA;IACA;IAHV,YACU,IAAgB,EAChB,OAAwB,EACxB,MAAgC;QAFhC,SAAI,GAAJ,IAAI,CAAY;QAChB,YAAO,GAAP,OAAO,CAAiB;QACxB,WAAM,GAAN,MAAM,CAA0B;IACvC,CAAC;IACJ,MAAM,CAAC,MAAM,CACX,GAAe,EACf,OAAwB,EACxB,MAAgC;QAEhC,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1C,CAAC;IACD,KAAK,CAAC,SAAS;QACb,IAAI;YACF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACxD,IAAI,SAAS,CAAC,WAAW,CAAC;gBAAE,OAAO,WAAW,CAAA;YAC9C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;SAClD;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageBody.d.ts","sourceRoot":"","sources":["../src/WebpageBody.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAE,YAAY,EAAS,MAAM,YAAY,CAAA;AAElE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;AAE/C,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,OAAO,GACjB,SAAS,IAAI,gBAAgB,CAE/B;AAED,qBAAa,WAAY,YAAW,YAAY,CAAC,gBAAgB,CAAC;IAC5C,OAAO,CAAC,MAAM;IAAlC,OAAO;IACP,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;IAgB/D,IAAI,KAAK,IAAI,gBAAgB,CAE5B;CACF;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,WAAW,CAE1E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageBody.js","sourceRoot":"","sources":["../src/WebpageBody.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAA0B,MAAM,EAAC,MAAM,YAAY,CAAA;AAIlE,MAAM,UAAU,kBAAkB,CAChC,SAAkB;IAElB,OAAO,OAAO,SAAS,KAAK,QAAQ,CAAA;AACtC,CAAC;AAED,MAAM,OAAO,WAAW;IACM;IAA5B,YAA4B,MAAwB;QAAxB,WAAM,GAAN,MAAM,CAAkB;IAAG,CAAC;IACxD,MAAM,CAAC,MAAM,CAAC,SAAkB;QAC9B,IAAI;YACF,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE;gBAClC,MAAM,GAAG,GAAG,oCAAoC,CAAA;gBAChD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;YAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;SAClC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,SAAkB;IAC9C,OAAO,SAAS,YAAY,WAAW,CAAA;AACzC,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageUrl.d.ts","sourceRoot":"","sources":["../src/WebpageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAU,YAAY,EAAC,MAAM,YAAY,CAAA;AAElE,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;AAK9C,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,OAAO,GACjB,SAAS,IAAI,eAAe,CAI9B;AAED,qBAAa,UAAW,YAAW,YAAY,CAAC,eAAe,CAAC;IAC1C,OAAO,CAAC,MAAM;IAAlC,OAAO;IACP,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC;IAgB9D,IAAI,KAAK,IAAI,eAAe,CAE3B;CACF;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,UAAU,CAExE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageUrl.js","sourceRoot":"","sources":["../src/WebpageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAY,MAAM,EAAe,MAAM,YAAY,CAAA;AAIlE,MAAM,WAAW,GACf,sFAAsF,CAAA;AAExF,MAAM,UAAU,iBAAiB,CAC/B,SAAkB;IAElB,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAA;IAC9C,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,OAAO,UAAU;IACO;IAA5B,YAA4B,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IACvD,MAAM,CAAC,MAAM,CAAC,SAAkB;QAC9B,IAAI;YACF,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE;gBACjC,MAAM,GAAG,GAAG,mCAAmC,CAAA;gBAC/C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,CAAA;YAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SACjC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,KAAK,YAAY,KAAK,EAAE;gBAC1B,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC7B;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IACD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;CACF;AAED,MAAM,UAAU,YAAY,CAAC,SAAkB;IAC7C,OAAO,SAAS,YAAY,UAAU,CAAA;AACxC,CAAC"}
@@ -1,13 +1,13 @@
1
- import { Feedback, IFetchable, IStorable, Instrument, Status } from './index.js';
2
- export declare class InstrumentMongoDbCollection implements IStorable<Instrument[]>, IFetchable<Instrument[]> {
1
+ import { Feedback, IFetchable, IStorable, Instrument, Status } from '../index.js';
2
+ export declare class MongoDbCollection implements IStorable<Instrument[]>, IFetchable<Instrument[]> {
3
3
  private readonly _name;
4
4
  private readonly _schema;
5
5
  private _model;
6
6
  private constructor();
7
7
  private static _instance;
8
- static create(): InstrumentMongoDbCollection;
8
+ static create(): MongoDbCollection;
9
9
  upsert(instrument: Instrument): Promise<Status<Error>>;
10
10
  store(instruments: Instrument[]): Promise<Status<Error>>;
11
11
  fetchData(): Promise<Feedback<Instrument[], Error>>;
12
12
  }
13
- //# sourceMappingURL=InstrumentMongoDbCollection.d.ts.map
13
+ //# sourceMappingURL=MongoDbCollection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbCollection.d.ts","sourceRoot":"","sources":["../../src/financial-instrument/MongoDbCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,UAAU,EACV,SAAS,EACT,UAAU,EAKV,MAAM,EAGP,MAAM,aAAa,CAAA;AAepB,qBAAa,iBACX,YAAW,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC;IAE5D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAarB;IACH,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO;IAMP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAmB;IAC3C,MAAM,CAAC,MAAM;IAGP,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAgBtD,KAAK,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAmBxD,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;CA8B1D"}
@@ -1,6 +1,6 @@
1
- import { Failure, MarketIndexMongoDbCollection, Result, SecurityMongoDbCollection, Success, isFailure, } from './index.js';
1
+ import { Failure, MarketableSecurity, Result, MarketIndex, Success, isFailure, } from '../index.js';
2
2
  import { Schema as MongooseSchema, model as mongooseModel, } from 'mongoose';
3
- export class InstrumentMongoDbCollection {
3
+ export class MongoDbCollection {
4
4
  _name = 'financial-instruments';
5
5
  _schema = new MongooseSchema({
6
6
  isin: { type: String, required: true, unique: true },
@@ -18,7 +18,7 @@ export class InstrumentMongoDbCollection {
18
18
  }
19
19
  static _instance;
20
20
  static create() {
21
- return (this._instance || (this._instance = new InstrumentMongoDbCollection()));
21
+ return this._instance || (this._instance = new MongoDbCollection());
22
22
  }
23
23
  async upsert(instrument) {
24
24
  try {
@@ -56,8 +56,8 @@ export class InstrumentMongoDbCollection {
56
56
  }
57
57
  async fetchData() {
58
58
  try {
59
- const indexCollection = MarketIndexMongoDbCollection.create();
60
- const securityCollection = SecurityMongoDbCollection.create();
59
+ const indexCollection = MarketIndex.MongoDbCollection.create();
60
+ const securityCollection = MarketableSecurity.MongoDbCollection.create();
61
61
  const [instrumentsFromIndices, instrumentsFromSecurities] = await Promise.all([
62
62
  indexCollection.fetchAll(),
63
63
  securityCollection.fetchInstruments(),
@@ -87,4 +87,4 @@ export class InstrumentMongoDbCollection {
87
87
  }
88
88
  }
89
89
  }
90
- //# sourceMappingURL=InstrumentMongoDbCollection.js.map
90
+ //# sourceMappingURL=MongoDbCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbCollection.js","sourceRoot":"","sources":["../../src/financial-instrument/MongoDbCollection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { MongoDbCollection } from './MongoDbCollection.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/financial-instrument/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { MongoDbCollection } from './MongoDbCollection.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/financial-instrument/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,13 @@
1
1
  export * from '@marketeer-intelligence/infrastructure';
2
- export * from './data-source/index.js';
3
- export * from './data-store/index.js';
4
- export * from './task/index.js';
2
+ export * as FinancialInstrument from './financial-instrument/index.js';
3
+ export * as MarketIndex from './market-index/index.js';
4
+ export * as MarketableSecurity from './marketable-security/index.js';
5
+ export { EnvironmentVariables } from './EnvironmentVariables.js';
6
+ export { MongoDbConnector } from './MongoDbConnector.js';
7
+ export { MongoDbDisconnector } from './MongoDbDisconnector.js';
8
+ export { MongoDbUri } from './MongoDbUri.js';
9
+ export { StaticWebpageScraper } from './StaticWebpageScraper.js';
10
+ export { IWebpageBodyParser, IWebpageScraper, Webpage } from './Webpage.js';
11
+ export { WebpageBody } from './WebpageBody.js';
12
+ export { WebpageUrl } from './WebpageUrl.js';
5
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA;AAEtD,cAAc,wBAAwB,CAAA;AAEtC,cAAc,uBAAuB,CAAA;AAErC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA;AAEtD,OAAO,KAAK,mBAAmB,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,kBAAkB,MAAM,gCAAgC,CAAA;AAEpE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAC,kBAAkB,EAAE,eAAe,EAAE,OAAO,EAAC,MAAM,cAAc,CAAA;AACzE,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA"}
package/dist/index.js CHANGED
@@ -1,5 +1,13 @@
1
1
  export * from '@marketeer-intelligence/infrastructure';
2
- export * from './data-source/index.js';
3
- export * from './data-store/index.js';
4
- export * from './task/index.js';
2
+ export * as FinancialInstrument from './financial-instrument/index.js';
3
+ export * as MarketIndex from './market-index/index.js';
4
+ export * as MarketableSecurity from './marketable-security/index.js';
5
+ export { EnvironmentVariables } from './EnvironmentVariables.js';
6
+ export { MongoDbConnector } from './MongoDbConnector.js';
7
+ export { MongoDbDisconnector } from './MongoDbDisconnector.js';
8
+ export { MongoDbUri } from './MongoDbUri.js';
9
+ export { StaticWebpageScraper } from './StaticWebpageScraper.js';
10
+ export { Webpage } from './Webpage.js';
11
+ export { WebpageBody } from './WebpageBody.js';
12
+ export { WebpageUrl } from './WebpageUrl.js';
5
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA;AAEtD,cAAc,wBAAwB,CAAA;AAEtC,cAAc,uBAAuB,CAAA;AAErC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA;AAEtD,OAAO,KAAK,mBAAmB,MAAM,iCAAiC,CAAA;AACtE,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,kBAAkB,MAAM,gCAAgC,CAAA;AAEpE,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAC,mBAAmB,EAAC,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAsC,OAAO,EAAC,MAAM,cAAc,CAAA;AACzE,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA"}
@@ -1,13 +1,13 @@
1
- import { Feedback, IStorable, Instrument, Status } from './index.js';
2
- export declare class MarketIndexMongoDbCollection implements IStorable<Instrument[]> {
1
+ import { Feedback, IStorable, Instrument, Status } from '../index.js';
2
+ export declare class MongoDbCollection implements IStorable<Instrument[]> {
3
3
  private readonly _name;
4
4
  private readonly _schema;
5
5
  private _model;
6
6
  private constructor();
7
7
  private static _instance;
8
- static create(): MarketIndexMongoDbCollection;
8
+ static create(): MongoDbCollection;
9
9
  upsert(marketIndex: Instrument): Promise<Status<Error>>;
10
10
  store(marketIndices: Instrument[]): Promise<Status<Error>>;
11
11
  fetchAll(): Promise<Feedback<Instrument[], Error>>;
12
12
  }
13
- //# sourceMappingURL=MarketIndexMongoDbCollection.d.ts.map
13
+ //# sourceMappingURL=MongoDbCollection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbCollection.d.ts","sourceRoot":"","sources":["../../src/market-index/MongoDbCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,SAAS,EACT,UAAU,EAGV,MAAM,EAGP,MAAM,aAAa,CAAA;AAepB,qBAAa,iBAAkB,YAAW,SAAS,CAAC,UAAU,EAAE,CAAC;IAC/D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAarB;IACH,OAAO,CAAC,MAAM,CAA0C;IACxD,OAAO;IAMP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAmB;IAC3C,MAAM,CAAC,MAAM;IAGP,MAAM,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAgBvD,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAmB1D,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;CAwBzD"}
@@ -1,6 +1,6 @@
1
- import { Failure, Instrument, Result, Success, isFailure, } from './index.js';
1
+ import { Failure, Instrument, Result, Success, isFailure, } from '../index.js';
2
2
  import { Schema as MongooseSchema, model as mongooseModel, } from 'mongoose';
3
- export class MarketIndexMongoDbCollection {
3
+ export class MongoDbCollection {
4
4
  _name = 'market-indices';
5
5
  _schema = new MongooseSchema({
6
6
  isin: { type: String, required: true, unique: true },
@@ -18,7 +18,7 @@ export class MarketIndexMongoDbCollection {
18
18
  }
19
19
  static _instance;
20
20
  static create() {
21
- return (this._instance || (this._instance = new MarketIndexMongoDbCollection()));
21
+ return this._instance || (this._instance = new MongoDbCollection());
22
22
  }
23
23
  async upsert(marketIndex) {
24
24
  try {
@@ -80,4 +80,4 @@ export class MarketIndexMongoDbCollection {
80
80
  }
81
81
  }
82
82
  }
83
- //# sourceMappingURL=MarketIndexMongoDbCollection.js.map
83
+ //# sourceMappingURL=MongoDbCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbCollection.js","sourceRoot":"","sources":["../../src/market-index/MongoDbCollection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { IWebpageBodyParser, Feedback, WebpageBody, Instrument } from '../index.js';
2
+ export declare class WebpageBodyParser implements IWebpageBodyParser<Instrument[]> {
3
+ private constructor();
4
+ private static _instance;
5
+ static create(): WebpageBodyParser;
6
+ parse(webpageBody: WebpageBody): Promise<Feedback<Instrument[], Error>>;
7
+ }
8
+ //# sourceMappingURL=WebpageBodyParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageBodyParser.d.ts","sourceRoot":"","sources":["../../src/market-index/WebpageBodyParser.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,QAAQ,EAIR,WAAW,EACX,UAAU,EACX,MAAM,aAAa,CAAA;AAYpB,qBAAa,iBAAkB,YAAW,kBAAkB,CAAC,UAAU,EAAE,CAAC;IACxE,OAAO;IACP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAmB;IAC3C,MAAM,CAAC,MAAM;IAGP,KAAK,CACT,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;CA+C1C"}
@@ -1,4 +1,4 @@
1
- import { Failure, isFailure, Result, Instrument, } from './index.js';
1
+ import { Failure, isFailure, Result, Instrument, } from '../index.js';
2
2
  import { JSDOM } from 'jsdom';
3
3
  import { DateTime } from 'luxon';
4
4
  function isRowValue(candidate) {
@@ -8,11 +8,11 @@ function isRowValue(candidate) {
8
8
  return false;
9
9
  return candidate.every(element => typeof element === 'string');
10
10
  }
11
- export class MarketIndexTableParser {
11
+ export class WebpageBodyParser {
12
12
  constructor() { }
13
13
  static _instance;
14
14
  static create() {
15
- return this._instance || (this._instance = new MarketIndexTableParser());
15
+ return this._instance || (this._instance = new WebpageBodyParser());
16
16
  }
17
17
  async parse(webpageBody) {
18
18
  try {
@@ -59,4 +59,4 @@ export class MarketIndexTableParser {
59
59
  }
60
60
  }
61
61
  }
62
- //# sourceMappingURL=MarketIndexTableParser.js.map
62
+ //# sourceMappingURL=WebpageBodyParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebpageBodyParser.js","sourceRoot":"","sources":["../../src/market-index/WebpageBodyParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { MongoDbCollection } from './MongoDbCollection.js';
2
+ export { WebpageBodyParser } from './WebpageBodyParser.js';
3
+ export { marketIndexWebpageUrl } from './webpageUrl.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/market-index/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAC,qBAAqB,EAAC,MAAM,iBAAiB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export { MongoDbCollection } from './MongoDbCollection.js';
2
+ export { WebpageBodyParser } from './WebpageBodyParser.js';
3
+ export { marketIndexWebpageUrl } from './webpageUrl.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/market-index/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAC,qBAAqB,EAAC,MAAM,iBAAiB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { WebpageUrl } from '../index.js';
2
+ export declare const marketIndexWebpageUrl: WebpageUrl;
3
+ //# sourceMappingURL=webpageUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpageUrl.d.ts","sourceRoot":"","sources":["../../src/market-index/webpageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,aAAa,CAAA;AAEjD,eAAO,MAAM,qBAAqB,YAS9B,CAAA"}
@@ -1,5 +1,5 @@
1
- import { WebpageUrl, isFailure } from './index.js';
2
- export const marketIndexTableUrl = (() => {
1
+ import { WebpageUrl, isFailure } from '../index.js';
2
+ export const marketIndexWebpageUrl = (() => {
3
3
  try {
4
4
  const urlString = 'https://isin.twse.com.tw/isin/C_public.jsp?strMode=11';
5
5
  const urlOrError = WebpageUrl.create(urlString);
@@ -11,4 +11,4 @@ export const marketIndexTableUrl = (() => {
11
11
  throw error;
12
12
  }
13
13
  })();
14
- //# sourceMappingURL=marketIndexTableUrl.js.map
14
+ //# sourceMappingURL=webpageUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webpageUrl.js","sourceRoot":"","sources":["../../src/market-index/webpageUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,aAAa,CAAA;AAEjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE;IACzC,IAAI;QACF,MAAM,SAAS,GAAG,uDAAuD,CAAA;QACzE,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,SAAS,CAAC,UAAU,CAAC;YAAE,MAAM,UAAU,CAAC,KAAK,CAAA;QACjD,OAAO,UAAU,CAAC,KAAK,CAAA;KACxB;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,KAAK,CAAA;KACZ;AACH,CAAC,CAAC,EAAE,CAAA"}
@@ -1,13 +1,13 @@
1
- import { Feedback, IStorable, Instrument, Security, Status } from './index.js';
2
- export declare class SecurityMongoDbCollection implements IStorable<Security[]> {
1
+ import { Feedback, IStorable, Instrument, Security, Status } from '../index.js';
2
+ export declare class MongoDbCollection implements IStorable<Security[]> {
3
3
  private readonly _name;
4
4
  private readonly _schema;
5
5
  private _model;
6
6
  private constructor();
7
7
  private static _instance;
8
- static create(): SecurityMongoDbCollection;
8
+ static create(): MongoDbCollection;
9
9
  upsert(security: Security): Promise<Status<Error>>;
10
10
  store(securities: Security[]): Promise<Status<Error>>;
11
11
  fetchInstruments(): Promise<Feedback<Instrument[], Error>>;
12
12
  }
13
- //# sourceMappingURL=SecurityMongoDbCollection.d.ts.map
13
+ //# sourceMappingURL=MongoDbCollection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MongoDbCollection.d.ts","sourceRoot":"","sources":["../../src/marketable-security/MongoDbCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,SAAS,EACT,UAAU,EAEV,QAAQ,EAER,MAAM,EAGP,MAAM,aAAa,CAAA;AAepB,qBAAa,iBAAkB,YAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAsBrB;IACH,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO;IAMP,OAAO,CAAC,MAAM,CAAC,SAAS,CAAmB;IAC3C,MAAM,CAAC,MAAM;IAGP,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAgBlD,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAmBrD,gBAAgB,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;CAqBjE"}