Repository URL to install this package:
Version:
1.0.1-0 ▾
|
// @flow
const escapeRegex = /[[\].#*$><+~=|^:(),"'`-]+/g
const dashesAtEnds = /(^-|-$)/g
/**
* TODO: Explore using CSS.escape when it becomes more available
* in evergreen browsers.
*/
export default function escape(str: string): string {
return (
str
// Replace all possible CSS selectors
.replace(escapeRegex, '-')
// Remove extraneous hyphens at the start and end
.replace(dashesAtEnds, '')
)
}