diff --git a/src/util/util/extensions/Url.ts b/src/util/util/Url.ts
index c0f07b37..808bdeaa 100644
--- a/src/util/util/extensions/Url.ts
+++ b/src/util/util/Url.ts
@@ -16,19 +16,6 @@
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
-declare module "url" {
- interface URL {
- normalize(): string;
- }
-}
-
-/**
- * Normalize a URL by:
- * - Removing trailing slashes (except root path)
- * - Sorting query params alphabetically
- * - Removing empty query strings
- * - Removing fragments
- */
export function normalizeUrl(input: string): string {
try {
const u = new URL(input);
@@ -52,9 +39,3 @@ export function normalizeUrl(input: string): string {
return input;
}
}
-
-// register extensions
-if (!URL.prototype.normalize)
- URL.prototype.normalize = function () {
- return normalizeUrl(this.toString());
- };
diff --git a/src/util/util/extensions/Url.test.ts b/src/util/util/extensions/Url.test.ts
deleted file mode 100644
index 37afd0a2..00000000
--- a/src/util/util/extensions/Url.test.ts
+++ /dev/null
@@ -1,37 +0,0 @@
-import moduleAlias from "module-alias";
-moduleAlias();
-import './Url';
-import { describe, it } from 'node:test';
-import assert from 'node:assert/strict';
-
-describe("URL extensions", () => {
-
- it("normalize", async () => {
- const tests: [string, string][] = [
- ["http://example.com", "http://example.com/"],
- ["http://example.com/", "http://example.com/"],
- ["http://example.com/path/", "http://example.com/path"],
- ["http://example.com/path//", "http://example.com/path/"],
- ["http://example.com/path?b=2&a=1", "http://example.com/path?a=1&b=2"],
- ["http://example.com/path?b=2&a=1&", "http://example.com/path?a=1&b=2"],
- ["http://example.com/path?", "http://example.com/path"],
- ["http://example.com/path#fragment", "http://example.com/path"],
- ["http://example.com/path/?b=2&a=1#fragment", "http://example.com/path?a=1&b=2"],
- ["ftp://example.com/resource/", "ftp://example.com/resource"],
- ["https://example.com/resource?z=3&y=2&x=1", "https://example.com/resource?x=1&y=2&z=3"],
- ["https://example.com/resource?z=3&y=2&x=1#", "https://example.com/resource?x=1&y=2&z=3"],
- ["https://example.com/resource?z=3&y=2&x=1#section", "https://example.com/resource?x=1&y=2&z=3"],
- ["https://example.com/resource/?z=3&y=2&x=1#section", "https://example.com/resource?x=1&y=2&z=3"],
- ["https://example.com/resource//?z=3&y=2&x=1#section", "https://example.com/resource/?x=1&y=2&z=3"],
- ["https://example.com/", "https://example.com/"],
- ["https://example.com", "https://example.com/"],
- ];
- for (const [input, expected] of tests) {
- assert.doesNotThrow(() => new URL(input), `URL("${input}") should not throw`);
- const url = new URL(input);
- const normalized = url.normalize();
- assert.strictEqual(normalized, expected, `normalize("${input}") = "${normalized}", expected "${expected}"`);
- }
- });
-
-});
\ No newline at end of file
diff --git a/src/util/util/extensions/index.ts b/src/util/util/extensions/index.ts
index afd6c0b3..b7dcf4d5 100644
--- a/src/util/util/extensions/index.ts
+++ b/src/util/util/extensions/index.ts
@@ -1,3 +1,2 @@
export * from "./Array";
-export * from "./Url";
export * from "./String";
diff --git a/src/util/util/index.ts b/src/util/util/index.ts
index 11c4899c..920c330d 100644
--- a/src/util/util/index.ts
+++ b/src/util/util/index.ts
@@ -48,4 +48,5 @@ export * from "./Application";
export * from "./NameValidation";
export * from "../../schemas/HelperTypes";
export * from "./extensions";
-export * from "./Random";
\ No newline at end of file
+export * from "./Random";
+export * from "./Url";
|