rdapify 0.1.2 → 0.1.6
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/CHANGELOG.md +60 -0
- package/README.md +11 -9
- package/dist/application/client/RDAPClient.d.ts +13 -0
- package/dist/application/client/RDAPClient.d.ts.map +1 -1
- package/dist/application/client/RDAPClient.js +40 -1
- package/dist/application/client/RDAPClient.js.map +1 -1
- package/dist/application/deduplication/QueryDeduplicator.d.ts +20 -0
- package/dist/application/deduplication/QueryDeduplicator.d.ts.map +1 -0
- package/dist/application/deduplication/QueryDeduplicator.js +46 -0
- package/dist/application/deduplication/QueryDeduplicator.js.map +1 -0
- package/dist/application/hooks/MiddlewareHooks.d.ts +48 -0
- package/dist/application/hooks/MiddlewareHooks.d.ts.map +1 -0
- package/dist/application/hooks/MiddlewareHooks.js +46 -0
- package/dist/application/hooks/MiddlewareHooks.js.map +1 -0
- package/dist/application/services/QueryOrchestrator.d.ts +11 -0
- package/dist/application/services/QueryOrchestrator.d.ts.map +1 -1
- package/dist/application/services/QueryOrchestrator.js +254 -38
- package/dist/application/services/QueryOrchestrator.js.map +1 -1
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +227 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -2
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/cache/CacheManager.d.ts.map +1 -1
- package/dist/infrastructure/cache/CacheManager.js +8 -1
- package/dist/infrastructure/cache/CacheManager.js.map +1 -1
- package/dist/infrastructure/cache/RedisCache.d.ts +35 -0
- package/dist/infrastructure/cache/RedisCache.d.ts.map +1 -0
- package/dist/infrastructure/cache/RedisCache.js +75 -0
- package/dist/infrastructure/cache/RedisCache.js.map +1 -0
- package/dist/infrastructure/cache/index.d.ts +1 -0
- package/dist/infrastructure/cache/index.d.ts.map +1 -1
- package/dist/infrastructure/cache/index.js +3 -1
- package/dist/infrastructure/cache/index.js.map +1 -1
- package/dist/infrastructure/http/BootstrapDiscovery.d.ts.map +1 -1
- package/dist/infrastructure/http/BootstrapDiscovery.js +5 -2
- package/dist/infrastructure/http/BootstrapDiscovery.js.map +1 -1
- package/dist/infrastructure/http/ConnectionPool.d.ts +1 -1
- package/dist/infrastructure/http/ConnectionPool.d.ts.map +1 -1
- package/dist/infrastructure/http/ConnectionPool.js +9 -4
- package/dist/infrastructure/http/ConnectionPool.js.map +1 -1
- package/dist/infrastructure/http/Fetcher.d.ts +2 -0
- package/dist/infrastructure/http/Fetcher.d.ts.map +1 -1
- package/dist/infrastructure/http/Fetcher.js +12 -4
- package/dist/infrastructure/http/Fetcher.js.map +1 -1
- package/dist/infrastructure/http/Normalizer.d.ts.map +1 -1
- package/dist/infrastructure/http/Normalizer.js +16 -9
- package/dist/infrastructure/http/Normalizer.js.map +1 -1
- package/dist/infrastructure/logging/AuditLogger.d.ts +114 -0
- package/dist/infrastructure/logging/AuditLogger.d.ts.map +1 -0
- package/dist/infrastructure/logging/AuditLogger.js +195 -0
- package/dist/infrastructure/logging/AuditLogger.js.map +1 -0
- package/dist/infrastructure/logging/Logger.d.ts.map +1 -1
- package/dist/infrastructure/logging/Logger.js +29 -5
- package/dist/infrastructure/logging/Logger.js.map +1 -1
- package/dist/infrastructure/monitoring/MetricsCollector.d.ts +37 -0
- package/dist/infrastructure/monitoring/MetricsCollector.d.ts.map +1 -1
- package/dist/infrastructure/monitoring/MetricsCollector.js +186 -6
- package/dist/infrastructure/monitoring/MetricsCollector.js.map +1 -1
- package/dist/infrastructure/security/PIIRedactor.d.ts.map +1 -1
- package/dist/infrastructure/security/PIIRedactor.js +9 -2
- package/dist/infrastructure/security/PIIRedactor.js.map +1 -1
- package/dist/infrastructure/security/SSRFProtection.d.ts.map +1 -1
- package/dist/infrastructure/security/SSRFProtection.js +7 -4
- package/dist/infrastructure/security/SSRFProtection.js.map +1 -1
- package/dist/infrastructure/validation/ResponseValidator.d.ts +38 -0
- package/dist/infrastructure/validation/ResponseValidator.d.ts.map +1 -0
- package/dist/infrastructure/validation/ResponseValidator.js +200 -0
- package/dist/infrastructure/validation/ResponseValidator.js.map +1 -0
- package/dist/shared/constants/rdap.constants.d.ts +1 -1
- package/dist/shared/constants/rdap.constants.d.ts.map +1 -1
- package/dist/shared/constants/rdap.constants.js +1 -1
- package/dist/shared/constants/rdap.constants.js.map +1 -1
- package/dist/shared/errors/base.error.d.ts +8 -0
- package/dist/shared/errors/base.error.d.ts.map +1 -1
- package/dist/shared/errors/base.error.js +30 -1
- package/dist/shared/errors/base.error.js.map +1 -1
- package/dist/shared/types/options.d.ts +21 -2
- package/dist/shared/types/options.d.ts.map +1 -1
- package/dist/shared/types/options.js +6 -1
- package/dist/shared/types/options.js.map +1 -1
- package/dist/shared/utils/helpers/index.d.ts +1 -1
- package/dist/shared/utils/helpers/index.d.ts.map +1 -1
- package/dist/shared/utils/helpers/index.js +2 -1
- package/dist/shared/utils/helpers/index.js.map +1 -1
- package/dist/shared/utils/helpers/runtime.d.ts +1 -0
- package/dist/shared/utils/helpers/runtime.d.ts.map +1 -1
- package/dist/shared/utils/helpers/runtime.js +11 -1
- package/dist/shared/utils/helpers/runtime.js.map +1 -1
- package/dist/shared/utils/validators/config-validation.d.ts +3 -0
- package/dist/shared/utils/validators/config-validation.d.ts.map +1 -0
- package/dist/shared/utils/validators/config-validation.js +97 -0
- package/dist/shared/utils/validators/config-validation.js.map +1 -0
- package/dist/shared/utils/validators/index.d.ts +1 -0
- package/dist/shared/utils/validators/index.d.ts.map +1 -1
- package/dist/shared/utils/validators/index.js +3 -1
- package/dist/shared/utils/validators/index.js.map +1 -1
- package/package.json +4 -1
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const index_1 = require("../index");
|
|
5
|
+
const HELP_TEXT = `
|
|
6
|
+
RDAPify v${index_1.VERSION} — RDAP client CLI
|
|
7
|
+
|
|
8
|
+
Usage:
|
|
9
|
+
rdapify domain <name> Query domain registration info
|
|
10
|
+
rdapify ip <address> Query IP address info
|
|
11
|
+
rdapify asn <number> Query ASN info
|
|
12
|
+
|
|
13
|
+
Options:
|
|
14
|
+
--json Output raw JSON
|
|
15
|
+
--no-cache Disable cache for this query
|
|
16
|
+
--timeout <ms> Request timeout in milliseconds (default: 10000)
|
|
17
|
+
--version, -v Show version
|
|
18
|
+
--help, -h Show this help message
|
|
19
|
+
|
|
20
|
+
Examples:
|
|
21
|
+
rdapify domain example.com
|
|
22
|
+
rdapify ip 8.8.8.8
|
|
23
|
+
rdapify asn 15169
|
|
24
|
+
rdapify domain example.com --json
|
|
25
|
+
rdapify ip 1.1.1.1 --no-cache --timeout 5000
|
|
26
|
+
`.trimStart();
|
|
27
|
+
function parseArgs(argv) {
|
|
28
|
+
const result = {
|
|
29
|
+
command: null,
|
|
30
|
+
query: null,
|
|
31
|
+
json: false,
|
|
32
|
+
noCache: false,
|
|
33
|
+
timeout: 10000,
|
|
34
|
+
version: false,
|
|
35
|
+
help: false,
|
|
36
|
+
};
|
|
37
|
+
let i = 0;
|
|
38
|
+
while (i < argv.length) {
|
|
39
|
+
const arg = argv[i];
|
|
40
|
+
if (arg === undefined) {
|
|
41
|
+
i++;
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
switch (arg) {
|
|
45
|
+
case '--json':
|
|
46
|
+
result.json = true;
|
|
47
|
+
break;
|
|
48
|
+
case '--no-cache':
|
|
49
|
+
result.noCache = true;
|
|
50
|
+
break;
|
|
51
|
+
case '--timeout': {
|
|
52
|
+
const next = argv[i + 1];
|
|
53
|
+
if (next === undefined || next.startsWith('-')) {
|
|
54
|
+
fatal('--timeout requires a numeric value in milliseconds');
|
|
55
|
+
}
|
|
56
|
+
const ms = parseInt(next, 10);
|
|
57
|
+
if (isNaN(ms) || ms <= 0) {
|
|
58
|
+
fatal(`--timeout value must be a positive integer, got: ${next}`);
|
|
59
|
+
}
|
|
60
|
+
result.timeout = ms;
|
|
61
|
+
i++;
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
case '--version':
|
|
65
|
+
case '-v':
|
|
66
|
+
result.version = true;
|
|
67
|
+
break;
|
|
68
|
+
case '--help':
|
|
69
|
+
case '-h':
|
|
70
|
+
result.help = true;
|
|
71
|
+
break;
|
|
72
|
+
default:
|
|
73
|
+
if (!arg.startsWith('-')) {
|
|
74
|
+
if (result.command === null) {
|
|
75
|
+
if (arg !== 'domain' && arg !== 'ip' && arg !== 'asn') {
|
|
76
|
+
fatal(`Unknown command: "${arg}". Valid commands are: domain, ip, asn`);
|
|
77
|
+
}
|
|
78
|
+
result.command = arg;
|
|
79
|
+
}
|
|
80
|
+
else if (result.query === null) {
|
|
81
|
+
result.query = arg;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
fatal(`Unknown option: "${arg}". Run rdapify --help for usage.`);
|
|
86
|
+
}
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
i++;
|
|
90
|
+
}
|
|
91
|
+
return result;
|
|
92
|
+
}
|
|
93
|
+
function label(text, width = 13) {
|
|
94
|
+
return `${text}:`.padEnd(width);
|
|
95
|
+
}
|
|
96
|
+
function formatDate(iso) {
|
|
97
|
+
const d = new Date(iso);
|
|
98
|
+
if (isNaN(d.getTime()))
|
|
99
|
+
return iso;
|
|
100
|
+
return d.toISOString().slice(0, 10);
|
|
101
|
+
}
|
|
102
|
+
function getEventDate(events, eventType) {
|
|
103
|
+
if (!events)
|
|
104
|
+
return undefined;
|
|
105
|
+
const ev = events.find((e) => e.type === eventType);
|
|
106
|
+
return ev ? formatDate(ev.date) : undefined;
|
|
107
|
+
}
|
|
108
|
+
function printDomain(res) {
|
|
109
|
+
const name = res.ldhName ?? res.unicodeName ?? res.query;
|
|
110
|
+
const registrar = res.registrar?.name ?? '—';
|
|
111
|
+
const status = res.status?.join(', ') ?? '—';
|
|
112
|
+
const created = getEventDate(res.events, 'registration') ?? '—';
|
|
113
|
+
const expires = getEventDate(res.events, 'expiration') ?? '—';
|
|
114
|
+
const updated = getEventDate(res.events, 'last changed') ?? '—';
|
|
115
|
+
const nameservers = res.nameservers?.join(', ') ?? '—';
|
|
116
|
+
process.stdout.write([
|
|
117
|
+
`${label('Domain')}${name}`,
|
|
118
|
+
`${label('Registrar')}${registrar}`,
|
|
119
|
+
`${label('Status')}${status}`,
|
|
120
|
+
`${label('Created')}${created}`,
|
|
121
|
+
`${label('Expires')}${expires}`,
|
|
122
|
+
`${label('Updated')}${updated}`,
|
|
123
|
+
`${label('Nameservers')}${nameservers}`,
|
|
124
|
+
].join('\n') + '\n');
|
|
125
|
+
}
|
|
126
|
+
function printIP(res) {
|
|
127
|
+
const ip = res.query;
|
|
128
|
+
const type = res.ipVersion ? `IPv${res.ipVersion.slice(1)}` : '—';
|
|
129
|
+
const handle = res.handle ?? '—';
|
|
130
|
+
const name = res.name ?? '—';
|
|
131
|
+
const country = res.country ?? '—';
|
|
132
|
+
const status = res.status?.join(', ') ?? '—';
|
|
133
|
+
process.stdout.write([
|
|
134
|
+
`${label('IP Address')}${ip}`,
|
|
135
|
+
`${label('Type')}${type}`,
|
|
136
|
+
`${label('Handle')}${handle}`,
|
|
137
|
+
`${label('Name')}${name}`,
|
|
138
|
+
`${label('Country')}${country}`,
|
|
139
|
+
`${label('Status')}${status}`,
|
|
140
|
+
].join('\n') + '\n');
|
|
141
|
+
}
|
|
142
|
+
function printASN(res) {
|
|
143
|
+
const asn = res.startAutnum ?? res.query;
|
|
144
|
+
const handle = res.handle ?? '—';
|
|
145
|
+
const name = res.name ?? '—';
|
|
146
|
+
const country = res.country ?? '—';
|
|
147
|
+
const status = res.status?.join(', ') ?? '—';
|
|
148
|
+
process.stdout.write([
|
|
149
|
+
`${label('ASN')}${asn}`,
|
|
150
|
+
`${label('Handle')}${handle}`,
|
|
151
|
+
`${label('Name')}${name}`,
|
|
152
|
+
`${label('Country')}${country}`,
|
|
153
|
+
`${label('Status')}${status}`,
|
|
154
|
+
].join('\n') + '\n');
|
|
155
|
+
}
|
|
156
|
+
function fatal(message, code = 1) {
|
|
157
|
+
process.stderr.write(`Error: ${message}\n`);
|
|
158
|
+
process.exit(code);
|
|
159
|
+
}
|
|
160
|
+
async function main() {
|
|
161
|
+
const argv = process.argv.slice(2);
|
|
162
|
+
const args = parseArgs(argv);
|
|
163
|
+
if (args.version) {
|
|
164
|
+
process.stdout.write(`rdapify v${index_1.VERSION}\n`);
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
if (args.help) {
|
|
168
|
+
process.stdout.write(HELP_TEXT);
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
if (args.command === null) {
|
|
172
|
+
process.stdout.write(HELP_TEXT);
|
|
173
|
+
process.exit(0);
|
|
174
|
+
}
|
|
175
|
+
if (args.query === null || args.query.trim() === '') {
|
|
176
|
+
fatal(`Missing argument for command "${args.command}". Example: rdapify ${args.command} <value>`);
|
|
177
|
+
}
|
|
178
|
+
const client = new index_1.RDAPClient({
|
|
179
|
+
cache: args.noCache ? false : true,
|
|
180
|
+
timeout: args.timeout,
|
|
181
|
+
});
|
|
182
|
+
const query = args.query.trim();
|
|
183
|
+
try {
|
|
184
|
+
switch (args.command) {
|
|
185
|
+
case 'domain': {
|
|
186
|
+
const result = await client.domain(query);
|
|
187
|
+
if (args.json) {
|
|
188
|
+
process.stdout.write(JSON.stringify(result, null, 2) + '\n');
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
printDomain(result);
|
|
192
|
+
}
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
case 'ip': {
|
|
196
|
+
const result = await client.ip(query);
|
|
197
|
+
if (args.json) {
|
|
198
|
+
process.stdout.write(JSON.stringify(result, null, 2) + '\n');
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
printIP(result);
|
|
202
|
+
}
|
|
203
|
+
break;
|
|
204
|
+
}
|
|
205
|
+
case 'asn': {
|
|
206
|
+
const result = await client.asn(query);
|
|
207
|
+
if (args.json) {
|
|
208
|
+
process.stdout.write(JSON.stringify(result, null, 2) + '\n');
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
printASN(result);
|
|
212
|
+
}
|
|
213
|
+
break;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
catch (err) {
|
|
218
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
219
|
+
fatal(message);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
main().catch((err) => {
|
|
223
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
224
|
+
process.stderr.write(`Fatal: ${message}\n`);
|
|
225
|
+
process.exit(1);
|
|
226
|
+
});
|
|
227
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export type { RDAPClientOptions, RetryOptions, CacheOptions, SSRFProtectionOptio
|
|
|
5
5
|
export { RDAPifyError, SSRFProtectionError, NetworkError, TimeoutError, RDAPServerError, NoServerFoundError, ValidationError, ParseError, CacheError, RateLimitError, isRDAPifyError, isSSRFProtectionError, isNetworkError, isTimeoutError, isRateLimitError, } from './shared/errors';
|
|
6
6
|
export { validateDomain, validateIP, validateIPv4, validateIPv6, validateASN, isPrivateIP, isLocalhost, isLinkLocal, normalizeDomain, normalizeIP, normalizeASN, } from './shared/utils/validators';
|
|
7
7
|
export type { ICachePort } from './core/ports';
|
|
8
|
-
export declare const VERSION = "0.1.
|
|
8
|
+
export declare const VERSION = "0.1.6";
|
|
9
9
|
export { BatchProcessor } from './application/services/BatchProcessor';
|
|
10
10
|
export { RateLimiter } from './infrastructure/http/RateLimiter';
|
|
11
11
|
export { ConnectionPool } from './infrastructure/http/ConnectionPool';
|
|
@@ -21,6 +21,15 @@ export { ProxyManager } from './infrastructure/http/ProxyManager';
|
|
|
21
21
|
export type { ProxyOptions, ProxyProtocol } from './infrastructure/http/ProxyManager';
|
|
22
22
|
export { CompressionManager } from './infrastructure/http/CompressionManager';
|
|
23
23
|
export type { CompressionOptions, CompressionType } from './infrastructure/http/CompressionManager';
|
|
24
|
+
export { RedisCache } from './infrastructure/cache/RedisCache';
|
|
25
|
+
export type { RedisClientLike, RedisCacheOptions } from './infrastructure/cache/RedisCache';
|
|
26
|
+
export { MiddlewareManager } from './application/hooks/MiddlewareHooks';
|
|
27
|
+
export type { MiddlewareOptions, QueryContext, QueryResultContext, HookFn, } from './application/hooks/MiddlewareHooks';
|
|
28
|
+
export { QueryDeduplicator } from './application/deduplication/QueryDeduplicator';
|
|
29
|
+
export { AuditLogger, InMemoryAuditAdapter, FileAuditAdapter, } from './infrastructure/logging/AuditLogger';
|
|
30
|
+
export type { AuditEvent, AuditEventType, AuditLogAdapter, AuditLoggerOptions, } from './infrastructure/logging/AuditLogger';
|
|
31
|
+
export { ResponseValidator } from './infrastructure/validation/ResponseValidator';
|
|
32
|
+
export type { ValidationResult, ValidationMode, ResponseValidatorOptions, } from './infrastructure/validation/ResponseValidator';
|
|
24
33
|
import { RDAPClient as RDAPClientClass } from './application/client';
|
|
25
34
|
export default RDAPClientClass;
|
|
26
35
|
//# 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":"AA4CA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAMlD,YAAY,EAEV,cAAc,EACd,UAAU,EACV,WAAW,EACX,YAAY,EACZ,SAAS,EACT,UAAU,EACV,QAAQ,EACR,UAAU,EACV,cAAc,EACd,eAAe,EAGf,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACT,QAAQ,EACR,aAAa,EACb,eAAe,EACf,QAAQ,GACT,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAEV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EAEV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,cAAc,EACd,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAoBhC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,EAGd,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,cAAc,EACd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAiBzB,OAAO,EACL,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,WAAW,EACX,YAAY,GACb,MAAM,2BAA2B,CAAC;AAoBnC,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAS/C,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CompressionManager = exports.ProxyManager = exports.AuthenticationManager = exports.asciiToIdn = exports.idnToAscii = exports.isPunycodeDomain = exports.isIdnDomain = exports.validateAsnRange = exports.validateIpv6WithZone = exports.validateIdnDomain = exports.PersistentCache = exports.QueryPriorityQueue = exports.RetryStrategy = exports.Logger = exports.MetricsCollector = exports.ConnectionPool = exports.RateLimiter = exports.BatchProcessor = exports.VERSION = exports.normalizeASN = exports.normalizeIP = exports.normalizeDomain = exports.isLinkLocal = exports.isLocalhost = exports.isPrivateIP = exports.validateASN = exports.validateIPv6 = exports.validateIPv4 = exports.validateIP = exports.validateDomain = exports.isRateLimitError = exports.isTimeoutError = exports.isNetworkError = exports.isSSRFProtectionError = exports.isRDAPifyError = exports.RateLimitError = exports.CacheError = exports.ParseError = exports.ValidationError = exports.NoServerFoundError = exports.RDAPServerError = exports.TimeoutError = exports.NetworkError = exports.SSRFProtectionError = exports.RDAPifyError = exports.RDAPClient = void 0;
|
|
3
|
+
exports.AuditLogger = exports.QueryDeduplicator = exports.MiddlewareManager = exports.RedisCache = exports.CompressionManager = exports.ProxyManager = exports.AuthenticationManager = exports.asciiToIdn = exports.idnToAscii = exports.isPunycodeDomain = exports.isIdnDomain = exports.validateAsnRange = exports.validateIpv6WithZone = exports.validateIdnDomain = exports.PersistentCache = exports.QueryPriorityQueue = exports.RetryStrategy = exports.Logger = exports.MetricsCollector = exports.ConnectionPool = exports.RateLimiter = exports.BatchProcessor = exports.VERSION = exports.normalizeASN = exports.normalizeIP = exports.normalizeDomain = exports.isLinkLocal = exports.isLocalhost = exports.isPrivateIP = exports.validateASN = exports.validateIPv6 = exports.validateIPv4 = exports.validateIP = exports.validateDomain = exports.isRateLimitError = exports.isTimeoutError = exports.isNetworkError = exports.isSSRFProtectionError = exports.isRDAPifyError = exports.RateLimitError = exports.CacheError = exports.ParseError = exports.ValidationError = exports.NoServerFoundError = exports.RDAPServerError = exports.TimeoutError = exports.NetworkError = exports.SSRFProtectionError = exports.RDAPifyError = exports.RDAPClient = void 0;
|
|
4
|
+
exports.ResponseValidator = exports.FileAuditAdapter = exports.InMemoryAuditAdapter = void 0;
|
|
4
5
|
var client_1 = require("./application/client");
|
|
5
6
|
Object.defineProperty(exports, "RDAPClient", { enumerable: true, get: function () { return client_1.RDAPClient; } });
|
|
6
7
|
var errors_1 = require("./shared/errors");
|
|
@@ -31,7 +32,7 @@ Object.defineProperty(exports, "isLinkLocal", { enumerable: true, get: function
|
|
|
31
32
|
Object.defineProperty(exports, "normalizeDomain", { enumerable: true, get: function () { return validators_1.normalizeDomain; } });
|
|
32
33
|
Object.defineProperty(exports, "normalizeIP", { enumerable: true, get: function () { return validators_1.normalizeIP; } });
|
|
33
34
|
Object.defineProperty(exports, "normalizeASN", { enumerable: true, get: function () { return validators_1.normalizeASN; } });
|
|
34
|
-
exports.VERSION = '0.1.
|
|
35
|
+
exports.VERSION = '0.1.6';
|
|
35
36
|
var BatchProcessor_1 = require("./application/services/BatchProcessor");
|
|
36
37
|
Object.defineProperty(exports, "BatchProcessor", { enumerable: true, get: function () { return BatchProcessor_1.BatchProcessor; } });
|
|
37
38
|
var RateLimiter_1 = require("./infrastructure/http/RateLimiter");
|
|
@@ -62,6 +63,18 @@ var ProxyManager_1 = require("./infrastructure/http/ProxyManager");
|
|
|
62
63
|
Object.defineProperty(exports, "ProxyManager", { enumerable: true, get: function () { return ProxyManager_1.ProxyManager; } });
|
|
63
64
|
var CompressionManager_1 = require("./infrastructure/http/CompressionManager");
|
|
64
65
|
Object.defineProperty(exports, "CompressionManager", { enumerable: true, get: function () { return CompressionManager_1.CompressionManager; } });
|
|
66
|
+
var RedisCache_1 = require("./infrastructure/cache/RedisCache");
|
|
67
|
+
Object.defineProperty(exports, "RedisCache", { enumerable: true, get: function () { return RedisCache_1.RedisCache; } });
|
|
68
|
+
var MiddlewareHooks_1 = require("./application/hooks/MiddlewareHooks");
|
|
69
|
+
Object.defineProperty(exports, "MiddlewareManager", { enumerable: true, get: function () { return MiddlewareHooks_1.MiddlewareManager; } });
|
|
70
|
+
var QueryDeduplicator_1 = require("./application/deduplication/QueryDeduplicator");
|
|
71
|
+
Object.defineProperty(exports, "QueryDeduplicator", { enumerable: true, get: function () { return QueryDeduplicator_1.QueryDeduplicator; } });
|
|
72
|
+
var AuditLogger_1 = require("./infrastructure/logging/AuditLogger");
|
|
73
|
+
Object.defineProperty(exports, "AuditLogger", { enumerable: true, get: function () { return AuditLogger_1.AuditLogger; } });
|
|
74
|
+
Object.defineProperty(exports, "InMemoryAuditAdapter", { enumerable: true, get: function () { return AuditLogger_1.InMemoryAuditAdapter; } });
|
|
75
|
+
Object.defineProperty(exports, "FileAuditAdapter", { enumerable: true, get: function () { return AuditLogger_1.FileAuditAdapter; } });
|
|
76
|
+
var ResponseValidator_1 = require("./infrastructure/validation/ResponseValidator");
|
|
77
|
+
Object.defineProperty(exports, "ResponseValidator", { enumerable: true, get: function () { return ResponseValidator_1.ResponseValidator; } });
|
|
65
78
|
const client_2 = require("./application/client");
|
|
66
79
|
exports.default = client_2.RDAPClient;
|
|
67
80
|
//# 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":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AA4CA,+CAAkD;AAAzC,oGAAA,UAAU,OAAA;AAqEnB,0CAkByB;AAjBvB,sGAAA,YAAY,OAAA;AACZ,6GAAA,mBAAmB,OAAA;AACnB,sGAAA,YAAY,OAAA;AACZ,sGAAA,YAAY,OAAA;AACZ,yGAAA,eAAe,OAAA;AACf,4GAAA,kBAAkB,OAAA;AAClB,yGAAA,eAAe,OAAA;AACf,oGAAA,UAAU,OAAA;AACV,oGAAA,UAAU,OAAA;AACV,wGAAA,cAAc,OAAA;AAGd,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,wGAAA,cAAc,OAAA;AACd,wGAAA,cAAc,OAAA;AACd,0GAAA,gBAAgB,OAAA;AAkBlB,wDAYmC;AAXjC,4GAAA,cAAc,OAAA;AACd,wGAAA,UAAU,OAAA;AACV,0GAAA,YAAY,OAAA;AACZ,0GAAA,YAAY,OAAA;AACZ,yGAAA,WAAW,OAAA;AACX,yGAAA,WAAW,OAAA;AACX,yGAAA,WAAW,OAAA;AACX,yGAAA,WAAW,OAAA;AACX,6GAAA,eAAe,OAAA;AACf,yGAAA,WAAW,OAAA;AACX,0GAAA,YAAY,OAAA;AA8BD,QAAA,OAAO,GAAG,OAAO,CAAC;AAsB/B,wEAAuE;AAA9D,gHAAA,cAAc,OAAA;AAkBvB,iEAAgE;AAAvD,0GAAA,WAAW,OAAA;AAKpB,uEAAsE;AAA7D,gHAAA,cAAc,OAAA;AAKvB,iFAAgF;AAAvE,oHAAA,gBAAgB,OAAA;AAKzB,0DAAyD;AAAhD,gGAAA,MAAM,OAAA;AAKf,qEAAoE;AAA3D,8GAAA,aAAa,OAAA;AAKtB,sEAA0E;AAAjE,mHAAA,kBAAkB,OAAA;AAK3B,0EAAyE;AAAhE,kHAAA,eAAe,OAAA;AAKxB,0EAQ4C;AAP1C,wHAAA,iBAAiB,OAAA;AACjB,2HAAA,oBAAoB,OAAA;AACpB,uHAAA,gBAAgB,OAAA;AAChB,kHAAA,WAAW,OAAA;AACX,uHAAA,gBAAgB,OAAA;AAChB,iHAAA,UAAU,OAAA;AACV,iHAAA,UAAU,OAAA;AAMZ,qFAAoF;AAA3E,8HAAA,qBAAqB,OAAA;AAM9B,mEAAkE;AAAzD,4GAAA,YAAY,OAAA;AAMrB,+EAA8E;AAArE,wHAAA,kBAAkB,OAAA;AAU3B,gEAA+D;AAAtD,wGAAA,UAAU,OAAA;AAMnB,uEAAwE;AAA/D,oHAAA,iBAAiB,OAAA;AAW1B,mFAAkF;AAAzE,sHAAA,iBAAiB,OAAA;AAK1B,oEAI8C;AAH5C,0GAAA,WAAW,OAAA;AACX,mHAAA,oBAAoB,OAAA;AACpB,+GAAA,gBAAgB,OAAA;AAYlB,mFAAkF;AAAzE,sHAAA,iBAAiB,OAAA;AAqB1B,iDAAqE;AACrE,kBAAe,mBAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CacheManager.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cache/CacheManager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"CacheManager.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cache/CacheManager.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAQ/D,MAAM,WAAW,MAAM;IACrB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC/C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB;AAKD,qBAAa,YAAa,YAAW,MAAM;IACzC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;gBAEtB,OAAO,GAAE,YAAiB;IAuChC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAe9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAalC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAatB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAclC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAcvB,QAAQ,IAAI,OAAO,CAAC;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;CAOH"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CacheManager = void 0;
|
|
4
4
|
const errors_1 = require("../../shared/errors");
|
|
5
5
|
const InMemoryCache_1 = require("./InMemoryCache");
|
|
6
|
+
const RedisCache_1 = require("./RedisCache");
|
|
6
7
|
class CacheManager {
|
|
7
8
|
constructor(options = {}) {
|
|
8
9
|
this.ttl = options.ttl || 3600;
|
|
@@ -13,7 +14,13 @@ class CacheManager {
|
|
|
13
14
|
this.cache = new InMemoryCache_1.InMemoryCache(options.maxSize || 1000);
|
|
14
15
|
break;
|
|
15
16
|
case 'redis':
|
|
16
|
-
|
|
17
|
+
if (!options.redisClient) {
|
|
18
|
+
throw new errors_1.CacheError('Redis strategy requires a "redisClient" option. Pass your Redis client instance (ioredis, redis, etc.).');
|
|
19
|
+
}
|
|
20
|
+
this.cache = new RedisCache_1.RedisCache(options.redisClient, {
|
|
21
|
+
keyPrefix: options.keyPrefix,
|
|
22
|
+
});
|
|
23
|
+
break;
|
|
17
24
|
case 'custom':
|
|
18
25
|
if (!options.customCache) {
|
|
19
26
|
throw new errors_1.CacheError('Custom cache implementation required');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CacheManager.js","sourceRoot":"","sources":["../../../src/infrastructure/cache/CacheManager.ts"],"names":[],"mappings":";;;AAMA,gDAAiD;AAGjD,mDAAgD;
|
|
1
|
+
{"version":3,"file":"CacheManager.js","sourceRoot":"","sources":["../../../src/infrastructure/cache/CacheManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { RDAPResponse } from '../../shared/types';
|
|
2
|
+
import type { ICache } from './CacheManager';
|
|
3
|
+
export interface RedisClientLike {
|
|
4
|
+
get(key: string): Promise<string | null>;
|
|
5
|
+
set(key: string, value: string, options?: {
|
|
6
|
+
EX?: number;
|
|
7
|
+
PX?: number;
|
|
8
|
+
}): Promise<unknown>;
|
|
9
|
+
del(...keys: string[]): Promise<number>;
|
|
10
|
+
exists(...keys: string[]): Promise<number>;
|
|
11
|
+
keys(pattern: string): Promise<string[]>;
|
|
12
|
+
scan?(cursor: string, matchOption: 'MATCH', pattern: string, countOption: 'COUNT', count: number): Promise<[string, string[]]>;
|
|
13
|
+
}
|
|
14
|
+
export interface RedisCacheOptions {
|
|
15
|
+
keyPrefix?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare class RedisCache implements ICache {
|
|
18
|
+
private readonly client;
|
|
19
|
+
private readonly keyPrefix;
|
|
20
|
+
constructor(client: RedisClientLike, options?: RedisCacheOptions);
|
|
21
|
+
private prefixed;
|
|
22
|
+
private patternAll;
|
|
23
|
+
private scanAll;
|
|
24
|
+
get(key: string): Promise<RDAPResponse | null>;
|
|
25
|
+
set(key: string, value: RDAPResponse, ttl?: number): Promise<void>;
|
|
26
|
+
delete(key: string): Promise<void>;
|
|
27
|
+
clear(): Promise<void>;
|
|
28
|
+
has(key: string): Promise<boolean>;
|
|
29
|
+
size(): Promise<number>;
|
|
30
|
+
getStats(): Promise<{
|
|
31
|
+
keyPrefix: string;
|
|
32
|
+
size: number;
|
|
33
|
+
}>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=RedisCache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedisCache.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cache/RedisCache.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAmB7C,MAAM,WAAW,eAAe;IAE9B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEzC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1F,GAAG,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC,MAAM,CAAC,GAAG,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3C,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAKzC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;CAChI;AAKD,MAAM,WAAW,iBAAiB;IAMhC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAgBD,qBAAa,UAAW,YAAW,MAAM;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,eAAe,EAAE,OAAO,GAAE,iBAAsB;IAYpE,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,UAAU;YAYJ,OAAO;IAyBf,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAsB9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAclE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAWtB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAalC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAYvB,QAAQ,IAAI,OAAO,CAAC;QACxB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CAMH"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RedisCache = void 0;
|
|
4
|
+
class RedisCache {
|
|
5
|
+
constructor(client, options = {}) {
|
|
6
|
+
this.client = client;
|
|
7
|
+
this.keyPrefix = options.keyPrefix ?? 'rdapify:';
|
|
8
|
+
}
|
|
9
|
+
prefixed(key) {
|
|
10
|
+
return `${this.keyPrefix}${key}`;
|
|
11
|
+
}
|
|
12
|
+
patternAll() {
|
|
13
|
+
return `${this.keyPrefix}*`;
|
|
14
|
+
}
|
|
15
|
+
async scanAll(pattern) {
|
|
16
|
+
if (typeof this.client.scan === 'function') {
|
|
17
|
+
const collected = [];
|
|
18
|
+
let cursor = '0';
|
|
19
|
+
do {
|
|
20
|
+
const [nextCursor, keys] = await this.client.scan(cursor, 'MATCH', pattern, 'COUNT', 100);
|
|
21
|
+
cursor = nextCursor;
|
|
22
|
+
collected.push(...keys);
|
|
23
|
+
} while (cursor !== '0');
|
|
24
|
+
return collected;
|
|
25
|
+
}
|
|
26
|
+
return this.client.keys(pattern);
|
|
27
|
+
}
|
|
28
|
+
async get(key) {
|
|
29
|
+
const raw = await this.client.get(this.prefixed(key));
|
|
30
|
+
if (raw === null) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
try {
|
|
34
|
+
return JSON.parse(raw);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async set(key, value, ttl) {
|
|
41
|
+
const serialised = JSON.stringify(value);
|
|
42
|
+
const prefixedKey = this.prefixed(key);
|
|
43
|
+
if (ttl !== undefined && ttl > 0) {
|
|
44
|
+
await this.client.set(prefixedKey, serialised, { EX: ttl });
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
await this.client.set(prefixedKey, serialised);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
async delete(key) {
|
|
51
|
+
await this.client.del(this.prefixed(key));
|
|
52
|
+
}
|
|
53
|
+
async clear() {
|
|
54
|
+
const matchingKeys = await this.scanAll(this.patternAll());
|
|
55
|
+
if (matchingKeys.length > 0) {
|
|
56
|
+
await this.client.del(...matchingKeys);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async has(key) {
|
|
60
|
+
const count = await this.client.exists(this.prefixed(key));
|
|
61
|
+
return count > 0;
|
|
62
|
+
}
|
|
63
|
+
async size() {
|
|
64
|
+
const matchingKeys = await this.scanAll(this.patternAll());
|
|
65
|
+
return matchingKeys.length;
|
|
66
|
+
}
|
|
67
|
+
async getStats() {
|
|
68
|
+
return {
|
|
69
|
+
keyPrefix: this.keyPrefix,
|
|
70
|
+
size: await this.size(),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
exports.RedisCache = RedisCache;
|
|
75
|
+
//# sourceMappingURL=RedisCache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedisCache.js","sourceRoot":"","sources":["../../../src/infrastructure/cache/RedisCache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cache/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/cache/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CacheManager = exports.InMemoryCache = void 0;
|
|
3
|
+
exports.RedisCache = exports.CacheManager = exports.InMemoryCache = void 0;
|
|
4
4
|
var InMemoryCache_1 = require("./InMemoryCache");
|
|
5
5
|
Object.defineProperty(exports, "InMemoryCache", { enumerable: true, get: function () { return InMemoryCache_1.InMemoryCache; } });
|
|
6
6
|
var CacheManager_1 = require("./CacheManager");
|
|
7
7
|
Object.defineProperty(exports, "CacheManager", { enumerable: true, get: function () { return CacheManager_1.CacheManager; } });
|
|
8
|
+
var RedisCache_1 = require("./RedisCache");
|
|
9
|
+
Object.defineProperty(exports, "RedisCache", { enumerable: true, get: function () { return RedisCache_1.RedisCache; } });
|
|
8
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/infrastructure/cache/index.ts"],"names":[],"mappings":";;;AAKA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,+CAA2D;AAAlD,4GAAA,YAAY,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/infrastructure/cache/index.ts"],"names":[],"mappings":";;;AAKA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,+CAA2D;AAAlD,4GAAA,YAAY,OAAA;AACrB,2CAAwF;AAA/E,wGAAA,UAAU,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootstrapDiscovery.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/http/BootstrapDiscovery.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBpC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;gBAEjC,OAAO,GAAE,MAAqC,EAAE,OAAO,CAAC,EAAE,OAAO;IAUvE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB/C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBzC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBzC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"BootstrapDiscovery.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/http/BootstrapDiscovery.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBpC,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;gBAEjC,OAAO,GAAE,MAAqC,EAAE,OAAO,CAAC,EAAE,OAAO;IAUvE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB/C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBzC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBzC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YA6BjC,gBAAgB;IA+C9B,OAAO,CAAC,aAAa;IAwBrB,UAAU,IAAI,IAAI;IAQlB,aAAa,IAAI;QACf,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB;CAMF"}
|
|
@@ -61,8 +61,11 @@ class BootstrapDiscovery {
|
|
|
61
61
|
for (const pattern of entry.patterns) {
|
|
62
62
|
const parts = pattern.split('-').map((n) => parseInt(n, 10));
|
|
63
63
|
const start = parts[0];
|
|
64
|
-
const end = parts[1]
|
|
65
|
-
if (start
|
|
64
|
+
const end = parts[1];
|
|
65
|
+
if (start === undefined || end === undefined || isNaN(start) || isNaN(end)) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
if (asn >= start && asn <= end) {
|
|
66
69
|
if (entry.servers.length === 0 || !entry.servers[0]) {
|
|
67
70
|
throw new errors_1.NoServerFoundError(`No RDAP server found for ASN: ${asn}`, { asn, pattern });
|
|
68
71
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootstrapDiscovery.js","sourceRoot":"","sources":["../../../src/infrastructure/http/BootstrapDiscovery.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BootstrapDiscovery.js","sourceRoot":"","sources":["../../../src/infrastructure/http/BootstrapDiscovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export declare class ConnectionPool {
|
|
|
10
10
|
private connections;
|
|
11
11
|
private cleanupInterval?;
|
|
12
12
|
constructor(options?: ConnectionPoolOptions);
|
|
13
|
-
acquire(host: string): Promise<string>;
|
|
13
|
+
acquire(host: string, timeout?: number): Promise<string>;
|
|
14
14
|
release(connectionId: string): void;
|
|
15
15
|
private waitForConnection;
|
|
16
16
|
private cleanup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConnectionPool.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/http/ConnectionPool.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE7B,OAAO,GAAE,qBAA0B;IAezC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ConnectionPool.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/http/ConnectionPool.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAKD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,eAAe,CAAC,CAAiB;gBAE7B,OAAO,GAAE,qBAA0B;IAezC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC9D,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;YAcrB,iBAAiB;IA0B/B,OAAO,CAAC,OAAO;IAwBf,QAAQ,IAAI;QACV,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC;KACf;IAsBD,OAAO,IAAI,IAAI;CAOhB"}
|