13 lines
319 B
TypeScript
13 lines
319 B
TypeScript
import { isNotEmpty } from '@typebot.io/lib'
|
|
|
|
export const toKebabCase = (value: string) => {
|
|
const matched = value.match(
|
|
/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g
|
|
)
|
|
if (!matched) return ''
|
|
return matched
|
|
.filter(isNotEmpty)
|
|
.map((x) => x.toLowerCase())
|
|
.join('-')
|
|
}
|