summaryrefslogtreecommitdiff
path: root/src/utils.ts
blob: 56995fcbfe93bdd988d0da2f36b6ec73bb05375d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/**
 * Trims char(s) from both sides of the given input string.

 * @param {string} input
 * @param {string | string[]} char
 * @returns {string}
 */
export function trimChar(input: string, char: string | string[]): string {
  if (typeof char === "string") {
    char = [char];
  }

  for (const c of char) {
    if (input.charAt(0) === c) {
      input = input.substring(1);
    }

    if (input.charAt(input.length - 1) === c) {
      input = input.substring(0, input.length - 1);
    }
  }

  return input;
}