UNPKG

voca

Version:

The ultimate JavaScript string library

45 lines (39 loc) 1.22 kB
import './internal/is_nil.js'; import './is_string.js'; import { c as coerceToString } from './internal/coerce_to_string.js'; import './lower_case.js'; import { i as REGEXP_NON_LATIN } from './internal/const.js'; import './internal/const_extended.js'; import './internal/nil_default.js'; import './internal/to_string.js'; import './words.js'; import kebabCase from './kebab_case.js'; import latinise from './latinise.js'; /** * Slugifies the `subject`. Cleans the `subject` by replacing diacritics with corresponding latin characters. * * @function slugify * @static * @since 1.0.0 * @memberOf Manipulate * @param {string} [subject=''] The string to slugify. * @return {string} Returns the slugified string. * @example * v.slugify('Italian cappuccino drink'); * // => 'italian-cappuccino-drink' * * v.slugify('caffé latté'); * // => 'caffe-latte' * * v.slugify('хорошая погода'); * // => 'horoshaya-pogoda' */ function slugify(subject) { var subjectString = coerceToString(subject); if (subjectString === '') { return ''; } var cleanSubjectString = latinise(subjectString).replace(REGEXP_NON_LATIN, '-'); return kebabCase(cleanSubjectString); } export default slugify;