• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

KablamoOSS / kerosene / 4727551762

pending completion
4727551762

push

github

GitHub
kerosene: Remove querystring dependency from parseSearch (#113)

186 of 239 branches covered (77.82%)

10 of 10 new or added lines in 1 file covered. (100.0%)

622 of 783 relevant lines covered (79.44%)

6.36 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

85.71
/packages/kerosene/src/string/parseSearch.ts
1
/**
2
 * @deprecated Use builtin `URLSearchParams` instead
3
 */
4
type ParsedUrlQuery = NodeJS.Dict<string | string[]>;
5

6
/**
7
 * Parse query parameters from Location.search
8
 *
9
 * @deprecated Use builtin `URLSearchParams(search)` instead
10
 * @see https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams
11
 * @see https://nodejs.org/api/url.html#url_class_urlsearchparams
12
 *
13
 * @param search Location.search
14
 */
15
export default function parseSearch(search: string): ParsedUrlQuery {
1✔
16
  const searchParams = new URLSearchParams(search);
2✔
17
  const parsed: ParsedUrlQuery = Object.create(null);
2✔
18
  searchParams.forEach((value, key) => {
2✔
19
    if (typeof parsed[key] === "undefined") {
3✔
20
      parsed[key] = value;
2✔
21
    } else if (Array.isArray(parsed[key])) {
1!
22
      (parsed[key] as string[]).push(value);
×
23
    } else {
24
      parsed[key] = [parsed[key] as string, value];
1✔
25
    }
26
  });
27
  return parsed;
2✔
28
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc