{"version":3,"file":"kebabCase.cjs","names":[],"sources":["../../src/string/kebabCase.ts"],"sourcesContent":["/**\n * Converts string to kebab case.\n *\n * @param str - The string to convert\n * @returns The kebab cased string\n *\n * @example\n * kebabCase('Foo Bar') // => 'foo-bar'\n * kebabCase('fooBar') // => 'foo-bar'\n * kebabCase('foo_bar') // => 'foo-bar'\n */\nexport function kebabCase(str: string): string {\n  if (typeof str !== 'string') {\n    return '';\n  }\n\n  // Insert a dash before uppercase letters preceded by lowercase letters\n  // and replace separators with dashes\n  return str\n    .replace(/([a-z])([A-Z])/g, '$1-$2')\n    .replace(/([A-Z])([A-Z][a-z])/g, '$1-$2')\n    .replace(/[-_\\s]+/g, '-')\n    .replace(/^-+|-+$/g, '') // Remove leading/trailing dashes\n    .toLowerCase();\n}\n"],"mappings":";;;;;;;;;;;;;AAWA,SAAgB,UAAU,KAAqB;CAC7C,IAAI,OAAO,QAAQ,UACjB,OAAO;CAKT,OAAO,IACJ,QAAQ,mBAAmB,OAAO,CAAC,CACnC,QAAQ,wBAAwB,OAAO,CAAC,CACxC,QAAQ,YAAY,GAAG,CAAC,CACxB,QAAQ,YAAY,EAAE,CAAC,CACvB,YAAY;AACjB"}