Skip to content

Commit 0322e7e

Browse files
committed
moved functions
1 parent e3e31a1 commit 0322e7e

2 files changed

Lines changed: 34 additions & 31 deletions

File tree

MyMusicClientSveltePwa/src/lib/scripts/routeService.js

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { writable } from "svelte/store";
33
import Home from "../pages/Home.svelte";
44
import NotFound from "../pages/NotFound.svelte";
55
import Playlist from "../pages/Playlist.svelte";
6+
import { getSearchParameters, createSearchParameters } from "../scripts/util";
67

78
const componentsPathMap = new Map([
89
["/404", NotFound],
@@ -68,35 +69,4 @@ export function navigateTo(newRoute, parameters = null) {
6869
}
6970
}
7071

71-
function getSearchParameters() {
72-
const searchParams = new URLSearchParams(window.location.search);
73-
const result = {};
74-
for (const [key, value] of searchParams.entries()) {
75-
if (result[key]) {
76-
// If key already exists, convert to array or push into existing array
77-
result[key] = Array.isArray(result[key]) ? [...result[key], parseValue(value)] : [result[key], parseValue(value)];
78-
} else {
79-
result[key] = parseValue(value);
80-
}
81-
}
82-
return result;
83-
}
84-
85-
function parseValue(value) {
86-
if (value === "true") return true;
87-
if (value === "false") return false;
88-
if (!isNaN(value) && value.trim() !== "") return Number(value);
89-
return value;
90-
}
9172

92-
function createSearchParameters(params) {
93-
const searchParams = new URLSearchParams();
94-
for (const key in params) {
95-
if (Array.isArray(params[key])) {
96-
params[key].forEach((value) => searchParams.append(key, value));
97-
} else {
98-
searchParams.set(key, params[key]);
99-
}
100-
}
101-
return searchParams.toString();
102-
}

MyMusicClientSveltePwa/src/lib/scripts/util.js

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,36 @@ export function shuffleArray(array) {
3131

3232
return array;
3333
}
34+
35+
export function getSearchParameters() {
36+
const searchParams = new URLSearchParams(window.location.search);
37+
const result = {};
38+
for (const [key, value] of searchParams.entries()) {
39+
if (result[key]) {
40+
// If key already exists, convert to array or push into existing array
41+
result[key] = Array.isArray(result[key]) ? [...result[key], parseValue(value)] : [result[key], parseValue(value)];
42+
} else {
43+
result[key] = parseValue(value);
44+
}
45+
}
46+
return result;
47+
}
48+
49+
export function parseValue(value) {
50+
if (value === "true") return true;
51+
if (value === "false") return false;
52+
if (!isNaN(value) && value.trim() !== "") return Number(value);
53+
return value;
54+
}
55+
56+
export function createSearchParameters(params) {
57+
const searchParams = new URLSearchParams();
58+
for (const key in params) {
59+
if (Array.isArray(params[key])) {
60+
params[key].forEach((value) => searchParams.append(key, value));
61+
} else {
62+
searchParams.set(key, params[key]);
63+
}
64+
}
65+
return searchParams.toString();
66+
}

0 commit comments

Comments
 (0)