@serpstat/serpstat-mcp-server 1.0.2
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/.env.example +10 -0
- package/LICENSE +21 -0
- package/README.md +288 -0
- package/dist/handlers/backlinks_tools.d.ts +11 -0
- package/dist/handlers/backlinks_tools.d.ts.map +1 -0
- package/dist/handlers/backlinks_tools.js +59 -0
- package/dist/handlers/backlinks_tools.js.map +1 -0
- package/dist/handlers/base.d.ts +10 -0
- package/dist/handlers/base.d.ts.map +1 -0
- package/dist/handlers/base.js +26 -0
- package/dist/handlers/base.js.map +1 -0
- package/dist/handlers/domain.d.ts +11 -0
- package/dist/handlers/domain.d.ts.map +1 -0
- package/dist/handlers/domain.js +75 -0
- package/dist/handlers/domain.js.map +1 -0
- package/dist/handlers/domain_tools.d.ts +51 -0
- package/dist/handlers/domain_tools.d.ts.map +1 -0
- package/dist/handlers/domain_tools.js +538 -0
- package/dist/handlers/domain_tools.js.map +1 -0
- package/dist/handlers/keyword_tools.d.ts +19 -0
- package/dist/handlers/keyword_tools.d.ts.map +1 -0
- package/dist/handlers/keyword_tools.js +251 -0
- package/dist/handlers/keyword_tools.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +31 -0
- package/dist/index.js.map +1 -0
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +76 -0
- package/dist/server.js.map +1 -0
- package/dist/services/backlinks_tools.d.ts +7 -0
- package/dist/services/backlinks_tools.d.ts.map +1 -0
- package/dist/services/backlinks_tools.js +25 -0
- package/dist/services/backlinks_tools.js.map +1 -0
- package/dist/services/base.d.ts +13 -0
- package/dist/services/base.d.ts.map +1 -0
- package/dist/services/base.js +83 -0
- package/dist/services/base.js.map +1 -0
- package/dist/services/domain.d.ts +7 -0
- package/dist/services/domain.d.ts.map +1 -0
- package/dist/services/domain.js +26 -0
- package/dist/services/domain.js.map +1 -0
- package/dist/services/domain_tools.d.ts +13 -0
- package/dist/services/domain_tools.d.ts.map +1 -0
- package/dist/services/domain_tools.js +111 -0
- package/dist/services/domain_tools.js.map +1 -0
- package/dist/services/keyword_tools.d.ts +8 -0
- package/dist/services/keyword_tools.d.ts.map +1 -0
- package/dist/services/keyword_tools.js +43 -0
- package/dist/services/keyword_tools.js.map +1 -0
- package/dist/types/mcp.d.ts +12 -0
- package/dist/types/mcp.d.ts.map +1 -0
- package/dist/types/mcp.js +3 -0
- package/dist/types/mcp.js.map +1 -0
- package/dist/types/serpstat.d.ts +237 -0
- package/dist/types/serpstat.d.ts.map +1 -0
- package/dist/types/serpstat.js +24 -0
- package/dist/types/serpstat.js.map +1 -0
- package/dist/utils/config.d.ts +24 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +21 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +19 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/validation.d.ts +952 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +257 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DomainService = void 0;
|
|
4
|
+
const base_js_1 = require("./base.js");
|
|
5
|
+
const logger_js_1 = require("../utils/logger.js");
|
|
6
|
+
class DomainService extends base_js_1.BaseService {
|
|
7
|
+
async getDomainsInfo(params) {
|
|
8
|
+
logger_js_1.logger.info('Getting domains info', { domains: params.domains, se: params.se });
|
|
9
|
+
const request = {
|
|
10
|
+
id: `domains_info_${Date.now()}`,
|
|
11
|
+
method: 'SerpstatDomainProcedure.getDomainsInfo',
|
|
12
|
+
params,
|
|
13
|
+
};
|
|
14
|
+
const response = await this.makeRequest(request);
|
|
15
|
+
if (!response.result) {
|
|
16
|
+
throw new Error('No result data received from Serpstat API');
|
|
17
|
+
}
|
|
18
|
+
logger_js_1.logger.info('Successfully retrieved domains info', {
|
|
19
|
+
domainsCount: response.result.data.length,
|
|
20
|
+
leftLines: response.result.summary_info.left_lines
|
|
21
|
+
});
|
|
22
|
+
return response.result;
|
|
23
|
+
}
|
|
24
|
+
async getCompetitors(params) {
|
|
25
|
+
logger_js_1.logger.info('Getting competitors', { domain: params.domain, se: params.se });
|
|
26
|
+
const request = {
|
|
27
|
+
id: `competitors_${Date.now()}`,
|
|
28
|
+
method: 'SerpstatDomainProcedure.getCompetitors',
|
|
29
|
+
params,
|
|
30
|
+
};
|
|
31
|
+
const response = await this.makeRequest(request);
|
|
32
|
+
if (!response.result) {
|
|
33
|
+
throw new Error('No result data received from Serpstat API');
|
|
34
|
+
}
|
|
35
|
+
logger_js_1.logger.info('Successfully retrieved competitors', {
|
|
36
|
+
competitorsCount: response.result.data.length,
|
|
37
|
+
leftLines: response.result.summary_info.left_lines
|
|
38
|
+
});
|
|
39
|
+
return response.result;
|
|
40
|
+
}
|
|
41
|
+
async getDomainKeywords(params) {
|
|
42
|
+
logger_js_1.logger.info('Getting domain keywords', { domain: params.domain, se: params.se });
|
|
43
|
+
const request = {
|
|
44
|
+
id: `domain_keywords_${Date.now()}`,
|
|
45
|
+
method: 'SerpstatDomainProcedure.getDomainKeywords',
|
|
46
|
+
params,
|
|
47
|
+
};
|
|
48
|
+
const response = await this.makeRequest(request);
|
|
49
|
+
if (!response.result) {
|
|
50
|
+
throw new Error('No result data received from Serpstat API');
|
|
51
|
+
}
|
|
52
|
+
logger_js_1.logger.info('Successfully retrieved domain keywords', {
|
|
53
|
+
keywordsCount: response.result.data.length,
|
|
54
|
+
leftLines: response.result.summary_info.left_lines
|
|
55
|
+
});
|
|
56
|
+
return response.result;
|
|
57
|
+
}
|
|
58
|
+
async getDomainUrls(params) {
|
|
59
|
+
logger_js_1.logger.info('Getting domain URLs', { domain: params.domain, se: params.se });
|
|
60
|
+
const request = {
|
|
61
|
+
id: `domain_urls_${Date.now()}`,
|
|
62
|
+
method: 'SerpstatDomainProcedure.getDomainUrls',
|
|
63
|
+
params,
|
|
64
|
+
};
|
|
65
|
+
const response = await this.makeRequest(request);
|
|
66
|
+
if (!response.result) {
|
|
67
|
+
throw new Error('No result data received from Serpstat API');
|
|
68
|
+
}
|
|
69
|
+
logger_js_1.logger.info('Successfully retrieved domain URLs', {
|
|
70
|
+
urlsCount: response.result.data.length,
|
|
71
|
+
leftLines: response.result.summary_info.left_lines
|
|
72
|
+
});
|
|
73
|
+
return response.result;
|
|
74
|
+
}
|
|
75
|
+
async getDomainRegionsCount(params) {
|
|
76
|
+
logger_js_1.logger.info('Getting domain regions count', { domain: params.domain, sort: params.sort, order: params.order });
|
|
77
|
+
const request = {
|
|
78
|
+
id: `domain_regions_count_${Date.now()}`,
|
|
79
|
+
method: 'SerpstatDomainProcedure.getRegionsCount',
|
|
80
|
+
params,
|
|
81
|
+
};
|
|
82
|
+
const response = await this.makeRequest(request);
|
|
83
|
+
if (!response.result) {
|
|
84
|
+
throw new Error('No result data received from Serpstat API');
|
|
85
|
+
}
|
|
86
|
+
logger_js_1.logger.info('Successfully retrieved domain regions count', {
|
|
87
|
+
regionsCount: response.result.data.length,
|
|
88
|
+
leftLines: response.result.summary_info.left_lines
|
|
89
|
+
});
|
|
90
|
+
return response.result;
|
|
91
|
+
}
|
|
92
|
+
async getDomainUniqKeywords(params) {
|
|
93
|
+
logger_js_1.logger.info('Getting unique keywords for domains', { domains: params.domains, minusDomain: params.minusDomain, se: params.se });
|
|
94
|
+
const request = {
|
|
95
|
+
id: `domain_uniq_keywords_${Date.now()}`,
|
|
96
|
+
method: 'SerpstatDomainProcedure.getDomainsUniqKeywords',
|
|
97
|
+
params,
|
|
98
|
+
};
|
|
99
|
+
const response = await this.makeRequest(request);
|
|
100
|
+
if (!response.result) {
|
|
101
|
+
throw new Error('No result data received from Serpstat API');
|
|
102
|
+
}
|
|
103
|
+
logger_js_1.logger.info('Successfully retrieved unique keywords', {
|
|
104
|
+
keywordsCount: response.result.data.length,
|
|
105
|
+
leftLines: response.result.summary_info.left_lines
|
|
106
|
+
});
|
|
107
|
+
return response.result;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
exports.DomainService = DomainService;
|
|
111
|
+
//# sourceMappingURL=domain_tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domain_tools.js","sourceRoot":"","sources":["../../src/services/domain_tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseService } from './base.js';
|
|
2
|
+
import { KeywordGetParams, GetRelatedKeywordsParams } from '../utils/validation.js';
|
|
3
|
+
import { KeywordGetResponse, GetRelatedKeywordsResponse } from '../types/serpstat.js';
|
|
4
|
+
export declare class KeywordService extends BaseService {
|
|
5
|
+
getKeywords(params: KeywordGetParams): Promise<KeywordGetResponse>;
|
|
6
|
+
getRelatedKeywords(params: GetRelatedKeywordsParams): Promise<GetRelatedKeywordsResponse>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=keyword_tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyword_tools.d.ts","sourceRoot":"","sources":["../../src/services/keyword_tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAmB,MAAM,sBAAsB,CAAC;AAGvG,qBAAa,cAAe,SAAQ,WAAW;IACrC,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkBlE,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,0BAA0B,CAAC;CAiBlG"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KeywordService = void 0;
|
|
4
|
+
const base_js_1 = require("./base.js");
|
|
5
|
+
const logger_js_1 = require("../utils/logger.js");
|
|
6
|
+
class KeywordService extends base_js_1.BaseService {
|
|
7
|
+
async getKeywords(params) {
|
|
8
|
+
logger_js_1.logger.info('Getting keywords', { keyword: params.keyword, se: params.se });
|
|
9
|
+
const request = {
|
|
10
|
+
id: `get_keywords_${Date.now()}`,
|
|
11
|
+
method: 'SerpstatKeywordProcedure.getKeywords',
|
|
12
|
+
params,
|
|
13
|
+
};
|
|
14
|
+
const response = await this.makeRequest(request);
|
|
15
|
+
if (!response.result) {
|
|
16
|
+
throw new Error('No result data received from Serpstat API');
|
|
17
|
+
}
|
|
18
|
+
logger_js_1.logger.info('Successfully retrieved keywords', {
|
|
19
|
+
keywordsCount: response.result.data.length,
|
|
20
|
+
leftLines: response.result.summary_info.left_lines
|
|
21
|
+
});
|
|
22
|
+
return response.result;
|
|
23
|
+
}
|
|
24
|
+
async getRelatedKeywords(params) {
|
|
25
|
+
logger_js_1.logger.info('Getting related keywords', { keyword: params.keyword, se: params.se });
|
|
26
|
+
const request = {
|
|
27
|
+
id: `get_related_keywords_${Date.now()}`,
|
|
28
|
+
method: 'SerpstatKeywordProcedure.getRelatedKeywords',
|
|
29
|
+
params,
|
|
30
|
+
};
|
|
31
|
+
const response = await this.makeRequest(request);
|
|
32
|
+
if (!response.result) {
|
|
33
|
+
throw new Error('No result data received from Serpstat API');
|
|
34
|
+
}
|
|
35
|
+
logger_js_1.logger.info('Successfully retrieved related keywords', {
|
|
36
|
+
keywordsCount: response.result.data.length,
|
|
37
|
+
leftLines: response.result.summary_info.left_lines
|
|
38
|
+
});
|
|
39
|
+
return response.result;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.KeywordService = KeywordService;
|
|
43
|
+
//# sourceMappingURL=keyword_tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyword_tools.js","sourceRoot":"","sources":["../../src/services/keyword_tools.ts"],"names":[],"mappings":";;;AAAA,uCAAwC;AAGxC,kDAA4C;AAE5C,MAAa,cAAe,SAAQ,qBAAW;IAC3C,KAAK,CAAC,WAAW,CAAC,MAAwB;QACtC,kBAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAoB;YAC7B,EAAE,EAAE,gBAAgB,IAAI,CAAC,GAAG,EAAE,EAAE;YAChC,MAAM,EAAE,sCAAsC;YAC9C,MAAM;SACT,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAqB,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACjE,CAAC;QACD,kBAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAC3C,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM;YAC1C,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;SACrD,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAAgC;QACrD,kBAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACpF,MAAM,OAAO,GAAoB;YAC7B,EAAE,EAAE,wBAAwB,IAAI,CAAC,GAAG,EAAE,EAAE;YACxC,MAAM,EAAE,6CAA6C;YACrD,MAAM;SACT,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAA6B,OAAO,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACjE,CAAC;QACD,kBAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;YACnD,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM;YAC1C,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;SACrD,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;CACJ;AApCD,wCAoCC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
export interface SerpstatRequest {
|
|
2
|
+
id: string;
|
|
3
|
+
method: string;
|
|
4
|
+
params: Record<string, any>;
|
|
5
|
+
}
|
|
6
|
+
export interface SerpstatResponse<T = any> {
|
|
7
|
+
id: string;
|
|
8
|
+
result?: T;
|
|
9
|
+
error?: {
|
|
10
|
+
code: number;
|
|
11
|
+
message: string;
|
|
12
|
+
data?: any;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export interface DomainInfo {
|
|
16
|
+
domain: string;
|
|
17
|
+
visible: number;
|
|
18
|
+
keywords: number;
|
|
19
|
+
traff: number;
|
|
20
|
+
visible_dynamic: number;
|
|
21
|
+
keywords_dynamic: number;
|
|
22
|
+
traff_dynamic: number;
|
|
23
|
+
ads_dynamic: number;
|
|
24
|
+
new_keywords: number;
|
|
25
|
+
out_keywords: number;
|
|
26
|
+
rised_keywords: number;
|
|
27
|
+
down_keywords: number;
|
|
28
|
+
ad_keywords: number;
|
|
29
|
+
ads: number;
|
|
30
|
+
prev_date: string;
|
|
31
|
+
}
|
|
32
|
+
export interface DomainsInfoResponse {
|
|
33
|
+
data: DomainInfo[];
|
|
34
|
+
summary_info: {
|
|
35
|
+
page: number;
|
|
36
|
+
left_lines: number;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
export declare const SEARCH_ENGINES: readonly ["g_af", "g_al", "g_dz", "g_as", "g_ad", "g_ao", "g_ai", "g_ag", "g_ar", "g_am", "g_aw", "g_au", "g_at", "g_az", "g_bh", "g_bd", "g_bb", "g_by", "g_be", "g_bz", "g_bj", "g_bm", "g_bt", "g_bo", "g_ba", "g_bw", "g_br", "g_io", "g_vg", "g_bn", "g_bg", "g_bf", "g_bi", "g_kh", "g_cm", "g_ca", "g_cv", "g_ky", "g_cf", "g_td", "g_cl", "g_cn", "g_cx", "g_сс", "g_co", "g_km", "g_ck", "g_cr", "g_ci", "g_hr", "g_cw", "g_cy", "g_cz", "g_cd", "g_dk", "g_dj", "g_dm", "g_do", "g_ec", "g_eg", "g_sv", "g_gq", "g_er", "g_ee", "g_et", "g_fk", "g_fo", "g_fm", "g_fj", "g_fi", "g_fr", "g_gf", "g_pf", "g_ga", "g_ge", "g_de", "g_gh", "g_gi", "g_gr", "g_gl", "g_gd", "g_gp", "g_gu", "g_gt", "g_gg", "g_gn", "g_gw", "g_gy", "g_ht", "g_hn", "g_hk", "g_hu", "g_is", "g_in", "g_id", "g_iq", "g_ie", "g_im", "g_il", "g_it", "g_jm", "g_jp", "g_je", "g_jo", "g_kz", "g_ke", "g_ki", "g_kw", "g_kg", "g_la", "g_lv", "g_lb", "g_ls", "g_lr", "g_ly", "g_li", "g_lt", "g_lu", "g_mo", "g_mk", "g_mg", "g_mw", "g_my", "g_mv", "g_ml", "g_mt", "g_mh", "g_mq", "g_mr", "g_mu", "g_yt", "g_mx", "g_md", "g_mc", "g_mn", "g_me", "g_ms", "g_ma", "g_mz", "g_mm", "g_na", "g_nr", "g_np", "g_nl", "g_nc", "g_nz", "g_ni", "g_ne", "g_ng", "g_nu", "g_nf", "g_mp", "g_no", "g_om", "g_pk", "g_pw", "g_ps", "g_pa", "g_pg", "g_py", "g_pe", "g_ph", "g_pn", "g_pl", "g_pt", "g_pr", "g_qa", "g_cg", "g_re", "g_ro", "g_ru", "g_rw", "g_sh", "g_kn", "g_lc", "g_pm", "g_vc", "g_ws", "g_sm", "g_st", "g_sa", "g_sn", "g_rs", "g_sc", "g_sl", "g_sg", "g_sx", "g_sk", "g_si", "g_sb", "g_so", "g_za", "g_kr", "g_es", "g_lk", "g_sr", "g_sz", "g_se", "g_ch", "g_tw", "g_tj", "g_tz", "g_th", "g_bs", "g_gm", "g_tl", "g_tg", "g_tk", "g_to", "g_tt", "g_tn", "g_tr", "g_tm", "g_tc", "g_tv", "g_vi", "g_ug", "g_ua", "g_ae", "g_uk", "g_us", "g_uy", "g_uz", "g_vu", "g_va", "g_ve", "g_vn", "g_wf", "g_ye", "g_zm", "g_zw", "bing_us"];
|
|
40
|
+
export type SearchEngine = typeof SEARCH_ENGINES[number];
|
|
41
|
+
export interface Competitor {
|
|
42
|
+
domain: string;
|
|
43
|
+
visible: number;
|
|
44
|
+
traff: number;
|
|
45
|
+
keywords: number;
|
|
46
|
+
relevance: number;
|
|
47
|
+
}
|
|
48
|
+
export interface CompetitorsResponse {
|
|
49
|
+
data: Competitor[];
|
|
50
|
+
summary_info: {
|
|
51
|
+
page: number;
|
|
52
|
+
left_lines: number;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
export interface BacklinksSummaryData {
|
|
56
|
+
sersptat_domain_rank: number;
|
|
57
|
+
referring_domains: number;
|
|
58
|
+
referring_domains_change: number;
|
|
59
|
+
redirected_domains: number;
|
|
60
|
+
referring_malicious_domains: number;
|
|
61
|
+
referring_malicious_domains_change: number;
|
|
62
|
+
referring_ip_addresses: number;
|
|
63
|
+
referring_ip_addresses_change: number;
|
|
64
|
+
referring_subnets: number;
|
|
65
|
+
referring_subnets_change: number;
|
|
66
|
+
backlinks: number;
|
|
67
|
+
backlinks_change: number;
|
|
68
|
+
backlinks_from_mainpages: number;
|
|
69
|
+
backlinks_from_mainpages_change: number;
|
|
70
|
+
nofollow_backlinks: number;
|
|
71
|
+
nofollow_backlinks_change: number;
|
|
72
|
+
dofollow_backlinks: number;
|
|
73
|
+
dofollow_backlinks_change: number;
|
|
74
|
+
text_backlinks: number;
|
|
75
|
+
text_backlinks_change: number;
|
|
76
|
+
image_backlinks: number;
|
|
77
|
+
image_backlinks_change: number;
|
|
78
|
+
redirect_backlinks: number;
|
|
79
|
+
redirect_backlinks_change: number;
|
|
80
|
+
canonical_backlinks: number;
|
|
81
|
+
canonical_backlinks_change: number;
|
|
82
|
+
alternate_backlinks: number;
|
|
83
|
+
alternate_backlinks_change: number;
|
|
84
|
+
rss_backlinks: number;
|
|
85
|
+
rss_backlinks_change: number;
|
|
86
|
+
frame_backlinks: number;
|
|
87
|
+
frame_backlinks_change: number;
|
|
88
|
+
form_backlinks: number;
|
|
89
|
+
form_backlinks_change: number;
|
|
90
|
+
external_domains: number;
|
|
91
|
+
external_domains_change: number;
|
|
92
|
+
external_malicious_domains: number;
|
|
93
|
+
external_malicious_domains_change: number;
|
|
94
|
+
external_links: number;
|
|
95
|
+
external_links_change: number;
|
|
96
|
+
}
|
|
97
|
+
export interface BacklinksSummaryResponse {
|
|
98
|
+
data: BacklinksSummaryData;
|
|
99
|
+
summary_info: {
|
|
100
|
+
left_lines: number;
|
|
101
|
+
sort?: string | null;
|
|
102
|
+
order?: string | null;
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
export interface DomainKeyword {
|
|
106
|
+
domain: string;
|
|
107
|
+
subdomain?: string;
|
|
108
|
+
keyword: string;
|
|
109
|
+
keyword_length: number;
|
|
110
|
+
url: string;
|
|
111
|
+
position: number;
|
|
112
|
+
types: string[];
|
|
113
|
+
found_results: number;
|
|
114
|
+
cost?: number;
|
|
115
|
+
traff?: number;
|
|
116
|
+
difficulty?: number;
|
|
117
|
+
concurrency?: number;
|
|
118
|
+
region_queries_count?: number;
|
|
119
|
+
intents?: string[];
|
|
120
|
+
}
|
|
121
|
+
export interface DomainKeywordsResponse {
|
|
122
|
+
data: DomainKeyword[];
|
|
123
|
+
summary_info: {
|
|
124
|
+
page: number;
|
|
125
|
+
size: number;
|
|
126
|
+
total: number;
|
|
127
|
+
left_lines: number;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
export interface DomainUrl {
|
|
131
|
+
url: string;
|
|
132
|
+
keywords: number;
|
|
133
|
+
}
|
|
134
|
+
export interface DomainUrlsResponse {
|
|
135
|
+
data: DomainUrl[];
|
|
136
|
+
summary_info: {
|
|
137
|
+
page: number;
|
|
138
|
+
size: number;
|
|
139
|
+
total: number;
|
|
140
|
+
left_lines: number;
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
export interface DomainRegionCount {
|
|
144
|
+
country_name_en: string;
|
|
145
|
+
db_name: string;
|
|
146
|
+
domain: string;
|
|
147
|
+
keywords_count: number;
|
|
148
|
+
}
|
|
149
|
+
export interface DomainRegionsCountSummaryInfo {
|
|
150
|
+
analysed_domain: string;
|
|
151
|
+
sort: string;
|
|
152
|
+
order: string;
|
|
153
|
+
regions_db_count: number;
|
|
154
|
+
total_keywords: number;
|
|
155
|
+
left_lines: number;
|
|
156
|
+
}
|
|
157
|
+
export interface DomainRegionsCountResponse {
|
|
158
|
+
data: DomainRegionCount[];
|
|
159
|
+
summary_info: DomainRegionsCountSummaryInfo;
|
|
160
|
+
}
|
|
161
|
+
export interface DomainUniqKeywordData {
|
|
162
|
+
domain: string;
|
|
163
|
+
subdomain: string;
|
|
164
|
+
keyword: string;
|
|
165
|
+
keyword_length: number;
|
|
166
|
+
url: string;
|
|
167
|
+
position: number;
|
|
168
|
+
date: string;
|
|
169
|
+
types: string[];
|
|
170
|
+
found_results: number;
|
|
171
|
+
cost: number;
|
|
172
|
+
concurrency: number;
|
|
173
|
+
region_queries_count: number;
|
|
174
|
+
region_queries_count_wide: number;
|
|
175
|
+
geo_names: string[];
|
|
176
|
+
traff: number;
|
|
177
|
+
difficulty: number;
|
|
178
|
+
dynamic: number;
|
|
179
|
+
[domainName: string]: string | number | string[] | undefined;
|
|
180
|
+
}
|
|
181
|
+
export interface DomainUniqKeywordsSummaryInfo {
|
|
182
|
+
page: number;
|
|
183
|
+
total: number;
|
|
184
|
+
left_lines: number;
|
|
185
|
+
}
|
|
186
|
+
export interface DomainUniqKeywordsResponse {
|
|
187
|
+
data: DomainUniqKeywordData[];
|
|
188
|
+
summary_info: DomainUniqKeywordsSummaryInfo;
|
|
189
|
+
}
|
|
190
|
+
export interface KeywordGetData {
|
|
191
|
+
keyword: string;
|
|
192
|
+
cost: number;
|
|
193
|
+
concurrency: number;
|
|
194
|
+
found_results: number;
|
|
195
|
+
region_queries_count: number;
|
|
196
|
+
region_queries_count_wide: number;
|
|
197
|
+
types: string[];
|
|
198
|
+
geo_names: any[];
|
|
199
|
+
social_domains: string[];
|
|
200
|
+
right_spelling: string | null;
|
|
201
|
+
lang: string;
|
|
202
|
+
keyword_length: number;
|
|
203
|
+
difficulty: number;
|
|
204
|
+
intents: string[];
|
|
205
|
+
}
|
|
206
|
+
export interface KeywordGetSummaryInfo {
|
|
207
|
+
page: number;
|
|
208
|
+
total: number;
|
|
209
|
+
left_lines: number;
|
|
210
|
+
}
|
|
211
|
+
export interface KeywordGetResponse {
|
|
212
|
+
data: KeywordGetData[];
|
|
213
|
+
summary_info: KeywordGetSummaryInfo;
|
|
214
|
+
}
|
|
215
|
+
export interface GetRelatedKeywordData {
|
|
216
|
+
keyword: string;
|
|
217
|
+
cost?: number;
|
|
218
|
+
concurrency?: number;
|
|
219
|
+
region_queries_count?: number;
|
|
220
|
+
difficulty?: number;
|
|
221
|
+
weight?: number;
|
|
222
|
+
types?: string[];
|
|
223
|
+
geo_names?: string[];
|
|
224
|
+
right_spelling?: boolean;
|
|
225
|
+
keyword_length?: number;
|
|
226
|
+
intents?: string[];
|
|
227
|
+
}
|
|
228
|
+
export interface GetRelatedKeywordsSummaryInfo {
|
|
229
|
+
page: number;
|
|
230
|
+
total: number;
|
|
231
|
+
left_lines: number;
|
|
232
|
+
}
|
|
233
|
+
export interface GetRelatedKeywordsResponse {
|
|
234
|
+
data: GetRelatedKeywordData[];
|
|
235
|
+
summary_info: GetRelatedKeywordsSummaryInfo;
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=serpstat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serpstat.d.ts","sourceRoot":"","sources":["../../src/types/serpstat.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SEARCH_ENGINES = void 0;
|
|
4
|
+
exports.SEARCH_ENGINES = [
|
|
5
|
+
'g_af', 'g_al', 'g_dz', 'g_as', 'g_ad', 'g_ao', 'g_ai', 'g_ag', 'g_ar', 'g_am', 'g_aw', 'g_au', 'g_at',
|
|
6
|
+
'g_az', 'g_bh', 'g_bd', 'g_bb', 'g_by', 'g_be', 'g_bz', 'g_bj', 'g_bm', 'g_bt', 'g_bo', 'g_ba', 'g_bw',
|
|
7
|
+
'g_br', 'g_io', 'g_vg', 'g_bn', 'g_bg', 'g_bf', 'g_bi', 'g_kh', 'g_cm', 'g_ca', 'g_cv', 'g_ky', 'g_cf',
|
|
8
|
+
'g_td', 'g_cl', 'g_cn', 'g_cx', 'g_сс', 'g_co', 'g_km', 'g_ck', 'g_cr', 'g_ci', 'g_hr', 'g_cw', 'g_cy',
|
|
9
|
+
'g_cz', 'g_cd', 'g_dk', 'g_dj', 'g_dm', 'g_do', 'g_ec', 'g_eg', 'g_sv', 'g_gq', 'g_er', 'g_ee', 'g_et',
|
|
10
|
+
'g_fk', 'g_fo', 'g_fm', 'g_fj', 'g_fi', 'g_fr', 'g_gf', 'g_pf', 'g_ga', 'g_ge', 'g_de', 'g_gh', 'g_gi',
|
|
11
|
+
'g_gr', 'g_gl', 'g_gd', 'g_gp', 'g_gu', 'g_gt', 'g_gg', 'g_gn', 'g_gw', 'g_gy', 'g_ht', 'g_hn', 'g_hk',
|
|
12
|
+
'g_hu', 'g_is', 'g_in', 'g_id', 'g_iq', 'g_ie', 'g_im', 'g_il', 'g_it', 'g_jm', 'g_jp', 'g_je', 'g_jo',
|
|
13
|
+
'g_kz', 'g_ke', 'g_ki', 'g_kw', 'g_kg', 'g_la', 'g_lv', 'g_lb', 'g_ls', 'g_lr', 'g_ly', 'g_li', 'g_lt',
|
|
14
|
+
'g_lu', 'g_mo', 'g_mk', 'g_mg', 'g_mw', 'g_my', 'g_mv', 'g_ml', 'g_mt', 'g_mh', 'g_mq', 'g_mr', 'g_mu',
|
|
15
|
+
'g_yt', 'g_mx', 'g_md', 'g_mc', 'g_mn', 'g_me', 'g_ms', 'g_ma', 'g_mz', 'g_mm', 'g_na', 'g_nr', 'g_np',
|
|
16
|
+
'g_nl', 'g_nc', 'g_nz', 'g_ni', 'g_ne', 'g_ng', 'g_nu', 'g_nf', 'g_mp', 'g_no', 'g_om', 'g_pk', 'g_pw',
|
|
17
|
+
'g_ps', 'g_pa', 'g_pg', 'g_py', 'g_pe', 'g_ph', 'g_pn', 'g_pl', 'g_pt', 'g_pr', 'g_qa', 'g_cg', 'g_re',
|
|
18
|
+
'g_ro', 'g_ru', 'g_rw', 'g_sh', 'g_kn', 'g_lc', 'g_pm', 'g_vc', 'g_ws', 'g_sm', 'g_st', 'g_sa', 'g_sn',
|
|
19
|
+
'g_rs', 'g_sc', 'g_sl', 'g_sg', 'g_sx', 'g_sk', 'g_si', 'g_sb', 'g_so', 'g_za', 'g_kr', 'g_es', 'g_lk',
|
|
20
|
+
'g_sr', 'g_sz', 'g_se', 'g_ch', 'g_tw', 'g_tj', 'g_tz', 'g_th', 'g_bs', 'g_gm', 'g_tl', 'g_tg', 'g_tk',
|
|
21
|
+
'g_to', 'g_tt', 'g_tn', 'g_tr', 'g_tm', 'g_tc', 'g_tv', 'g_vi', 'g_ug', 'g_ua', 'g_ae', 'g_uk', 'g_us',
|
|
22
|
+
'g_uy', 'g_uz', 'g_vu', 'g_va', 'g_ve', 'g_vn', 'g_wf', 'g_ye', 'g_zm', 'g_zw', 'bing_us'
|
|
23
|
+
];
|
|
24
|
+
//# sourceMappingURL=serpstat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serpstat.js","sourceRoot":"","sources":["../../src/types/serpstat.ts"],"names":[],"mappings":";;;AA0Ca,QAAA,cAAc,GAAG;IAC1B,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM;IAC1F,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,SAAS;CACzE,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
declare const configSchema: z.ZodObject<{
|
|
3
|
+
serpstatApiToken: z.ZodString;
|
|
4
|
+
serpstatApiUrl: z.ZodDefault<z.ZodString>;
|
|
5
|
+
logLevel: z.ZodDefault<z.ZodEnum<["error", "warn", "info", "debug"]>>;
|
|
6
|
+
maxRetries: z.ZodDefault<z.ZodNumber>;
|
|
7
|
+
requestTimeout: z.ZodDefault<z.ZodNumber>;
|
|
8
|
+
}, "strip", z.ZodTypeAny, {
|
|
9
|
+
serpstatApiToken: string;
|
|
10
|
+
serpstatApiUrl: string;
|
|
11
|
+
logLevel: "error" | "warn" | "info" | "debug";
|
|
12
|
+
maxRetries: number;
|
|
13
|
+
requestTimeout: number;
|
|
14
|
+
}, {
|
|
15
|
+
serpstatApiToken: string;
|
|
16
|
+
serpstatApiUrl?: string | undefined;
|
|
17
|
+
logLevel?: "error" | "warn" | "info" | "debug" | undefined;
|
|
18
|
+
maxRetries?: number | undefined;
|
|
19
|
+
requestTimeout?: number | undefined;
|
|
20
|
+
}>;
|
|
21
|
+
export type Config = z.infer<typeof configSchema>;
|
|
22
|
+
export declare function loadConfig(): Config;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;EAMhB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,wBAAgB,UAAU,IAAI,MAAM,CAQnC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadConfig = loadConfig;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const configSchema = zod_1.z.object({
|
|
6
|
+
serpstatApiToken: zod_1.z.string().min(1, 'SERPSTAT_API_TOKEN is required'),
|
|
7
|
+
serpstatApiUrl: zod_1.z.string().url().default('https://api.serpstat.com/v4'),
|
|
8
|
+
logLevel: zod_1.z.enum(['error', 'warn', 'info', 'debug']).default('info'),
|
|
9
|
+
maxRetries: zod_1.z.number().int().positive().default(3),
|
|
10
|
+
requestTimeout: zod_1.z.number().int().positive().default(30000),
|
|
11
|
+
});
|
|
12
|
+
function loadConfig() {
|
|
13
|
+
return configSchema.parse({
|
|
14
|
+
serpstatApiToken: process.env.SERPSTAT_API_TOKEN ?? 'test-token',
|
|
15
|
+
serpstatApiUrl: process.env.SERPSTAT_API_URL ?? 'https://api.serpstat.com/v4',
|
|
16
|
+
logLevel: process.env.LOG_LEVEL ?? 'error',
|
|
17
|
+
maxRetries: process.env.MAX_RETRIES ? Number(process.env.MAX_RETRIES) : 1,
|
|
18
|
+
requestTimeout: process.env.REQUEST_TIMEOUT ? Number(process.env.REQUEST_TIMEOUT) : 30000,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":";;AAYA,gCAQC;AApBD,6BAAwB;AAExB,MAAM,YAAY,GAAG,OAAC,CAAC,MAAM,CAAC;IAC1B,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,gCAAgC,CAAC;IACrE,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC;IACvE,QAAQ,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACpE,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CAC7D,CAAC,CAAC;AAIH,SAAgB,UAAU;IACtB,OAAO,YAAY,CAAC,KAAK,CAAC;QACtB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,YAAY;QAChE,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,6BAA6B;QAC7E,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,SAAgD,IAAI,OAAO;QACjF,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK;KAC5F,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAK9B,eAAO,MAAM,MAAM,gBAejB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.logger = void 0;
|
|
7
|
+
const winston_1 = __importDefault(require("winston"));
|
|
8
|
+
const config_js_1 = require("./config.js");
|
|
9
|
+
const config = (0, config_js_1.loadConfig)();
|
|
10
|
+
exports.logger = winston_1.default.createLogger({
|
|
11
|
+
level: config.logLevel,
|
|
12
|
+
format: winston_1.default.format.combine(winston_1.default.format.timestamp(), winston_1.default.format.errors({ stack: true }), winston_1.default.format.json()),
|
|
13
|
+
transports: [
|
|
14
|
+
new winston_1.default.transports.Console({
|
|
15
|
+
format: winston_1.default.format.combine(winston_1.default.format.colorize(), winston_1.default.format.simple()),
|
|
16
|
+
}),
|
|
17
|
+
],
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":";;;;;;AAAA,sDAA8B;AAC9B,2CAAyC;AAEzC,MAAM,MAAM,GAAG,IAAA,sBAAU,GAAE,CAAC;AAEf,QAAA,MAAM,GAAG,iBAAO,CAAC,YAAY,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC,QAAQ;IACtB,MAAM,EAAE,iBAAO,CAAC,MAAM,CAAC,OAAO,CAC1B,iBAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAC1B,iBAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EACtC,iBAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CACxB;IACD,UAAU,EAAE;QACR,IAAI,iBAAO,CAAC,UAAU,CAAC,OAAO,CAAC;YAC3B,MAAM,EAAE,iBAAO,CAAC,MAAM,CAAC,OAAO,CAC1B,iBAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,EACzB,iBAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAC1B;SACJ,CAAC;KACL;CACJ,CAAC,CAAC"}
|