{"version":3,"sources":["../../../../src/texts/text-transform/text-transform.ts"],"sourcesContent":["/**\n * Converts a string to camel case.\n * @param {string} str - The string to convert.\n * @returns {string} The camel-cased string.\n * @example\n * ```javascript\n * toCamelCase('hello-world'); // 'helloWorld'\n * toCamelCase('hello_world'); // 'helloWorld'\n * ```\n */\nfunction toCamelCase(str: string): string {\n  return str.replace(/[-_](.)/g, (_, c: string) => c.toUpperCase());\n}\n\n/**\n * Converts a string to title case.\n * @param {string} str - The string to convert.\n * @returns {string} The title-cased string.\n */\nfunction toTitleCase(str: string): string {\n  return str.replace(/\\w\\S*/g, (txt) => txt.charAt(0).toUpperCase() + txt.slice(1).toLowerCase());\n}\n/**\n * Converts a string to kebab case.\n * @param {string} str - The string to convert.\n * @returns {string} The kebab-cased string.\n */\nfunction toKebabCase(str: string): string {\n  return str\n    .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n    .replace(/\\s+/g, \"-\")\n    .toLowerCase();\n}\n\n/**\n * Converts a string to upper case.\n * @param {string} str - The string to convert.\n * @returns {string} The uppercased string.\n */\nfunction toUpperCase(str: string): string {\n  return str.toUpperCase();\n}\n\n/**\n * Converts a string to lower case.\n * @param {string} str - The string to convert.\n * @returns {string} The lowercased string.\n */\nfunction toLowerCase(str: string): string {\n  return str.toLowerCase();\n}\n/**\n * Capitalizes the first letter of a string.\n * @param {string} str - The string to capitalize.\n * @returns {string} The capitalized string.\n */\nfunction capitalize(str: string): string {\n  return str.charAt(0).toUpperCase() + str.slice(1);\n}\n\n/**\n * Removes all whitespace from a string.\n * @param {string} str - The string to remove whitespace from.\n * @returns {string} The whitespace-free string.\n */\nfunction removeWhitespace(str: string): string {\n  return str.replace(/\\s/g, \"\");\n}\n\n/**\n * Reverses a string.\n * @param {string} str - The string to reverse.\n * @returns {string} The reversed string.\n */\nfunction reverseString(str: string): string {\n  return str.split(\"\").reverse().join(\"\");\n}\n\n/**\n * Truncates a string to a specified length.\n * @param {string} str - The string to truncate.\n * @param {number} length - The maximum length of the truncated string.\n * @param {string} suffix - Optional suffix to append to truncated string. Defaults to '...'.\n * @returns {string} The truncated string.\n */\n\nfunction truncateString(str: string, length = 50, suffix = \"...\"): string {\n  if (str.length === 0) {\n    return str;\n  }\n  return str.length > length ? str.substring(0, length - suffix.length) + suffix : str;\n}\n\n/**\n * Formats a string to be more human-readable.\n * @param {string} str - The string to format.\n * @returns {string} The formatted string.\n * @example\n * ```javascript\n * formatString('helloWorld'); // 'Hello World'\n * formatString('helloWorldAgain'); // 'Hello World Again'\n * ```\n *\n */\nfunction formatString(str: string): string {\n  const result = str.replace(/([a-z])([A-Z])/g, \"$1 $2\");\n  return capitalize(result.replace(/([A-Z])([A-Z][a-z])/g, \"$1 $2\").trim());\n}\n\n/**\n * @name randomString\n * @description Generates a random string of a specified length.\n * @param {number} length - The length of the random string to generate.\n * @returns {string} The random string.\n * @example ```javascript\n * randomString(10); // 'aBcDeFgHiJ'\n * randomString(5); // 'aBcDe'\n * ```\n */\nconst randomString = (length = 4): string => {\n  const characters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\n  let result = \"\";\n\n  for (let i = 0; i < length; i++) {\n    const randomIndex = Math.floor(Math.random() * characters.length);\n    result += characters.charAt(randomIndex);\n  }\n  return result;\n};\n\n// input: Global Wizard Flow\n// output: globalwizardflow\n/**\n * @name lowerAndNoSpace\n * @description Converts a string to lowercase and removes all whitespace.\n * @param {string} str - The string to convert.\n * @returns {string} The converted string.\n * @example ```javascript\n * lowerAndNoSpace('Global Wizard Flow'); // 'globalwizardflow'\n * lowerAndNoSpace('Global Wizard Flow'); // 'globalwizardflow'\n * ```\n *  */\nconst lowerAndNoSpace = (str: string): string => {\n  return str.toLowerCase().replace(/\\s/g, \"\");\n};\n\nexport {\n  toCamelCase,\n  toTitleCase,\n  toKebabCase,\n  toUpperCase,\n  toLowerCase,\n  capitalize,\n  removeWhitespace,\n  reverseString,\n  truncateString,\n  formatString,\n  randomString,\n  lowerAndNoSpace,\n};\n"],"mappings":";AAUA,SAAS,YAAY,KAAqB;AACxC,SAAO,IAAI,QAAQ,YAAY,CAAC,GAAG,MAAc,EAAE,YAAY,CAAC;AAClE;AAOA,SAAS,YAAY,KAAqB;AACxC,SAAO,IAAI,QAAQ,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,MAAM,CAAC,EAAE,YAAY,CAAC;AAChG;AAMA,SAAS,YAAY,KAAqB;AACxC,SAAO,IACJ,QAAQ,mBAAmB,OAAO,EAClC,QAAQ,QAAQ,GAAG,EACnB,YAAY;AACjB;AAOA,SAAS,YAAY,KAAqB;AACxC,SAAO,IAAI,YAAY;AACzB;AAOA,SAAS,YAAY,KAAqB;AACxC,SAAO,IAAI,YAAY;AACzB;AAMA,SAAS,WAAW,KAAqB;AACvC,SAAO,IAAI,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,MAAM,CAAC;AAClD;AAOA,SAAS,iBAAiB,KAAqB;AAC7C,SAAO,IAAI,QAAQ,OAAO,EAAE;AAC9B;AAOA,SAAS,cAAc,KAAqB;AAC1C,SAAO,IAAI,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;AACxC;AAUA,SAAS,eAAe,KAAa,SAAS,IAAI,SAAS,OAAe;AACxE,MAAI,IAAI,WAAW,GAAG;AACpB,WAAO;AAAA,EACT;AACA,SAAO,IAAI,SAAS,SAAS,IAAI,UAAU,GAAG,SAAS,OAAO,MAAM,IAAI,SAAS;AACnF;AAaA,SAAS,aAAa,KAAqB;AACzC,QAAM,SAAS,IAAI,QAAQ,mBAAmB,OAAO;AACrD,SAAO,WAAW,OAAO,QAAQ,wBAAwB,OAAO,EAAE,KAAK,CAAC;AAC1E;AAYA,IAAM,eAAe,CAAC,SAAS,MAAc;AAC3C,QAAM,aAAa;AACnB,MAAI,SAAS;AAEb,WAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAC/B,UAAM,cAAc,KAAK,MAAM,KAAK,OAAO,IAAI,WAAW,MAAM;AAChE,cAAU,WAAW,OAAO,WAAW;AAAA,EACzC;AACA,SAAO;AACT;AAcA,IAAM,kBAAkB,CAAC,QAAwB;AAC/C,SAAO,IAAI,YAAY,EAAE,QAAQ,OAAO,EAAE;AAC5C;","names":[]}