@xapp/arachne-utils 1.8.0 → 1.8.3
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/lib/cleanForCrawl.d.ts +12 -0
- package/lib/cleanForCrawl.js +38 -0
- package/lib/cleanForCrawl.js.map +1 -0
- package/lib/generateFollowThroughPattern.js +1 -2
- package/lib/generateFollowThroughPattern.js.map +1 -1
- package/lib/hallucinationDetector.js +1 -2
- package/lib/hallucinationDetector.js.map +1 -1
- package/lib/hasExtension.js +1 -2
- package/lib/hasExtension.js.map +1 -1
- package/lib/hashWebsite.d.ts +8 -0
- package/lib/hashWebsite.js +44 -0
- package/lib/hashWebsite.js.map +1 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/isValidURL.d.ts +9 -0
- package/lib/isValidURL.js +22 -0
- package/lib/isValidURL.js.map +1 -0
- package/lib/normalizeURL.js +1 -2
- package/lib/normalizeURL.js.map +1 -1
- package/package.json +10 -10
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/*! Copyright (c) 2024, XAPP AI */
|
|
2
|
+
/**
|
|
3
|
+
* Prepare a URL for crawling.
|
|
4
|
+
*
|
|
5
|
+
* * Ensures there is no trailing slash
|
|
6
|
+
* * Ensures there is no hash
|
|
7
|
+
* * Ensures there is a scheme, defaults to https://
|
|
8
|
+
*
|
|
9
|
+
* @param url
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
export declare const cleanForCrawl: (url: string) => string;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*! Copyright (c) 2024, XAPP AI */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.cleanForCrawl = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Prepare a URL for crawling.
|
|
7
|
+
*
|
|
8
|
+
* * Ensures there is no trailing slash
|
|
9
|
+
* * Ensures there is no hash
|
|
10
|
+
* * Ensures there is a scheme, defaults to https://
|
|
11
|
+
*
|
|
12
|
+
* @param url
|
|
13
|
+
* @returns
|
|
14
|
+
*/
|
|
15
|
+
const cleanForCrawl = (url) => {
|
|
16
|
+
// First make sure they have a scheme
|
|
17
|
+
if (!url.startsWith("http")) {
|
|
18
|
+
// make sure it doesn't have // in the beginning
|
|
19
|
+
if (url.startsWith("//")) {
|
|
20
|
+
url = `https:${url}`;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
url = `https://${url}`;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// Remove trailing slash
|
|
27
|
+
if (url.endsWith("/")) {
|
|
28
|
+
url = url.slice(0, -1);
|
|
29
|
+
}
|
|
30
|
+
// Remove hash
|
|
31
|
+
const hashIndex = url.indexOf("#");
|
|
32
|
+
if (hashIndex > -1) {
|
|
33
|
+
url = url.slice(0, hashIndex);
|
|
34
|
+
}
|
|
35
|
+
return url;
|
|
36
|
+
};
|
|
37
|
+
exports.cleanForCrawl = cleanForCrawl;
|
|
38
|
+
//# sourceMappingURL=cleanForCrawl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cleanForCrawl.js","sourceRoot":"","sources":["../src/cleanForCrawl.ts"],"names":[],"mappings":";AAAA,kCAAkC;;;AAElC;;;;;;;;;GASG;AACI,MAAM,aAAa,GAAG,CAAC,GAAW,EAAU,EAAE;IACjD,qCAAqC;IACrC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,gDAAgD;QAChD,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,GAAG,GAAG,SAAS,GAAG,EAAE,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,GAAG,GAAG,WAAW,GAAG,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,wBAAwB;IACxB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,cAAc;IACd,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;QACjB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC,CAAA;AAvBY,QAAA,aAAa,iBAuBzB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*! Copyright (c) 2024, XAPP AI */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.generateFollowThroughPattern =
|
|
4
|
+
exports.generateFollowThroughPattern = generateFollowThroughPattern;
|
|
5
5
|
/**
|
|
6
6
|
* Generates a URL pattern that will enable the crawler to
|
|
7
7
|
* follow through sub paths for the provided URL.
|
|
@@ -56,5 +56,4 @@ function generateFollowThroughPattern(urlString) {
|
|
|
56
56
|
}
|
|
57
57
|
return pattern;
|
|
58
58
|
}
|
|
59
|
-
exports.generateFollowThroughPattern = generateFollowThroughPattern;
|
|
60
59
|
//# sourceMappingURL=generateFollowThroughPattern.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateFollowThroughPattern.js","sourceRoot":"","sources":["../src/generateFollowThroughPattern.ts"],"names":[],"mappings":";AAAA,kCAAkC
|
|
1
|
+
{"version":3,"file":"generateFollowThroughPattern.js","sourceRoot":"","sources":["../src/generateFollowThroughPattern.ts"],"names":[],"mappings":";AAAA,kCAAkC;;AAkBlC,oEA8CC;AA9DD;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,4BAA4B,CAAC,SAAiB;IAE1D,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACtF,CAAC;IACD,0BAA0B;IAC1B,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,GAAQ,CAAC;IAEb,IAAI,CAAC;QACD,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,oDAAoD,SAAS,aAAa,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACpB,iCAAiC;IACjC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC,CAAC,8BAA8B;IAGzF,IAAI,OAAe,CAAC;IAEpB,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE/E,+CAA+C;IAC/C,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,oBAAoB;QACpB,OAAO,GAAG,GAAG,eAAe,cAAc,IAAI,GAAG,IAAI,MAAM,CAAC;IAChE,CAAC;SAAM,CAAC;QACJ,OAAO,GAAG,GAAG,eAAe,KAAK,IAAI,GAAG,IAAI,MAAM,CAAC;IACvD,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*! Copyright (c) 2024, XAPP AI */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.isHallucinatedPhoneNumber =
|
|
4
|
+
exports.isHallucinatedPhoneNumber = isHallucinatedPhoneNumber;
|
|
5
5
|
/**
|
|
6
6
|
* Looks for common hallucinated phone numbers.
|
|
7
7
|
* @param number
|
|
@@ -28,5 +28,4 @@ function isHallucinatedPhoneNumber(number) {
|
|
|
28
28
|
];
|
|
29
29
|
return hallucinatedPatterns.some(pattern => pattern.test(digits));
|
|
30
30
|
}
|
|
31
|
-
exports.isHallucinatedPhoneNumber = isHallucinatedPhoneNumber;
|
|
32
31
|
//# sourceMappingURL=hallucinationDetector.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hallucinationDetector.js","sourceRoot":"","sources":["../src/hallucinationDetector.ts"],"names":[],"mappings":";AAAA,kCAAkC
|
|
1
|
+
{"version":3,"file":"hallucinationDetector.js","sourceRoot":"","sources":["../src/hallucinationDetector.ts"],"names":[],"mappings":";AAAA,kCAAkC;;AAOlC,8DAsBC;AA3BD;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,MAAc;IACpD,6CAA6C;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEzC,iCAAiC;IACjC,MAAM,oBAAoB,GAAG;QACzB,YAAY,EAAE,gCAAgC;QAC9C,cAAc,EAAE,yDAAyD;QACzE,kBAAkB;QAClB,WAAW;QACX,sCAAsC,EAAE,uBAAuB;QAC/D,4CAA4C,EAAE,sBAAsB;QACpE,+DAA+D,EAAE,qBAAqB;QACtF,qDAAqD,EAAE,oBAAoB;QAC3E,uBAAuB,EAAE,uBAAuB;QAChD,yBAAyB,EAAE,wBAAwB;QACnD,kBAAkB,EAAE,oBAAoB;QACxC,kBAAkB,EAAE,wBAAwB;QAC5C,WAAW,EAAE,sCAAsC;KACtD,CAAC;IAEF,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
package/lib/hasExtension.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*! Copyright (c) 2024, XAPP AI */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.hasExtension =
|
|
4
|
+
exports.hasExtension = hasExtension;
|
|
5
5
|
/**
|
|
6
6
|
* Determines if the provided URL has a certain file extension. This is useful to filter out undesirable URLs to follow such as .pdf, .jpg, .png or other file types that don't have hyperlinks themselves.
|
|
7
7
|
*
|
|
@@ -49,5 +49,4 @@ function hasExtension(url, extension) {
|
|
|
49
49
|
});
|
|
50
50
|
return hasExtension;
|
|
51
51
|
}
|
|
52
|
-
exports.hasExtension = hasExtension;
|
|
53
52
|
//# sourceMappingURL=hasExtension.js.map
|
package/lib/hasExtension.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hasExtension.js","sourceRoot":"","sources":["../src/hasExtension.ts"],"names":[],"mappings":";AAAA,kCAAkC
|
|
1
|
+
{"version":3,"file":"hasExtension.js","sourceRoot":"","sources":["../src/hasExtension.ts"],"names":[],"mappings":";AAAA,kCAAkC;;AAUlC,oCAiDC;AAzDD;;;;;;;GAOG;AACH,SAAgB,YAAY,CAAC,GAAiB,EAAE,SAA4B;IAExE,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IAAI,OAAY,CAAC;IAEjB,IAAI,CAAC;QACD,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,CAAC;YACD,sEAAsE;YACtE,OAAO,GAAG,IAAI,GAAG,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;YAE9C,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAE9B,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAE7C,MAAM,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAErF,MAAM,cAAc,GAAa,EAAE,CAAC;IAEpC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAChC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACJ,cAAc,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,YAAY,GAAY,KAAK,CAAC;IAElC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3B,8CAA8C;QAC9C,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACxB,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;QAE5C,IAAI,GAAG,KAAK,cAAc,CAAC,WAAW,EAAE,EAAE,CAAC;YACvC,YAAY,GAAG,IAAI,CAAC;QACxB,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AAExB,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.hashWebsite = hashWebsite;
|
|
27
|
+
/*! Copyright (c) 2024, XAPP AI */
|
|
28
|
+
const normalizeURL_1 = require("./normalizeURL");
|
|
29
|
+
const crypto = __importStar(require("crypto"));
|
|
30
|
+
/**
|
|
31
|
+
* Returns a hash for a website
|
|
32
|
+
*
|
|
33
|
+
* @param url
|
|
34
|
+
* @throws {Error} if the URL is invalid
|
|
35
|
+
* @returns
|
|
36
|
+
*/
|
|
37
|
+
function hashWebsite(url) {
|
|
38
|
+
const normalizedUrl = (0, normalizeURL_1.normalizeURL)(url, {
|
|
39
|
+
stripProtocol: true,
|
|
40
|
+
stripWWW: true,
|
|
41
|
+
});
|
|
42
|
+
return crypto.createHash('sha256').update(normalizedUrl).digest('hex');
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=hashWebsite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hashWebsite.js","sourceRoot":"","sources":["../src/hashWebsite.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAWA,kCAMC;AAjBD,kCAAkC;AAClC,iDAA8C;AAC9C,+CAAiC;AAEjC;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,GAAW;IACnC,MAAM,aAAa,GAAG,IAAA,2BAAY,EAAC,GAAG,EAAE;QACpC,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
/*! Copyright (c) 2020, XAPP AI */
|
|
2
2
|
export * from "./ArachneURLPattern";
|
|
3
|
+
export * from "./cleanForCrawl";
|
|
3
4
|
export * from "./constants";
|
|
4
5
|
export * from "./generateFollowThroughPattern";
|
|
5
6
|
export * from "./hallucinationDetector";
|
|
6
7
|
export * from "./hasExtension";
|
|
8
|
+
export * from "./hashWebsite";
|
|
9
|
+
export * from "./isValidURL";
|
|
7
10
|
export * from "./normalizeURL";
|
|
8
11
|
export * from "./promiseWithTimeout";
|
package/lib/index.js
CHANGED
|
@@ -16,10 +16,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
__exportStar(require("./ArachneURLPattern"), exports);
|
|
19
|
+
__exportStar(require("./cleanForCrawl"), exports);
|
|
19
20
|
__exportStar(require("./constants"), exports);
|
|
20
21
|
__exportStar(require("./generateFollowThroughPattern"), exports);
|
|
21
22
|
__exportStar(require("./hallucinationDetector"), exports);
|
|
22
23
|
__exportStar(require("./hasExtension"), exports);
|
|
24
|
+
__exportStar(require("./hashWebsite"), exports);
|
|
25
|
+
__exportStar(require("./isValidURL"), exports);
|
|
23
26
|
__exportStar(require("./normalizeURL"), exports);
|
|
24
27
|
__exportStar(require("./promiseWithTimeout"), exports);
|
|
25
28
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,kCAAkC;;;;;;;;;;;;;;;;AAElC,sDAAoC;AACpC,8CAA4B;AAC5B,iEAA+C;AAC/C,0DAAwC;AACxC,iDAA+B;AAC/B,iDAA+B;AAC/B,uDAAqC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,kCAAkC;;;;;;;;;;;;;;;;AAElC,sDAAoC;AACpC,kDAAgC;AAChC,8CAA4B;AAC5B,iEAA+C;AAC/C,0DAAwC;AACxC,iDAA+B;AAC/B,gDAA8B;AAC9B,+CAA6B;AAC7B,iDAA+B;AAC/B,uDAAqC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/*! Copyright (c) 2024, XAPP AI */
|
|
2
|
+
/**
|
|
3
|
+
* Determines if the URL is a valid URL.
|
|
4
|
+
*
|
|
5
|
+
* It attempts to create a new URL object from the string and returns true if it is successful.
|
|
6
|
+
* @param url
|
|
7
|
+
* @returns
|
|
8
|
+
*/
|
|
9
|
+
export declare const isValidURL: (url: string) => boolean;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*! Copyright (c) 2024, XAPP AI */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.isValidURL = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Determines if the URL is a valid URL.
|
|
7
|
+
*
|
|
8
|
+
* It attempts to create a new URL object from the string and returns true if it is successful.
|
|
9
|
+
* @param url
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
const isValidURL = (url) => {
|
|
13
|
+
try {
|
|
14
|
+
new URL(url);
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
catch (e) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
exports.isValidURL = isValidURL;
|
|
22
|
+
//# sourceMappingURL=isValidURL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isValidURL.js","sourceRoot":"","sources":["../src/isValidURL.ts"],"names":[],"mappings":";AAAA,kCAAkC;;;AAElC;;;;;;GAMG;AACI,MAAM,UAAU,GAAG,CAAC,GAAW,EAAW,EAAE;IAC/C,IAAI,CAAC;QACD,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC,CAAA;AAPY,QAAA,UAAU,cAOtB"}
|
package/lib/normalizeURL.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.normalizeURL =
|
|
6
|
+
exports.normalizeURL = normalizeURL;
|
|
7
7
|
/*! Copyright (c) 2020, XAPP AI */
|
|
8
8
|
const normalize_url_1 = __importDefault(require("normalize-url"));
|
|
9
9
|
/**
|
|
@@ -19,5 +19,4 @@ const normalize_url_1 = __importDefault(require("normalize-url"));
|
|
|
19
19
|
function normalizeURL(url, options = { stripHash: true }) {
|
|
20
20
|
return (0, normalize_url_1.default)(url, options);
|
|
21
21
|
}
|
|
22
|
-
exports.normalizeURL = normalizeURL;
|
|
23
22
|
//# sourceMappingURL=normalizeURL.js.map
|
package/lib/normalizeURL.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizeURL.js","sourceRoot":"","sources":["../src/normalizeURL.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"normalizeURL.js","sourceRoot":"","sources":["../src/normalizeURL.ts"],"names":[],"mappings":";;;;;AAaA,oCAEC;AAfD,kCAAkC;AAClC,kEAAuD;AAEvD;;;;;;;;;GASG;AACH,SAAgB,YAAY,CAAC,GAAW,EAAE,UAAmB,EAAE,SAAS,EAAE,IAAI,EAAE;IAC5E,OAAO,IAAA,uBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xapp/arachne-utils",
|
|
3
|
-
"version": "1.8.
|
|
3
|
+
"version": "1.8.3",
|
|
4
4
|
"types": "lib/index",
|
|
5
5
|
"main": "lib/index",
|
|
6
6
|
"files": [
|
|
@@ -14,20 +14,20 @@
|
|
|
14
14
|
"node": "^14 || ^16 || ^18 || ^20.0.0"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@microsoft/api-extractor": "7.
|
|
18
|
-
"@types/chai": "4.3.
|
|
19
|
-
"@types/mocha": "10.0.
|
|
20
|
-
"@types/node": "20.
|
|
17
|
+
"@microsoft/api-extractor": "7.47.4",
|
|
18
|
+
"@types/chai": "4.3.17",
|
|
19
|
+
"@types/mocha": "10.0.7",
|
|
20
|
+
"@types/node": "20.14.13",
|
|
21
21
|
"@types/sinon": "17.0.3",
|
|
22
22
|
"@types/sinon-chai": "3.2.12",
|
|
23
23
|
"@xapp/config": "0.2.3",
|
|
24
|
-
"chai": "4.
|
|
25
|
-
"mocha": "10.
|
|
24
|
+
"chai": "4.5.0",
|
|
25
|
+
"mocha": "10.7.0",
|
|
26
26
|
"sinon": "18.0.0",
|
|
27
27
|
"sinon-chai": "3.7.0",
|
|
28
28
|
"ts-node": "10.9.2",
|
|
29
|
-
"tslib": "2.6.
|
|
30
|
-
"typescript": "5.4
|
|
29
|
+
"tslib": "2.6.3",
|
|
30
|
+
"typescript": "5.5.4"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"normalize-url": "6.1.0"
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"clean": "rm -rf ./lib/*",
|
|
39
39
|
"test": "mocha --recursive -r ts-node/register \"./src/**/*.test.ts\""
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "f506e88fbc093e8db03beaafadc4057f3647aece"
|
|
42
42
|
}
|