"use strict";
// @ts-check
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = slugify;
/**
 * # Return the slug of a string
 *
 * @example
 * slugify("Hello World") // "hello-world"
 * slugify("Yes!") // "yes"
 * slugify("Hello!!! World!") // "hello-world"
 */
function slugify(str) {
    try {
        return String(str)
            .trim()
            .toLowerCase()
            .replace(/ {2,}/g, " ")
            .replace(/ /g, "-")
            .replace(/[^a-z0-9]/g, "-")
            .replace(/-{2,}/g, "-")
            .replace(/^-/, "")
            .replace(/-$/, "");
    }
    catch ( /** @type {any} */error) {
        console.log(`Slugify ERROR: ${error.message}`);
        return "";
    }
}