stringweaver 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  /*© KooiInc 2025-2030*/
2
- var _=Object.defineProperty;var v=Object.getOwnPropertySymbols;var pe=Object.prototype.hasOwnProperty,me=Object.prototype.propertyIsEnumerable;var T=Math.pow,F=(e,r,t)=>r in e?_(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,B=(e,r)=>{for(var t in r||(r={}))pe.call(r,t)&&F(e,t,r[t]);if(v)for(var t of v(r))me.call(r,t)&&F(e,t,r[t]);return e};var u=(e,r)=>_(e,"name",{value:r,configurable:!0});var z=de();function de(e=""){return e=(e==null?void 0:e.constructor)===String?e:"",function(s,...p){return O(s,C(p))};function r(s,p){return p&&e.length>0?String(e):`{${s}}`}u(r,"invalidate");function t(s){return(s==null?void 0:s.constructor)===String||(s==null?void 0:s.constructor)===Number&&!Number.isNaN(s)}u(t,"isStringOrNumber");function n(s,p){let y=s in p;return y&&t(p[s])?String(p[s]):r(s,y)}u(n,"replacement");function o(s){return(...p)=>{let y=p.find(g=>g.key);return n(y?y.key:"_",s)}}u(o,"getReplacerLambda");function i(s,p){return s.replace(new RegExp("\\{(?<key>[a-z_\\d]+)}","gim"),o(p))}u(i,"replace");function l(s){let p=[];return Object.entries(s).forEach(([y,g])=>{g.forEach((N,c)=>{var d;return(d=p[c])!=null||(p[c]={}),p[c][y]=N})}),p}u(l,"convertTokensFromArrayValues");function w(s){return s.length===1&&Object.values(s[0]).every(Array.isArray)}u(w,"isMultiLineWithArrays");function C(s){return w(s)?l(s[0]):s}u(C,"processTokens");function O(s,p){return p!=null&&p.length?p.filter(y=>y).map(y=>(y==null?void 0:y.constructor)===Object?i(s,y):"").join(""):s}u(O,"interpolate")}u(de,"interpolateFactory");var{randomString:M,uuid4:P}=he();function he(){let e=g(),r=u(()=>e?[...crypto.getRandomValues(new Uint32Array(1))].shift()/T(2,32):Math.random(),"getRandomValue"),t=u(({min:a=0,max:f=Number.MAX_SAFE_INTEGER}={})=>Math.floor(r()*(f-a+1)+a),"randomNr"),n=u((a=0,f=10,h)=>(h||[])instanceof Function?[...Array(f)].map(($,I)=>a+I).map(h):[...Array(f)].map(($,I)=>a+I),"range"),o=u(a=>String.fromCharCode(a),"map2Chrs"),i="!?@#$%^&*=+_;-".split(""),l=RegExp(`[${i.map(a=>`\\${a}`).join("")}]`,"g"),w=u(a=>{let f=a.length;for(;f--;){let h=t({max:f});[a[f],a[h]]=[a[h],a[f]]}return a},"shuffle"),C=w(n(65,26,o)),O=w(n(97,26,o)),p={UCLC:w(C.concat(O)),UC:C,LC:O,Nrs:w(n()),Sym:w(i)},y=u(a=>Object.entries(a).reduce((f,[h,$])=>$?[...f,...p[h]]:f,O),"getChars2Use");function g(){try{return window&&"crypto"in window}catch(a){return!1}}u(g,"checkBrowserCrypto");function N(){return e&&crypto.randomUUID?crypto.randomUUID():[...new Uint8Array(16)].map(a=>t({max:255})).map((a,f)=>`${(f===8?a&63|128:f===6?a&15|64:a).toString(16).padStart(2,"0")}${~[3,5,7,9].indexOf(f)?"-":""}`).join("")}u(N,"uuid4");function c(a,f,h){return/[a-z]/i.test(a)&&(f&&h?/\d/.test(a)&&l.test(a):f?/\d/.test(a):h?l.test(a):!0)}u(c,"strTest");function d(a){let f=[...a],h=f.findIndex($=>/[a-z]/i.test($));return[f[0],f[h]]=[f[h],f[0]],f.join("")}u(d,"alphaSwap");function b({len:a=12,includeUppercase:f=!0,includeNumbers:h,includeSymbols:$,startAlphabetic:I}={}){a=a<6?6:a;let E=w(y({UC:f,Nrs:h,Sym:$}));for(;E.length<a;)E=[...E,...w(E)];let L=E.slice(0,a).join("");if(!(h||$))return L;for(let V=0;V<E.length;V+=1)if(L=E.slice(V,V+a).join(""),c(L,h,$))return I&&!/^[a-z]/i.test(L)?d(L):L;return b({len:a,includeUppercase:f,includeNumbers:h,includeSymbols:$,startAlphabetic:I})}return u(b,"randomString"),{randomString:b,uuid4:N}}u(he,"randomStringGeneratorFactory");var Y=be;function be(e,...r){r=e.raw?r:[r];try{return Se(e,...r)}catch(t){let n=X();return`Error creating Regular Expression from string "${e.raw||e}" with flags ${n}
3
- RegExp error message: "${t.message}"`}}u(be,"createRegExp");function X(...e){return e.length>0?Array.isArray(e.slice(-1))?e.pop().join(""):e.join(""):""}u(X,"resolveFlags");function Se(e,...r){let t=X(...r);r=[];let n=e.raw||[e];return new RegExp((r.length&&n.reduce((o,i,l)=>o.concat(r[l-1]||"").concat(i),"")||(n==null?void 0:n.join(""))).split(`
4
- `).map(o=>o.replace(/\s|\/\/.*$/g,"").trim().replace(/(@s!)/g," ")).join(""),t)}u(Se,"regExp");function Q(e,...r){return e.raw?String.raw({raw:e},...r):e}u(Q,"resolveTemplateString");function m(e){return(e==null?void 0:e.value)||(e==null?void 0:e.constructor)===String&&e||""}u(m,"getStringValue");function ye(e,r,t){return e===String&&t?(r==null?void 0:r.constructor)!==Z&&(r==null?void 0:r.constructor)!==e:(r==null?void 0:r.constructor)!==e}u(ye,"checkType");function A(e,r,t=!0){return Array.isArray(r)&&r.length>0&&!r.find(n=>ye(e,n,t))}u(A,"isArrayOf");function G(e){return(e==null?void 0:e.constructor)===Number&&!Number.isNaN(e)}u(G,"isNumber");function J(e){return/wrap\(|undo.*/i.test(e.toString())}u(J,"isMutating");function we(){let e=x(Ce());return e.value.split(/\n/).concat(Object.entries(Object.getOwnPropertyDescriptors(e)).map(([r,t])=>r==="quote"?"quote (Object. See [constructor].quoteInfo)":`${r} (${r==="value"?"getter/setter":r==="clone"?"chainable getter":r in String.prototype?"method, String override":t.value&&t.value.constructor===Function?J(t.value)?`chainable method${r in U?" *custom*":""}`:"method":t.value?"property":t.get?J(t.get)?`chainable getter${r in U?" *custom*":""}`:"getter":"-"})`).sort((r,t)=>r.localeCompare(t)))}u(we,"getSWInformation");function k(e,r){return Object.defineProperties(e,{constructor:{get(){return e},enumerable:!1},format:{value(t,...n){return x(t).format(...n)}},addCustom:{value({name:t,method:n,enumerable:o=!1,isGetter:i=!1}={}){if(x``[t])return console.error(`addCustom: the property "${t}" exists and can not be redefined`);(t==null?void 0:t.constructor)===String&&(n==null?void 0:n.constructor)===Function&&n.length>0&&(r[t]={method:n,enumerable:o,isGetter:i})}},info:{get(){return we()}},keys:{get(){return Object.keys(Object.getOwnPropertyDescriptors(x``)).sort((t,n)=>t.localeCompare(n)).map(t=>!/constructor|toString|valueOf/.test(t)&&t in r?`${t} *custom*`:t)}},quoteInfo:{get(){let t=B({},W());return delete t.re,Object.entries(t).sort((n,o)=>n[0].localeCompare(o[0])).reduce((n,[o,i])=>{let l=i.constructor===Function?"(start:string[, end:string])":` (${i.join(" [instance value] ")})`;return[...n,`[instance].quote.${o}${l}`]},[])}},uuid4:{get(){return P()}},randomString:{value:u(function({len:t,includeUppercase:n,includeNumbers:o,includeSymbols:i,startAlphabetic:l}={}){return x(M({len:t,includeUppercase:n,includeNumbers:o,includeSymbols:i,startAlphabetic:l}))},"value")},regExp:{value:Y}}),e}u(k,"createExtendedCTOR");function K(e,r){return new RegExp(e.replace(new RegExp("\\p{S}|\\p{P}","gu"),t=>`\\${t}`),r)}u(K,"escapeRE");function Ce(){return atob`Rm9yIHRoZSByZWNvcmQ6CltjbV0gY2hhaW5hYmxlIGdldHRlcnMvbWV0aG9kcyBtb2RpZnkgdGhlIGluc3RhbmNlIHN0cmluZwpbY21dIGluZGV4T2Ygb3ZlcnJpZGVzIHJldHVybiBbdW5kZWZpbmVkXSBpZiBub3RoaW5nIHdhcyBmb3VuZCAoc28gb25lIGNhbiB1c2UgW2xhc3RJXWluZGV4T2YoW3NvbWUgc3RyaW5nIHZhbHVlXSkgPz8gMApbY21dIGluY2x1ZGVzIGluZm9ybWF0aW9uIGZvciBjdXN0b20gbWV0aG9kcy9nZXR0ZXJzIGlmIGFwcGxpY2FibGU=`.replace(/\[cm\]/g,"\u2714")}u(Ce,"decode");function W(){let r={backtick:["`","`"],bracket:["{","}"],curlyDoubleInward:["\u201D","\u201C"],curlyDouble:["\u201C","\u201D"],curlyDoubleEqual:["\u201C","\u201C"],curlyLHDouble:["\u201E","\u201D"],curlyLHDoubleInward:["\u201E","\u201C"],curlyLHSingle:["\u201A","\u2019"],curlyLHSingleInward:["\u201A","\u2018"],curlySingle:["\u201B","\u2019"],curlySingleEqual:["\u201B","\u201B"],curlySingleInward:["\u2019","\u201B"],custom:u((n,o)=>(n=m(n),o=m(o),[m(n),o.length?o:n]),"custom"),double:['"','"'],guillemets:["\xAB","\xBB"],guillemetsInward:["\xBB","\xAB"],guillemetsSingle:["\u2039","\u203A"],guillemetsSingleInward:["\u203A","\u2039"],single:["'","'"],squareBrackets:["[","]"]},t=Object.values(r).filter(n=>Array.isArray(n)).map(n=>n.map(o=>`\\${o}`).join("")).join("");return r.re=RegExp(`^[${t}]|[${t}]$`,"g"),r}u(W,"defineQuotingStyles");var S=W();function j(e,r,t){return e=m(e),e.length>0?r(e):t||e}u(j,"checkAndRun");function q(e,...r){return j(e,()=>`${z(e,...r)}`)}u(q,"format");function R(e){return j(e,()=>`${e[0].toUpperCase()}${e.slice(1)}`)}u(R,"ucFirst");function ee(e,r,t){return!r&&!t?e:([r,t]=A(String,[r,t!=null?t:""])?[r,t]:["",""],`${r}${e}${t||r}`)}u(ee,"surroundWith");function re(e){return j(e,()=>e.replace(/\s/g,"").replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`).replace(/-{2,}/g,"-").replace(/[^a-z-]/g,"").replace(/^-|-$/,""))}u(re,"toDashedNotation");function te(e){return j(e,()=>e.replace(/\s/g,"").replace(/[A-Z]/g,r=>`_${r.toLowerCase()}`).replace(/_{2,}/g,"_").replace(/[^a-z_]/g,"").replace(/^_|_$/,""))}u(te,"toSnakeCase");function ne(e){return j(e,()=>[...e.toLowerCase()].slice(1).reduce((r,t)=>r+(new RegExp("\\p{L}|[-']","u").test(r.at(-1))?t.toLowerCase():t.toUpperCase()),e[0].toUpperCase()))}u(ne,"wordsFirstUp");function oe(e){return j(e,()=>e.toLowerCase().trim().split(/[- ]/).filter(r=>r&&r.length>0).map((r,t)=>t>0&&`${R(r)}`||r).join(""))}u(oe,"toCamelcase");function ue(e,{at:r,html:t=!1,wordBoundary:n=!1}={}){return j(e,()=>{var w,C;if(e.length<=r)return e;let o=e.slice(0,r-1),i=t?"&hellip;":"...",l=n&&(C=(w=[...o.matchAll(new RegExp("\\p{Pe}|\\p{Z}","gu"))].at(-1))==null?void 0:w.index)!=null?C:o.length;return(n?o.slice(0,l+1).trim():o)+i})}u(ue,"truncate");function D(e,r){return j(e,()=>{let t=e.split(/\n/).map(n=>n.trim().replace(/\s{2,}/g," "));return r?t.join(`
2
+ var _=Object.defineProperty;var v=Object.getOwnPropertySymbols;var ge=Object.prototype.hasOwnProperty,pe=Object.prototype.propertyIsEnumerable;var T=Math.pow,F=(e,r,t)=>r in e?_(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,B=(e,r)=>{for(var t in r||(r={}))ge.call(r,t)&&F(e,t,r[t]);if(v)for(var t of v(r))pe.call(r,t)&&F(e,t,r[t]);return e};var u=(e,r)=>_(e,"name",{value:r,configurable:!0});var z=me();function me(e=""){return e=(e==null?void 0:e.constructor)===String?e:"",function(s,...p){return O(s,C(p))};function r(s,p){return p&&e.length>0?String(e):`{${s}}`}u(r,"invalidate");function t(s){return(s==null?void 0:s.constructor)===String||(s==null?void 0:s.constructor)===Number&&!Number.isNaN(s)}u(t,"isStringOrNumber");function n(s,p){let y=s in p;return y&&t(p[s])?String(p[s]):r(s,y)}u(n,"replacement");function o(s){return(...p)=>{let y=p.find(g=>g.key);return n(y?y.key:"_",s)}}u(o,"getReplacerLambda");function i(s,p){return s.replace(new RegExp("\\{(?<key>[a-z_\\d]+)}","gim"),o(p))}u(i,"replace");function l(s){let p=[];return Object.entries(s).forEach(([y,g])=>{g.forEach((N,c)=>{var d;return(d=p[c])!=null||(p[c]={}),p[c][y]=N})}),p}u(l,"convertTokensFromArrayValues");function w(s){return s.length===1&&Object.values(s[0]).every(Array.isArray)}u(w,"isMultiLineWithArrays");function C(s){return w(s)?l(s[0]):s}u(C,"processTokens");function O(s,p){return p!=null&&p.length?p.filter(y=>y).map(y=>(y==null?void 0:y.constructor)===Object?i(s,y):"").join(""):s}u(O,"interpolate")}u(me,"interpolateFactory");var{randomString:P,uuid4:M}=de();function de(){let e=g(),r=u(()=>e?[...crypto.getRandomValues(new Uint32Array(1))].shift()/T(2,32):Math.random(),"getRandomValue"),t=u(({min:a=0,max:f=Number.MAX_SAFE_INTEGER}={})=>Math.floor(r()*(f-a+1)+a),"randomNr"),n=u((a=0,f=10,h)=>(h||[])instanceof Function?[...Array(f)].map(($,I)=>a+I).map(h):[...Array(f)].map(($,I)=>a+I),"range"),o=u(a=>String.fromCharCode(a),"map2Chrs"),i="!?@#$%^&*=+_;-".split(""),l=RegExp(`[${i.map(a=>`\\${a}`).join("")}]`,"g"),w=u(a=>{let f=a.length;for(;f--;){let h=t({max:f});[a[f],a[h]]=[a[h],a[f]]}return a},"shuffle"),C=w(n(65,26,o)),O=w(n(97,26,o)),p={UCLC:w(C.concat(O)),UC:C,LC:O,Nrs:w(n()),Sym:w(i)},y=u(a=>Object.entries(a).reduce((f,[h,$])=>$?[...f,...p[h]]:f,O),"getChars2Use");function g(){try{return window&&"crypto"in window}catch(a){return!1}}u(g,"checkBrowserCrypto");function N(){return e&&crypto.randomUUID?crypto.randomUUID():[...new Uint8Array(16)].map(a=>t({max:255})).map((a,f)=>`${(f===8?a&63|128:f===6?a&15|64:a).toString(16).padStart(2,"0")}${~[3,5,7,9].indexOf(f)?"-":""}`).join("")}u(N,"uuid4");function c(a,f,h){return/[a-z]/i.test(a)&&(f&&h?/\d/.test(a)&&l.test(a):f?/\d/.test(a):h?l.test(a):!0)}u(c,"strTest");function d(a){let f=[...a],h=f.findIndex($=>/[a-z]/i.test($));return[f[0],f[h]]=[f[h],f[0]],f.join("")}u(d,"alphaSwap");function b({len:a=12,includeUppercase:f=!0,includeNumbers:h,includeSymbols:$,startAlphabetic:I}={}){a=a<6?6:a;let E=w(y({UC:f,Nrs:h,Sym:$}));for(;E.length<a;)E=[...E,...w(E)];let L=E.slice(0,a).join("");if(!(h||$))return L;for(let V=0;V<E.length;V+=1)if(L=E.slice(V,V+a).join(""),c(L,h,$))return I&&!/^[a-z]/i.test(L)?d(L):L;return b({len:a,includeUppercase:f,includeNumbers:h,includeSymbols:$,startAlphabetic:I})}return u(b,"randomString"),{randomString:b,uuid4:N}}u(de,"randomStringGeneratorFactory");var Y=he;function he(e,...r){r=e.raw?r:[r];try{return be(e,...r)}catch(t){let n=X();return`Error creating Regular Expression from string "${e.raw||e}" with flags ${n}
3
+ RegExp error message: "${t.message}"`}}u(he,"createRegExp");function X(...e){return e.length>0?Array.isArray(e.slice(-1))?e.pop().join(""):e.join(""):""}u(X,"resolveFlags");function be(e,...r){let t=X(...r);r=[];let n=e.raw||[e];return new RegExp((r.length&&n.reduce((o,i,l)=>o.concat(r[l-1]||"").concat(i),"")||(n==null?void 0:n.join(""))).split(`
4
+ `).map(o=>o.replace(/\s|\/\/.*$/g,"").trim().replace(/(@s!)/g," ")).join(""),t)}u(be,"regExp");var Se="constructor,history,indexOf,toString,value,valueOf".split(",");function J(e,...r){return e.raw?String.raw({raw:e},...r):e}u(J,"resolveTemplateString");function m(e){return(e==null?void 0:e.value)||(e==null?void 0:e.constructor)===String&&e||""}u(m,"getStringValue");function ye(e,r,t){return e===String&&t?(r==null?void 0:r.constructor)!==Z&&(r==null?void 0:r.constructor)!==e:(r==null?void 0:r.constructor)!==e}u(ye,"checkType");function A(e,r,t=!0){return Array.isArray(r)&&r.length>0&&!r.find(n=>ye(e,n,t))}u(A,"isArrayOf");function G(e){return(e==null?void 0:e.constructor)===Number&&!Number.isNaN(e)}u(G,"isNumber");function we(){let e=x(Ce());return e.value.split(/\n/).concat(Object.entries(Object.getOwnPropertyDescriptors(e)).map(([r,t])=>{if(r==="quote")return"quote (Object. See [constructor].quoteInfo)";let n=!Se.find(o=>o===r);return`${r} (${r==="value"?"getter/setter":r==="clone"?"chainable getter":r in String.prototype?"method (override)":t.value&&t.value.constructor===Function?n?`chainable method${r in U?" *custom*":""}`:"method":t.value?"property":t.get?n?`chainable getter${r in U?" *custom*":""}`:"getter":"-"})`}).sort((r,t)=>r.localeCompare(t)))}u(we,"getSWInformation");function Q(e,r){return Object.defineProperties(e,{constructor:{get(){return e},enumerable:!1},format:{value(t,...n){return x(t).format(...n)}},addCustom:{value({name:t,method:n,enumerable:o=!1,isGetter:i=!1}={}){if(x``[t])return console.error(`addCustom: the property "${t}" exists and can not be redefined`);(t==null?void 0:t.constructor)===String&&(n==null?void 0:n.constructor)===Function&&n.length>0&&(r[t]={method:n,enumerable:o,isGetter:i})}},info:{get(){return we()}},keys:{get(){return Object.keys(Object.getOwnPropertyDescriptors(x``)).sort((t,n)=>t.localeCompare(n)).map(t=>!/constructor|toString|valueOf/.test(t)&&t in r?`${t} *custom*`:t)}},quoteInfo:{get(){let t=B({},W());return delete t.re,Object.entries(t).sort((n,o)=>n[0].localeCompare(o[0])).reduce((n,[o,i])=>{let l=i.constructor===Function?"(start:string[, end:string])":` (${i.join(" [instance value] ")})`;return[...n,`[instance].quote.${o}${l}`]},[])}},uuid4:{get(){return M()}},randomString:{value:u(function({len:t,includeUppercase:n,includeNumbers:o,includeSymbols:i,startAlphabetic:l}={}){return x(P({len:t,includeUppercase:n,includeNumbers:o,includeSymbols:i,startAlphabetic:l}))},"value")},regExp:{value:Y}}),e}u(Q,"createExtendedCTOR");function k(e,r){return new RegExp(e.replace(new RegExp("\\p{S}|\\p{P}","gu"),t=>`\\${t}`),r)}u(k,"escapeRE");function Ce(){return atob`Rm9yIHRoZSByZWNvcmQ6CltjbV0gY2hhaW5hYmxlIGdldHRlcnMvbWV0aG9kcyBtb2RpZnkgdGhlIGluc3RhbmNlIHN0cmluZwpbY21dIGluZGV4T2Ygb3ZlcnJpZGVzIHJldHVybiBbdW5kZWZpbmVkXSBpZiBub3RoaW5nIHdhcyBmb3VuZCAoc28gb25lIGNhbiB1c2UgW2xhc3RJXWluZGV4T2YoW3NvbWUgc3RyaW5nIHZhbHVlXSkgPz8gMApbY21dIGluY2x1ZGVzIGluZm9ybWF0aW9uIGZvciBjdXN0b20gbWV0aG9kcy9nZXR0ZXJzIGlmIGFwcGxpY2FibGU=`.replace(/\[cm\]/g,"\u2714")}u(Ce,"decode");function W(){let r={backtick:["`","`"],bracket:["{","}"],curlyDoubleInward:["\u201D","\u201C"],curlyDouble:["\u201C","\u201D"],curlyDoubleEqual:["\u201C","\u201C"],curlyLHDouble:["\u201E","\u201D"],curlyLHDoubleInward:["\u201E","\u201C"],curlyLHSingle:["\u201A","\u2019"],curlyLHSingleInward:["\u201A","\u2018"],curlySingle:["\u201B","\u2019"],curlySingleEqual:["\u201B","\u201B"],curlySingleInward:["\u2019","\u201B"],custom:u((n,o)=>(n=m(n),o=m(o),[m(n),o.length?o:n]),"custom"),double:['"','"'],guillemets:["\xAB","\xBB"],guillemetsInward:["\xBB","\xAB"],guillemetsSingle:["\u2039","\u203A"],guillemetsSingleInward:["\u203A","\u2039"],single:["'","'"],squareBrackets:["[","]"]},t=Object.values(r).filter(n=>Array.isArray(n)).map(n=>n.map(o=>`\\${o}`).join("")).join("");return r.re=RegExp(`^[${t}]|[${t}]$`,"g"),r}u(W,"defineQuotingStyles");var S=W();function j(e,r,t){return e=m(e),e.length>0?r(e):t||e}u(j,"checkAndRun");function q(e,...r){return j(e,()=>`${z(e,...r)}`)}u(q,"format");function R(e){return j(e,()=>`${e[0].toUpperCase()}${e.slice(1)}`)}u(R,"ucFirst");function K(e,r,t){return!r&&!t?e:([r,t]=A(String,[r,t!=null?t:""])?[r,t]:["",""],`${r}${e}${t||r}`)}u(K,"surroundWith");function ee(e){return j(e,()=>e.replace(/\s/g,"").replace(/[A-Z]/g,r=>`-${r.toLowerCase()}`).replace(/-{2,}/g,"-").replace(/[^a-z-]/g,"").replace(/^-|-$/,""))}u(ee,"toDashedNotation");function re(e){return j(e,()=>e.replace(/\s/g,"").replace(/[A-Z]/g,r=>`_${r.toLowerCase()}`).replace(/_{2,}/g,"_").replace(/[^a-z_]/g,"").replace(/^_|_$/,""))}u(re,"toSnakeCase");function te(e){return j(e,()=>[...e.toLowerCase()].slice(1).reduce((r,t)=>r+(new RegExp("\\p{L}|[-']","u").test(r.at(-1))?t.toLowerCase():t.toUpperCase()),e[0].toUpperCase()))}u(te,"wordsFirstUp");function ne(e){return j(e,()=>e.toLowerCase().trim().split(/[- ]/).filter(r=>r&&r.length>0).map((r,t)=>t>0&&`${R(r)}`||r).join(""))}u(ne,"toCamelcase");function oe(e,{at:r,html:t=!1,wordBoundary:n=!1}={}){return j(e,()=>{var w,C;if(e.length<=r)return e;let o=e.slice(0,r-1),i=t?"&hellip;":"...",l=n&&(C=(w=[...o.matchAll(new RegExp("\\p{Pe}|\\p{Z}","gu"))].at(-1))==null?void 0:w.index)!=null?C:o.length;return(n?o.slice(0,l+1).trim():o)+i})}u(oe,"truncate");function D(e,r){return j(e,()=>{let t=e.split(/\n/).map(n=>n.trim().replace(/\s{2,}/g," "));return r?t.join(`
5
5
  `):t.filter(n=>n.length>0).join(`
6
- `)})}u(D,"trimAll");function ce(e,{replacements:r={},caseSensitive:t=!1}={}){e=m(e);let n=Object.entries(r).flat(),o=A(String,n)&&(t==null?void 0:t.constructor)===Boolean,i=`g${t?"":"i"}`;if(o&&(n=n.map(l=>m(l)).filter(l=>n.length>0),n.length))for(;n.length;){let[l,w]=[n.shift(),n.shift()],C=K(l,i);e=e.replace(C,w)}return e}u(ce,"replaceWords");function le(e,r,t){e=m(e),t=G(t)?t:0;let n=e.indexOf(r,t||0);return n<0?void 0:n}u(le,"indexOf");function ae(e,r,t){e=m(e),t=G(t)?t:e.length;let n=e.lastIndexOf(r,t);return n<0?void 0:n}u(ae,"lastIndexOf");function H(e,{value:r,values:t,at:n=0}={}){e=m(e),n=G(n)?n:0;let o=m(t);return t=m(r).length?r:o.length?o:A(String,t)?t.map(i=>m(i)).join(""):[],t.length<=1?e:e.length===0?`${t}${e}`:`${e.slice(0,n)}${t}${e.slice(n)}`}u(H,"insert");function ie(e,...r){return r=A(String,r)&&r,r?H(m(e),{values:r,at:0}):m(e)}u(ie,"prefix");function se(e,...r){return r=A(String,r)&&r,r&&r.length>0?`${m(e)}`.concat(r.join("")):m(e)}u(se,"append");function fe(e,r){return{value:{get backtick(){return e.enclose(...S.backtick)},get bracket(){return e.enclose(...S.bracket)},get curlyDouble(){return e.enclose(...S.curlyDouble)},get curlyDoubleInward(){return e.enclose(...S.curlyDoubleInward)},get curlyDoubleEqual(){return e.enclose(...S.curlyDoubleEqual)},get curlyLHDoubleInward(){return e.enclose(...S.curlyLHDoubleInward)},get curlyLHSingle(){return e.enclose(...S.curlyLHSingle)},get curlyLHSingleInward(){return e.enclose(...S.curlyLHSingleInward)},get curlySingle(){return e.enclose(...S.curlySingle)},get curlySingleEqual(){return e.enclose(...S.curlySingleEqual)},get curlySingleInward(){return e.enclose(...S.curlySingleInward)},custom(t,n){return e.enclose(t,n!=null?n:t)},get double(){return e.enclose(...S.double)},get guillemets(){return e.enclose(...S.guillemets)},get guillemetsInward(){return e.enclose(...S.guillemetsInward)},get guillemetsSingle(){return e.enclose(...S.guillemetsSingle)},get guillemetsSingleInward(){return e.enclose(...S.guillemetsSingleInward)},get remove(){return r(`${e.value.replace(S.re,"")}`)},get single(){return e.enclose(...S.single)},get squareBrackets(){return e.enclose(...S.squareBrackets)}},enumerable:!1}}u(fe,"quotGetters");var ge=$e;function $e({initialstring:e,customMethods:r}={}){let t={},n=new Proxy(t,w(t)),o=(e==null?void 0:e.constructor)===String?e:"",i=[o],l=!1;return Object.defineProperties(t,{append:{value(...c){return g(se(o,...c))},enumerable:l},enclose:{value(c,d){return g(ee(o,c,d))},enumerable:l},format:{value(...c){return g(q(o,...c))},enumerable:l},indexOf:{value(c){return le(o,c)},enumerable:l},interpolate:{value(...c){return g(q(o,...c))},enumerable:l},insert:{value({value:c,values:d,at:b}={}){return g(H(o,{value:c,values:d,at:b}))},enumerable:l},lastIndexOf:{value(c){return ae(o,c)},enumerable:l},prefix:{value(...c){return g(ie(o,...c))},enumerable:l},replaceWords:{value({caseSensitive:c=!1,replacements:d={}}={}){return g(ce(o,{replacements:d,caseSensitive:c}))},enumerable:l},toString:{value(){return o},enumerable:l},truncate:{value({at:c,html:d=!1,wordBoundary:b=!1}={}){return g(ue(o,{at:c,html:d,wordBoundary:b}))},enumerable:l},valueOf:{value(){return o},enumerable:l},undoLast:{value(c){return p(c)},enumerable:l},camelCase:{get(){return g(oe(m(o)))},enumerable:l},clone:{get(){return C()},enumerable:l},constructor:{get(){return x.constructor},enumerable:l},kebabCase:{get(){return g(re(m(o)))},enumerable:l},firstUp:{get(){return g(R(m(o)))},enumerable:l},history:{get(){return i},set(c){i=c},enumerable:l},quote:fe(n,g),snakeCase:{get(){return g(te(m(o)))}},trimAll:{get(){return g(D(o))},enumerable:l},trimAllKeepLF:{get(){return g(D(o,!0))},enumerable:l},undoAll:{get(){return s()},enumerable:l},undo:{get(){return y()},enumerable:l},wordsUCFirst:{get(){return g(ne(m(o)))},enumerable:l},value:{get(){return o},set(c){o=m(c).length?c:o,i.push(o)},enumerable:l}}),N(r),Object.freeze(n);function w(c){return{get(d,b){return b in c?c[b]:b in String.prototype?O(b):void 0}}}u(w,"getTraps");function C(){let c=x(o);return c.history=[...i],c}u(C,"clone");function O(c){return o[c]instanceof Function?function(...d){let b=o[c](...d);return(b==null?void 0:b.constructor)===String?g(o[c](...d)):b}:o[c]}u(O,"wrapNative");function s(){for(;i.length>1;)i.pop();return o=i.at(-1),g(o,!1)}u(s,"undoAll");function p(c){if(!G(c))return g(o,!1);let d=i.length;return c>=d||c<1?(i=i.slice(0,1),o=i.at(-1),g(i.at(-1),!1)):(i=i.slice(0,d-c),o=i.at(-1),g(o,!1))}u(p,"undoSteps");function y(){return i.length===1?g(i[0]):(i.pop(),o=i.at(-1),g(o,!1))}u(y,"undoLast");function g(c,d=!0){return o!==c&&d&&i.push(c),o=c,n}u(g,"wrap");function N(c){Object.entries(c).forEach(([d,b])=>{let{enumerable:a,method:f,isGetter:h}=b;Object.defineProperty(t,d,h?{get(){return g(f(n).value)},enumerable:a}:{value(...I){return g(f(n,...I).value)},enumerable:a})})}u(N,"injectCustomMethods")}u($e,"instanceCreator");var U={},x=k(Z,U);function Z(e,...r){return ge({initialstring:Q(e,...r),customMethods:U})}u(Z,"CustomStringConstructor");export{Z as CustomStringConstructor,U as customMethods,x as default};
6
+ `)})}u(D,"trimAll");function ue(e,{replacements:r={},caseSensitive:t=!1}={}){e=m(e);let n=Object.entries(r).flat(),o=A(String,n)&&(t==null?void 0:t.constructor)===Boolean,i=`g${t?"":"i"}`;if(o&&(n=n.map(l=>m(l)).filter(l=>n.length>0),n.length))for(;n.length;){let[l,w]=[n.shift(),n.shift()],C=k(l,i);e=e.replace(C,w)}return e}u(ue,"replaceWords");function ce(e,r,t){e=m(e),t=G(t)?t:0;let n=e.indexOf(r,t||0);return n<0?void 0:n}u(ce,"indexOf");function le(e,r,t){e=m(e),t=G(t)?t:e.length;let n=e.lastIndexOf(r,t);return n<0?void 0:n}u(le,"lastIndexOf");function H(e,{value:r,values:t,at:n=0}={}){e=m(e),n=G(n)?n:0;let o=m(t);return t=m(r).length?r:o.length?o:A(String,t)?t.map(i=>m(i)).join(""):[],t.length<=1?e:e.length===0?`${t}${e}`:`${e.slice(0,n)}${t}${e.slice(n)}`}u(H,"insert");function ae(e,...r){return r=A(String,r)&&r,r?H(m(e),{values:r,at:0}):m(e)}u(ae,"prefix");function ie(e,...r){return r=A(String,r)&&r,r&&r.length>0?`${m(e)}`.concat(r.join("")):m(e)}u(ie,"append");function se(e,r){return{value:{get backtick(){return e.enclose(...S.backtick)},get bracket(){return e.enclose(...S.bracket)},get curlyDouble(){return e.enclose(...S.curlyDouble)},get curlyDoubleInward(){return e.enclose(...S.curlyDoubleInward)},get curlyDoubleEqual(){return e.enclose(...S.curlyDoubleEqual)},get curlyLHDoubleInward(){return e.enclose(...S.curlyLHDoubleInward)},get curlyLHSingle(){return e.enclose(...S.curlyLHSingle)},get curlyLHSingleInward(){return e.enclose(...S.curlyLHSingleInward)},get curlySingle(){return e.enclose(...S.curlySingle)},get curlySingleEqual(){return e.enclose(...S.curlySingleEqual)},get curlySingleInward(){return e.enclose(...S.curlySingleInward)},custom(t,n){return e.enclose(t,n!=null?n:t)},get double(){return e.enclose(...S.double)},get guillemets(){return e.enclose(...S.guillemets)},get guillemetsInward(){return e.enclose(...S.guillemetsInward)},get guillemetsSingle(){return e.enclose(...S.guillemetsSingle)},get guillemetsSingleInward(){return e.enclose(...S.guillemetsSingleInward)},get remove(){return r(`${e.value.replace(S.re,"")}`)},get single(){return e.enclose(...S.single)},get squareBrackets(){return e.enclose(...S.squareBrackets)}},enumerable:!1}}u(se,"quotGetters");var fe=$e;function $e({initialstring:e,customMethods:r}={}){let t={},n=new Proxy(t,w(t)),o=(e==null?void 0:e.constructor)===String?e:"",i=[o],l=!1;return Object.defineProperties(t,{append:{value(...c){return g(ie(o,...c))},enumerable:l},enclose:{value(c,d){return g(K(o,c,d))},enumerable:l},format:{value(...c){return g(q(o,...c))},enumerable:l},indexOf:{value(c){return ce(o,c)},enumerable:l},interpolate:{value(...c){return g(q(o,...c))},enumerable:l},insert:{value({value:c,values:d,at:b}={}){return g(H(o,{value:c,values:d,at:b}))},enumerable:l},lastIndexOf:{value(c){return le(o,c)},enumerable:l},prefix:{value(...c){return g(ae(o,...c))},enumerable:l},replaceWords:{value({caseSensitive:c=!1,replacements:d={}}={}){return g(ue(o,{replacements:d,caseSensitive:c}))},enumerable:l},toString:{value(){return o},enumerable:l},truncate:{value({at:c,html:d=!1,wordBoundary:b=!1}={}){return g(oe(o,{at:c,html:d,wordBoundary:b}))},enumerable:l},valueOf:{value(){return o},enumerable:l},undoLast:{value(c){return p(c)},enumerable:l},camelCase:{get(){return g(ne(m(o)))},enumerable:l},clone:{get(){return C()},enumerable:l},constructor:{get(){return x.constructor},enumerable:l},kebabCase:{get(){return g(ee(m(o)))},enumerable:l},firstUp:{get(){return g(R(m(o)))},enumerable:l},history:{get(){return i},set(c){i=c},enumerable:l},quote:se(n,g),snakeCase:{get(){return g(re(m(o)))}},trimAll:{get(){return g(D(o))},enumerable:l},trimAllKeepLF:{get(){return g(D(o,!0))},enumerable:l},undoAll:{get(){return s()},enumerable:l},undo:{get(){return y()},enumerable:l},wordsUCFirst:{get(){return g(te(m(o)))},enumerable:l},value:{get(){return o},set(c){o=m(c).length?c:o,i.push(o)},enumerable:l}}),N(r),Object.freeze(n);function w(c){return{get(d,b){return b in c?c[b]:b in String.prototype?O(b):void 0}}}u(w,"getTraps");function C(){let c=x(o);return c.history=[...i],c}u(C,"clone");function O(c){return o[c]instanceof Function?function(...d){let b=o[c](...d);return(b==null?void 0:b.constructor)===String?g(o[c](...d)):b}:o[c]}u(O,"wrapNative");function s(){for(;i.length>1;)i.pop();return o=i.at(-1),g(o,!1)}u(s,"undoAll");function p(c){if(!G(c))return g(o,!1);let d=i.length;return c>=d||c<1?(i=i.slice(0,1),o=i.at(-1),g(i.at(-1),!1)):(i=i.slice(0,d-c),o=i.at(-1),g(o,!1))}u(p,"undoSteps");function y(){return i.length===1?g(i[0]):(i.pop(),o=i.at(-1),g(o,!1))}u(y,"undoLast");function g(c,d=!0){return o!==c&&d&&i.push(c),o=c,n}u(g,"wrap");function N(c){Object.entries(c).forEach(([d,b])=>{let{enumerable:a,method:f,isGetter:h}=b;Object.defineProperty(t,d,h?{get(){return g(f(n).value)},enumerable:a}:{value(...I){return g(f(n,...I).value)},enumerable:a})})}u(N,"injectCustomMethods")}u($e,"instanceCreator");var U={},x=Q(Z,U);function Z(e,...r){return fe({initialstring:J(e,...r),customMethods:U})}u(Z,"CustomStringConstructor");export{Z as CustomStringConstructor,U as customMethods,x as default};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "stringweaver",
3
3
  "type": "module",
4
- "version": "1.0.2",
4
+ "version": "1.0.3",
5
5
  "private": false,
6
6
  "main": "./index.js",
7
7
  "sideEffects": false,
@@ -21,9 +21,6 @@
21
21
  "type": "git",
22
22
  "url": "https://github.com/KooiInc/js-stringweaver"
23
23
  },
24
- "devDependencies": {
25
- "esbuild": "latest"
26
- },
27
24
  "bugs": {
28
25
  "url": "https://github.com/KooiInc/js-stringweaver/issues"
29
26
  }
@@ -13,6 +13,8 @@ export {
13
13
  escapeRE,
14
14
  };
15
15
 
16
+ const immutables = `constructor,history,indexOf,toString,value,valueOf`.split(`,`);
17
+
16
18
  function resolveTemplateString(str, ...args) {
17
19
  return str.raw ? String.raw({ raw: str }, ...args) : str;
18
20
  }
@@ -35,29 +37,26 @@ function isNumber(value) {
35
37
  return value?.constructor === Number && !Number.isNaN(value);
36
38
  }
37
39
 
38
- function isMutating(descriptor) {
39
- return /wrap\(|undo.*/i.test(descriptor.toString())
40
- }
41
-
42
40
  function getSWInformation() {
43
41
  const firstLines = xString(decode());
44
42
  return firstLines.value.split(/\n/).concat(
45
43
  Object.entries(Object.getOwnPropertyDescriptors(firstLines))
46
44
  .map(([key, descriptr]) => {
47
45
  if (key === `quote`) { return `quote (Object. See [constructor].quoteInfo)`; }
46
+ const isChainable = !immutables.find(k => k === key);
48
47
  return `${key} (${
49
48
  key === `value`
50
49
  ? `getter/setter`
51
50
  : key === `clone`
52
51
  ? `chainable getter`
53
52
  : key in String.prototype
54
- ? `method, String override`
53
+ ? `method (override)`
55
54
  : descriptr.value && descriptr.value.constructor === Function
56
- ? (isMutating(descriptr.value)
55
+ ? (isChainable
57
56
  ? `chainable method${key in customMethods ? ` *custom*` : ``}` : `method`)
58
57
  : descriptr.value
59
58
  ? `property`
60
- : descriptr.get ? (isMutating(descriptr.get)
59
+ : descriptr.get ? (isChainable
61
60
  ? `chainable getter${key in customMethods ? ` *custom*` : ``}`
62
61
  : `getter`) : `-`})`; })
63
62
  .sort( (a,b) => a.localeCompare(b) )