@volare.finance/nestjs.plugins 1.0.2 → 1.0.5

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 (109) hide show
  1. package/dist/aws/aws.config.d.ts +16 -0
  2. package/dist/aws/aws.config.js +3 -0
  3. package/dist/aws/aws.config.js.map +1 -0
  4. package/dist/aws/aws.module.d.ts +9 -0
  5. package/dist/aws/aws.module.js +28 -0
  6. package/dist/aws/aws.module.js.map +1 -0
  7. package/dist/aws/aws.service.d.ts +12 -0
  8. package/dist/aws/aws.service.js +66 -0
  9. package/dist/aws/aws.service.js.map +1 -0
  10. package/dist/aws/index.d.ts +7 -0
  11. package/dist/aws/index.js +11 -0
  12. package/dist/aws/index.js.map +1 -0
  13. package/dist/binance/binance.config.d.ts +10 -0
  14. package/dist/binance/binance.config.js +7 -0
  15. package/dist/binance/binance.config.js.map +1 -0
  16. package/dist/binance/binance.module.d.ts +9 -0
  17. package/dist/binance/binance.module.js +28 -0
  18. package/dist/binance/binance.module.js.map +1 -0
  19. package/dist/binance/binance.service.d.ts +69 -0
  20. package/dist/binance/binance.service.js +84 -0
  21. package/dist/binance/binance.service.js.map +1 -0
  22. package/dist/binance/index.d.ts +7 -0
  23. package/dist/binance/index.js +11 -0
  24. package/dist/binance/index.js.map +1 -0
  25. package/dist/coingecko/coingecko.config.d.ts +12 -0
  26. package/dist/coingecko/coingecko.config.js +7 -0
  27. package/dist/coingecko/coingecko.config.js.map +1 -0
  28. package/dist/coingecko/coingecko.module.d.ts +9 -0
  29. package/dist/coingecko/coingecko.module.js +28 -0
  30. package/dist/coingecko/coingecko.module.js.map +1 -0
  31. package/dist/coingecko/coingecko.service.d.ts +45 -0
  32. package/dist/coingecko/coingecko.service.js +49 -0
  33. package/dist/coingecko/coingecko.service.js.map +1 -0
  34. package/dist/coingecko/index.d.ts +7 -0
  35. package/dist/coingecko/index.js +11 -0
  36. package/dist/coingecko/index.js.map +1 -0
  37. package/dist/config/config.interface.d.ts +7 -0
  38. package/dist/config/config.interface.js +7 -0
  39. package/dist/config/config.interface.js.map +1 -0
  40. package/dist/config/config.module.d.ts +9 -0
  41. package/dist/config/config.module.js +25 -0
  42. package/dist/config/config.module.js.map +1 -0
  43. package/dist/config/config.service.d.ts +11 -0
  44. package/dist/config/config.service.js +26 -0
  45. package/dist/config/config.service.js.map +1 -0
  46. package/dist/config/index.d.ts +7 -0
  47. package/dist/config/index.js +11 -0
  48. package/dist/config/index.js.map +1 -0
  49. package/dist/index.d.ts +13 -0
  50. package/dist/index.js +17 -0
  51. package/dist/index.js.map +1 -0
  52. package/dist/lbank/index.d.ts +7 -0
  53. package/dist/lbank/index.js +11 -0
  54. package/dist/lbank/index.js.map +1 -0
  55. package/dist/lbank/lbank.config.d.ts +10 -0
  56. package/dist/lbank/lbank.config.js +7 -0
  57. package/dist/lbank/lbank.config.js.map +1 -0
  58. package/dist/lbank/lbank.module.d.ts +9 -0
  59. package/dist/lbank/lbank.module.js +28 -0
  60. package/dist/lbank/lbank.module.js.map +1 -0
  61. package/dist/lbank/lbank.service.d.ts +48 -0
  62. package/dist/lbank/lbank.service.js +90 -0
  63. package/dist/lbank/lbank.service.js.map +1 -0
  64. package/dist/logger/index.d.ts +7 -0
  65. package/dist/logger/index.js +11 -0
  66. package/dist/logger/index.js.map +1 -0
  67. package/dist/logger/logger.config.d.ts +17 -0
  68. package/dist/logger/logger.config.js +7 -0
  69. package/dist/logger/logger.config.js.map +1 -0
  70. package/dist/logger/logger.module.d.ts +9 -0
  71. package/dist/logger/logger.module.js +28 -0
  72. package/dist/logger/logger.module.js.map +1 -0
  73. package/dist/logger/logger.service.d.ts +19 -0
  74. package/dist/logger/logger.service.js +55 -0
  75. package/dist/logger/logger.service.js.map +1 -0
  76. package/dist/mexc/index.d.ts +7 -0
  77. package/dist/mexc/index.js +11 -0
  78. package/dist/mexc/index.js.map +1 -0
  79. package/dist/mexc/mexc.config.d.ts +10 -0
  80. package/dist/mexc/mexc.config.js +7 -0
  81. package/dist/mexc/mexc.config.js.map +1 -0
  82. package/dist/mexc/mexc.module.d.ts +9 -0
  83. package/dist/mexc/mexc.module.js +28 -0
  84. package/dist/mexc/mexc.module.js.map +1 -0
  85. package/dist/mexc/mexc.service.d.ts +73 -0
  86. package/dist/mexc/mexc.service.js +100 -0
  87. package/dist/mexc/mexc.service.js.map +1 -0
  88. package/dist/mongo/filter.dto.d.ts +10 -0
  89. package/dist/mongo/filter.dto.js +42 -0
  90. package/dist/mongo/filter.dto.js.map +1 -0
  91. package/dist/mongo/index.d.ts +6 -0
  92. package/dist/mongo/index.js +10 -0
  93. package/dist/mongo/index.js.map +1 -0
  94. package/dist/mongo/mongo.service.d.ts +10 -0
  95. package/dist/mongo/mongo.service.js +48 -0
  96. package/dist/mongo/mongo.service.js.map +1 -0
  97. package/dist/viabtc/index.d.ts +7 -0
  98. package/dist/viabtc/index.js +11 -0
  99. package/dist/viabtc/index.js.map +1 -0
  100. package/dist/viabtc/viabtc.config.d.ts +10 -0
  101. package/dist/viabtc/viabtc.config.js +7 -0
  102. package/dist/viabtc/viabtc.config.js.map +1 -0
  103. package/dist/viabtc/viabtc.module.d.ts +9 -0
  104. package/dist/viabtc/viabtc.module.js +28 -0
  105. package/dist/viabtc/viabtc.module.js.map +1 -0
  106. package/dist/viabtc/viabtc.service.d.ts +10 -0
  107. package/dist/viabtc/viabtc.service.js +41 -0
  108. package/dist/viabtc/viabtc.service.js.map +1 -0
  109. package/package.json +1 -1
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * @file mexc.module.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.MexcModule = void 0;
8
+ const config_1 = require("../config");
9
+ const mexc_service_1 = require("./mexc.service");
10
+ class MexcModule {
11
+ static forRoot(options) {
12
+ return {
13
+ module: MexcModule,
14
+ imports: [config_1.ConfigModule.forRoot(options)],
15
+ exports: [mexc_service_1.MexcService],
16
+ providers: [
17
+ {
18
+ provide: 'MexcConstant',
19
+ useFactory: (constant) => constant.config(),
20
+ inject: [config_1.ConfigService],
21
+ },
22
+ mexc_service_1.MexcService,
23
+ ],
24
+ };
25
+ }
26
+ }
27
+ exports.MexcModule = MexcModule;
28
+ //# sourceMappingURL=mexc.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mexc.module.js","sourceRoot":"","sources":["../../src/mexc/mexc.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,sCAAuE;AAEvE,iDAA6C;AAE7C,MAAa,UAAU;IACrB,MAAM,CAAC,OAAO,CAAC,OAAuB;QACpC,OAAO;YACL,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE,CAAC,qBAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxC,OAAO,EAAE,CAAC,0BAAW,CAAC;YACtB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,cAAc;oBACvB,UAAU,EAAE,CAAC,QAAmC,EAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC3E,MAAM,EAAE,CAAC,sBAAa,CAAC;iBACxB;gBACD,0BAAW;aACZ;SACF,CAAC;IACJ,CAAC;CACF;AAhBD,gCAgBC"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @file mexc.service.ts
3
+ * @date 2023
4
+ * @see https://mexcdevelop.github.io/apidocs/
5
+ */
6
+ import { MexcConfig } from './mexc.config';
7
+ export declare class MexcService {
8
+ private readonly constant;
9
+ private readonly instance;
10
+ constructor(constant: MexcConfig);
11
+ /**
12
+ * Market Data - Ticker Information
13
+ * @param symbol e.g. BTC_USDC
14
+ * @see https://mexcdevelop.github.io/apidocs/spot_v2_en/#ticker-information
15
+ * @deprecated
16
+ */
17
+ marketTicker(symbol: string): Promise<any>;
18
+ /**
19
+ * Market Data - Current Average Price
20
+ * @param symbol e.g. BTCUSDT
21
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#current-average-price
22
+ */
23
+ currentAveragePrice(symbol: string): Promise<{
24
+ mins: number;
25
+ price: string;
26
+ }>;
27
+ /**
28
+ * Market Data - 24hr Ticker Price Change Statistics
29
+ * @param symbol e.g. BTCUSDT
30
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#24hr-ticker-price-change-statistics
31
+ */
32
+ tickerPrice24H(symbol: string): Promise<{
33
+ symbol: string;
34
+ priceChange: string;
35
+ priceChangePercent: string;
36
+ prevClosePrice: string;
37
+ lastPrice: string;
38
+ bidPrice: string;
39
+ bidQty: string;
40
+ askPrice: string;
41
+ askQty: string;
42
+ openPrice: string;
43
+ highPrice: string;
44
+ lowPrice: string;
45
+ volume: string;
46
+ quoteVolume: string;
47
+ openTime: number;
48
+ closeTime: number;
49
+ count: number;
50
+ }>;
51
+ /**
52
+ * Market Data - Kline/Candlestick Data
53
+ * @param symbol e.g. BTCUSDT
54
+ * @param interval e.g. 1d
55
+ * @param startTime e.g. 1696089600000
56
+ * @param endTime e.g. 1698918180000
57
+ * @param limit e.g. 500
58
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#kline-candlestick-data
59
+ */
60
+ marketKlines(symbol: string, interval: '1m' | '5m' | '15m' | '30m' | '60m' | '4h' | '1d' | '1M', startTime?: string | number, endTime?: string | number, limit?: number): Promise<[number, string, string, string, string, string, number, string][]>;
61
+ /**
62
+ * Market Data - Order Book
63
+ * @param symbol e.g. BTCUSDT
64
+ * @param limit e.g. 500
65
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#order-book
66
+ */
67
+ orderBook(symbol: string, limit?: number): Promise<{
68
+ lastUpdateId: number;
69
+ bids: [string, string][];
70
+ asks: [string, string][];
71
+ timestamp: number;
72
+ }>;
73
+ }
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ /**
3
+ * @file mexc.service.ts
4
+ * @date 2023
5
+ * @see https://mexcdevelop.github.io/apidocs/
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.MexcService = void 0;
9
+ const tslib_1 = require("tslib");
10
+ const common_1 = require("@nestjs/common");
11
+ const axios_1 = tslib_1.__importDefault(require("axios"));
12
+ let MexcService = class MexcService {
13
+ constructor(constant) {
14
+ this.constant = constant;
15
+ this.instance = axios_1.default.create({ baseURL: this.constant.mexc.url });
16
+ }
17
+ /**
18
+ * Market Data - Ticker Information
19
+ * @param symbol e.g. BTC_USDC
20
+ * @see https://mexcdevelop.github.io/apidocs/spot_v2_en/#ticker-information
21
+ * @deprecated
22
+ */
23
+ marketTicker(symbol) {
24
+ var _a;
25
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
26
+ if (!((_a = this.constant.mexc) === null || _a === void 0 ? void 0 : _a.enabled)) {
27
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
28
+ }
29
+ return (yield this.instance.get('/open/api/v2/market/ticker', { params: { symbol } })).data;
30
+ });
31
+ }
32
+ // ----- v3 -----
33
+ /**
34
+ * Market Data - Current Average Price
35
+ * @param symbol e.g. BTCUSDT
36
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#current-average-price
37
+ */
38
+ currentAveragePrice(symbol) {
39
+ var _a;
40
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
41
+ if (!((_a = this.constant.mexc) === null || _a === void 0 ? void 0 : _a.enabled)) {
42
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
43
+ }
44
+ return (yield this.instance.get('/api/v3/avgPrice', { params: { symbol } })).data;
45
+ });
46
+ }
47
+ /**
48
+ * Market Data - 24hr Ticker Price Change Statistics
49
+ * @param symbol e.g. BTCUSDT
50
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#24hr-ticker-price-change-statistics
51
+ */
52
+ tickerPrice24H(symbol) {
53
+ var _a;
54
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
55
+ if (!((_a = this.constant.mexc) === null || _a === void 0 ? void 0 : _a.enabled)) {
56
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
57
+ }
58
+ return (yield this.instance.get('/api/v3/ticker/24hr', { params: { symbol } })).data;
59
+ });
60
+ }
61
+ /**
62
+ * Market Data - Kline/Candlestick Data
63
+ * @param symbol e.g. BTCUSDT
64
+ * @param interval e.g. 1d
65
+ * @param startTime e.g. 1696089600000
66
+ * @param endTime e.g. 1698918180000
67
+ * @param limit e.g. 500
68
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#kline-candlestick-data
69
+ */
70
+ marketKlines(symbol, interval, startTime, endTime, limit) {
71
+ var _a;
72
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
73
+ if (!((_a = this.constant.mexc) === null || _a === void 0 ? void 0 : _a.enabled)) {
74
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
75
+ }
76
+ return (yield this.instance.get('/api/v3/klines', { params: { symbol, interval, startTime, endTime, limit } })).data;
77
+ });
78
+ }
79
+ /**
80
+ * Market Data - Order Book
81
+ * @param symbol e.g. BTCUSDT
82
+ * @param limit e.g. 500
83
+ * @see https://mexcdevelop.github.io/apidocs/spot_v3_en/#order-book
84
+ */
85
+ orderBook(symbol, limit) {
86
+ var _a;
87
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
88
+ if (!((_a = this.constant.mexc) === null || _a === void 0 ? void 0 : _a.enabled)) {
89
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
90
+ }
91
+ return (yield this.instance.get('/api/v3/depth', { params: { symbol, limit } })).data;
92
+ });
93
+ }
94
+ };
95
+ MexcService = tslib_1.__decorate([
96
+ (0, common_1.Injectable)(),
97
+ tslib_1.__param(0, (0, common_1.Inject)('MexcConstant'))
98
+ ], MexcService);
99
+ exports.MexcService = MexcService;
100
+ //# sourceMappingURL=mexc.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mexc.service.js","sourceRoot":"","sources":["../../src/mexc/mexc.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @file filter.dto.ts
3
+ * @date 2023
4
+ */
5
+ export declare class FilterDto {
6
+ where?: any;
7
+ sort?: any;
8
+ skip?: number;
9
+ limit?: number;
10
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ /**
3
+ * @file filter.dto.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FilterDto = void 0;
8
+ const tslib_1 = require("tslib");
9
+ const swagger_1 = require("@nestjs/swagger");
10
+ class FilterDto {
11
+ }
12
+ tslib_1.__decorate([
13
+ (0, swagger_1.ApiPropertyOptional)({
14
+ type: Object,
15
+ description: 'An object containing a JavaScript expression or a full JavaScript function passed to the query system.',
16
+ })
17
+ ], FilterDto.prototype, "where", void 0);
18
+ tslib_1.__decorate([
19
+ (0, swagger_1.ApiPropertyOptional)({
20
+ type: Object,
21
+ description: 'Sorts all input documents and returns them to the pipeline in sorted order.',
22
+ })
23
+ ], FilterDto.prototype, "sort", void 0);
24
+ tslib_1.__decorate([
25
+ (0, swagger_1.ApiPropertyOptional)({
26
+ type: Number,
27
+ minimum: 0,
28
+ description: 'The number of items to skip before starting to collect the result set.',
29
+ example: 0,
30
+ })
31
+ ], FilterDto.prototype, "skip", void 0);
32
+ tslib_1.__decorate([
33
+ (0, swagger_1.ApiPropertyOptional)({
34
+ type: Number,
35
+ minimum: 0,
36
+ maximum: 30,
37
+ description: 'The number of items to return.',
38
+ example: 10,
39
+ })
40
+ ], FilterDto.prototype, "limit", void 0);
41
+ exports.FilterDto = FilterDto;
42
+ //# sourceMappingURL=filter.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.dto.js","sourceRoot":"","sources":["../../src/mongo/filter.dto.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,6CAAsD;AAEtD,MAAa,SAAS;CA6BrB;AAxBC;IAJC,IAAA,6BAAmB,EAAC;QACnB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,wGAAwG;KACtH,CAAC;wCACU;AAMZ;IAJC,IAAA,6BAAmB,EAAC;QACnB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,6EAA6E;KAC3F,CAAC;uCACS;AAQX;IANC,IAAA,6BAAmB,EAAC;QACnB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,wEAAwE;QACrF,OAAO,EAAE,CAAC;KACX,CAAC;uCACY;AASd;IAPC,IAAA,6BAAmB,EAAC;QACnB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,gCAAgC;QAC7C,OAAO,EAAE,EAAE;KACZ,CAAC;wCACa;AA5BjB,8BA6BC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @file index.ts
3
+ * @date 2023
4
+ */
5
+ export * from './filter.dto';
6
+ export * from './mongo.service';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * @file index.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const tslib_1 = require("tslib");
8
+ tslib_1.__exportStar(require("./filter.dto"), exports);
9
+ tslib_1.__exportStar(require("./mongo.service"), exports);
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mongo/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uDAA6B;AAC7B,0DAAgC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @file mongo.service.ts
3
+ * @date 2023
4
+ */
5
+ import { FilterDto } from './filter.dto';
6
+ export declare class MongoService {
7
+ static find(query: any, filter: FilterDto, selectArgs?: string | any): Promise<any[]>;
8
+ static aggregate(aggregate2: any, filter: FilterDto, selectArgs?: string | any): any;
9
+ static count(query: any, filter: FilterDto): Promise<number>;
10
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * @file mongo.service.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.MongoService = void 0;
8
+ const tslib_1 = require("tslib");
9
+ class MongoService {
10
+ static find(query, filter, selectArgs = '-_id -__v') {
11
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
+ if (filter.where && Object.keys(filter.where).length) {
13
+ query.where(filter.where);
14
+ }
15
+ if (filter.sort && Object.keys(filter.sort).length) {
16
+ query.sort(filter.sort);
17
+ }
18
+ if (filter.skip) {
19
+ query.skip(filter.skip);
20
+ }
21
+ query.limit(filter.limit && filter.limit < 30 ? filter.limit : 30);
22
+ return query.select(selectArgs).exec();
23
+ });
24
+ }
25
+ static aggregate(aggregate2, filter, selectArgs = '-_id -__v') {
26
+ if (filter.where && Object.keys(filter.where).length) {
27
+ aggregate2.match(filter.where);
28
+ }
29
+ if (filter.sort && Object.keys(filter.sort).length) {
30
+ aggregate2.sort(filter.sort);
31
+ }
32
+ if (filter.skip) {
33
+ aggregate2.skip(filter.skip);
34
+ }
35
+ aggregate2.limit(filter.limit && filter.limit < 30 ? filter.limit : 30);
36
+ return aggregate2.project(selectArgs);
37
+ }
38
+ static count(query, filter) {
39
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
40
+ if (filter.where) {
41
+ query.where(filter.where);
42
+ }
43
+ return query.countDocuments();
44
+ });
45
+ }
46
+ }
47
+ exports.MongoService = MongoService;
48
+ //# sourceMappingURL=mongo.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo.service.js","sourceRoot":"","sources":["../../src/mongo/mongo.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAIH,MAAa,YAAY;IACvB,MAAM,CAAO,IAAI,CAAC,KAAU,EAAE,MAAiB,EAAE,aAA2B,WAAW;;YACrF,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE;gBACpD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC3B;YACD,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;gBAClD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACzB;YACD,IAAI,MAAM,CAAC,IAAI,EAAE;gBACf,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;aACzB;YACD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACnE,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,CAAC;KAAA;IAED,MAAM,CAAC,SAAS,CAAC,UAAe,EAAE,MAAiB,EAAE,aAA2B,WAAW;QACzF,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE;YACpD,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAChC;QACD,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE;YAClD,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC9B;QACD,IAAI,MAAM,CAAC,IAAI,EAAE;YACf,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC9B;QACD,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAO,KAAK,CAAC,KAAU,EAAE,MAAiB;;YAC9C,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aAC3B;YACD,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;QAChC,CAAC;KAAA;CACF;AAnCD,oCAmCC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @file index.ts
3
+ * @date 2023
4
+ */
5
+ export * from './viabtc.config';
6
+ export * from './viabtc.module';
7
+ export * from './viabtc.service';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @file index.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const tslib_1 = require("tslib");
8
+ tslib_1.__exportStar(require("./viabtc.config"), exports);
9
+ tslib_1.__exportStar(require("./viabtc.module"), exports);
10
+ tslib_1.__exportStar(require("./viabtc.service"), exports);
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/viabtc/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,0DAAgC;AAChC,0DAAgC;AAChC,2DAAiC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @file viabtc.config.ts
3
+ * @date 2023
4
+ */
5
+ export interface ViabtcConfig {
6
+ viabtc: {
7
+ enabled: boolean;
8
+ url?: string;
9
+ };
10
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * @file viabtc.config.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=viabtc.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viabtc.config.js","sourceRoot":"","sources":["../../src/viabtc/viabtc.config.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @file viabtc.module.ts
3
+ * @date 2023
4
+ */
5
+ import { DynamicModule } from '@nestjs/common';
6
+ import { ConfigOptions } from '../config';
7
+ export declare class ViabtcModule {
8
+ static forRoot(options?: ConfigOptions): DynamicModule;
9
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * @file viabtc.module.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ViabtcModule = void 0;
8
+ const config_1 = require("../config");
9
+ const viabtc_service_1 = require("./viabtc.service");
10
+ class ViabtcModule {
11
+ static forRoot(options) {
12
+ return {
13
+ module: ViabtcModule,
14
+ imports: [config_1.ConfigModule.forRoot(options)],
15
+ exports: [viabtc_service_1.ViabtcService],
16
+ providers: [
17
+ {
18
+ provide: 'ViabtcConstant',
19
+ useFactory: (constant) => constant.config(),
20
+ inject: [config_1.ConfigService],
21
+ },
22
+ viabtc_service_1.ViabtcService,
23
+ ],
24
+ };
25
+ }
26
+ }
27
+ exports.ViabtcModule = ViabtcModule;
28
+ //# sourceMappingURL=viabtc.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viabtc.module.js","sourceRoot":"","sources":["../../src/viabtc/viabtc.module.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,sCAAuE;AAEvE,qDAAiD;AAEjD,MAAa,YAAY;IACvB,MAAM,CAAC,OAAO,CAAC,OAAuB;QACpC,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,CAAC,qBAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxC,OAAO,EAAE,CAAC,8BAAa,CAAC;YACxB,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,gBAAgB;oBACzB,UAAU,EAAE,CAAC,QAAqC,EAAO,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAC7E,MAAM,EAAE,CAAC,sBAAa,CAAC;iBACxB;gBACD,8BAAa;aACd;SACF,CAAC;IACJ,CAAC;CACF;AAhBD,oCAgBC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @file viabtc.service.ts
3
+ * @date 2023
4
+ */
5
+ import { ViabtcConfig } from './viabtc.config';
6
+ export declare class ViabtcService {
7
+ private readonly constant;
8
+ constructor(constant: ViabtcConfig);
9
+ marketKline(params: any): Promise<any>;
10
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ /**
3
+ * @file viabtc.service.ts
4
+ * @date 2023
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ViabtcService = void 0;
8
+ const tslib_1 = require("tslib");
9
+ const common_1 = require("@nestjs/common");
10
+ const axios_1 = tslib_1.__importDefault(require("axios"));
11
+ let ViabtcService = class ViabtcService {
12
+ constructor(constant) {
13
+ this.constant = constant;
14
+ // do nothing
15
+ }
16
+ // @see https://github.com/viabtc/viabtc_exchange_server/wiki/HTTP-Protocol#market-api
17
+ marketKline(params) {
18
+ var _a;
19
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
20
+ if (!((_a = this.constant.viabtc) === null || _a === void 0 ? void 0 : _a.enabled)) {
21
+ throw new common_1.HttpException('This feature is not supported', common_1.HttpStatus.BAD_REQUEST);
22
+ }
23
+ return (yield (0, axios_1.default)({
24
+ method: 'POST',
25
+ url: this.constant.viabtc.url,
26
+ data: {
27
+ id: 68,
28
+ jsonrpc: '2.0',
29
+ method: 'market.kline',
30
+ params,
31
+ },
32
+ })).data;
33
+ });
34
+ }
35
+ };
36
+ ViabtcService = tslib_1.__decorate([
37
+ (0, common_1.Injectable)(),
38
+ tslib_1.__param(0, (0, common_1.Inject)('ViabtcConstant'))
39
+ ], ViabtcService);
40
+ exports.ViabtcService = ViabtcService;
41
+ //# sourceMappingURL=viabtc.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viabtc.service.js","sourceRoot":"","sources":["../../src/viabtc/viabtc.service.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;AAEH,2CAA+E;AAC/E,0DAA0B;AAInB,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,YAAuD,QAAsB;QAAtB,aAAQ,GAAR,QAAQ,CAAc;QAC3E,aAAa;IACf,CAAC;IAED,sFAAsF;IAChF,WAAW,CAAC,MAAW;;;YAC3B,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,0CAAE,OAAO,CAAA,EAAE;gBAClC,MAAM,IAAI,sBAAa,CAAC,+BAA+B,EAAE,mBAAU,CAAC,WAAW,CAAC,CAAC;aAClF;YACD,OAAO,CACL,MAAM,IAAA,eAAK,EAAC;gBACV,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG;gBAC7B,IAAI,EAAE;oBACJ,EAAE,EAAE,EAAE;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,cAAc;oBACtB,MAAM;iBACP;aACF,CAAC,CACH,CAAC,IAAI,CAAC;;KACR;CACF,CAAA;AAvBY,aAAa;IADzB,IAAA,mBAAU,GAAE;IAEE,mBAAA,IAAA,eAAM,EAAC,gBAAgB,CAAC,CAAA;GAD1B,aAAa,CAuBzB;AAvBY,sCAAa"}
package/package.json CHANGED
@@ -45,5 +45,5 @@
45
45
  "pub": "npm publish --access public"
46
46
  },
47
47
  "types": "./dist/index.d.ts",
48
- "version": "1.0.2"
48
+ "version": "1.0.5"
49
49
  }