url-operator 0.3.2 → 0.3.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/README.md CHANGED
@@ -63,7 +63,10 @@ function setSearchParam(url: URL, name: string, value: string | number): URL
63
63
 
64
64
  ### setSearchParams
65
65
  ```ts
66
- function setSearchParams(url: URL, searchParams: Record<string, string | number>): URL
66
+ function setSearchParams(
67
+ url: URL
68
+ , searchParams: Record<string, string | number | undefined>
69
+ ): URL
67
70
  ```
68
71
 
69
72
  ### appendSearchParam
@@ -1 +1 @@
1
- export declare function setSearchParams(url: URL, searchParams: Record<string, string | number>): URL;
1
+ export declare function setSearchParams(url: URL, searchParams: Record<string, string | number | undefined>): URL;
@@ -1,8 +1,10 @@
1
+ import { isntUndefined } from '@blackglory/prelude';
1
2
  export function setSearchParams(url, searchParams) {
2
3
  const newURL = new URL(url);
3
4
  const newSearchParams = new URLSearchParams(newURL.searchParams);
4
5
  for (const [name, value] of Object.entries(searchParams)) {
5
- newSearchParams.set(name, value.toString());
6
+ if (isntUndefined(value))
7
+ newSearchParams.set(name, value.toString());
6
8
  }
7
9
  newURL.search = newSearchParams.toString();
8
10
  return newURL;
@@ -1 +1 @@
1
- {"version":3,"file":"set-search-params.js","sourceRoot":"","sources":["../src/set-search-params.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,eAAe,CAC7B,GAAQ,EACR,YAA6C;IAE7C,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IAE3B,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAChE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACxD,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;KAC5C;IACD,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAA;IAE1C,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"set-search-params.js","sourceRoot":"","sources":["../src/set-search-params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,MAAM,UAAU,eAAe,CAC7B,GAAQ,EACR,YAAyD;IAEzD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IAE3B,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IAChE,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACxD,IAAI,aAAa,CAAC,KAAK,CAAC;YAAE,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;KACtE;IACD,MAAM,CAAC,MAAM,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAA;IAE1C,OAAO,MAAM,CAAA;AACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "url-operator",
3
- "version": "0.3.2",
3
+ "version": "0.3.3",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "files": [
@@ -1,12 +1,14 @@
1
+ import { isntUndefined } from '@blackglory/prelude'
2
+
1
3
  export function setSearchParams(
2
4
  url: URL
3
- , searchParams: Record<string, string | number>
5
+ , searchParams: Record<string, string | number | undefined>
4
6
  ): URL {
5
7
  const newURL = new URL(url)
6
8
 
7
9
  const newSearchParams = new URLSearchParams(newURL.searchParams)
8
10
  for (const [name, value] of Object.entries(searchParams)) {
9
- newSearchParams.set(name, value.toString())
11
+ if (isntUndefined(value)) newSearchParams.set(name, value.toString())
10
12
  }
11
13
  newURL.search = newSearchParams.toString()
12
14