@gibme/ipinfo 0.0.5 → 0.0.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/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2016-2022 Brandon Lehmann
1
+ Copyright (c) 2016-2023 Brandon Lehmann
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy
4
4
  of this software and associated documentation files (the "Software"), to deal
package/dist/ipinfo.d.ts CHANGED
@@ -30,6 +30,8 @@ export interface IPInfo extends PrefixEntry {
30
30
  * Looks up information regarding the IP address supplied
31
31
  *
32
32
  * @param address
33
+ * @param maxRetries
34
+ * @param retry
33
35
  */
34
- export declare const IPInfo: (address: string) => Promise<IPInfo>;
36
+ export declare const IPInfo: (address: string, maxRetries?: number, retry?: number) => Promise<IPInfo>;
35
37
  export default IPInfo;
package/dist/ipinfo.js CHANGED
@@ -54,6 +54,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.IPInfo = void 0;
55
55
  const dns = __importStar(require("dns"));
56
56
  /** @ignore */
57
+ const sleep = (timeout) => __awaiter(void 0, void 0, void 0, function* () { return new Promise(resolve => setTimeout(resolve, timeout)); });
58
+ /** @ignore */
57
59
  const countColons = (value) => {
58
60
  let count = 0;
59
61
  value.replace(/:/g, val => { count++; return val; });
@@ -152,15 +154,26 @@ const asn = (as) => __awaiter(void 0, void 0, void 0, function* () {
152
154
  * Looks up information regarding the IP address supplied
153
155
  *
154
156
  * @param address
157
+ * @param maxRetries
158
+ * @param retry
155
159
  */
156
- const IPInfo = (address) => __awaiter(void 0, void 0, void 0, function* () {
157
- const info = yield prefix(address);
160
+ const IPInfo = (address, maxRetries = 3, retry = 0) => __awaiter(void 0, void 0, void 0, function* () {
158
161
  try {
159
- const _asn = yield asn(info.asn);
160
- return Object.assign(Object.assign({}, info), { as: _asn });
162
+ const info = yield prefix(address);
163
+ try {
164
+ const _asn = yield asn(info.asn);
165
+ return Object.assign(Object.assign({}, info), { as: _asn });
166
+ }
167
+ catch (_a) {
168
+ return Object.assign({}, info);
169
+ }
161
170
  }
162
- catch (_a) {
163
- return Object.assign({}, info);
171
+ catch (error) {
172
+ if (error.toString().toLowerCase().includes('refused') && retry < maxRetries) {
173
+ yield sleep(1000);
174
+ return (0, exports.IPInfo)(address, maxRetries, retry++);
175
+ }
176
+ throw error;
164
177
  }
165
178
  });
166
179
  exports.IPInfo = IPInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"ipinfo.js","sourceRoot":"","sources":["../src/ipinfo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ipinfo.js","sourceRoot":"","sources":["../src/ipinfo.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gibme/ipinfo",
3
- "version": "0.0.5",
3
+ "version": "0.0.6",
4
4
  "description": "A simple IP information lookup helper using Team CYMRU services",
5
5
  "main": "dist/ipinfo.js",
6
6
  "types": "dist/ipinfo.d.ts",