Skip to content

Commit

Permalink
refactor: remove query-string dependency in favor of URLSearchParams (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
brandonroberts committed Jan 15, 2021
1 parent 33bb938 commit 66ed9b9
Show file tree
Hide file tree
Showing 5 changed files with 7 additions and 28 deletions.
1 change: 0 additions & 1 deletion libs/router/ng-package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
"$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
"dest": "../../dist/libs/router",
"assets": ["**/*.md", "./schematics/**/*.json"],
"whitelistedNonPeerDependencies": ["query-string"],
"lib": {
"entryFile": "src/index.ts"
}
Expand Down
3 changes: 0 additions & 3 deletions libs/router/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,5 @@
"@angular/core": ">=9.0.0",
"rxjs": ">=6.5.3"
},
"dependencies": {
"query-string": "^6.13.1"
},
"sideEffects": false
}
11 changes: 7 additions & 4 deletions libs/router/src/lib/router.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ import { PlatformLocation, Location } from '@angular/common';
import { BehaviorSubject } from 'rxjs';
import { distinctUntilChanged, map } from 'rxjs/operators';

import * as queryString from 'query-string';

import { UrlParser } from './url-parser';
import { Params, compareParams } from './route-params.service';

Expand Down Expand Up @@ -80,7 +78,7 @@ export class Router {

return (
url +
(queryParams ? `?${queryString.stringify(queryParams)}` : '') +
(queryParams ? `?${this.stringifyQueryParams(queryParams)}` : '') +
`${hash ? '#' + hash : ''}`
);
}
Expand All @@ -89,7 +87,8 @@ export class Router {
return this.location.prepareExternalUrl(url);
}

parseSearchParams(searchParams: URLSearchParams) {
parseSearchParams(params: string | URLSearchParams) {
const searchParams = new URLSearchParams(params);
const queryParams: Params = {};

searchParams.forEach((value, key) => {
Expand Down Expand Up @@ -120,4 +119,8 @@ export class Router {
private _parseUrl(path: string): URL {
return this.urlParser.parse(path);
}

private stringifyQueryParams(params: Params) {
return new URLSearchParams(params).toString();
}
}
1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@
"@nrwl/angular": "^9.4.5",
"angular-in-memory-web-api": "^0.11.0",
"hammerjs": "^2.0.8",
"query-string": "^6.13.1",
"rxjs": "~6.5.4",
"tslib": "^1.10.0",
"zone.js": "^0.10.2"
Expand Down
19 changes: 0 additions & 19 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -9520,15 +9520,6 @@ query-string@^4.1.0:
object-assign "^4.1.0"
strict-uri-encode "^1.0.0"

query-string@^6.13.1:
version "6.13.1"
resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.13.1.tgz#d913ccfce3b4b3a713989fe6d39466d92e71ccad"
integrity sha512-RfoButmcK+yCta1+FuU8REvisx1oEzhMKwhLUNcepQTPGcNMp1sIqjnfCtfnvGSQZQEhaBHvccujtWoUV3TTbA==
dependencies:
decode-uri-component "^0.2.0"
split-on-first "^1.0.0"
strict-uri-encode "^2.0.0"

querystring-es3@^0.2.0:
version "0.2.1"
resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
Expand Down Expand Up @@ -10714,11 +10705,6 @@ speed-measure-webpack-plugin@1.3.1:
dependencies:
chalk "^2.0.1"

split-on-first@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==

split-string@^3.0.1, split-string@^3.0.2:
version "3.1.0"
resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2"
Expand Down Expand Up @@ -10852,11 +10838,6 @@ strict-uri-encode@^1.0.0:
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=

strict-uri-encode@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=

string-argv@0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da"
Expand Down

0 comments on commit 66ed9b9

Please sign in to comment.