{"version":3,"file":"trim.cjs","names":[],"sources":["../../src/string/trim.ts"],"sourcesContent":["/**\n * Removes leading and trailing whitespace or specified characters from string.\n *\n * @param str - The string to trim\n * @param chars - The characters to remove\n * @returns The trimmed string\n *\n * @example\n * trim('  abc  ') // => 'abc'\n * trim('-_-abc-_-', '-_') // => 'abc'\n */\nexport function trim(str: string, chars?: string): string {\n  if (typeof str !== 'string') {\n    return '';\n  }\n\n  if (!chars) {\n    return str.trim();\n  }\n\n  const charsRegex = new RegExp(\n    `^[${chars.replace(/[-[\\]{}()*+?.,\\\\^$|#\\\\s]/g, '\\\\$&')}]+|[${chars.replace(\n      /[-[\\]{}()*+?.,\\\\^$|#\\\\s]/g,\n      '\\\\$&',\n    )}]+$`,\n    'g',\n  );\n\n  return str.replace(charsRegex, '');\n}\n"],"mappings":";;;;;;;;;;;;;AAWA,SAAgB,KAAK,KAAa,OAAwB;CACxD,IAAI,OAAO,QAAQ,UACjB,OAAO;CAGT,IAAI,CAAC,OACH,OAAO,IAAI,KAAK;CAGlB,MAAM,aAAa,IAAI,OACrB,KAAK,MAAM,QAAQ,6BAA6B,MAAM,EAAE,MAAM,MAAM,QAClE,6BACA,MACF,EAAE,MACF,GACF;CAEA,OAAO,IAAI,QAAQ,YAAY,EAAE;AACnC"}