casing-kit
Version:
A lightweight, zero-dependency utility library for case transformations in JavaScript and TypeScript
2 lines (1 loc) • 18 kB
JavaScript
;var z=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var _=Object.prototype.hasOwnProperty;var L=(e,g)=>{for(var p in g)z(e,p,{get:g[p],enumerable:!0})},w=(e,g,p,c)=>{if(g&&typeof g=="object"||typeof g=="function")for(let r of u(g))!_.call(e,r)&&r!==p&&z(e,r,{get:()=>g[r],enumerable:!(c=S(g,r))||c.enumerable});return e};var v=e=>w(z({},"__esModule",{value:!0}),e);var F={};L(F,{customTransform:()=>B,toCamelCase:()=>x,toCobolCase:()=>b,toConstantCase:()=>U,toDotCase:()=>j,toFlatCase:()=>W,toKebabCase:()=>P,toLowerCase:()=>T,toMacroCase:()=>y,toPascalCase:()=>R,toPathCase:()=>E,toSentenceCase:()=>O,toSnakeCase:()=>K,toSpongeCase:()=>V,toSwapCase:()=>D,toTitleCase:()=>I,toTrainCase:()=>M,toUpperCase:()=>q,transformObjectCasing:()=>Z});module.exports=v(F);function x(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.split(/\s+/).map((A,d)=>d===0?A.toLowerCase():A.charAt(0).toUpperCase()+A.slice(1).toLowerCase()).join("");return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.split(/\s+/).map((m,h)=>h===0?m.toLowerCase():m.charAt(0).toUpperCase()+m.slice(1).toLowerCase()).join("");return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/\s+/g," ").replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map((o,C)=>C===0?o.toLowerCase():o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("");return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_\s]+/g," ").trim().split(/\s+/).map((a,t)=>t===0?a.toLowerCase():a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join(""):s.replace(/\s+/g,"")).join(""):e.replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+|(?=[A-Z][a-z])/).map((r,s)=>s===0?r.toLowerCase():r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join("")}function b(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,"-").toUpperCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,"-").toUpperCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,"-").toUpperCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toUpperCase():s.replace(/\s+/g,"")).join(""):e.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[^a-zA-Z0-9]+/g,"-").replace(/^-+|-+$/g,"").toUpperCase()}function U(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,"_").toUpperCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,"_").toUpperCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,"_").toUpperCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[_\s]+/g,"_").trim().toUpperCase():s).join(""):e.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[^\w\s]|_/g," ").replace(/\s+/g,"_").replace(/^_+|_+$/g,"").toUpperCase()}function j(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,".").toLowerCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,".").toLowerCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,".").toLowerCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1.$2").replace(/[_\s]+/g,".").toLowerCase():s).join(""):e.replace(/([a-z])([A-Z])/g,"$1.$2").replace(/[^a-zA-Z0-9]+/g,".").replace(/^\.+|\.+$/g,"").toLowerCase()}function W(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,"").toLowerCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,"").toLowerCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,"").toLowerCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1$2").replace(/[_\s]+/g,"").toLowerCase():s.replace(/\s+/g,"")).join(""):e.replace(/[\s\W_]+/g,"").toLowerCase()}function P(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/\s+/g,"-").toLowerCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/\s+/g,"-").toLowerCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[^a-zA-Z0-9]+/g,"-").toLowerCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[_\s]+/g,"-").toLowerCase():s.replace(/\s+/g,"")).join(""):e.replace(/([a-z])([A-Z])/g,"$1-$2").replace(/[^a-zA-Z0-9]+/g,"-").replace(/^-+|-+$/g,"").toLowerCase()}function T(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.toLowerCase();return`${s}${n}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9\s]+/g," ").toLowerCase();return`${s}${n}${t}`}return c?e.toLowerCase():e.trim().replace(/\s+/g," ").toLowerCase()}function y(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,"_").toUpperCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,"_").toUpperCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,"_").toUpperCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[_\s]+/g,"_").trim().toUpperCase():s).join(""):e.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[^\w\s]|_/g," ").replace(/\s+/g,"_").replace(/^_+|_+$/g,"").toUpperCase()}function R(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.split(/\s+/).map(A=>A.charAt(0).toUpperCase()+A.slice(1).toLowerCase()).join("");return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.split(/\s+/).map(m=>m.charAt(0).toUpperCase()+m.slice(1).toLowerCase()).join("");return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map(o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("");return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_\s]+/g," ").trim().split(/\s+/).map(a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join(""):s).join(""):e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map(r=>r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join("")}function E(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/\s+/g,"/").toLowerCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/\s+/g,"/").toLowerCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g,"/").toLowerCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1/$2").replace(/[_\s]+/g,"/").toLowerCase():s.replace(/\s+/g,"")).join(""):e.replace(/([a-z])([A-Z])/g,"$1/$2").replace(/[^a-zA-Z0-9]+/g,"/").replace(/^\/+|\/+$/g,"").toLowerCase()}function O(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.toLowerCase().replace(/(?:^|\.\s+)([a-z])/g,o=>o.toUpperCase());return`${s}${n}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9\s.]+/g," ").toLowerCase().replace(/(?:^|\.\s+)([a-z])/g,o=>o.toUpperCase());return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map((s,a)=>{if(!/[a-zA-Z0-9]/.test(s))return s;let t=s.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_\s]+/g," ").toLowerCase();return a===0?t.charAt(0).toUpperCase()+t.slice(1):t}).join(""):e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[^a-zA-Z0-9\s.]+/g," ").replace(/\s+/g," ").trim().toLowerCase().replace(/(?:^|\.\s+)([a-z])/g,r=>r.toUpperCase())}function K(e,g={}){if(!e.trim())return"";let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/\s+/g,"_").toLowerCase();return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/\s+/g,"_").toLowerCase();return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[^a-zA-Z0-9]+/g,"_").toLowerCase();return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[_\s]+/g,"_").toLowerCase():s.replace(/\s+/g,"_")).join(""):e.replace(/([a-z])([A-Z])/g,"$1_$2").replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,"").toLowerCase()}function V(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let s=e.match(/^(\s*)(.*?)(\s*)$/s);if(!s)return e;let[,a,t,n]=s,o=!1,C=t.replace(/[a-zA-Z]/g,i=>{let l=o?i.toUpperCase():i.toLowerCase();return o=!o,l});return`${a}${C}${n}`}if(p){let s=e.match(/^(\s*)(.*?)(\s*)$/s);if(!s)return e;let[,a,t,n]=s,o=!1,C=t.replace(/[^a-zA-Z0-9\s]+/g," ").replace(/[a-zA-Z]/g,i=>{let l=o?i.toUpperCase():i.toLowerCase();return o=!o,l});return`${a}${C}${n}`}if(c){let s=e.split(/([^a-zA-Z0-9]+)/),a=!1;return s.map(t=>/[a-zA-Z0-9]/.test(t)?t.split("").map(n=>{if(/[a-zA-Z]/.test(n)){let o=a?n.toUpperCase():n.toLowerCase();return a=!a,o}return n}).join(""):t).join("")}let r=!1;return e.trim().replace(/\s+/g," ").split("").map(s=>{if(/[a-zA-Z]/.test(s)){let a=r?s.toUpperCase():s.toLowerCase();return r=!r,a}return s}).join("")}function D(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[a-zA-Z]/g,o=>o===o.toLowerCase()?o.toUpperCase():o.toLowerCase());return`${s}${n}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9\s]+/g," ").replace(/[a-zA-Z]/g,o=>o===o.toLowerCase()?o.toUpperCase():o.toLowerCase());return`${s}${n}${t}`}return c?e.replace(/[a-zA-Z]/g,r=>r===r.toLowerCase()?r.toUpperCase():r.toLowerCase()):e.trim().replace(/([a-zA-Z])/g,r=>r===r.toLowerCase()?r.toUpperCase():r.toLowerCase()).replace(/[\s]+/g," ")}function I(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/([a-zA-Z0-9]+)/g,o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase());return`${s}${n}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9\s]+/g," ").replace(/([a-zA-Z0-9]+)/g,o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase());return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/[_\s]+/g," ").trim().split(/\s+/).map(a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join(" "):s).join(""):e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([^\w\s]|_)+/g," ").replace(/\s+/g," ").trim().toLowerCase().replace(/\b\w/g,r=>r.toUpperCase())}function M(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,o=a.replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)([^a-zA-Z0-9]+)(\s*)/g,(C,i,l,f,$,m)=>{let h=l.split(/\s+/).map(A=>A.charAt(0).toUpperCase()+A.slice(1).toLowerCase()).join("-");return`${i}${h}${f}${$}${m}`}).replace(/(\s*)([a-zA-Z0-9]+(?:\s+[a-zA-Z0-9]+)*)(\s*)$/g,(C,i,l,f)=>{let $=l.split(/\s+/).map(m=>m.charAt(0).toUpperCase()+m.slice(1).toLowerCase()).join("-");return`${i}${$}${f}`});return`${s}${o}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9]+/g," ").trim().split(/\s+/).map(o=>o.charAt(0).toUpperCase()+o.slice(1).toLowerCase()).join("-");return`${s}${n}${t}`}return c?e.split(/([^a-zA-Z0-9]+)/).map(s=>/[a-zA-Z0-9]/.test(s)?s.replace(/([A-Z])([a-z])/g," $1$2").replace(/[_\s]+/g," ").trim().split(/\s+/).map(a=>a.charAt(0).toUpperCase()+a.slice(1).toLowerCase()).join("-"):s).join(""):e.replace(/([A-Z])([a-z])/g," $1$2").replace(/([^\w\s]|_)+/g," ").trim().split(/\s+/).map(r=>r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join("-")}function q(e,g={}){if(!e.trim())return e;let{preserveWhitespace:p,preserveSpecialCharacters:c}=g;if(p&&c){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.toUpperCase();return`${s}${n}${t}`}if(p){let r=e.match(/^(\s*)(.*?)(\s*)$/s);if(!r)return e;let[,s,a,t]=r,n=a.replace(/[^a-zA-Z0-9\s]+/g," ").toUpperCase();return`${s}${n}${t}`}return c?e.toUpperCase():e.trim().replace(/\s+/g," ").toUpperCase()}function Z(e,g,p={transformKeys:!0,transformValues:!1}){return Array.isArray(e)?e.map(c=>typeof c=="string"&&p.transformValues?g(c):Z(c,g,p)):e instanceof Date?e:typeof e=="object"&&e!==null?Object.entries(e).reduce((c,[r,s])=>{let a=p.transformKeys?g(r):r,t=s instanceof Date?s:typeof s=="object"&&s!==null?Z(s,g,p):p.transformValues&&typeof s=="string"?g(s):s;return{...c,[a]:t}},{}):e}function B(e,g,p){if(!e)return"";let{separator:c=/[\s\-_]/,preserveSpecialCharacters:r=!1,preserveWhitespace:s=!1,outputSeparator:a=""}=p||{};if(r)if(s){let t=[],n="",o=!1;for(let i=0;i<e.length;i++){let l=e[i],f=/\s/.test(l);f!==o&&(n&&(t.push({text:n,isWhitespace:o}),n=""),o=f),n+=l}n&&t.push({text:n,isWhitespace:o});let C=0;return t.map(i=>{if(i.isWhitespace)return i.text;let l=c instanceof RegExp?new RegExp(`(${c.source})`,c.flags):new RegExp(`(${c.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")})`,"g");return i.text.split(l).filter($=>$!=="").map($=>{var h;return(c instanceof RegExp?c.test($)&&((h=$.match(c))==null?void 0:h[0])===$:$===c)?$:g($,C++)}).join("")}).join("")}else{let t=c instanceof RegExp?new RegExp(`(${c.source})`,c.flags):new RegExp(`(${c.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")})`,"g"),n=e.split(t).filter(C=>C!==""),o=0;return n.map(C=>{var l;return(c instanceof RegExp?c.test(C)&&((l=C.match(c))==null?void 0:l[0])===C:C===c)?C:g(C,o++)}).join("")}else{let n=e.split(c).filter(o=>o.trim()!=="").map(g);if(s){let o=[],C,i=/\S+/g;for(;(C=i.exec(e))!==null;)o.push({start:C.index,end:C.index+C[0].length,original:C[0]});let l="",f=0;for(let $=0;$<o.length;$++){let{start:m,end:h}=o[$];l+=e.substring(f,m),l+=n[$]||"",f=h}return l+=e.substring(f),l}else return n.join(a)}}0&&(module.exports={customTransform,toCamelCase,toCobolCase,toConstantCase,toDotCase,toFlatCase,toKebabCase,toLowerCase,toMacroCase,toPascalCase,toPathCase,toSentenceCase,toSnakeCase,toSpongeCase,toSwapCase,toTitleCase,toTrainCase,toUpperCase,transformObjectCasing});