@marketeer-intelligence/framework-device 0.1.0-alpha.12 → 0.1.0-alpha.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/EnvironmentVariables.d.ts +9 -0
- package/dist/EnvironmentVariables.d.ts.map +1 -0
- package/dist/{task/ConfigureEnvironmentVariables.js → EnvironmentVariables.js} +3 -6
- package/dist/EnvironmentVariables.js.map +1 -0
- package/dist/{task/ConnectToMongoDb.d.ts → MongoDbConnector.d.ts} +3 -3
- package/dist/MongoDbConnector.d.ts.map +1 -0
- package/dist/{task/ConnectToMongoDb.js → MongoDbConnector.js} +3 -3
- package/dist/MongoDbConnector.js.map +1 -0
- package/dist/MongoDbDisconnector.d.ts +8 -0
- package/dist/MongoDbDisconnector.d.ts.map +1 -0
- package/dist/{task/DisconnectFromMongoDb.js → MongoDbDisconnector.js} +3 -4
- package/dist/MongoDbDisconnector.js.map +1 -0
- package/dist/MongoDbUri.d.ts.map +1 -0
- package/dist/MongoDbUri.js.map +1 -0
- package/dist/StaticWebpageScraper.d.ts +7 -0
- package/dist/StaticWebpageScraper.d.ts.map +1 -0
- package/dist/{data-source/StaticWebpageScraper.js → StaticWebpageScraper.js} +8 -17
- package/dist/StaticWebpageScraper.js.map +1 -0
- package/dist/Webpage.d.ts +16 -0
- package/dist/Webpage.d.ts.map +1 -0
- package/dist/Webpage.js +29 -0
- package/dist/Webpage.js.map +1 -0
- package/dist/WebpageBody.d.ts.map +1 -0
- package/dist/WebpageBody.js.map +1 -0
- package/dist/WebpageUrl.d.ts.map +1 -0
- package/dist/WebpageUrl.js.map +1 -0
- package/dist/{data-store/InstrumentMongoDbCollection.d.ts → financial-instrument/MongoDbCollection.d.ts} +4 -4
- package/dist/financial-instrument/MongoDbCollection.d.ts.map +1 -0
- package/dist/{data-store/InstrumentMongoDbCollection.js → financial-instrument/MongoDbCollection.js} +6 -6
- package/dist/financial-instrument/MongoDbCollection.js.map +1 -0
- package/dist/financial-instrument/index.d.ts +2 -0
- package/dist/financial-instrument/index.d.ts.map +1 -0
- package/dist/financial-instrument/index.js +2 -0
- package/dist/financial-instrument/index.js.map +1 -0
- package/dist/index.d.ts +11 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/{data-store/MarketIndexMongoDbCollection.d.ts → market-index/MongoDbCollection.d.ts} +4 -4
- package/dist/market-index/MongoDbCollection.d.ts.map +1 -0
- package/dist/{data-store/MarketIndexMongoDbCollection.js → market-index/MongoDbCollection.js} +4 -4
- package/dist/market-index/MongoDbCollection.js.map +1 -0
- package/dist/market-index/WebpageBodyParser.d.ts +8 -0
- package/dist/market-index/WebpageBodyParser.d.ts.map +1 -0
- package/dist/{data-source/MarketIndexTableParser.js → market-index/WebpageBodyParser.js} +4 -4
- package/dist/market-index/WebpageBodyParser.js.map +1 -0
- package/dist/market-index/index.d.ts +4 -0
- package/dist/market-index/index.d.ts.map +1 -0
- package/dist/market-index/index.js +4 -0
- package/dist/market-index/index.js.map +1 -0
- package/dist/market-index/webpageUrl.d.ts +3 -0
- package/dist/market-index/webpageUrl.d.ts.map +1 -0
- package/dist/{data-source/marketIndexTableUrl.js → market-index/webpageUrl.js} +3 -3
- package/dist/market-index/webpageUrl.js.map +1 -0
- package/dist/{data-store/SecurityMongoDbCollection.d.ts → marketable-security/MongoDbCollection.d.ts} +4 -4
- package/dist/marketable-security/MongoDbCollection.d.ts.map +1 -0
- package/dist/{data-store/SecurityMongoDbCollection.js → marketable-security/MongoDbCollection.js} +4 -4
- package/dist/marketable-security/MongoDbCollection.js.map +1 -0
- package/dist/{data-source/SecurityTableParser.d.ts → marketable-security/WebpageBodyParser.d.ts} +4 -4
- package/dist/marketable-security/WebpageBodyParser.d.ts.map +1 -0
- package/dist/{data-source/SecurityTableParser.js → marketable-security/WebpageBodyParser.js} +4 -4
- package/dist/marketable-security/WebpageBodyParser.js.map +1 -0
- package/dist/marketable-security/index.d.ts +4 -0
- package/dist/marketable-security/index.d.ts.map +1 -0
- package/dist/marketable-security/index.js +4 -0
- package/dist/marketable-security/index.js.map +1 -0
- package/dist/marketable-security/webpageUrl.d.ts +3 -0
- package/dist/marketable-security/webpageUrl.d.ts.map +1 -0
- package/dist/{data-source/securityTableUrl.js → marketable-security/webpageUrl.js} +3 -3
- package/dist/marketable-security/webpageUrl.js.map +1 -0
- package/package.json +1 -1
- package/dist/data-source/MarketIndexTableParser.d.ts +0 -8
- package/dist/data-source/MarketIndexTableParser.d.ts.map +0 -1
- package/dist/data-source/MarketIndexTableParser.js.map +0 -1
- package/dist/data-source/SecurityTableParser.d.ts.map +0 -1
- package/dist/data-source/SecurityTableParser.js.map +0 -1
- package/dist/data-source/StaticWebpageScraper.d.ts +0 -12
- package/dist/data-source/StaticWebpageScraper.d.ts.map +0 -1
- package/dist/data-source/StaticWebpageScraper.js.map +0 -1
- package/dist/data-source/Webpage.d.ts +0 -11
- package/dist/data-source/Webpage.d.ts.map +0 -1
- package/dist/data-source/Webpage.js +0 -22
- package/dist/data-source/Webpage.js.map +0 -1
- package/dist/data-source/WebpageBody.d.ts.map +0 -1
- package/dist/data-source/WebpageBody.js.map +0 -1
- package/dist/data-source/WebpageUrl.d.ts.map +0 -1
- package/dist/data-source/WebpageUrl.js.map +0 -1
- package/dist/data-source/index.d.ts +0 -10
- package/dist/data-source/index.d.ts.map +0 -1
- package/dist/data-source/index.js +0 -10
- package/dist/data-source/index.js.map +0 -1
- package/dist/data-source/marketIndexTableUrl.d.ts +0 -3
- package/dist/data-source/marketIndexTableUrl.d.ts.map +0 -1
- package/dist/data-source/marketIndexTableUrl.js.map +0 -1
- package/dist/data-source/securityTableUrl.d.ts +0 -3
- package/dist/data-source/securityTableUrl.d.ts.map +0 -1
- package/dist/data-source/securityTableUrl.js.map +0 -1
- package/dist/data-store/InstrumentMongoDbCollection.d.ts.map +0 -1
- package/dist/data-store/InstrumentMongoDbCollection.js.map +0 -1
- package/dist/data-store/MarketIndexMongoDbCollection.d.ts.map +0 -1
- package/dist/data-store/MarketIndexMongoDbCollection.js.map +0 -1
- package/dist/data-store/SecurityMongoDbCollection.d.ts.map +0 -1
- package/dist/data-store/SecurityMongoDbCollection.js.map +0 -1
- package/dist/data-store/index.d.ts +0 -5
- package/dist/data-store/index.d.ts.map +0 -1
- package/dist/data-store/index.js +0 -5
- package/dist/data-store/index.js.map +0 -1
- package/dist/task/ConfigureEnvironmentVariables.d.ts +0 -10
- package/dist/task/ConfigureEnvironmentVariables.d.ts.map +0 -1
- package/dist/task/ConfigureEnvironmentVariables.js.map +0 -1
- package/dist/task/ConnectToMongoDb.d.ts.map +0 -1
- package/dist/task/ConnectToMongoDb.js.map +0 -1
- package/dist/task/DisconnectFromMongoDb.d.ts +0 -8
- package/dist/task/DisconnectFromMongoDb.d.ts.map +0 -1
- package/dist/task/DisconnectFromMongoDb.js.map +0 -1
- package/dist/task/MongoDbUri.d.ts.map +0 -1
- package/dist/task/MongoDbUri.js.map +0 -1
- package/dist/task/index.d.ts +0 -6
- package/dist/task/index.d.ts.map +0 -1
- package/dist/task/index.js +0 -6
- package/dist/task/index.js.map +0 -1
- /package/dist/{task/MongoDbUri.d.ts → MongoDbUri.d.ts} +0 -0
- /package/dist/{task/MongoDbUri.js → MongoDbUri.js} +0 -0
- /package/dist/{data-source/WebpageBody.d.ts → WebpageBody.d.ts} +0 -0
- /package/dist/{data-source/WebpageBody.js → WebpageBody.js} +0 -0
- /package/dist/{data-source/WebpageUrl.d.ts → WebpageUrl.d.ts} +0 -0
- /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
|
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
|
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=
|
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
|
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):
|
6
|
+
static create(uri: MongoDbUri): MongoDbConnector;
|
7
7
|
run(): Promise<Status<Error>>;
|
8
8
|
}
|
9
|
-
//# sourceMappingURL=
|
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
|
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
|
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=
|
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
|
3
|
+
export class MongoDbDisconnector {
|
4
4
|
constructor() { }
|
5
5
|
static _instance;
|
6
6
|
static create() {
|
7
|
-
return this._instance || (this._instance = new
|
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=
|
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,
|
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
|
-
|
6
|
-
|
7
|
-
|
8
|
-
this._url = _url;
|
9
|
-
this.bodyParser = bodyParser;
|
5
|
+
constructor() { }
|
6
|
+
static create() {
|
7
|
+
return new StaticWebpageScraper();
|
10
8
|
}
|
11
|
-
|
12
|
-
return new StaticWebpageScraper(url, bodyParser);
|
13
|
-
}
|
14
|
-
async scrapPage() {
|
9
|
+
async scrape(url) {
|
15
10
|
try {
|
16
|
-
const response = await got(
|
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 = `${
|
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
|
-
|
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"}
|
package/dist/Webpage.js
ADDED
@@ -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 '
|
2
|
-
export declare class
|
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():
|
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=
|
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"}
|
package/dist/{data-store/InstrumentMongoDbCollection.js → financial-instrument/MongoDbCollection.js}
RENAMED
@@ -1,6 +1,6 @@
|
|
1
|
-
import { Failure,
|
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
|
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
|
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 =
|
60
|
-
const securityCollection =
|
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=
|
90
|
+
//# sourceMappingURL=MongoDbCollection.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MongoDbCollection.js","sourceRoot":"","sources":["../../src/financial-instrument/MongoDbCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAMP,kBAAkB,EAClB,MAAM,EACN,WAAW,EAEX,OAAO,EACP,SAAS,GACV,MAAM,aAAa,CAAA;AACpB,OAAO,EAGL,MAAM,IAAI,cAAc,EACxB,KAAK,IAAI,aAAa,GACvB,MAAM,UAAU,CAAA;AASjB,MAAM,OAAO,iBAAiB;IAGX,KAAK,GAAG,uBAAuB,CAAA;IAC/B,OAAO,GACtB,IAAI,cAAc,CAChB;QACE,IAAI,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC;QAClD,MAAM,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC;QACpD,IAAI,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAC;QACpC,GAAG,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAC;QACnC,SAAS,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAC;KAC1C,EACD;QACE,UAAU,EAAE,IAAI,CAAC,KAAK;QACtB,UAAU,EAAE,IAAI;KACjB,CACF,CAAA;IACK,MAAM,CAAyC;IACvD;QACE,IAAI,CAAC,MAAM,GAAG,aAAa,CACzB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,CACb,CAAA;IACH,CAAC;IACO,MAAM,CAAC,SAAS,CAAmB;IAC3C,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC,CAAA;IACrE,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,UAAsB;QACjC,IAAI;YACF,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CACzB,EAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,EAAC,EAC7B,EAAC,IAAI,EAAE,UAAU,CAAC,KAAK,EAAC,EACxB,EAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAC,CAC1B,CAAA;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,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAClB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;SAClD;IACH,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,WAAyB;QACnC,IAAI;YACF,KAAK,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE;gBACvD,IAAI;oBACF,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;iBAC9B;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,GAAG,CAAC,aAAa,CAAC,CAAA;oBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;oBAC3D,SAAQ;iBACT;aACF;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;IACD,KAAK,CAAC,SAAS;QACb,IAAI;YACF,MAAM,eAAe,GAAG,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAA;YAC9D,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAA;YACxE,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GACvD,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,eAAe,CAAC,QAAQ,EAAE;gBAC1B,kBAAkB,CAAC,gBAAgB,EAAE;aACtC,CAAC,CAAA;YACJ,IAAI,WAAW,GAAiB,EAAE,CAAA;YAClC,IAAI,SAAS,CAAC,sBAAsB,CAAC,EAAE;gBACrC,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAA;gBAC9D,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;aAClD;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAA;aAClD;YACD,IAAI,SAAS,CAAC,yBAAyB,CAAC,EAAE;gBACxC,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAA;gBACpE,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;aACrD;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAA;aACrD;YACD,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;CACF"}
|
@@ -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 @@
|
|
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 './
|
3
|
-
export * from './
|
4
|
-
export * from './
|
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
|
package/dist/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wCAAwC,CAAA;AAEtD,
|
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 './
|
3
|
-
export * from './
|
4
|
-
export * from './
|
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,
|
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"}
|
package/dist/{data-store/MarketIndexMongoDbCollection.d.ts → market-index/MongoDbCollection.d.ts}
RENAMED
@@ -1,13 +1,13 @@
|
|
1
|
-
import { Feedback, IStorable, Instrument, Status } from '
|
2
|
-
export declare class
|
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():
|
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=
|
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"}
|
package/dist/{data-store/MarketIndexMongoDbCollection.js → market-index/MongoDbCollection.js}
RENAMED
@@ -1,6 +1,6 @@
|
|
1
|
-
import { Failure, Instrument, Result, Success, isFailure, } from '
|
1
|
+
import { Failure, Instrument, Result, Success, isFailure, } from '../index.js';
|
2
2
|
import { Schema as MongooseSchema, model as mongooseModel, } from 'mongoose';
|
3
|
-
export class
|
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
|
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=
|
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 '
|
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
|
11
|
+
export class WebpageBodyParser {
|
12
12
|
constructor() { }
|
13
13
|
static _instance;
|
14
14
|
static create() {
|
15
|
-
return this._instance || (this._instance = new
|
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=
|
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 @@
|
|
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,UAAU,EAAC,MAAM,iBAAiB,CAAA"}
|
@@ -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,UAAU,EAAC,MAAM,iBAAiB,CAAA"}
|
@@ -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,UAAU,YASnB,CAAA"}
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { WebpageUrl, isFailure } from '
|
2
|
-
export const
|
1
|
+
import { WebpageUrl, isFailure } from '../index.js';
|
2
|
+
export const webpageUrl = (() => {
|
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=
|
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,UAAU,GAAG,CAAC,GAAG,EAAE;IAC9B,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 '
|
2
|
-
export declare class
|
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():
|
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=
|
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"}
|