summaryrefslogtreecommitdiff
path: root/packages/taler-util
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2022-09-23 15:16:13 -0300
committerSebastian <sebasjm@gmail.com>2022-09-23 15:18:48 -0300
commit22e87bb18f87ae1b34fdf1536f1f5761ff625c37 (patch)
treec482c09ff950ec190797657efa001a4f375f74b2 /packages/taler-util
parent2489001d8356f0f97cfff7c4c6bc434f5c3ad403 (diff)
downloadwallet-core-22e87bb18f87ae1b34fdf1536f1f5761ff625c37.tar.gz
wallet-core-22e87bb18f87ae1b34fdf1536f1f5761ff625c37.tar.bz2
wallet-core-22e87bb18f87ae1b34fdf1536f1f5761ff625c37.zip
do not add a question mark if there is no params
Diffstat (limited to 'packages/taler-util')
-rw-r--r--packages/taler-util/src/payto.ts13
1 files changed, 9 insertions, 4 deletions
diff --git a/packages/taler-util/src/payto.ts b/packages/taler-util/src/payto.ts
index 49caa9d6b..c5a58022d 100644
--- a/packages/taler-util/src/payto.ts
+++ b/packages/taler-util/src/payto.ts
@@ -63,7 +63,11 @@ export function addPaytoQueryParams(
): string {
const [acct, search] = s.slice(paytoPfx.length).split("?");
const searchParams = new URLSearchParams(search || "");
- for (const k of Object.keys(params)) {
+ const keys = Object.keys(params)
+ if (keys.length === 0) {
+ return paytoPfx + acct
+ }
+ for (const k of keys) {
searchParams.set(k, params[k]);
}
return paytoPfx + acct + "?" + searchParams.toString();
@@ -76,9 +80,10 @@ export function addPaytoQueryParams(
* @returns
*/
export function stringifyPaytoUri(p: PaytoUri): string {
- const url = `${paytoPfx}${p.targetType}//${p.targetPath}`;
- if (p.params) {
- const search = Object.entries(p.params)
+ const url = `${paytoPfx}${p.targetType}/${p.targetPath}`;
+ const paramList = !p.params ? [] : Object.entries(p.params);
+ if (paramList.length > 0) {
+ const search = paramList
.map(([key, value]) => `${key}=${value}`)
.join("&");
return `${url}?${search}`;