@stacksjs/strings 0.62.0 → 0.63.1

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.
package/dist/index.js CHANGED
@@ -1,266 +1,4 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, {
5
- get: all[name],
6
- enumerable: true,
7
- configurable: true,
8
- set: (newValue) => all[name] = () => newValue
9
- });
10
- };
1
+ var Ub=Object.create;var{getPrototypeOf:zb,defineProperty:w,getOwnPropertyNames:vb}=Object;var Rb=Object.prototype.hasOwnProperty;var Gb=(b,$,q)=>{q=b!=null?Ub(zb(b)):{};const J=$||!b||!b.__esModule?w(q,"default",{value:b,enumerable:!0}):q;for(let Q of vb(b))if(!Rb.call(J,Q))w(J,Q,{get:()=>b[Q],enumerable:!0});return J};var Hb=(b,$)=>()=>($||b(($={exports:{}}).exports,$),$.exports);var Fb=(b,$)=>{for(var q in $)w(b,q,{get:$[q],enumerable:!0,configurable:!0,set:(J)=>$[q]=()=>J})};var Yb=Hb((c,d)=>{(function(b,$,q){if(typeof c==="object")d.exports=q(),d.exports.default=q();else if(typeof define==="function"&&define.amd)define(q);else $[b]=q()})("slugify",c,function(){var b=JSON.parse(`{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","\xA2":"cent","\xA3":"pound","\xA4":"currency","\xA5":"yen","\xA9":"(c)","\xAA":"a","\xAE":"(r)","\xBA":"o","\xC0":"A","\xC1":"A","\xC2":"A","\xC3":"A","\xC4":"A","\xC5":"A","\xC6":"AE","\xC7":"C","\xC8":"E","\xC9":"E","\xCA":"E","\xCB":"E","\xCC":"I","\xCD":"I","\xCE":"I","\xCF":"I","\xD0":"D","\xD1":"N","\xD2":"O","\xD3":"O","\xD4":"O","\xD5":"O","\xD6":"O","\xD8":"O","\xD9":"U","\xDA":"U","\xDB":"U","\xDC":"U","\xDD":"Y","\xDE":"TH","\xDF":"ss","\xE0":"a","\xE1":"a","\xE2":"a","\xE3":"a","\xE4":"a","\xE5":"a","\xE6":"ae","\xE7":"c","\xE8":"e","\xE9":"e","\xEA":"e","\xEB":"e","\xEC":"i","\xED":"i","\xEE":"i","\xEF":"i","\xF0":"d","\xF1":"n","\xF2":"o","\xF3":"o","\xF4":"o","\xF5":"o","\xF6":"o","\xF8":"o","\xF9":"u","\xFA":"u","\xFB":"u","\xFC":"u","\xFD":"y","\xFE":"th","\xFF":"y","\u0100":"A","\u0101":"a","\u0102":"A","\u0103":"a","\u0104":"A","\u0105":"a","\u0106":"C","\u0107":"c","\u010C":"C","\u010D":"c","\u010E":"D","\u010F":"d","\u0110":"DJ","\u0111":"dj","\u0112":"E","\u0113":"e","\u0116":"E","\u0117":"e","\u0118":"e","\u0119":"e","\u011A":"E","\u011B":"e","\u011E":"G","\u011F":"g","\u0122":"G","\u0123":"g","\u0128":"I","\u0129":"i","\u012A":"i","\u012B":"i","\u012E":"I","\u012F":"i","\u0130":"I","\u0131":"i","\u0136":"k","\u0137":"k","\u013B":"L","\u013C":"l","\u013D":"L","\u013E":"l","\u0141":"L","\u0142":"l","\u0143":"N","\u0144":"n","\u0145":"N","\u0146":"n","\u0147":"N","\u0148":"n","\u014C":"O","\u014D":"o","\u0150":"O","\u0151":"o","\u0152":"OE","\u0153":"oe","\u0154":"R","\u0155":"r","\u0158":"R","\u0159":"r","\u015A":"S","\u015B":"s","\u015E":"S","\u015F":"s","\u0160":"S","\u0161":"s","\u0162":"T","\u0163":"t","\u0164":"T","\u0165":"t","\u0168":"U","\u0169":"u","\u016A":"u","\u016B":"u","\u016E":"U","\u016F":"u","\u0170":"U","\u0171":"u","\u0172":"U","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017A":"z","\u017B":"Z","\u017C":"z","\u017D":"Z","\u017E":"z","\u018F":"E","\u0192":"f","\u01A0":"O","\u01A1":"o","\u01AF":"U","\u01B0":"u","\u01C8":"LJ","\u01C9":"lj","\u01CB":"NJ","\u01CC":"nj","\u0218":"S","\u0219":"s","\u021A":"T","\u021B":"t","\u0259":"e","\u02DA":"o","\u0386":"A","\u0388":"E","\u0389":"H","\u038A":"I","\u038C":"O","\u038E":"Y","\u038F":"W","\u0390":"i","\u0391":"A","\u0392":"B","\u0393":"G","\u0394":"D","\u0395":"E","\u0396":"Z","\u0397":"H","\u0398":"8","\u0399":"I","\u039A":"K","\u039B":"L","\u039C":"M","\u039D":"N","\u039E":"3","\u039F":"O","\u03A0":"P","\u03A1":"R","\u03A3":"S","\u03A4":"T","\u03A5":"Y","\u03A6":"F","\u03A7":"X","\u03A8":"PS","\u03A9":"W","\u03AA":"I","\u03AB":"Y","\u03AC":"a","\u03AD":"e","\u03AE":"h","\u03AF":"i","\u03B0":"y","\u03B1":"a","\u03B2":"b","\u03B3":"g","\u03B4":"d","\u03B5":"e","\u03B6":"z","\u03B7":"h","\u03B8":"8","\u03B9":"i","\u03BA":"k","\u03BB":"l","\u03BC":"m","\u03BD":"n","\u03BE":"3","\u03BF":"o","\u03C0":"p","\u03C1":"r","\u03C2":"s","\u03C3":"s","\u03C4":"t","\u03C5":"y","\u03C6":"f","\u03C7":"x","\u03C8":"ps","\u03C9":"w","\u03CA":"i","\u03CB":"y","\u03CC":"o","\u03CD":"y","\u03CE":"w","\u0401":"Yo","\u0402":"DJ","\u0404":"Ye","\u0406":"I","\u0407":"Yi","\u0408":"J","\u0409":"LJ","\u040A":"NJ","\u040B":"C","\u040F":"DZ","\u0410":"A","\u0411":"B","\u0412":"V","\u0413":"G","\u0414":"D","\u0415":"E","\u0416":"Zh","\u0417":"Z","\u0418":"I","\u0419":"J","\u041A":"K","\u041B":"L","\u041C":"M","\u041D":"N","\u041E":"O","\u041F":"P","\u0420":"R","\u0421":"S","\u0422":"T","\u0423":"U","\u0424":"F","\u0425":"H","\u0426":"C","\u0427":"Ch","\u0428":"Sh","\u0429":"Sh","\u042A":"U","\u042B":"Y","\u042C":"","\u042D":"E","\u042E":"Yu","\u042F":"Ya","\u0430":"a","\u0431":"b","\u0432":"v","\u0433":"g","\u0434":"d","\u0435":"e","\u0436":"zh","\u0437":"z","\u0438":"i","\u0439":"j","\u043A":"k","\u043B":"l","\u043C":"m","\u043D":"n","\u043E":"o","\u043F":"p","\u0440":"r","\u0441":"s","\u0442":"t","\u0443":"u","\u0444":"f","\u0445":"h","\u0446":"c","\u0447":"ch","\u0448":"sh","\u0449":"sh","\u044A":"u","\u044B":"y","\u044C":"","\u044D":"e","\u044E":"yu","\u044F":"ya","\u0451":"yo","\u0452":"dj","\u0454":"ye","\u0456":"i","\u0457":"yi","\u0458":"j","\u0459":"lj","\u045A":"nj","\u045B":"c","\u045D":"u","\u045F":"dz","\u0490":"G","\u0491":"g","\u0492":"GH","\u0493":"gh","\u049A":"KH","\u049B":"kh","\u04A2":"NG","\u04A3":"ng","\u04AE":"UE","\u04AF":"ue","\u04B0":"U","\u04B1":"u","\u04BA":"H","\u04BB":"h","\u04D8":"AE","\u04D9":"ae","\u04E8":"OE","\u04E9":"oe","\u0531":"A","\u0532":"B","\u0533":"G","\u0534":"D","\u0535":"E","\u0536":"Z","\u0537":"E'","\u0538":"Y'","\u0539":"T'","\u053A":"JH","\u053B":"I","\u053C":"L","\u053D":"X","\u053E":"C'","\u053F":"K","\u0540":"H","\u0541":"D'","\u0542":"GH","\u0543":"TW","\u0544":"M","\u0545":"Y","\u0546":"N","\u0547":"SH","\u0549":"CH","\u054A":"P","\u054B":"J","\u054C":"R'","\u054D":"S","\u054E":"V","\u054F":"T","\u0550":"R","\u0551":"C","\u0553":"P'","\u0554":"Q'","\u0555":"O''","\u0556":"F","\u0587":"EV","\u0621":"a","\u0622":"aa","\u0623":"a","\u0624":"u","\u0625":"i","\u0626":"e","\u0627":"a","\u0628":"b","\u0629":"h","\u062A":"t","\u062B":"th","\u062C":"j","\u062D":"h","\u062E":"kh","\u062F":"d","\u0630":"th","\u0631":"r","\u0632":"z","\u0633":"s","\u0634":"sh","\u0635":"s","\u0636":"dh","\u0637":"t","\u0638":"z","\u0639":"a","\u063A":"gh","\u0641":"f","\u0642":"q","\u0643":"k","\u0644":"l","\u0645":"m","\u0646":"n","\u0647":"h","\u0648":"w","\u0649":"a","\u064A":"y","\u064B":"an","\u064C":"on","\u064D":"en","\u064E":"a","\u064F":"u","\u0650":"e","\u0652":"","\u0660":"0","\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u067E":"p","\u0686":"ch","\u0698":"zh","\u06A9":"k","\u06AF":"g","\u06CC":"y","\u06F0":"0","\u06F1":"1","\u06F2":"2","\u06F3":"3","\u06F4":"4","\u06F5":"5","\u06F6":"6","\u06F7":"7","\u06F8":"8","\u06F9":"9","\u0E3F":"baht","\u10D0":"a","\u10D1":"b","\u10D2":"g","\u10D3":"d","\u10D4":"e","\u10D5":"v","\u10D6":"z","\u10D7":"t","\u10D8":"i","\u10D9":"k","\u10DA":"l","\u10DB":"m","\u10DC":"n","\u10DD":"o","\u10DE":"p","\u10DF":"zh","\u10E0":"r","\u10E1":"s","\u10E2":"t","\u10E3":"u","\u10E4":"f","\u10E5":"k","\u10E6":"gh","\u10E7":"q","\u10E8":"sh","\u10E9":"ch","\u10EA":"ts","\u10EB":"dz","\u10EC":"ts","\u10ED":"ch","\u10EE":"kh","\u10EF":"j","\u10F0":"h","\u1E62":"S","\u1E63":"s","\u1E80":"W","\u1E81":"w","\u1E82":"W","\u1E83":"w","\u1E84":"W","\u1E85":"w","\u1E9E":"SS","\u1EA0":"A","\u1EA1":"a","\u1EA2":"A","\u1EA3":"a","\u1EA4":"A","\u1EA5":"a","\u1EA6":"A","\u1EA7":"a","\u1EA8":"A","\u1EA9":"a","\u1EAA":"A","\u1EAB":"a","\u1EAC":"A","\u1EAD":"a","\u1EAE":"A","\u1EAF":"a","\u1EB0":"A","\u1EB1":"a","\u1EB2":"A","\u1EB3":"a","\u1EB4":"A","\u1EB5":"a","\u1EB6":"A","\u1EB7":"a","\u1EB8":"E","\u1EB9":"e","\u1EBA":"E","\u1EBB":"e","\u1EBC":"E","\u1EBD":"e","\u1EBE":"E","\u1EBF":"e","\u1EC0":"E","\u1EC1":"e","\u1EC2":"E","\u1EC3":"e","\u1EC4":"E","\u1EC5":"e","\u1EC6":"E","\u1EC7":"e","\u1EC8":"I","\u1EC9":"i","\u1ECA":"I","\u1ECB":"i","\u1ECC":"O","\u1ECD":"o","\u1ECE":"O","\u1ECF":"o","\u1ED0":"O","\u1ED1":"o","\u1ED2":"O","\u1ED3":"o","\u1ED4":"O","\u1ED5":"o","\u1ED6":"O","\u1ED7":"o","\u1ED8":"O","\u1ED9":"o","\u1EDA":"O","\u1EDB":"o","\u1EDC":"O","\u1EDD":"o","\u1EDE":"O","\u1EDF":"o","\u1EE0":"O","\u1EE1":"o","\u1EE2":"O","\u1EE3":"o","\u1EE4":"U","\u1EE5":"u","\u1EE6":"U","\u1EE7":"u","\u1EE8":"U","\u1EE9":"u","\u1EEA":"U","\u1EEB":"u","\u1EEC":"U","\u1EED":"u","\u1EEE":"U","\u1EEF":"u","\u1EF0":"U","\u1EF1":"u","\u1EF2":"Y","\u1EF3":"y","\u1EF4":"Y","\u1EF5":"y","\u1EF6":"Y","\u1EF7":"y","\u1EF8":"Y","\u1EF9":"y","\u2013":"-","\u2018":"'","\u2019":"'","\u201C":"\\"","\u201D":"\\"","\u201E":"\\"","\u2020":"+","\u2022":"*","\u2026":"...","\u20A0":"ecu","\u20A2":"cruzeiro","\u20A3":"french franc","\u20A4":"lira","\u20A5":"mill","\u20A6":"naira","\u20A7":"peseta","\u20A8":"rupee","\u20A9":"won","\u20AA":"new shequel","\u20AB":"dong","\u20AC":"euro","\u20AD":"kip","\u20AE":"tugrik","\u20AF":"drachma","\u20B0":"penny","\u20B1":"peso","\u20B2":"guarani","\u20B3":"austral","\u20B4":"hryvnia","\u20B5":"cedi","\u20B8":"kazakhstani tenge","\u20B9":"indian rupee","\u20BA":"turkish lira","\u20BD":"russian ruble","\u20BF":"bitcoin","\u2120":"sm","\u2122":"tm","\u2202":"d","\u2206":"delta","\u2211":"sum","\u221E":"infinity","\u2665":"love","\u5143":"yuan","\u5186":"yen","\uFDFC":"rial","\uFEF5":"laa","\uFEF7":"laa","\uFEF9":"lai","\uFEFB":"la"}`),$=JSON.parse('{"bg":{"\u0419":"Y","\u0426":"Ts","\u0429":"Sht","\u042A":"A","\u042C":"Y","\u0439":"y","\u0446":"ts","\u0449":"sht","\u044A":"a","\u044C":"y"},"de":{"\xC4":"AE","\xE4":"ae","\xD6":"OE","\xF6":"oe","\xDC":"UE","\xFC":"ue","\xDF":"ss","%":"prozent","&":"und","|":"oder","\u2211":"summe","\u221E":"unendlich","\u2665":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","\xA2":"centavos","\xA3":"libras","\xA4":"moneda","\u20A3":"francos","\u2211":"suma","\u221E":"infinito","\u2665":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","\xA2":"centime","\xA3":"livre","\xA4":"devise","\u20A3":"franc","\u2211":"somme","\u221E":"infini","\u2665":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","\xA2":"centavo","\u2211":"soma","\xA3":"libra","\u221E":"infinito","\u2665":"amor"},"uk":{"\u0418":"Y","\u0438":"y","\u0419":"Y","\u0439":"y","\u0426":"Ts","\u0446":"ts","\u0425":"Kh","\u0445":"kh","\u0429":"Shch","\u0449":"shch","\u0413":"H","\u0433":"h"},"vi":{"\u0110":"D","\u0111":"d"},"da":{"\xD8":"OE","\xF8":"oe","\xC5":"AA","\xE5":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"st\xF8rre end"},"nb":{"&":"og","\xC5":"AA","\xC6":"AE","\xD8":"OE","\xE5":"aa","\xE6":"ae","\xF8":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","\xC5":"AA","\xC4":"AE","\xD6":"OE","\xE5":"aa","\xE4":"ae","\xF6":"oe"}}');function q(J,Q){if(typeof J!=="string")throw new Error("slugify: string argument expected");Q=typeof Q==="string"?{replacement:Q}:Q||{};var Z=$[Q.locale]||{},G=Q.replacement===void 0?"-":Q.replacement,Y=Q.trim===void 0?!0:Q.trim,H=J.normalize().split("").reduce(function(X,L){var W=Z[L];if(W===void 0)W=b[L];if(W===void 0)W=L;if(W===G)W=" ";return X+W.replace(Q.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")},"");if(Q.strict)H=H.replace(/[^A-Za-z0-9\s]/g,"");if(Y)H=H.trim();if(H=H.replace(/\s+/g,G),Q.lower)H=H.toLowerCase();return H}return q.extend=function(J){Object.assign(b,J)},q})});var Ob=Hb((t,e)=>{(function(b,$){if(typeof t==="object"&&typeof e==="object")e.exports=$();else if(typeof define==="function"&&define.amd)define(function(){return $()});else b.pluralize=$()})(t,function(){var b=[],$=[],q={},J={},Q={};function Z(V){if(typeof V==="string")return new RegExp("^"+V+"$","i");return V}function G(V,j){if(V===j)return j;if(V===V.toLowerCase())return j.toLowerCase();if(V===V.toUpperCase())return j.toUpperCase();if(V[0]===V[0].toUpperCase())return j.charAt(0).toUpperCase()+j.substr(1).toLowerCase();return j.toLowerCase()}function Y(V,j){return V.replace(/\$(\d{1,2})/g,function(K,D){return j[D]||""})}function H(V,j){return V.replace(j[0],function(K,D){var O=Y(j[1],arguments);if(K==="")return G(V[D-1],O);return G(K,O)})}function X(V,j,K){if(!V.length||q.hasOwnProperty(V))return j;var D=K.length;while(D--){var O=K[D];if(O[0].test(j))return H(j,O)}return j}function L(V,j,K){return function(D){var O=D.toLowerCase();if(j.hasOwnProperty(O))return G(D,O);if(V.hasOwnProperty(O))return G(D,V[O]);return X(O,D,K)}}function W(V,j,K,D){return function(O){var U=O.toLowerCase();if(j.hasOwnProperty(U))return!0;if(V.hasOwnProperty(U))return!1;return X(U,U,K)===U}}function B(V,j,K){var D=j===1?B.singular(V):B.plural(V);return(K?j+" ":"")+D}return B.plural=L(Q,J,b),B.isPlural=W(Q,J,b),B.singular=L(J,Q,$),B.isSingular=W(J,Q,$),B.addPluralRule=function(V,j){b.push([Z(V),j])},B.addSingularRule=function(V,j){$.push([Z(V),j])},B.addUncountableRule=function(V){if(typeof V==="string"){q[V.toLowerCase()]=!0;return}B.addPluralRule(V,"$0"),B.addSingularRule(V,"$0")},B.addIrregularRule=function(V,j){j=j.toLowerCase(),V=V.toLowerCase(),Q[V]=j,J[j]=V},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach(function(V){return B.addIrregularRule(V[0],V[1])}),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach(function(V){return B.addPluralRule(V[0],V[1])}),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach(function(V){return B.addSingularRule(V[0],V[1])}),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[eé]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(B.addUncountableRule),B})});var Pb={};Fb(Pb,{truncate:()=>o,toString:()=>ob,titleCase:()=>x,template:()=>i,str:()=>ib,split:()=>M,snakeCase:()=>y,slug:()=>s,slash:()=>l,singular:()=>$b,sentenceCase:()=>g,random:()=>r,plural:()=>bb,pathCase:()=>k,pascalCase:()=>I,paramCase:()=>v,noCase:()=>z,lowercase:()=>lb,kebabCase:()=>v,isSingular:()=>Jb,isPlural:()=>qb,ensureSuffix:()=>p,ensurePrefix:()=>u,dotCase:()=>m,detectNewline:()=>C,detectIndent:()=>F,constantCase:()=>S,capitalize:()=>n,capitalCase:()=>T,camelCase:()=>E,addUncountableRule:()=>jb,addSingularRule:()=>Vb,addPluralRule:()=>Qb,addIrregularRule:()=>Zb,Str:()=>Lb});var a=Gb(Yb(),1);function l(b){return b.replace(/\\/g,"/")}function u(b,$){if(!$.startsWith(b))return b+$;return $}function p(b,$){return $.endsWith(b)?$:$+b}function i(b,...$){return b.replace(/{(\d+)}/g,(q,J)=>{const Q=Number(J);return Number.isNaN(Q)?q:$[Q]})}function o(b,$,q="..."){if(b.length<=$)return b;return b.slice(0,$-q.length)+q}function r(b=16,$=Eb){let q="",J=b;const Q=$.length;while(J--)q+=$[Math.random()*Q|0];return q}function s(b,$){if($)return a.default(b,$);return a.default(b,{lower:!0,strict:!0})}function Xb(b,$){const q=new Map;let J=0,Q,Z;for(let G of b.split(/\n/g)){if(!G)continue;let Y,H,X,L,W;const B=G.match(Nb);if(B===null)J=0,Q="";else{if(Y=B[0].length,H=B[1]?"space":"tab",$&&H==="space"&&Y===1)continue;if(H!==Q)J=0;Q=H,X=1,L=0;const V=Y-J;if(J=Y,V===0)X=0,L=1;else{const j=V>0?V:-V;Z=Ab(H,j)}W=q.get(Z),W=W===void 0?[1,0]:[W[0]+X,W[1]+L],q.set(Z,W)}}return q}function Ab(b,$){return(b==="space"?"s":"t")+String($)}function _b(b){const q=b[0]==="s"?"space":"tab",J=Number(b.slice(1));return{type:q,amount:J}}function Cb(b){let $,q=0,J=0;for(let[Q,[Z,G]]of b)if(Z>q||Z===q&&G>J)q=Z,J=G,$=Q;return $}function Mb(b,$){return(b==="space"?" ":"\t").repeat($)}var Nb=/^(?:( )+|\t+)/;function F(b){if(typeof b!=="string")throw new TypeError("Expected a string");let $=Xb(b,!0);if($.size===0)$=Xb(b,!1);const q=Cb($);let J,Q=0,Z="";if(q!==void 0)({type:J,amount:Q}=_b(q)),Z=Mb(J,Q);return{amount:Q,type:J,indent:Z}}function C(b){if(typeof b!=="string")throw new TypeError("Expected a string");const $=b.match(/(?:\r?\n)/g)||[];if($.length===0)return;const q=$.filter((Q)=>Q==="\r\n").length,J=$.length-q;return q>J?"\r\n":"\n"}var Eb="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";function n(b){return b[0]?b[0].toUpperCase()+b.slice(1).toLowerCase():""}function lb(b){return b.toLowerCase()}function M(b){let $=b.trim();$=$.replace(Tb,"$1\0$2").replace(Sb,"$1\0$2"),$=$.replace(kb,"\0");let q=0,J=$.length;while($.charAt(q)==="\0")q++;if(q===J)return[];while($.charAt(J-1)==="\0")J--;return $.slice(q,J).split(/\0/g)}function gb(b){const $=M(b);for(let q=0;q<$.length;q++){const J=$[q],Q=mb.exec(J);if(Q){const Z=Q.index+(Q[1]??Q[2]).length;$.splice(q,1,J.slice(0,Z),J.slice(Z))}}return $}function z(b,$){const[q,J,Q]=R(b,$);return q+J.map(N($?.locale)).join($?.delimiter??" ")+Q}function E(b,$){const[q,J,Q]=R(b,$),Z=N($?.locale),G=A($?.locale),Y=$?.mergeAmbiguousCharacters?h(Z,G):Wb(Z,G);return q+J.map((H,X)=>{if(X===0)return Z(H);return Y(H,X)}).join($?.delimiter??"")+Q}function I(b,$){const[q,J,Q]=R(b,$),Z=N($?.locale),G=A($?.locale),Y=$?.mergeAmbiguousCharacters?h(Z,G):Wb(Z,G);return q+J.map(Y).join($?.delimiter??"")+Q}function T(b,$){const[q,J,Q]=R(b,$),Z=N($?.locale),G=A($?.locale);return q+J.map(h(Z,G)).join($?.delimiter??" ")+Q}function S(b,$){const[q,J,Q]=R(b,$);return q+J.map(A($?.locale)).join($?.delimiter??"_")+Q}function m(b,$){return z(b,{delimiter:".",...$})}function v(b,$){return z(b,{delimiter:"-",...$})}function k(b,$){return z(b,{delimiter:"/",...$})}function g(b,$){const[q,J,Q]=R(b,$),Z=N($?.locale),G=A($?.locale),Y=h(Z,G);return q+J.map((H,X)=>{if(X===0)return Y(H);return Z(H)}).join($?.delimiter??" ")+Q}function y(b,$){return z(b,{delimiter:"_",...$})}function N(b){return b===!1?($)=>$.toLowerCase():($)=>$.toLocaleLowerCase(b)}function A(b){return b===!1?($)=>$.toUpperCase():($)=>$.toLocaleUpperCase(b)}function h(b,$){return(q)=>`${$(q[0])}${b(q.slice(1))}`}function Wb(b,$){return(q,J)=>{const Q=q[0];return(J>0&&Q>="0"&&Q<="9"?"_"+Q:$(Q))+b(q.slice(1))}}function R(b,$={}){const q=$.split??($.separateNumbers?gb:M),J=$.prefixCharacters??"",Q=$.suffixCharacters??"";let Z=0,G=b.length;while(Z<b.length){const Y=b.charAt(Z);if(!J.includes(Y))break;Z++}while(G>Z){const Y=G-1,H=b.charAt(Y);if(!Q.includes(H))break;G=Y}return[b.slice(0,Z),q(b.slice(Z,G)),b.slice(G)]}var Tb=/([\p{Ll}\d])(\p{Lu})/gu,Sb=/(\p{Lu})([\p{Lu}][\p{Ll}])/gu,mb=/(\d)\p{Ll}|(\p{L})\d/u,kb=/[^\p{L}\d]+/giu;function x(b,$={}){const{locale:q=void 0,sentenceCase:J=!1,sentenceTerminators:Q=Db,titleTerminators:Z=db,smallWords:G=ab,wordSeparators:Y=cb}=typeof $==="string"||Array.isArray($)?{locale:$}:$,H=J?Q:Z;let X="",L=!0;for(let W of b.matchAll(yb)){const{1:B,2:V,index:j=0}=W;if(V){X+=V;continue}if(hb.test(B)){const K=B.match(wb);if(K){const[D,O="",U=""]=K;X+=J&&!L?B:Kb(B,O.length,q),L=H.has(U.charAt(0));continue}X+=B,L=H.has(B.charAt(B.length-1))}else{const K=Array.from(B.matchAll(fb));let D=B,O=!1;for(let U=0;U<K.length;U++){const{0:_,index:f=0}=K[U],Bb=B.charAt(f+_.length);if(O=H.has(Bb),L)L=!1;else if(J||xb.test(_))continue;else if(K.length===1){if(G.has(_)){if(j+B.length!==b.length&&!O)continue}}else if(U>0){if(!Y.has(B.charAt(f-1)))continue;if(G.has(_)&&Y.has(Bb))continue}D=Kb(D,f,q)}X+=D,L=O||H.has(B.charAt(B.length-1))}}return X}function Kb(b,$,q){return b.slice(0,$)+b.charAt($).toLocaleUpperCase(q)+b.slice($+1)}var yb=/(\S+)|(.)/g,hb=/[\.#]\p{Alphabetic}/u,xb=/\p{Ll}(?=[\p{Lu}])/u,fb=/\p{Alphabetic}+/gu,wb=/^(\P{Alphabetic})*(?:\p{Alphabetic}\.){2,}(\P{Alphabetic})*$/u,cb=new Set(["\u2014","\u2013","-","\u2015","/"]),Db=new Set([".","!","?"]),db=new Set([...Db,":",'"',"'","\u201D"]),ab=new Set(["a","an","and","as","at","because","but","by","en","for","if","in","neither","nor","of","on","only","or","over","per","so","some","than","that","the","to","up","upon","v","versus","via","vs","when","with","without","yet"]);var P=Gb(Ob(),1),bb=(b,$,q)=>{if($!==void 0&&q)return`${$} ${P.plural(b)}`;return P.plural(b)},$b=(b)=>P.singular(b),qb=(b)=>P.isPlural(b),Jb=(b)=>P.isSingular(b),Qb=(b,$)=>P.addPluralRule(b,$),Vb=(b,$)=>P.addSingularRule(b,$),Zb=(b,$)=>P.addIrregularRule(b,$),jb=(b)=>P.addUncountableRule(b);var Lb={slash(b){return l(b)},ensurePrefix(b,$){return u(b,$)},ensureSuffix(b,$){return p(b,$)},template(b,...$){return i(b,...$)},truncate(b,$,q="..."){return o(b,$,q)},random(b=16){return r(b)},capitalize(b){return n(b)},slug(b){return s(b)},detectIndent(b){return F(b)},detectNewline(b){return C(b)},camelCase(b){return E(b)},capitalCase(b){return T(b)},constantCase(b){return S(b)},dotCase(b){return m(b)},noCase(b){return z(b)},paramCase(b){return v(b)},pascalCase(b){return I(b)},pathCase(b){return k(b)},sentenceCase(b){return g(b)},snakeCase(b){return y(b)},titleCase(b){return x(b)},kebabCase(b){return v(b)},plural(b){return bb(b)},singular(b){return $b(b)},isPlural(b){return qb(b)},isSingular(b){return Jb(b)},addPluralRule(b,$){return Qb(b,$)},addSingularRule(b,$){return Vb(b,$)},addIrregularRule(b,$){return Zb(b,$)},addUncountableRule(b){return jb(b)}},ib=Lb;function ob(b){return Object.prototype.toString.call(b)}export{o as truncate,ob as toString,x as titleCase,i as template,Pb as string,ib as str,M as split,y as snakeCase,s as slug,l as slash,$b as singular,g as sentenceCase,r as random,bb as plural,k as pathCase,I as pascalCase,v as paramCase,z as noCase,lb as lowercase,v as kebabCase,Jb as isSingular,qb as isPlural,p as ensureSuffix,u as ensurePrefix,m as dotCase,C as detectNewline,F as detectIndent,S as constantCase,n as capitalize,T as capitalCase,E as camelCase,jb as addUncountableRule,Vb as addSingularRule,Qb as addPluralRule,Zb as addIrregularRule,Lb as Str};
11
2
 
12
- // src/string.ts
13
- var exports_string = {};
14
- __export(exports_string, {
15
- truncate: () => truncate,
16
- toString: () => toString,
17
- titleCase: () => titleCase,
18
- template: () => template,
19
- str: () => str,
20
- split: () => split,
21
- snakeCase: () => snakeCase,
22
- slug: () => slug,
23
- slash: () => slash,
24
- singular: () => singular2,
25
- sentenceCase: () => sentenceCase,
26
- random: () => random,
27
- plural: () => plural2,
28
- pathCase: () => pathCase,
29
- pascalCase: () => pascalCase,
30
- paramCase: () => kebabCase2,
31
- noCase: () => noCase,
32
- lowercase: () => lowercase,
33
- kebabCase: () => kebabCase,
34
- isSingular: () => isSingular2,
35
- isPlural: () => isPlural2,
36
- ensureSuffix: () => ensureSuffix,
37
- ensurePrefix: () => ensurePrefix,
38
- dotCase: () => dotCase,
39
- detectNewline: () => detectNewline,
40
- detectIndent: () => default2,
41
- constantCase: () => constantCase,
42
- capitalize: () => capitalize,
43
- capitalCase: () => capitalCase,
44
- camelCase: () => camelCase,
45
- addUncountableRule: () => addUncountableRule2,
46
- addSingularRule: () => addSingularRule2,
47
- addPluralRule: () => addPluralRule2,
48
- addIrregularRule: () => addIrregularRule2,
49
- Str: () => Str
50
- });
51
-
52
- // src/utils.ts
53
- import slugify from "slugify";
54
- function slash(str) {
55
- return str.replace(/\\/g, "/");
56
- }
57
- function ensurePrefix(prefix, str) {
58
- if (!str.startsWith(prefix))
59
- return prefix + str;
60
- return str;
61
- }
62
- function ensureSuffix(suffix, str) {
63
- return str.endsWith(suffix) ? str : str + suffix;
64
- }
65
- function template(str, ...args) {
66
- return str.replace(/{(\d+)}/g, (match, key) => {
67
- const index = Number(key);
68
- return Number.isNaN(index) ? match : args[index];
69
- });
70
- }
71
- function truncate(str, length, end = "...") {
72
- if (str.length <= length)
73
- return str;
74
- return str.slice(0, length - end.length) + end;
75
- }
76
- function random(size = 16, dict = urlAlphabet) {
77
- let id = "";
78
- let i = size;
79
- const len = dict.length;
80
- while (i--)
81
- id += dict[Math.random() * len | 0];
82
- return id;
83
- }
84
- function slug(str, options) {
85
- if (options)
86
- return slugify(str, options);
87
- return slugify(str, {
88
- lower: true,
89
- strict: true
90
- });
91
- }
92
- import {default as default2} from "detect-indent";
93
- import {detectNewline} from "detect-newline";
94
- var urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
95
- // src/case.ts
96
- function capitalize(str) {
97
- return str[0] ? str[0].toUpperCase() + str.slice(1).toLowerCase() : "";
98
- }
99
- function lowercase(str) {
100
- return str.toLowerCase();
101
- }
102
- import {
103
- camelCase,
104
- capitalCase,
105
- constantCase,
106
- dotCase,
107
- noCase,
108
- kebabCase,
109
- kebabCase as kebabCase2,
110
- pascalCase,
111
- pathCase,
112
- sentenceCase,
113
- snakeCase,
114
- split
115
- } from "change-case";
116
- import {titleCase} from "title-case";
117
- // src/pluralize.ts
118
- import * as pluralize from "pluralize";
119
- var plural2 = (word, count, inclusive) => {
120
- if (count !== undefined && inclusive)
121
- return `${count} ${pluralize.plural(word)}`;
122
- return pluralize.plural(word);
123
- };
124
- var singular2 = (word) => pluralize.singular(word);
125
- var isPlural2 = (word) => pluralize.isPlural(word);
126
- var isSingular2 = (word) => pluralize.isSingular(word);
127
- var addPluralRule2 = (rule, replacement) => pluralize.addPluralRule(rule, replacement);
128
- var addSingularRule2 = (rule, replacement) => pluralize.addSingularRule(rule, replacement);
129
- var addIrregularRule2 = (single, plural3) => pluralize.addIrregularRule(single, plural3);
130
- var addUncountableRule2 = (word) => pluralize.addUncountableRule(word);
131
- // src/macro.ts
132
- var Str = {
133
- slash(str) {
134
- return slash(str);
135
- },
136
- ensurePrefix(prefix, str) {
137
- return ensurePrefix(prefix, str);
138
- },
139
- ensureSuffix(suffix, str) {
140
- return ensureSuffix(suffix, str);
141
- },
142
- template(str, ...args) {
143
- return template(str, ...args);
144
- },
145
- truncate(str, length, end = "...") {
146
- return truncate(str, length, end);
147
- },
148
- random(length = 16) {
149
- return random(length);
150
- },
151
- capitalize(str) {
152
- return capitalize(str);
153
- },
154
- slug(str) {
155
- return slug(str);
156
- },
157
- detectIndent(str) {
158
- return default2(str);
159
- },
160
- detectNewline(str) {
161
- return detectNewline(str);
162
- },
163
- camelCase(str) {
164
- return camelCase(str);
165
- },
166
- capitalCase(str) {
167
- return capitalCase(str);
168
- },
169
- constantCase(str) {
170
- return constantCase(str);
171
- },
172
- dotCase(str) {
173
- return dotCase(str);
174
- },
175
- noCase(str) {
176
- return noCase(str);
177
- },
178
- paramCase(str) {
179
- return kebabCase2(str);
180
- },
181
- pascalCase(str) {
182
- return pascalCase(str);
183
- },
184
- pathCase(str) {
185
- return pathCase(str);
186
- },
187
- sentenceCase(str) {
188
- return sentenceCase(str);
189
- },
190
- snakeCase(str) {
191
- return snakeCase(str);
192
- },
193
- titleCase(str) {
194
- return titleCase(str);
195
- },
196
- kebabCase(str) {
197
- return kebabCase(str);
198
- },
199
- plural(str) {
200
- return plural2(str);
201
- },
202
- singular(str) {
203
- return singular2(str);
204
- },
205
- isPlural(str) {
206
- return isPlural2(str);
207
- },
208
- isSingular(str) {
209
- return isSingular2(str);
210
- },
211
- addPluralRule(rule, repl) {
212
- return addPluralRule2(rule, repl);
213
- },
214
- addSingularRule(rule, repl) {
215
- return addSingularRule2(rule, repl);
216
- },
217
- addIrregularRule(single, plural3) {
218
- return addIrregularRule2(single, plural3);
219
- },
220
- addUncountableRule(word) {
221
- return addUncountableRule2(word);
222
- }
223
- };
224
- var str = Str;
225
- // src/helpers.ts
226
- function toString(v) {
227
- return Object.prototype.toString.call(v);
228
- }
229
- export {
230
- truncate,
231
- toString,
232
- titleCase,
233
- template,
234
- exports_string as string,
235
- str,
236
- split,
237
- snakeCase,
238
- slug,
239
- slash,
240
- singular2 as singular,
241
- sentenceCase,
242
- random,
243
- plural2 as plural,
244
- pathCase,
245
- pascalCase,
246
- kebabCase2 as paramCase,
247
- noCase,
248
- lowercase,
249
- kebabCase,
250
- isSingular2 as isSingular,
251
- isPlural2 as isPlural,
252
- ensureSuffix,
253
- ensurePrefix,
254
- dotCase,
255
- detectNewline,
256
- default2 as detectIndent,
257
- constantCase,
258
- capitalize,
259
- capitalCase,
260
- camelCase,
261
- addUncountableRule2 as addUncountableRule,
262
- addSingularRule2 as addSingularRule,
263
- addPluralRule2 as addPluralRule,
264
- addIrregularRule2 as addIrregularRule,
265
- Str
266
- };
3
+ //# debugId=E599D642435C40F964756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,20 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../node_modules/slugify/slugify.js", "../../../../../node_modules/pluralize/pluralize.js", "../src/utils.ts", "../../../../../node_modules/detect-indent/index.js", "../../../../../node_modules/detect-newline/index.js", "../src/case.ts", "../../../../../node_modules/change-case/dist/index.js", "../../../../../node_modules/title-case/dist/index.js", "../src/pluralize.ts", "../src/macro.ts", "../src/helpers.ts"],
4
+ "sourcesContent": [
5
+ "\n;(function (name, root, factory) {\n if (typeof exports === 'object') {\n module.exports = factory()\n module.exports['default'] = factory()\n }\n /* istanbul ignore next */\n else if (typeof define === 'function' && define.amd) {\n define(factory)\n }\n else {\n root[name] = factory()\n }\n}('slugify', this, function () {\n var charMap = JSON.parse('{\"$\":\"dollar\",\"%\":\"percent\",\"&\":\"and\",\"<\":\"less\",\">\":\"greater\",\"|\":\"or\",\"¢\":\"cent\",\"£\":\"pound\",\"¤\":\"currency\",\"¥\":\"yen\",\"©\":\"(c)\",\"ª\":\"a\",\"®\":\"(r)\",\"º\":\"o\",\"À\":\"A\",\"Á\":\"A\",\"Â\":\"A\",\"Ã\":\"A\",\"Ä\":\"A\",\"Å\":\"A\",\"Æ\":\"AE\",\"Ç\":\"C\",\"È\":\"E\",\"É\":\"E\",\"Ê\":\"E\",\"Ë\":\"E\",\"Ì\":\"I\",\"Í\":\"I\",\"Î\":\"I\",\"Ï\":\"I\",\"Ð\":\"D\",\"Ñ\":\"N\",\"Ò\":\"O\",\"Ó\":\"O\",\"Ô\":\"O\",\"Õ\":\"O\",\"Ö\":\"O\",\"Ø\":\"O\",\"Ù\":\"U\",\"Ú\":\"U\",\"Û\":\"U\",\"Ü\":\"U\",\"Ý\":\"Y\",\"Þ\":\"TH\",\"ß\":\"ss\",\"à\":\"a\",\"á\":\"a\",\"â\":\"a\",\"ã\":\"a\",\"ä\":\"a\",\"å\":\"a\",\"æ\":\"ae\",\"ç\":\"c\",\"è\":\"e\",\"é\":\"e\",\"ê\":\"e\",\"ë\":\"e\",\"ì\":\"i\",\"í\":\"i\",\"î\":\"i\",\"ï\":\"i\",\"ð\":\"d\",\"ñ\":\"n\",\"ò\":\"o\",\"ó\":\"o\",\"ô\":\"o\",\"õ\":\"o\",\"ö\":\"o\",\"ø\":\"o\",\"ù\":\"u\",\"ú\":\"u\",\"û\":\"u\",\"ü\":\"u\",\"ý\":\"y\",\"þ\":\"th\",\"ÿ\":\"y\",\"Ā\":\"A\",\"ā\":\"a\",\"Ă\":\"A\",\"ă\":\"a\",\"Ą\":\"A\",\"ą\":\"a\",\"Ć\":\"C\",\"ć\":\"c\",\"Č\":\"C\",\"č\":\"c\",\"Ď\":\"D\",\"ď\":\"d\",\"Đ\":\"DJ\",\"đ\":\"dj\",\"Ē\":\"E\",\"ē\":\"e\",\"Ė\":\"E\",\"ė\":\"e\",\"Ę\":\"e\",\"ę\":\"e\",\"Ě\":\"E\",\"ě\":\"e\",\"Ğ\":\"G\",\"ğ\":\"g\",\"Ģ\":\"G\",\"ģ\":\"g\",\"Ĩ\":\"I\",\"ĩ\":\"i\",\"Ī\":\"i\",\"ī\":\"i\",\"Į\":\"I\",\"į\":\"i\",\"İ\":\"I\",\"ı\":\"i\",\"Ķ\":\"k\",\"ķ\":\"k\",\"Ļ\":\"L\",\"ļ\":\"l\",\"Ľ\":\"L\",\"ľ\":\"l\",\"Ł\":\"L\",\"ł\":\"l\",\"Ń\":\"N\",\"ń\":\"n\",\"Ņ\":\"N\",\"ņ\":\"n\",\"Ň\":\"N\",\"ň\":\"n\",\"Ō\":\"O\",\"ō\":\"o\",\"Ő\":\"O\",\"ő\":\"o\",\"Œ\":\"OE\",\"œ\":\"oe\",\"Ŕ\":\"R\",\"ŕ\":\"r\",\"Ř\":\"R\",\"ř\":\"r\",\"Ś\":\"S\",\"ś\":\"s\",\"Ş\":\"S\",\"ş\":\"s\",\"Š\":\"S\",\"š\":\"s\",\"Ţ\":\"T\",\"ţ\":\"t\",\"Ť\":\"T\",\"ť\":\"t\",\"Ũ\":\"U\",\"ũ\":\"u\",\"Ū\":\"u\",\"ū\":\"u\",\"Ů\":\"U\",\"ů\":\"u\",\"Ű\":\"U\",\"ű\":\"u\",\"Ų\":\"U\",\"ų\":\"u\",\"Ŵ\":\"W\",\"ŵ\":\"w\",\"Ŷ\":\"Y\",\"ŷ\":\"y\",\"Ÿ\":\"Y\",\"Ź\":\"Z\",\"ź\":\"z\",\"Ż\":\"Z\",\"ż\":\"z\",\"Ž\":\"Z\",\"ž\":\"z\",\"Ə\":\"E\",\"ƒ\":\"f\",\"Ơ\":\"O\",\"ơ\":\"o\",\"Ư\":\"U\",\"ư\":\"u\",\"Lj\":\"LJ\",\"lj\":\"lj\",\"Nj\":\"NJ\",\"nj\":\"nj\",\"Ș\":\"S\",\"ș\":\"s\",\"Ț\":\"T\",\"ț\":\"t\",\"ə\":\"e\",\"˚\":\"o\",\"Ά\":\"A\",\"Έ\":\"E\",\"Ή\":\"H\",\"Ί\":\"I\",\"Ό\":\"O\",\"Ύ\":\"Y\",\"Ώ\":\"W\",\"ΐ\":\"i\",\"Α\":\"A\",\"Β\":\"B\",\"Γ\":\"G\",\"Δ\":\"D\",\"Ε\":\"E\",\"Ζ\":\"Z\",\"Η\":\"H\",\"Θ\":\"8\",\"Ι\":\"I\",\"Κ\":\"K\",\"Λ\":\"L\",\"Μ\":\"M\",\"Ν\":\"N\",\"Ξ\":\"3\",\"Ο\":\"O\",\"Π\":\"P\",\"Ρ\":\"R\",\"Σ\":\"S\",\"Τ\":\"T\",\"Υ\":\"Y\",\"Φ\":\"F\",\"Χ\":\"X\",\"Ψ\":\"PS\",\"Ω\":\"W\",\"Ϊ\":\"I\",\"Ϋ\":\"Y\",\"ά\":\"a\",\"έ\":\"e\",\"ή\":\"h\",\"ί\":\"i\",\"ΰ\":\"y\",\"α\":\"a\",\"β\":\"b\",\"γ\":\"g\",\"δ\":\"d\",\"ε\":\"e\",\"ζ\":\"z\",\"η\":\"h\",\"θ\":\"8\",\"ι\":\"i\",\"κ\":\"k\",\"λ\":\"l\",\"μ\":\"m\",\"ν\":\"n\",\"ξ\":\"3\",\"ο\":\"o\",\"π\":\"p\",\"ρ\":\"r\",\"ς\":\"s\",\"σ\":\"s\",\"τ\":\"t\",\"υ\":\"y\",\"φ\":\"f\",\"χ\":\"x\",\"ψ\":\"ps\",\"ω\":\"w\",\"ϊ\":\"i\",\"ϋ\":\"y\",\"ό\":\"o\",\"ύ\":\"y\",\"ώ\":\"w\",\"Ё\":\"Yo\",\"Ђ\":\"DJ\",\"Є\":\"Ye\",\"І\":\"I\",\"Ї\":\"Yi\",\"Ј\":\"J\",\"Љ\":\"LJ\",\"Њ\":\"NJ\",\"Ћ\":\"C\",\"Џ\":\"DZ\",\"А\":\"A\",\"Б\":\"B\",\"В\":\"V\",\"Г\":\"G\",\"Д\":\"D\",\"Е\":\"E\",\"Ж\":\"Zh\",\"З\":\"Z\",\"И\":\"I\",\"Й\":\"J\",\"К\":\"K\",\"Л\":\"L\",\"М\":\"M\",\"Н\":\"N\",\"О\":\"O\",\"П\":\"P\",\"Р\":\"R\",\"С\":\"S\",\"Т\":\"T\",\"У\":\"U\",\"Ф\":\"F\",\"Х\":\"H\",\"Ц\":\"C\",\"Ч\":\"Ch\",\"Ш\":\"Sh\",\"Щ\":\"Sh\",\"Ъ\":\"U\",\"Ы\":\"Y\",\"Ь\":\"\",\"Э\":\"E\",\"Ю\":\"Yu\",\"Я\":\"Ya\",\"а\":\"a\",\"б\":\"b\",\"в\":\"v\",\"г\":\"g\",\"д\":\"d\",\"е\":\"e\",\"ж\":\"zh\",\"з\":\"z\",\"и\":\"i\",\"й\":\"j\",\"к\":\"k\",\"л\":\"l\",\"м\":\"m\",\"н\":\"n\",\"о\":\"o\",\"п\":\"p\",\"р\":\"r\",\"с\":\"s\",\"т\":\"t\",\"у\":\"u\",\"ф\":\"f\",\"х\":\"h\",\"ц\":\"c\",\"ч\":\"ch\",\"ш\":\"sh\",\"щ\":\"sh\",\"ъ\":\"u\",\"ы\":\"y\",\"ь\":\"\",\"э\":\"e\",\"ю\":\"yu\",\"я\":\"ya\",\"ё\":\"yo\",\"ђ\":\"dj\",\"є\":\"ye\",\"і\":\"i\",\"ї\":\"yi\",\"ј\":\"j\",\"љ\":\"lj\",\"њ\":\"nj\",\"ћ\":\"c\",\"ѝ\":\"u\",\"џ\":\"dz\",\"Ґ\":\"G\",\"ґ\":\"g\",\"Ғ\":\"GH\",\"ғ\":\"gh\",\"Қ\":\"KH\",\"қ\":\"kh\",\"Ң\":\"NG\",\"ң\":\"ng\",\"Ү\":\"UE\",\"ү\":\"ue\",\"Ұ\":\"U\",\"ұ\":\"u\",\"Һ\":\"H\",\"һ\":\"h\",\"Ә\":\"AE\",\"ә\":\"ae\",\"Ө\":\"OE\",\"ө\":\"oe\",\"Ա\":\"A\",\"Բ\":\"B\",\"Գ\":\"G\",\"Դ\":\"D\",\"Ե\":\"E\",\"Զ\":\"Z\",\"Է\":\"E\\'\",\"Ը\":\"Y\\'\",\"Թ\":\"T\\'\",\"Ժ\":\"JH\",\"Ի\":\"I\",\"Լ\":\"L\",\"Խ\":\"X\",\"Ծ\":\"C\\'\",\"Կ\":\"K\",\"Հ\":\"H\",\"Ձ\":\"D\\'\",\"Ղ\":\"GH\",\"Ճ\":\"TW\",\"Մ\":\"M\",\"Յ\":\"Y\",\"Ն\":\"N\",\"Շ\":\"SH\",\"Չ\":\"CH\",\"Պ\":\"P\",\"Ջ\":\"J\",\"Ռ\":\"R\\'\",\"Ս\":\"S\",\"Վ\":\"V\",\"Տ\":\"T\",\"Ր\":\"R\",\"Ց\":\"C\",\"Փ\":\"P\\'\",\"Ք\":\"Q\\'\",\"Օ\":\"O\\'\\'\",\"Ֆ\":\"F\",\"և\":\"EV\",\"ء\":\"a\",\"آ\":\"aa\",\"أ\":\"a\",\"ؤ\":\"u\",\"إ\":\"i\",\"ئ\":\"e\",\"ا\":\"a\",\"ب\":\"b\",\"ة\":\"h\",\"ت\":\"t\",\"ث\":\"th\",\"ج\":\"j\",\"ح\":\"h\",\"خ\":\"kh\",\"د\":\"d\",\"ذ\":\"th\",\"ر\":\"r\",\"ز\":\"z\",\"س\":\"s\",\"ش\":\"sh\",\"ص\":\"s\",\"ض\":\"dh\",\"ط\":\"t\",\"ظ\":\"z\",\"ع\":\"a\",\"غ\":\"gh\",\"ف\":\"f\",\"ق\":\"q\",\"ك\":\"k\",\"ل\":\"l\",\"م\":\"m\",\"ن\":\"n\",\"ه\":\"h\",\"و\":\"w\",\"ى\":\"a\",\"ي\":\"y\",\"ً\":\"an\",\"ٌ\":\"on\",\"ٍ\":\"en\",\"َ\":\"a\",\"ُ\":\"u\",\"ِ\":\"e\",\"ْ\":\"\",\"٠\":\"0\",\"١\":\"1\",\"٢\":\"2\",\"٣\":\"3\",\"٤\":\"4\",\"٥\":\"5\",\"٦\":\"6\",\"٧\":\"7\",\"٨\":\"8\",\"٩\":\"9\",\"پ\":\"p\",\"چ\":\"ch\",\"ژ\":\"zh\",\"ک\":\"k\",\"گ\":\"g\",\"ی\":\"y\",\"۰\":\"0\",\"۱\":\"1\",\"۲\":\"2\",\"۳\":\"3\",\"۴\":\"4\",\"۵\":\"5\",\"۶\":\"6\",\"۷\":\"7\",\"۸\":\"8\",\"۹\":\"9\",\"฿\":\"baht\",\"ა\":\"a\",\"ბ\":\"b\",\"გ\":\"g\",\"დ\":\"d\",\"ე\":\"e\",\"ვ\":\"v\",\"ზ\":\"z\",\"თ\":\"t\",\"ი\":\"i\",\"კ\":\"k\",\"ლ\":\"l\",\"მ\":\"m\",\"ნ\":\"n\",\"ო\":\"o\",\"პ\":\"p\",\"ჟ\":\"zh\",\"რ\":\"r\",\"ს\":\"s\",\"ტ\":\"t\",\"უ\":\"u\",\"ფ\":\"f\",\"ქ\":\"k\",\"ღ\":\"gh\",\"ყ\":\"q\",\"შ\":\"sh\",\"ჩ\":\"ch\",\"ც\":\"ts\",\"ძ\":\"dz\",\"წ\":\"ts\",\"ჭ\":\"ch\",\"ხ\":\"kh\",\"ჯ\":\"j\",\"ჰ\":\"h\",\"Ṣ\":\"S\",\"ṣ\":\"s\",\"Ẁ\":\"W\",\"ẁ\":\"w\",\"Ẃ\":\"W\",\"ẃ\":\"w\",\"Ẅ\":\"W\",\"ẅ\":\"w\",\"ẞ\":\"SS\",\"Ạ\":\"A\",\"ạ\":\"a\",\"Ả\":\"A\",\"ả\":\"a\",\"Ấ\":\"A\",\"ấ\":\"a\",\"Ầ\":\"A\",\"ầ\":\"a\",\"Ẩ\":\"A\",\"ẩ\":\"a\",\"Ẫ\":\"A\",\"ẫ\":\"a\",\"Ậ\":\"A\",\"ậ\":\"a\",\"Ắ\":\"A\",\"ắ\":\"a\",\"Ằ\":\"A\",\"ằ\":\"a\",\"Ẳ\":\"A\",\"ẳ\":\"a\",\"Ẵ\":\"A\",\"ẵ\":\"a\",\"Ặ\":\"A\",\"ặ\":\"a\",\"Ẹ\":\"E\",\"ẹ\":\"e\",\"Ẻ\":\"E\",\"ẻ\":\"e\",\"Ẽ\":\"E\",\"ẽ\":\"e\",\"Ế\":\"E\",\"ế\":\"e\",\"Ề\":\"E\",\"ề\":\"e\",\"Ể\":\"E\",\"ể\":\"e\",\"Ễ\":\"E\",\"ễ\":\"e\",\"Ệ\":\"E\",\"ệ\":\"e\",\"Ỉ\":\"I\",\"ỉ\":\"i\",\"Ị\":\"I\",\"ị\":\"i\",\"Ọ\":\"O\",\"ọ\":\"o\",\"Ỏ\":\"O\",\"ỏ\":\"o\",\"Ố\":\"O\",\"ố\":\"o\",\"Ồ\":\"O\",\"ồ\":\"o\",\"Ổ\":\"O\",\"ổ\":\"o\",\"Ỗ\":\"O\",\"ỗ\":\"o\",\"Ộ\":\"O\",\"ộ\":\"o\",\"Ớ\":\"O\",\"ớ\":\"o\",\"Ờ\":\"O\",\"ờ\":\"o\",\"Ở\":\"O\",\"ở\":\"o\",\"Ỡ\":\"O\",\"ỡ\":\"o\",\"Ợ\":\"O\",\"ợ\":\"o\",\"Ụ\":\"U\",\"ụ\":\"u\",\"Ủ\":\"U\",\"ủ\":\"u\",\"Ứ\":\"U\",\"ứ\":\"u\",\"Ừ\":\"U\",\"ừ\":\"u\",\"Ử\":\"U\",\"ử\":\"u\",\"Ữ\":\"U\",\"ữ\":\"u\",\"Ự\":\"U\",\"ự\":\"u\",\"Ỳ\":\"Y\",\"ỳ\":\"y\",\"Ỵ\":\"Y\",\"ỵ\":\"y\",\"Ỷ\":\"Y\",\"ỷ\":\"y\",\"Ỹ\":\"Y\",\"ỹ\":\"y\",\"–\":\"-\",\"‘\":\"\\'\",\"’\":\"\\'\",\"“\":\"\\\\\\\"\",\"”\":\"\\\\\\\"\",\"„\":\"\\\\\\\"\",\"†\":\"+\",\"•\":\"*\",\"…\":\"...\",\"₠\":\"ecu\",\"₢\":\"cruzeiro\",\"₣\":\"french franc\",\"₤\":\"lira\",\"₥\":\"mill\",\"₦\":\"naira\",\"₧\":\"peseta\",\"₨\":\"rupee\",\"₩\":\"won\",\"₪\":\"new shequel\",\"₫\":\"dong\",\"€\":\"euro\",\"₭\":\"kip\",\"₮\":\"tugrik\",\"₯\":\"drachma\",\"₰\":\"penny\",\"₱\":\"peso\",\"₲\":\"guarani\",\"₳\":\"austral\",\"₴\":\"hryvnia\",\"₵\":\"cedi\",\"₸\":\"kazakhstani tenge\",\"₹\":\"indian rupee\",\"₺\":\"turkish lira\",\"₽\":\"russian ruble\",\"₿\":\"bitcoin\",\"℠\":\"sm\",\"™\":\"tm\",\"∂\":\"d\",\"∆\":\"delta\",\"∑\":\"sum\",\"∞\":\"infinity\",\"♥\":\"love\",\"元\":\"yuan\",\"円\":\"yen\",\"﷼\":\"rial\",\"ﻵ\":\"laa\",\"ﻷ\":\"laa\",\"ﻹ\":\"lai\",\"ﻻ\":\"la\"}')\n var locales = JSON.parse('{\"bg\":{\"Й\":\"Y\",\"Ц\":\"Ts\",\"Щ\":\"Sht\",\"Ъ\":\"A\",\"Ь\":\"Y\",\"й\":\"y\",\"ц\":\"ts\",\"щ\":\"sht\",\"ъ\":\"a\",\"ь\":\"y\"},\"de\":{\"Ä\":\"AE\",\"ä\":\"ae\",\"Ö\":\"OE\",\"ö\":\"oe\",\"Ü\":\"UE\",\"ü\":\"ue\",\"ß\":\"ss\",\"%\":\"prozent\",\"&\":\"und\",\"|\":\"oder\",\"∑\":\"summe\",\"∞\":\"unendlich\",\"♥\":\"liebe\"},\"es\":{\"%\":\"por ciento\",\"&\":\"y\",\"<\":\"menor que\",\">\":\"mayor que\",\"|\":\"o\",\"¢\":\"centavos\",\"£\":\"libras\",\"¤\":\"moneda\",\"₣\":\"francos\",\"∑\":\"suma\",\"∞\":\"infinito\",\"♥\":\"amor\"},\"fr\":{\"%\":\"pourcent\",\"&\":\"et\",\"<\":\"plus petit\",\">\":\"plus grand\",\"|\":\"ou\",\"¢\":\"centime\",\"£\":\"livre\",\"¤\":\"devise\",\"₣\":\"franc\",\"∑\":\"somme\",\"∞\":\"infini\",\"♥\":\"amour\"},\"pt\":{\"%\":\"porcento\",\"&\":\"e\",\"<\":\"menor\",\">\":\"maior\",\"|\":\"ou\",\"¢\":\"centavo\",\"∑\":\"soma\",\"£\":\"libra\",\"∞\":\"infinito\",\"♥\":\"amor\"},\"uk\":{\"И\":\"Y\",\"и\":\"y\",\"Й\":\"Y\",\"й\":\"y\",\"Ц\":\"Ts\",\"ц\":\"ts\",\"Х\":\"Kh\",\"х\":\"kh\",\"Щ\":\"Shch\",\"щ\":\"shch\",\"Г\":\"H\",\"г\":\"h\"},\"vi\":{\"Đ\":\"D\",\"đ\":\"d\"},\"da\":{\"Ø\":\"OE\",\"ø\":\"oe\",\"Å\":\"AA\",\"å\":\"aa\",\"%\":\"procent\",\"&\":\"og\",\"|\":\"eller\",\"$\":\"dollar\",\"<\":\"mindre end\",\">\":\"større end\"},\"nb\":{\"&\":\"og\",\"Å\":\"AA\",\"Æ\":\"AE\",\"Ø\":\"OE\",\"å\":\"aa\",\"æ\":\"ae\",\"ø\":\"oe\"},\"it\":{\"&\":\"e\"},\"nl\":{\"&\":\"en\"},\"sv\":{\"&\":\"och\",\"Å\":\"AA\",\"Ä\":\"AE\",\"Ö\":\"OE\",\"å\":\"aa\",\"ä\":\"ae\",\"ö\":\"oe\"}}')\n\n function replace (string, options) {\n if (typeof string !== 'string') {\n throw new Error('slugify: string argument expected')\n }\n\n options = (typeof options === 'string')\n ? {replacement: options}\n : options || {}\n\n var locale = locales[options.locale] || {}\n\n var replacement = options.replacement === undefined ? '-' : options.replacement\n\n var trim = options.trim === undefined ? true : options.trim\n\n var slug = string.normalize().split('')\n // replace characters based on charMap\n .reduce(function (result, ch) {\n var appendChar = locale[ch];\n if (appendChar === undefined) appendChar = charMap[ch];\n if (appendChar === undefined) appendChar = ch;\n if (appendChar === replacement) appendChar = ' ';\n return result + appendChar\n // remove not allowed characters\n .replace(options.remove || /[^\\w\\s$*_+~.()'\"!\\-:@]+/g, '')\n }, '');\n\n if (options.strict) {\n slug = slug.replace(/[^A-Za-z0-9\\s]/g, '');\n }\n\n if (trim) {\n slug = slug.trim()\n }\n\n // Replace spaces with replacement character, treating multiple consecutive\n // spaces as a single space.\n slug = slug.replace(/\\s+/g, replacement);\n\n if (options.lower) {\n slug = slug.toLowerCase()\n }\n\n return slug\n }\n\n replace.extend = function (customMap) {\n Object.assign(charMap, customMap)\n }\n\n return replace\n}))\n",
6
+ "/* global define */\n\n(function (root, pluralize) {\n /* istanbul ignore else */\n if (typeof require === 'function' && typeof exports === 'object' && typeof module === 'object') {\n // Node.\n module.exports = pluralize();\n } else if (typeof define === 'function' && define.amd) {\n // AMD, registers as an anonymous module.\n define(function () {\n return pluralize();\n });\n } else {\n // Browser global.\n root.pluralize = pluralize();\n }\n})(this, function () {\n // Rule storage - pluralize and singularize need to be run sequentially,\n // while other rules can be optimized using an object for instant lookups.\n var pluralRules = [];\n var singularRules = [];\n var uncountables = {};\n var irregularPlurals = {};\n var irregularSingles = {};\n\n /**\n * Sanitize a pluralization rule to a usable regular expression.\n *\n * @param {(RegExp|string)} rule\n * @return {RegExp}\n */\n function sanitizeRule (rule) {\n if (typeof rule === 'string') {\n return new RegExp('^' + rule + '$', 'i');\n }\n\n return rule;\n }\n\n /**\n * Pass in a word token to produce a function that can replicate the case on\n * another word.\n *\n * @param {string} word\n * @param {string} token\n * @return {Function}\n */\n function restoreCase (word, token) {\n // Tokens are an exact match.\n if (word === token) return token;\n\n // Lower cased words. E.g. \"hello\".\n if (word === word.toLowerCase()) return token.toLowerCase();\n\n // Upper cased words. E.g. \"WHISKY\".\n if (word === word.toUpperCase()) return token.toUpperCase();\n\n // Title cased words. E.g. \"Title\".\n if (word[0] === word[0].toUpperCase()) {\n return token.charAt(0).toUpperCase() + token.substr(1).toLowerCase();\n }\n\n // Lower cased words. E.g. \"test\".\n return token.toLowerCase();\n }\n\n /**\n * Interpolate a regexp string.\n *\n * @param {string} str\n * @param {Array} args\n * @return {string}\n */\n function interpolate (str, args) {\n return str.replace(/\\$(\\d{1,2})/g, function (match, index) {\n return args[index] || '';\n });\n }\n\n /**\n * Replace a word using a rule.\n *\n * @param {string} word\n * @param {Array} rule\n * @return {string}\n */\n function replace (word, rule) {\n return word.replace(rule[0], function (match, index) {\n var result = interpolate(rule[1], arguments);\n\n if (match === '') {\n return restoreCase(word[index - 1], result);\n }\n\n return restoreCase(match, result);\n });\n }\n\n /**\n * Sanitize a word by passing in the word and sanitization rules.\n *\n * @param {string} token\n * @param {string} word\n * @param {Array} rules\n * @return {string}\n */\n function sanitizeWord (token, word, rules) {\n // Empty string or doesn't need fixing.\n if (!token.length || uncountables.hasOwnProperty(token)) {\n return word;\n }\n\n var len = rules.length;\n\n // Iterate over the sanitization rules and use the first one to match.\n while (len--) {\n var rule = rules[len];\n\n if (rule[0].test(word)) return replace(word, rule);\n }\n\n return word;\n }\n\n /**\n * Replace a word with the updated word.\n *\n * @param {Object} replaceMap\n * @param {Object} keepMap\n * @param {Array} rules\n * @return {Function}\n */\n function replaceWord (replaceMap, keepMap, rules) {\n return function (word) {\n // Get the correct token and case restoration functions.\n var token = word.toLowerCase();\n\n // Check against the keep object map.\n if (keepMap.hasOwnProperty(token)) {\n return restoreCase(word, token);\n }\n\n // Check against the replacement map for a direct word replacement.\n if (replaceMap.hasOwnProperty(token)) {\n return restoreCase(word, replaceMap[token]);\n }\n\n // Run all the rules against the word.\n return sanitizeWord(token, word, rules);\n };\n }\n\n /**\n * Check if a word is part of the map.\n */\n function checkWord (replaceMap, keepMap, rules, bool) {\n return function (word) {\n var token = word.toLowerCase();\n\n if (keepMap.hasOwnProperty(token)) return true;\n if (replaceMap.hasOwnProperty(token)) return false;\n\n return sanitizeWord(token, token, rules) === token;\n };\n }\n\n /**\n * Pluralize or singularize a word based on the passed in count.\n *\n * @param {string} word The word to pluralize\n * @param {number} count How many of the word exist\n * @param {boolean} inclusive Whether to prefix with the number (e.g. 3 ducks)\n * @return {string}\n */\n function pluralize (word, count, inclusive) {\n var pluralized = count === 1\n ? pluralize.singular(word) : pluralize.plural(word);\n\n return (inclusive ? count + ' ' : '') + pluralized;\n }\n\n /**\n * Pluralize a word.\n *\n * @type {Function}\n */\n pluralize.plural = replaceWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Check if a word is plural.\n *\n * @type {Function}\n */\n pluralize.isPlural = checkWord(\n irregularSingles, irregularPlurals, pluralRules\n );\n\n /**\n * Singularize a word.\n *\n * @type {Function}\n */\n pluralize.singular = replaceWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Check if a word is singular.\n *\n * @type {Function}\n */\n pluralize.isSingular = checkWord(\n irregularPlurals, irregularSingles, singularRules\n );\n\n /**\n * Add a pluralization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addPluralRule = function (rule, replacement) {\n pluralRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add a singularization rule to the collection.\n *\n * @param {(string|RegExp)} rule\n * @param {string} replacement\n */\n pluralize.addSingularRule = function (rule, replacement) {\n singularRules.push([sanitizeRule(rule), replacement]);\n };\n\n /**\n * Add an uncountable word rule.\n *\n * @param {(string|RegExp)} word\n */\n pluralize.addUncountableRule = function (word) {\n if (typeof word === 'string') {\n uncountables[word.toLowerCase()] = true;\n return;\n }\n\n // Set singular and plural references for the word.\n pluralize.addPluralRule(word, '$0');\n pluralize.addSingularRule(word, '$0');\n };\n\n /**\n * Add an irregular word definition.\n *\n * @param {string} single\n * @param {string} plural\n */\n pluralize.addIrregularRule = function (single, plural) {\n plural = plural.toLowerCase();\n single = single.toLowerCase();\n\n irregularSingles[single] = plural;\n irregularPlurals[plural] = single;\n };\n\n /**\n * Irregular rules.\n */\n [\n // Pronouns.\n ['I', 'we'],\n ['me', 'us'],\n ['he', 'they'],\n ['she', 'they'],\n ['them', 'them'],\n ['myself', 'ourselves'],\n ['yourself', 'yourselves'],\n ['itself', 'themselves'],\n ['herself', 'themselves'],\n ['himself', 'themselves'],\n ['themself', 'themselves'],\n ['is', 'are'],\n ['was', 'were'],\n ['has', 'have'],\n ['this', 'these'],\n ['that', 'those'],\n // Words ending in with a consonant and `o`.\n ['echo', 'echoes'],\n ['dingo', 'dingoes'],\n ['volcano', 'volcanoes'],\n ['tornado', 'tornadoes'],\n ['torpedo', 'torpedoes'],\n // Ends with `us`.\n ['genus', 'genera'],\n ['viscus', 'viscera'],\n // Ends with `ma`.\n ['stigma', 'stigmata'],\n ['stoma', 'stomata'],\n ['dogma', 'dogmata'],\n ['lemma', 'lemmata'],\n ['schema', 'schemata'],\n ['anathema', 'anathemata'],\n // Other irregular rules.\n ['ox', 'oxen'],\n ['axe', 'axes'],\n ['die', 'dice'],\n ['yes', 'yeses'],\n ['foot', 'feet'],\n ['eave', 'eaves'],\n ['goose', 'geese'],\n ['tooth', 'teeth'],\n ['quiz', 'quizzes'],\n ['human', 'humans'],\n ['proof', 'proofs'],\n ['carve', 'carves'],\n ['valve', 'valves'],\n ['looey', 'looies'],\n ['thief', 'thieves'],\n ['groove', 'grooves'],\n ['pickaxe', 'pickaxes'],\n ['passerby', 'passersby']\n ].forEach(function (rule) {\n return pluralize.addIrregularRule(rule[0], rule[1]);\n });\n\n /**\n * Pluralization rules.\n */\n [\n [/s?$/i, 's'],\n [/[^\\u0000-\\u007F]$/i, '$0'],\n [/([^aeiou]ese)$/i, '$1'],\n [/(ax|test)is$/i, '$1es'],\n [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, '$1es'],\n [/(e[mn]u)s?$/i, '$1s'],\n [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, '$1'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1i'],\n [/(alumn|alg|vertebr)(?:a|ae)$/i, '$1ae'],\n [/(seraph|cherub)(?:im)?$/i, '$1im'],\n [/(her|at|gr)o$/i, '$1oes'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, '$1a'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, '$1a'],\n [/sis$/i, 'ses'],\n [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, '$1$2ves'],\n [/([^aeiouy]|qu)y$/i, '$1ies'],\n [/([^ch][ieo][ln])ey$/i, '$1ies'],\n [/(x|ch|ss|sh|zz)$/i, '$1es'],\n [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, '$1ices'],\n [/\\b((?:tit)?m|l)(?:ice|ouse)$/i, '$1ice'],\n [/(pe)(?:rson|ople)$/i, '$1ople'],\n [/(child)(?:ren)?$/i, '$1ren'],\n [/eaux$/i, '$0'],\n [/m[ae]n$/i, 'men'],\n ['thou', 'you']\n ].forEach(function (rule) {\n return pluralize.addPluralRule(rule[0], rule[1]);\n });\n\n /**\n * Singularization rules.\n */\n [\n [/s$/i, ''],\n [/(ss)$/i, '$1'],\n [/(wi|kni|(?:after|half|high|low|mid|non|night|[^\\w]|^)li)ves$/i, '$1fe'],\n [/(ar|(?:wo|[ae])l|[eo][ao])ves$/i, '$1f'],\n [/ies$/i, 'y'],\n [/\\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i, '$1ie'],\n [/\\b(mon|smil)ies$/i, '$1ey'],\n [/\\b((?:tit)?m|l)ice$/i, '$1ouse'],\n [/(seraph|cherub)im$/i, '$1'],\n [/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i, '$1'],\n [/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i, '$1sis'],\n [/(movie|twelve|abuse|e[mn]u)s$/i, '$1'],\n [/(test)(?:is|es)$/i, '$1is'],\n [/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, '$1us'],\n [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i, '$1um'],\n [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i, '$1on'],\n [/(alumn|alg|vertebr)ae$/i, '$1a'],\n [/(cod|mur|sil|vert|ind)ices$/i, '$1ex'],\n [/(matr|append)ices$/i, '$1ix'],\n [/(pe)(rson|ople)$/i, '$1rson'],\n [/(child)ren$/i, '$1'],\n [/(eau)x?$/i, '$1'],\n [/men$/i, 'man']\n ].forEach(function (rule) {\n return pluralize.addSingularRule(rule[0], rule[1]);\n });\n\n /**\n * Uncountable rules.\n */\n [\n // Singular words with no plurals.\n 'adulthood',\n 'advice',\n 'agenda',\n 'aid',\n 'aircraft',\n 'alcohol',\n 'ammo',\n 'analytics',\n 'anime',\n 'athletics',\n 'audio',\n 'bison',\n 'blood',\n 'bream',\n 'buffalo',\n 'butter',\n 'carp',\n 'cash',\n 'chassis',\n 'chess',\n 'clothing',\n 'cod',\n 'commerce',\n 'cooperation',\n 'corps',\n 'debris',\n 'diabetes',\n 'digestion',\n 'elk',\n 'energy',\n 'equipment',\n 'excretion',\n 'expertise',\n 'firmware',\n 'flounder',\n 'fun',\n 'gallows',\n 'garbage',\n 'graffiti',\n 'hardware',\n 'headquarters',\n 'health',\n 'herpes',\n 'highjinks',\n 'homework',\n 'housework',\n 'information',\n 'jeans',\n 'justice',\n 'kudos',\n 'labour',\n 'literature',\n 'machinery',\n 'mackerel',\n 'mail',\n 'media',\n 'mews',\n 'moose',\n 'music',\n 'mud',\n 'manga',\n 'news',\n 'only',\n 'personnel',\n 'pike',\n 'plankton',\n 'pliers',\n 'police',\n 'pollution',\n 'premises',\n 'rain',\n 'research',\n 'rice',\n 'salmon',\n 'scissors',\n 'series',\n 'sewage',\n 'shambles',\n 'shrimp',\n 'software',\n 'species',\n 'staff',\n 'swine',\n 'tennis',\n 'traffic',\n 'transportation',\n 'trout',\n 'tuna',\n 'wealth',\n 'welfare',\n 'whiting',\n 'wildebeest',\n 'wildlife',\n 'you',\n /pok[eé]mon$/i,\n // Regexes.\n /[^aeiou]ese$/i, // \"chinese\", \"japanese\"\n /deer$/i, // \"deer\", \"reindeer\"\n /fish$/i, // \"fish\", \"blowfish\", \"angelfish\"\n /measles$/i,\n /o[iu]s$/i, // \"carnivorous\"\n /pox$/i, // \"chickpox\", \"smallpox\"\n /sheep$/i\n ].forEach(pluralize.addUncountableRule);\n\n return pluralize;\n});\n",
7
+ "import slugify from 'slugify'\n\ninterface SlugOptions {\n replacement?: string\n remove?: RegExp\n lower?: boolean\n strict?: boolean\n locale?: string\n trim?: boolean\n}\n\n// port from nanoid\n// https://github.com/ai/nanoid\nconst urlAlphabet = 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict'\n\n/**\n * Replace backslash to slash\n *\n * @category String\n * @example\n * ```\n * slash('C:\\\\Users\\\\Chris') => 'C:/Users/Chris'\n * ```\n */\nexport function slash(str: string) {\n return str.replace(/\\\\/g, '/')\n}\n\n/**\n * Ensure prefix of a string\n *\n * @category String\n * @example\n * ```\n * ensurePrefix('https://', 'google.com') => 'https://google.com'\n * ensurePrefix('https://', 'http://google.com') => 'https://google.com'\n */\nexport function ensurePrefix(prefix: string, str: string) {\n if (!str.startsWith(prefix)) return prefix + str\n return str\n}\n\n/**\n * Ensure suffix of a string\n *\n * @category String\n * @example\n * ```\n * ensureSuffix('.js', 'index') => 'index.js'\n * ensureSuffix('.js', 'index.js') => 'index.js'\n * ```\n */\nexport function ensureSuffix(suffix: string, str: string) {\n return str.endsWith(suffix) ? str : str + suffix\n}\n\n/**\n * Dead simple template engine, just like Python's `.format()`\n *\n * @category String\n * @example\n * ```\n * const result = template('Hello {0}! My name is {1}.',\n * 'Buddy',\n * 'Chris'\n * ) // Hello Buddy! My name is Chris.\n * ```\n */\nexport function template(str: string, ...args: any[]): string {\n return str.replace(/{(\\d+)}/g, (match, key) => {\n const index = Number(key)\n\n return Number.isNaN(index) ? match : args[index]\n })\n}\n\nexport function truncate(str: string, length: number, end = '...') {\n if (str.length <= length) return str\n\n return str.slice(0, length - end.length) + end\n}\n\n/**\n * Generate a random string\n * @category String\n */\nexport function random(size = 16, dict = urlAlphabet) {\n let id = ''\n let i = size\n const len = dict.length\n while (i--) id += dict[(Math.random() * len) | 0]\n return id\n}\n\n/**\n * Slugify a string\n * @category string\n * @example\n * ```\n * slug('Hello World') => 'hello-world'\n * ```\n */\nexport function slug(str: string, options?: SlugOptions): string {\n if (options) return slugify(str, options)\n\n return slugify(str, {\n lower: true,\n strict: true,\n })\n}\n\nexport { default as detectIndent } from 'detect-indent'\nexport { detectNewline } from 'detect-newline'\n",
8
+ "// Detect either spaces or tabs but not both to properly handle tabs for indentation and spaces for alignment\nconst INDENT_REGEX = /^(?:( )+|\\t+)/;\n\nconst INDENT_TYPE_SPACE = 'space';\nconst INDENT_TYPE_TAB = 'tab';\n\n/**\nMake a Map that counts how many indents/unindents have occurred for a given size and how many lines follow a given indentation.\n\nThe key is a concatenation of the indentation type (s = space and t = tab) and the size of the indents/unindents.\n\n```\nindents = {\n\tt3: [1, 0],\n\tt4: [1, 5],\n\ts5: [1, 0],\n\ts12: [1, 0],\n}\n```\n*/\nfunction makeIndentsMap(string, ignoreSingleSpaces) {\n\tconst indents = new Map();\n\n\t// Remember the size of previous line's indentation\n\tlet previousSize = 0;\n\tlet previousIndentType;\n\n\t// Indents key (ident type + size of the indents/unindents)\n\tlet key;\n\n\tfor (const line of string.split(/\\n/g)) {\n\t\tif (!line) {\n\t\t\t// Ignore empty lines\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet indent;\n\t\tlet indentType;\n\t\tlet use;\n\t\tlet weight;\n\t\tlet entry;\n\t\tconst matches = line.match(INDENT_REGEX);\n\n\t\tif (matches === null) {\n\t\t\tpreviousSize = 0;\n\t\t\tpreviousIndentType = '';\n\t\t} else {\n\t\t\tindent = matches[0].length;\n\t\t\tindentType = matches[1] ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB;\n\n\t\t\t// Ignore single space unless it's the only indent detected to prevent common false positives\n\t\t\tif (ignoreSingleSpaces && indentType === INDENT_TYPE_SPACE && indent === 1) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (indentType !== previousIndentType) {\n\t\t\t\tpreviousSize = 0;\n\t\t\t}\n\n\t\t\tpreviousIndentType = indentType;\n\n\t\t\tuse = 1;\n\t\t\tweight = 0;\n\n\t\t\tconst indentDifference = indent - previousSize;\n\t\t\tpreviousSize = indent;\n\n\t\t\t// Previous line have same indent?\n\t\t\tif (indentDifference === 0) {\n\t\t\t\t// Not a new \"use\" of the current indent:\n\t\t\t\tuse = 0;\n\t\t\t\t// But do add a bit to it for breaking ties:\n\t\t\t\tweight = 1;\n\t\t\t\t// We use the key from previous loop\n\t\t\t} else {\n\t\t\t\tconst absoluteIndentDifference = indentDifference > 0 ? indentDifference : -indentDifference;\n\t\t\t\tkey = encodeIndentsKey(indentType, absoluteIndentDifference);\n\t\t\t}\n\n\t\t\t// Update the stats\n\t\t\tentry = indents.get(key);\n\t\t\tentry = entry === undefined ? [1, 0] : [entry[0] + use, entry[1] + weight];\n\n\t\t\tindents.set(key, entry);\n\t\t}\n\t}\n\n\treturn indents;\n}\n\n// Encode the indent type and amount as a string (e.g. 's4') for use as a compound key in the indents Map.\nfunction encodeIndentsKey(indentType, indentAmount) {\n\tconst typeCharacter = indentType === INDENT_TYPE_SPACE ? 's' : 't';\n\treturn typeCharacter + String(indentAmount);\n}\n\n// Extract the indent type and amount from a key of the indents Map.\nfunction decodeIndentsKey(indentsKey) {\n\tconst keyHasTypeSpace = indentsKey[0] === 's';\n\tconst type = keyHasTypeSpace ? INDENT_TYPE_SPACE : INDENT_TYPE_TAB;\n\n\tconst amount = Number(indentsKey.slice(1));\n\n\treturn {type, amount};\n}\n\n// Return the key (e.g. 's4') from the indents Map that represents the most common indent,\n// or return undefined if there are no indents.\nfunction getMostUsedKey(indents) {\n\tlet result;\n\tlet maxUsed = 0;\n\tlet maxWeight = 0;\n\n\tfor (const [key, [usedCount, weight]] of indents) {\n\t\tif (usedCount > maxUsed || (usedCount === maxUsed && weight > maxWeight)) {\n\t\t\tmaxUsed = usedCount;\n\t\t\tmaxWeight = weight;\n\t\t\tresult = key;\n\t\t}\n\t}\n\n\treturn result;\n}\n\nfunction makeIndentString(type, amount) {\n\tconst indentCharacter = type === INDENT_TYPE_SPACE ? ' ' : '\\t';\n\treturn indentCharacter.repeat(amount);\n}\n\nexport default function detectIndent(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\t// Identify indents while skipping single space indents to avoid common edge cases (e.g. code comments)\n\t// If no indents are identified, run again and include all indents for comprehensive detection\n\tlet indents = makeIndentsMap(string, true);\n\tif (indents.size === 0) {\n\t\tindents = makeIndentsMap(string, false);\n\t}\n\n\tconst keyOfMostUsedIndent = getMostUsedKey(indents);\n\n\tlet type;\n\tlet amount = 0;\n\tlet indent = '';\n\n\tif (keyOfMostUsedIndent !== undefined) {\n\t\t({type, amount} = decodeIndentsKey(keyOfMostUsedIndent));\n\t\tindent = makeIndentString(type, amount);\n\t}\n\n\treturn {\n\t\tamount,\n\t\ttype,\n\t\tindent,\n\t};\n}\n",
9
+ "export function detectNewline(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\tconst newlines = string.match(/(?:\\r?\\n)/g) || [];\n\n\tif (newlines.length === 0) {\n\t\treturn;\n\t}\n\n\tconst crlf = newlines.filter(newline => newline === '\\r\\n').length;\n\tconst lf = newlines.length - crlf;\n\n\treturn crlf > lf ? '\\r\\n' : '\\n';\n}\n\nexport function detectNewlineGraceful(string) {\n\treturn (typeof string === 'string' && detectNewline(string)) || '\\n';\n}\n",
10
+ "/**\n * First letter uppercase, other lowercase\n * @category string\n * @example\n * ```\n * capitalize('hello world') => 'Hello world'\n * ```\n */\nexport function capitalize(str: string): string {\n return str[0] ? str[0].toUpperCase() + str.slice(1).toLowerCase() : ''\n}\n\nexport function lowercase(str: string): string {\n return str.toLowerCase()\n}\n\nexport {\n camelCase,\n capitalCase,\n constantCase,\n dotCase,\n noCase,\n kebabCase,\n kebabCase as paramCase,\n pascalCase,\n pathCase,\n sentenceCase,\n snakeCase,\n split,\n} from 'change-case'\nexport { titleCase } from 'title-case'\n",
11
+ "// Regexps involved with splitting words in various case formats.\nconst SPLIT_LOWER_UPPER_RE = /([\\p{Ll}\\d])(\\p{Lu})/gu;\nconst SPLIT_UPPER_UPPER_RE = /(\\p{Lu})([\\p{Lu}][\\p{Ll}])/gu;\n// Used to iterate over the initial split result and separate numbers.\nconst SPLIT_SEPARATE_NUMBER_RE = /(\\d)\\p{Ll}|(\\p{L})\\d/u;\n// Regexp involved with stripping non-word characters from the result.\nconst DEFAULT_STRIP_REGEXP = /[^\\p{L}\\d]+/giu;\n// The replacement value for splits.\nconst SPLIT_REPLACE_VALUE = \"$1\\0$2\";\n// The default characters to keep after transforming case.\nconst DEFAULT_PREFIX_SUFFIX_CHARACTERS = \"\";\n/**\n * Split any cased input strings into an array of words.\n */\nexport function split(value) {\n let result = value.trim();\n result = result\n .replace(SPLIT_LOWER_UPPER_RE, SPLIT_REPLACE_VALUE)\n .replace(SPLIT_UPPER_UPPER_RE, SPLIT_REPLACE_VALUE);\n result = result.replace(DEFAULT_STRIP_REGEXP, \"\\0\");\n let start = 0;\n let end = result.length;\n // Trim the delimiter from around the output string.\n while (result.charAt(start) === \"\\0\")\n start++;\n if (start === end)\n return [];\n while (result.charAt(end - 1) === \"\\0\")\n end--;\n return result.slice(start, end).split(/\\0/g);\n}\n/**\n * Split the input string into an array of words, separating numbers.\n */\nexport function splitSeparateNumbers(value) {\n const words = split(value);\n for (let i = 0; i < words.length; i++) {\n const word = words[i];\n const match = SPLIT_SEPARATE_NUMBER_RE.exec(word);\n if (match) {\n const offset = match.index + (match[1] ?? match[2]).length;\n words.splice(i, 1, word.slice(0, offset), word.slice(offset));\n }\n }\n return words;\n}\n/**\n * Convert a string to space separated lower case (`foo bar`).\n */\nexport function noCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (prefix +\n words.map(lowerFactory(options?.locale)).join(options?.delimiter ?? \" \") +\n suffix);\n}\n/**\n * Convert a string to camel case (`fooBar`).\n */\nexport function camelCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return (prefix +\n words\n .map((word, index) => {\n if (index === 0)\n return lower(word);\n return transform(word, index);\n })\n .join(options?.delimiter ?? \"\") +\n suffix);\n}\n/**\n * Convert a string to pascal case (`FooBar`).\n */\nexport function pascalCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = options?.mergeAmbiguousCharacters\n ? capitalCaseTransformFactory(lower, upper)\n : pascalCaseTransformFactory(lower, upper);\n return prefix + words.map(transform).join(options?.delimiter ?? \"\") + suffix;\n}\n/**\n * Convert a string to pascal snake case (`Foo_Bar`).\n */\nexport function pascalSnakeCase(input, options) {\n return capitalCase(input, { delimiter: \"_\", ...options });\n}\n/**\n * Convert a string to capital case (`Foo Bar`).\n */\nexport function capitalCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n return (prefix +\n words\n .map(capitalCaseTransformFactory(lower, upper))\n .join(options?.delimiter ?? \" \") +\n suffix);\n}\n/**\n * Convert a string to constant case (`FOO_BAR`).\n */\nexport function constantCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n return (prefix +\n words.map(upperFactory(options?.locale)).join(options?.delimiter ?? \"_\") +\n suffix);\n}\n/**\n * Convert a string to dot case (`foo.bar`).\n */\nexport function dotCase(input, options) {\n return noCase(input, { delimiter: \".\", ...options });\n}\n/**\n * Convert a string to kebab case (`foo-bar`).\n */\nexport function kebabCase(input, options) {\n return noCase(input, { delimiter: \"-\", ...options });\n}\n/**\n * Convert a string to path case (`foo/bar`).\n */\nexport function pathCase(input, options) {\n return noCase(input, { delimiter: \"/\", ...options });\n}\n/**\n * Convert a string to path case (`Foo bar`).\n */\nexport function sentenceCase(input, options) {\n const [prefix, words, suffix] = splitPrefixSuffix(input, options);\n const lower = lowerFactory(options?.locale);\n const upper = upperFactory(options?.locale);\n const transform = capitalCaseTransformFactory(lower, upper);\n return (prefix +\n words\n .map((word, index) => {\n if (index === 0)\n return transform(word);\n return lower(word);\n })\n .join(options?.delimiter ?? \" \") +\n suffix);\n}\n/**\n * Convert a string to snake case (`foo_bar`).\n */\nexport function snakeCase(input, options) {\n return noCase(input, { delimiter: \"_\", ...options });\n}\n/**\n * Convert a string to header case (`Foo-Bar`).\n */\nexport function trainCase(input, options) {\n return capitalCase(input, { delimiter: \"-\", ...options });\n}\nfunction lowerFactory(locale) {\n return locale === false\n ? (input) => input.toLowerCase()\n : (input) => input.toLocaleLowerCase(locale);\n}\nfunction upperFactory(locale) {\n return locale === false\n ? (input) => input.toUpperCase()\n : (input) => input.toLocaleUpperCase(locale);\n}\nfunction capitalCaseTransformFactory(lower, upper) {\n return (word) => `${upper(word[0])}${lower(word.slice(1))}`;\n}\nfunction pascalCaseTransformFactory(lower, upper) {\n return (word, index) => {\n const char0 = word[0];\n const initial = index > 0 && char0 >= \"0\" && char0 <= \"9\" ? \"_\" + char0 : upper(char0);\n return initial + lower(word.slice(1));\n };\n}\nfunction splitPrefixSuffix(input, options = {}) {\n const splitFn = options.split ?? (options.separateNumbers ? splitSeparateNumbers : split);\n const prefixCharacters = options.prefixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n const suffixCharacters = options.suffixCharacters ?? DEFAULT_PREFIX_SUFFIX_CHARACTERS;\n let prefixIndex = 0;\n let suffixIndex = input.length;\n while (prefixIndex < input.length) {\n const char = input.charAt(prefixIndex);\n if (!prefixCharacters.includes(char))\n break;\n prefixIndex++;\n }\n while (suffixIndex > prefixIndex) {\n const index = suffixIndex - 1;\n const char = input.charAt(index);\n if (!suffixCharacters.includes(char))\n break;\n suffixIndex = index;\n }\n return [\n input.slice(0, prefixIndex),\n splitFn(input.slice(prefixIndex, suffixIndex)),\n input.slice(suffixIndex),\n ];\n}\n//# sourceMappingURL=index.js.map",
12
+ "const TOKENS = /(\\S+)|(.)/g;\nconst IS_SPECIAL_CASE = /[\\.#]\\p{Alphabetic}/u; // #tag, example.com, etc.\nconst IS_MANUAL_CASE = /\\p{Ll}(?=[\\p{Lu}])/u; // iPhone, iOS, etc.\nconst ALPHANUMERIC_PATTERN = /\\p{Alphabetic}+/gu;\nconst IS_ACRONYM = /^(\\P{Alphabetic})*(?:\\p{Alphabetic}\\.){2,}(\\P{Alphabetic})*$/u;\nexport const WORD_SEPARATORS = new Set([\"—\", \"–\", \"-\", \"―\", \"/\"]);\nexport const SENTENCE_TERMINATORS = new Set([\".\", \"!\", \"?\"]);\nexport const TITLE_TERMINATORS = new Set([\n ...SENTENCE_TERMINATORS,\n \":\",\n '\"',\n \"'\",\n \"”\",\n]);\nexport const SMALL_WORDS = new Set([\n \"a\",\n \"an\",\n \"and\",\n \"as\",\n \"at\",\n \"because\",\n \"but\",\n \"by\",\n \"en\",\n \"for\",\n \"if\",\n \"in\",\n \"neither\",\n \"nor\",\n \"of\",\n \"on\",\n \"only\",\n \"or\",\n \"over\",\n \"per\",\n \"so\",\n \"some\",\n \"than\",\n \"that\",\n \"the\",\n \"to\",\n \"up\",\n \"upon\",\n \"v\",\n \"versus\",\n \"via\",\n \"vs\",\n \"when\",\n \"with\",\n \"without\",\n \"yet\",\n]);\nexport function titleCase(input, options = {}) {\n const { locale = undefined, sentenceCase = false, sentenceTerminators = SENTENCE_TERMINATORS, titleTerminators = TITLE_TERMINATORS, smallWords = SMALL_WORDS, wordSeparators = WORD_SEPARATORS, } = typeof options === \"string\" || Array.isArray(options)\n ? { locale: options }\n : options;\n const terminators = sentenceCase ? sentenceTerminators : titleTerminators;\n let result = \"\";\n let isNewSentence = true;\n // tslint:disable-next-line\n for (const m of input.matchAll(TOKENS)) {\n const { 1: token, 2: whiteSpace, index = 0 } = m;\n if (whiteSpace) {\n result += whiteSpace;\n continue;\n }\n // Ignore URLs, email addresses, acronyms, etc.\n if (IS_SPECIAL_CASE.test(token)) {\n const acronym = token.match(IS_ACRONYM);\n // The period at the end of an acronym is not a new sentence,\n // but we should uppercase first for i.e., e.g., etc.\n if (acronym) {\n const [_, prefix = \"\", suffix = \"\"] = acronym;\n result +=\n sentenceCase && !isNewSentence\n ? token\n : upperAt(token, prefix.length, locale);\n isNewSentence = terminators.has(suffix.charAt(0));\n continue;\n }\n result += token;\n isNewSentence = terminators.has(token.charAt(token.length - 1));\n }\n else {\n const matches = Array.from(token.matchAll(ALPHANUMERIC_PATTERN));\n let value = token;\n let isSentenceEnd = false;\n for (let i = 0; i < matches.length; i++) {\n const { 0: word, index: wordIndex = 0 } = matches[i];\n const nextChar = token.charAt(wordIndex + word.length);\n isSentenceEnd = terminators.has(nextChar);\n // Always the capitalize first word and reset \"new sentence\".\n if (isNewSentence) {\n isNewSentence = false;\n }\n // Skip capitalizing all words if sentence case is enabled.\n else if (sentenceCase || IS_MANUAL_CASE.test(word)) {\n continue;\n }\n // Handle simple words.\n else if (matches.length === 1) {\n // Avoid capitalizing small words, except at the end of a sentence.\n if (smallWords.has(word)) {\n const isFinalToken = index + token.length === input.length;\n if (!isFinalToken && !isSentenceEnd) {\n continue;\n }\n }\n }\n // Multi-word tokens need to be parsed differently.\n else if (i > 0) {\n // Avoid capitalizing words without a valid word separator,\n // e.g. \"apple's\" or \"test(ing)\".\n if (!wordSeparators.has(token.charAt(wordIndex - 1))) {\n continue;\n }\n // Ignore small words in the middle of hyphenated words.\n if (smallWords.has(word) && wordSeparators.has(nextChar)) {\n continue;\n }\n }\n value = upperAt(value, wordIndex, locale);\n }\n result += value;\n isNewSentence =\n isSentenceEnd || terminators.has(token.charAt(token.length - 1));\n }\n }\n return result;\n}\nfunction upperAt(input, index, locale) {\n return (input.slice(0, index) +\n input.charAt(index).toLocaleUpperCase(locale) +\n input.slice(index + 1));\n}\n//# sourceMappingURL=index.js.map",
13
+ "import * as pluralize from 'pluralize'\n\ntype Rule = string | RegExp\ntype Replacement = string\ntype Word = string\nexport type PluralizeTest = (word: Word) => boolean\n\nexport interface Pluralize {\n plural: (word: Word, count?: number, inclusive?: boolean) => Word\n singular: (word: Word) => Word\n isPlural: (word: Word) => boolean\n isSingular: (word: Word) => boolean\n addPluralRule: (rule: Rule, replacement: Replacement) => void\n addSingularRule: (rule: Rule, replacement: Replacement) => void\n addIrregularRule: (single: Word, plural: Word) => void\n addUncountableRule: (word: Word | RegExp) => void\n}\n\nexport const plural: Pluralize['plural'] = (word, count, inclusive) => {\n if (count !== undefined && inclusive) return `${count} ${pluralize.plural(word)}`\n\n return pluralize.plural(word)\n}\n\nexport const singular: Pluralize['singular'] = (word) => pluralize.singular(word)\nexport const isPlural: Pluralize['isPlural'] = (word) => pluralize.isPlural(word)\nexport const isSingular: Pluralize['isSingular'] = (word) => pluralize.isSingular(word)\nexport const addPluralRule: Pluralize['addPluralRule'] = (rule, replacement) =>\n pluralize.addPluralRule(rule, replacement)\nexport const addSingularRule: Pluralize['addSingularRule'] = (rule, replacement) =>\n pluralize.addSingularRule(rule, replacement)\nexport const addIrregularRule: Pluralize['addIrregularRule'] = (single, plural) =>\n pluralize.addIrregularRule(single, plural)\nexport const addUncountableRule: Pluralize['addUncountableRule'] = (word) => pluralize.addUncountableRule(word)\n",
14
+ "import * as c from './case'\nimport * as p from './pluralize'\nimport * as u from './utils'\n\nexport const Str = {\n slash(str: string) {\n return u.slash(str)\n },\n\n ensurePrefix(prefix: string, str: string) {\n return u.ensurePrefix(prefix, str)\n },\n\n ensureSuffix(suffix: string, str: string) {\n return u.ensureSuffix(suffix, str)\n },\n\n template(str: string, ...args: any[]): string {\n return u.template(str, ...args)\n },\n\n /**\n * Truncate a string\n */\n truncate(str: string, length: number, end = '...') {\n return u.truncate(str, length, end)\n },\n\n random(length = 16) {\n return u.random(length)\n },\n\n capitalize(str: string) {\n return c.capitalize(str)\n },\n\n slug(str: string) {\n return u.slug(str)\n },\n\n detectIndent(str: string) {\n return u.detectIndent(str)\n },\n\n detectNewline(str: string) {\n return u.detectNewline(str)\n },\n\n camelCase(str: string) {\n return c.camelCase(str)\n },\n\n capitalCase(str: string) {\n return c.capitalCase(str)\n },\n\n constantCase(str: string) {\n return c.constantCase(str)\n },\n\n dotCase(str: string) {\n return c.dotCase(str)\n },\n\n noCase(str: string) {\n return c.noCase(str)\n },\n\n paramCase(str: string) {\n return c.paramCase(str)\n },\n\n pascalCase(str: string) {\n return c.pascalCase(str)\n },\n\n pathCase(str: string) {\n return c.pathCase(str)\n },\n\n sentenceCase(str: string) {\n return c.sentenceCase(str)\n },\n\n snakeCase(str: string) {\n return c.snakeCase(str)\n },\n\n titleCase(str: string) {\n return c.titleCase(str)\n },\n\n kebabCase(str: string) {\n return c.kebabCase(str)\n },\n\n plural(str: string) {\n // plural, singular, isPlural, isSingular, addPluralRule, addSingularRule, addIrregularRule, addUncountableRule\n return p.plural(str)\n },\n\n singular(str: string) {\n return p.singular(str)\n },\n\n isPlural(str: string) {\n return p.isPlural(str)\n },\n\n isSingular(str: string) {\n return p.isSingular(str)\n },\n\n addPluralRule(rule: string | RegExp, repl: string) {\n return p.addPluralRule(rule, repl)\n },\n\n addSingularRule(rule: string | RegExp, repl: string) {\n return p.addSingularRule(rule, repl)\n },\n\n addIrregularRule(single: string, plural: string) {\n return p.addIrregularRule(single, plural)\n },\n\n addUncountableRule(word: string | RegExp) {\n return p.addUncountableRule(word)\n },\n}\n\nexport const str = Str\n",
15
+ "export function toString(v: any) {\n return Object.prototype.toString.call(v)\n}\n"
16
+ ],
17
+ "mappings": "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BAAiB,CAAC,EAAM,CACxB,OAAO,EAAU,cAAc,EAAK,GAAI,EAAK,EAAE,EAChD,EAKD,CACE,CAAC,MAAO,EAAE,EACV,CAAC,SAAU,IAAI,EACf,CAAC,gEAAiE,MAAM,EACxE,CAAC,kCAAmC,KAAK,EACzC,CAAC,QAAS,GAAG,EACb,CAAC,uFAAwF,MAAM,EAC/F,CAAC,oBAAqB,MAAM,EAC5B,CAAC,uBAAwB,QAAQ,EACjC,CAAC,sBAAuB,IAAI,EAC5B,CAAC,2FAA4F,IAAI,EACjG,CAAC,qEAAsE,OAAO,EAC9E,CAAC,iCAAkC,IAAI,EACvC,CAAC,oBAAqB,MAAM,EAC5B,CAAC,4FAA6F,MAAM,EACpG,CAAC,yGAA0G,MAAM,EACjH,CAAC,8FAA+F,MAAM,EACtG,CAAC,0BAA2B,KAAK,EACjC,CAAC,+BAAgC,MAAM,EACvC,CAAC,sBAAuB,MAAM,EAC9B,CAAC,oBAAqB,QAAQ,EAC9B,CAAC,eAAgB,IAAI,EACrB,CAAC,YAAa,IAAI,EAClB,CAAC,QAAS,KAAK,CACjB,EAAE,gBAAiB,CAAC,EAAM,CACxB,OAAO,EAAU,gBAAgB,EAAK,GAAI,EAAK,EAAE,EAClD,EAKD,CAEE,YACA,SACA,SACA,MACA,WACA,UACA,OACA,YACA,QACA,YACA,QACA,QACA,QACA,QACA,UACA,SACA,OACA,OACA,UACA,QACA,WACA,MACA,WACA,cACA,QACA,SACA,WACA,YACA,MACA,SACA,YACA,YACA,YACA,WACA,WACA,MACA,UACA,UACA,WACA,WACA,eACA,SACA,SACA,YACA,WACA,YACA,cACA,QACA,UACA,QACA,SACA,aACA,YACA,WACA,OACA,QACA,OACA,QACA,QACA,MACA,QACA,OACA,OACA,YACA,OACA,WACA,SACA,SACA,YACA,WACA,OACA,WACA,OACA,SACA,WACA,SACA,SACA,WACA,SACA,WACA,UACA,QACA,QACA,SACA,UACA,iBACA,QACA,OACA,SACA,UACA,UACA,aACA,WACA,MACA,eAEA,gBACA,SACA,SACA,YACA,WACA,QACA,SACF,EAAE,QAAQ,EAAU,kBAAkB,EAE/B,EACR,2lBCtfD,iBAwBO,SAAS,CAAK,CAAC,EAAa,CACjC,OAAO,EAAI,QAAQ,MAAO,GAAG,EAYxB,SAAS,CAAY,CAAC,EAAgB,EAAa,CACxD,IAAK,EAAI,WAAW,CAAM,EAAG,OAAO,EAAS,EAC7C,OAAO,EAaF,SAAS,CAAY,CAAC,EAAgB,EAAa,CACxD,OAAO,EAAI,SAAS,CAAM,EAAI,EAAM,EAAM,EAerC,SAAS,CAAQ,CAAC,KAAgB,EAAqB,CAC5D,OAAO,EAAI,QAAQ,WAAY,CAAC,EAAO,IAAQ,CAC7C,MAAM,EAAQ,OAAO,CAAG,EAExB,OAAO,OAAO,MAAM,CAAK,EAAI,EAAQ,EAAK,GAC3C,EAGI,SAAS,CAAQ,CAAC,EAAa,EAAgB,EAAM,MAAO,CACjE,GAAI,EAAI,QAAU,EAAQ,OAAO,EAEjC,OAAO,EAAI,MAAM,EAAG,EAAS,EAAI,MAAM,EAAI,EAOtC,SAAS,CAAM,CAAC,EAAO,GAAI,EAAO,GAAa,CACpD,IAAI,EAAK,GACL,EAAI,EACR,MAAM,EAAM,EAAK,OACjB,MAAO,IAAK,GAAM,EAAM,KAAK,OAAO,EAAI,EAAO,GAC/C,OAAO,EAWF,SAAS,CAAI,CAAC,EAAa,EAA+B,CAC/D,GAAI,EAAS,OAAO,UAAQ,EAAK,CAAO,EAExC,OAAO,UAAQ,EAAK,CAClB,MAAO,GACP,OAAQ,EACV,CAAC,ECxFH,SAAS,EAAc,CAAC,EAAQ,EAAoB,CACnD,MAAM,EAAU,IAAI,IAGpB,IAAI,EAAe,EACf,EAGA,EAEJ,QAAW,KAAQ,EAAO,MAAM,KAAK,EAAG,CACvC,IAAK,EAEJ,SAGD,IAAI,EACA,EACA,EACA,EACA,EACJ,MAAM,EAAU,EAAK,MAAM,EAAY,EAEvC,GAAI,IAAY,KACf,EAAe,EACf,EAAqB,OACf,CAKN,GAJA,EAAS,EAAQ,GAAG,OACpB,EAAa,EAAQ,GA7CE,QACF,MA+CjB,GAAsB,IAhDH,SAgDuC,IAAW,EACxE,SAGD,GAAI,IAAe,EAClB,EAAe,EAGhB,EAAqB,EAErB,EAAM,EACN,EAAS,EAET,MAAM,EAAmB,EAAS,EAIlC,GAHA,EAAe,EAGX,IAAqB,EAExB,EAAM,EAEN,EAAS,MAEH,CACN,MAAM,EAA2B,EAAmB,EAAI,GAAoB,EAC5E,EAAM,GAAiB,EAAY,CAAwB,EAI5D,EAAQ,EAAQ,IAAI,CAAG,EACvB,EAAQ,IAAU,OAAY,CAAC,EAAG,CAAC,EAAI,CAAC,EAAM,GAAK,EAAK,EAAM,GAAK,CAAM,EAEzE,EAAQ,IAAI,EAAK,CAAK,GAIxB,OAAO,EAIR,SAAS,EAAgB,CAAC,EAAY,EAAc,CAEnD,OADsB,IAzFG,QAyFgC,IAAM,KACxC,OAAO,CAAY,EAI3C,SAAS,EAAgB,CAAC,EAAY,CAErC,MAAM,EADkB,EAAW,KAAO,IA/FjB,QACF,MAiGjB,EAAS,OAAO,EAAW,MAAM,CAAC,CAAC,EAEzC,MAAO,CAAC,OAAM,QAAM,EAKrB,SAAS,EAAc,CAAC,EAAS,CAChC,IAAI,EACA,EAAU,EACV,EAAY,EAEhB,QAAY,GAAM,EAAW,MAAY,EACxC,GAAI,EAAY,GAAY,IAAc,GAAW,EAAS,EAC7D,EAAU,EACV,EAAY,EACZ,EAAS,EAIX,OAAO,EAGR,SAAS,EAAgB,CAAC,EAAM,EAAQ,CAEvC,OADwB,IA1HC,QA0H4B,IAAM,MACpC,OAAO,CAAM,EA7HrC,IAAM,GAAe,gBAgIrB,SAAwB,CAAY,CAAC,EAAQ,CAC5C,UAAW,IAAW,SACrB,MAAM,IAAI,UAAU,mBAAmB,EAKxC,IAAI,EAAU,GAAe,EAAQ,EAAI,EACzC,GAAI,EAAQ,OAAS,EACpB,EAAU,GAAe,EAAQ,EAAK,EAGvC,MAAM,EAAsB,GAAe,CAAO,EAElD,IAAI,EACA,EAAS,EACT,EAAS,GAEb,GAAI,IAAwB,OAC3B,CAAC,CAAC,OAAM,QAAM,EAAI,GAAiB,CAAmB,GACtD,EAAS,GAAiB,EAAM,CAAM,EAGvC,MAAO,CACN,SACA,OACA,QACD,EC5JM,SAAS,CAAa,CAAC,EAAQ,CACrC,UAAW,IAAW,SACrB,MAAM,IAAI,UAAU,mBAAmB,EAGxC,MAAM,EAAW,EAAO,MAAM,YAAY,GAAK,CAAC,EAEhD,GAAI,EAAS,SAAW,EACvB,OAGD,MAAM,EAAO,EAAS,OAAO,KAAW,IAAY,MAAM,EAAE,OACtD,EAAK,EAAS,OAAS,EAE7B,OAAO,EAAO,EAAK,OAAS,KFD7B,IAAM,GAAc,mEGLb,SAAS,CAAU,CAAC,EAAqB,CAC9C,OAAO,EAAI,GAAK,EAAI,GAAG,YAAY,EAAI,EAAI,MAAM,CAAC,EAAE,YAAY,EAAI,GAG/D,SAAS,EAAS,CAAC,EAAqB,CAC7C,OAAO,EAAI,YAAY,ECClB,SAAS,CAAK,CAAC,EAAO,CACzB,IAAI,EAAS,EAAM,KAAK,EACxB,EAAS,EACJ,QAAQ,GATW,QAS8B,EACjD,QAAQ,GAVW,QAU8B,EACtD,EAAS,EAAO,QAAQ,GAAsB,IAAI,EAClD,IAAI,EAAQ,EACR,EAAM,EAAO,OAEjB,MAAO,EAAO,OAAO,CAAK,IAAM,KAC5B,IACJ,GAAI,IAAU,EACV,MAAO,CAAC,EACZ,MAAO,EAAO,OAAO,EAAM,CAAC,IAAM,KAC9B,IACJ,OAAO,EAAO,MAAM,EAAO,CAAG,EAAE,MAAM,KAAK,EAKxC,SAAS,EAAoB,CAAC,EAAO,CACxC,MAAM,EAAQ,EAAM,CAAK,EACzB,QAAS,EAAI,EAAG,EAAI,EAAM,OAAQ,IAAK,CACnC,MAAM,EAAO,EAAM,GACb,EAAQ,GAAyB,KAAK,CAAI,EAChD,GAAI,EAAO,CACP,MAAM,EAAS,EAAM,OAAS,EAAM,IAAM,EAAM,IAAI,OACpD,EAAM,OAAO,EAAG,EAAG,EAAK,MAAM,EAAG,CAAM,EAAG,EAAK,MAAM,CAAM,CAAC,GAGpE,OAAO,EAKJ,SAAS,CAAM,CAAC,EAAO,EAAS,CACnC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAChE,OAAQ,EACJ,EAAM,IAAI,EAAa,GAAS,MAAM,CAAC,EAAE,KAAK,GAAS,WAAa,GAAG,EACvE,EAKD,SAAS,CAAS,CAAC,EAAO,EAAS,CACtC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAC1D,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAY,GAAS,yBACrB,EAA4B,EAAO,CAAK,EACxC,GAA2B,EAAO,CAAK,EAC7C,OAAQ,EACJ,EACK,IAAI,CAAC,EAAM,IAAU,CACtB,GAAI,IAAU,EACV,OAAO,EAAM,CAAI,EACrB,OAAO,EAAU,EAAM,CAAK,EAC/B,EACI,KAAK,GAAS,WAAa,EAAE,EAClC,EAKD,SAAS,CAAU,CAAC,EAAO,EAAS,CACvC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAC1D,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAY,GAAS,yBACrB,EAA4B,EAAO,CAAK,EACxC,GAA2B,EAAO,CAAK,EAC7C,OAAO,EAAS,EAAM,IAAI,CAAS,EAAE,KAAK,GAAS,WAAa,EAAE,EAAI,EAWnE,SAAS,CAAW,CAAC,EAAO,EAAS,CACxC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAC1D,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAQ,EAAa,GAAS,MAAM,EAC1C,OAAQ,EACJ,EACK,IAAI,EAA4B,EAAO,CAAK,CAAC,EAC7C,KAAK,GAAS,WAAa,GAAG,EACnC,EAKD,SAAS,CAAY,CAAC,EAAO,EAAS,CACzC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAChE,OAAQ,EACJ,EAAM,IAAI,EAAa,GAAS,MAAM,CAAC,EAAE,KAAK,GAAS,WAAa,GAAG,EACvE,EAKD,SAAS,CAAO,CAAC,EAAO,EAAS,CACpC,OAAO,EAAO,EAAO,CAAE,UAAW,OAAQ,CAAQ,CAAC,EAKhD,SAAS,CAAS,CAAC,EAAO,EAAS,CACtC,OAAO,EAAO,EAAO,CAAE,UAAW,OAAQ,CAAQ,CAAC,EAKhD,SAAS,CAAQ,CAAC,EAAO,EAAS,CACrC,OAAO,EAAO,EAAO,CAAE,UAAW,OAAQ,CAAQ,CAAC,EAKhD,SAAS,CAAY,CAAC,EAAO,EAAS,CACzC,MAAO,EAAQ,EAAO,GAAU,EAAkB,EAAO,CAAO,EAC1D,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAQ,EAAa,GAAS,MAAM,EACpC,EAAY,EAA4B,EAAO,CAAK,EAC1D,OAAQ,EACJ,EACK,IAAI,CAAC,EAAM,IAAU,CACtB,GAAI,IAAU,EACV,OAAO,EAAU,CAAI,EACzB,OAAO,EAAM,CAAI,EACpB,EACI,KAAK,GAAS,WAAa,GAAG,EACnC,EAKD,SAAS,CAAS,CAAC,EAAO,EAAS,CACtC,OAAO,EAAO,EAAO,CAAE,UAAW,OAAQ,CAAQ,CAAC,EAQvD,SAAS,CAAY,CAAC,EAAQ,CAC1B,OAAO,IAAW,GACZ,CAAC,IAAU,EAAM,YAAY,EAC7B,CAAC,IAAU,EAAM,kBAAkB,CAAM,EAEnD,SAAS,CAAY,CAAC,EAAQ,CAC1B,OAAO,IAAW,GACZ,CAAC,IAAU,EAAM,YAAY,EAC7B,CAAC,IAAU,EAAM,kBAAkB,CAAM,EAEnD,SAAS,CAA2B,CAAC,EAAO,EAAO,CAC/C,MAAO,CAAC,IAAS,GAAG,EAAM,EAAK,EAAE,IAAI,EAAM,EAAK,MAAM,CAAC,CAAC,IAE5D,SAAS,EAA0B,CAAC,EAAO,EAAO,CAC9C,MAAO,CAAC,EAAM,IAAU,CACpB,MAAM,EAAQ,EAAK,GAEnB,OADgB,EAAQ,GAAK,GAAS,KAAO,GAAS,IAAM,IAAM,EAAQ,EAAM,CAAK,GACpE,EAAM,EAAK,MAAM,CAAC,CAAC,GAG5C,SAAS,CAAiB,CAAC,EAAO,EAAU,CAAC,EAAG,CAC5C,MAAM,EAAU,EAAQ,QAAU,EAAQ,gBAAkB,GAAuB,GAC7E,EAAmB,EAAQ,kBA/KI,GAgL/B,EAAmB,EAAQ,kBAhLI,GAiLrC,IAAI,EAAc,EACd,EAAc,EAAM,OACxB,MAAO,EAAc,EAAM,OAAQ,CAC/B,MAAM,EAAO,EAAM,OAAO,CAAW,EACrC,IAAK,EAAiB,SAAS,CAAI,EAC/B,MACJ,IAEJ,MAAO,EAAc,EAAa,CAC9B,MAAM,EAAQ,EAAc,EACtB,EAAO,EAAM,OAAO,CAAK,EAC/B,IAAK,EAAiB,SAAS,CAAI,EAC/B,MACJ,EAAc,EAElB,MAAO,CACH,EAAM,MAAM,EAAG,CAAW,EAC1B,EAAQ,EAAM,MAAM,EAAa,CAAW,CAAC,EAC7C,EAAM,MAAM,CAAW,CAC3B,EA7MJ,IAAM,GAAuB,yBACvB,GAAuB,+BAEvB,GAA2B,wBAE3B,GAAuB,iBC8CtB,SAAS,CAAS,CAAC,EAAO,EAAU,CAAC,EAAG,CAC3C,MAAQ,SAAS,OAAW,eAAe,GAAO,sBAAsB,GAAsB,mBAAmB,GAAmB,aAAa,GAAa,iBAAiB,WAA4B,IAAY,UAAY,MAAM,QAAQ,CAAO,EAClP,CAAE,OAAQ,CAAQ,EAClB,EACA,EAAc,EAAe,EAAsB,EACzD,IAAI,EAAS,GACT,EAAgB,GAEpB,QAAW,KAAK,EAAM,SAAS,EAAM,EAAG,CACpC,MAAQ,EAAG,EAAO,EAAG,EAAY,QAAQ,GAAM,EAC/C,GAAI,EAAY,CACZ,GAAU,EACV,SAGJ,GAAI,GAAgB,KAAK,CAAK,EAAG,CAC7B,MAAM,EAAU,EAAM,MAAM,EAAU,EAGtC,GAAI,EAAS,CACT,MAAO,EAAG,EAAS,GAAI,EAAS,IAAM,EACtC,GACI,IAAiB,EACX,EACA,GAAQ,EAAO,EAAO,OAAQ,CAAM,EAC9C,EAAgB,EAAY,IAAI,EAAO,OAAO,CAAC,CAAC,EAChD,SAEJ,GAAU,EACV,EAAgB,EAAY,IAAI,EAAM,OAAO,EAAM,OAAS,CAAC,CAAC,MAE7D,CACD,MAAM,EAAU,MAAM,KAAK,EAAM,SAAS,EAAoB,CAAC,EAC/D,IAAI,EAAQ,EACR,EAAgB,GACpB,QAAS,EAAI,EAAG,EAAI,EAAQ,OAAQ,IAAK,CACrC,MAAQ,EAAG,EAAM,MAAO,EAAY,GAAM,EAAQ,GAC5C,GAAW,EAAM,OAAO,EAAY,EAAK,MAAM,EAGrD,GAFA,EAAgB,EAAY,IAAI,EAAQ,EAEpC,EACA,EAAgB,WAGX,GAAgB,GAAe,KAAK,CAAI,EAC7C,iBAGK,EAAQ,SAAW,GAExB,GAAI,EAAW,IAAI,CAAI,GAEnB,GADqB,EAAQ,EAAM,SAAW,EAAM,SAC9B,EAClB,kBAKH,EAAI,EAAG,CAGZ,IAAK,EAAe,IAAI,EAAM,OAAO,EAAY,CAAC,CAAC,EAC/C,SAGJ,GAAI,EAAW,IAAI,CAAI,GAAK,EAAe,IAAI,EAAQ,EACnD,SAGR,EAAQ,GAAQ,EAAO,EAAW,CAAM,EAE5C,GAAU,EACV,EACI,GAAiB,EAAY,IAAI,EAAM,OAAO,EAAM,OAAS,CAAC,CAAC,GAG3E,OAAO,EAEX,SAAS,EAAO,CAAC,EAAO,EAAO,EAAQ,CACnC,OAAQ,EAAM,MAAM,EAAG,CAAK,EACxB,EAAM,OAAO,CAAK,EAAE,kBAAkB,CAAM,EAC5C,EAAM,MAAM,EAAQ,CAAC,EArI7B,IAAM,GAAS,aACT,GAAkB,uBAClB,GAAiB,sBACjB,GAAuB,oBACvB,GAAa,gEACN,GAAkB,IAAI,IAAI,CAAC,SAAI,SAAK,IAAK,SAAK,GAAG,CAAC,EAClD,GAAuB,IAAI,IAAI,CAAC,IAAK,IAAK,GAAG,CAAC,EAC9C,GAAoB,IAAI,IAAI,CACrC,GAAG,GACH,IACA,IACA,IACA,QACJ,CAAC,EACY,GAAc,IAAI,IAAI,CAC/B,IACA,KACA,MACA,KACA,KACA,UACA,MACA,KACA,KACA,MACA,KACA,KACA,UACA,MACA,KACA,KACA,OACA,KACA,OACA,MACA,KACA,OACA,OACA,OACA,MACA,KACA,KACA,OACA,IACA,SACA,MACA,KACA,OACA,OACA,UACA,KACJ,CAAC,ECnDD,iBAkBa,GAA8B,CAAC,EAAM,EAAO,IAAc,CACrE,GAAI,IAAU,QAAa,EAAW,MAAO,GAAG,KAAmB,SAAO,CAAI,IAE9E,OAAiB,SAAO,CAAI,GAGjB,GAAkC,CAAC,IAAmB,WAAS,CAAI,EACnE,GAAkC,CAAC,IAAmB,WAAS,CAAI,EACnE,GAAsC,CAAC,IAAmB,aAAW,CAAI,EACzE,GAA4C,CAAC,EAAM,IACpD,gBAAc,EAAM,CAAW,EAC9B,GAAgD,CAAC,EAAM,IACxD,kBAAgB,EAAM,CAAW,EAChC,GAAkD,CAAC,EAAQ,IAC5D,mBAAiB,EAAQ,CAAM,EAC9B,GAAsD,CAAC,IAAmB,qBAAmB,CAAI,EC7BvG,IAAM,GAAM,CACjB,KAAK,CAAC,EAAa,CACjB,OAAS,EAAM,CAAG,GAGpB,YAAY,CAAC,EAAgB,EAAa,CACxC,OAAS,EAAa,EAAQ,CAAG,GAGnC,YAAY,CAAC,EAAgB,EAAa,CACxC,OAAS,EAAa,EAAQ,CAAG,GAGnC,QAAQ,CAAC,KAAgB,EAAqB,CAC5C,OAAS,EAAS,EAAK,GAAG,CAAI,GAMhC,QAAQ,CAAC,EAAa,EAAgB,EAAM,MAAO,CACjD,OAAS,EAAS,EAAK,EAAQ,CAAG,GAGpC,MAAM,CAAC,EAAS,GAAI,CAClB,OAAS,EAAO,CAAM,GAGxB,UAAU,CAAC,EAAa,CACtB,OAAS,EAAW,CAAG,GAGzB,IAAI,CAAC,EAAa,CAChB,OAAS,EAAK,CAAG,GAGnB,YAAY,CAAC,EAAa,CACxB,OAAS,EAAa,CAAG,GAG3B,aAAa,CAAC,EAAa,CACzB,OAAS,EAAc,CAAG,GAG5B,SAAS,CAAC,EAAa,CACrB,OAAS,EAAU,CAAG,GAGxB,WAAW,CAAC,EAAa,CACvB,OAAS,EAAY,CAAG,GAG1B,YAAY,CAAC,EAAa,CACxB,OAAS,EAAa,CAAG,GAG3B,OAAO,CAAC,EAAa,CACnB,OAAS,EAAQ,CAAG,GAGtB,MAAM,CAAC,EAAa,CAClB,OAAS,EAAO,CAAG,GAGrB,SAAS,CAAC,EAAa,CACrB,OAAS,EAAU,CAAG,GAGxB,UAAU,CAAC,EAAa,CACtB,OAAS,EAAW,CAAG,GAGzB,QAAQ,CAAC,EAAa,CACpB,OAAS,EAAS,CAAG,GAGvB,YAAY,CAAC,EAAa,CACxB,OAAS,EAAa,CAAG,GAG3B,SAAS,CAAC,EAAa,CACrB,OAAS,EAAU,CAAG,GAGxB,SAAS,CAAC,EAAa,CACrB,OAAS,EAAU,CAAG,GAGxB,SAAS,CAAC,EAAa,CACrB,OAAS,EAAU,CAAG,GAGxB,MAAM,CAAC,EAAa,CAElB,OAAS,GAAO,CAAG,GAGrB,QAAQ,CAAC,EAAa,CACpB,OAAS,GAAS,CAAG,GAGvB,QAAQ,CAAC,EAAa,CACpB,OAAS,GAAS,CAAG,GAGvB,UAAU,CAAC,EAAa,CACtB,OAAS,GAAW,CAAG,GAGzB,aAAa,CAAC,EAAuB,EAAc,CACjD,OAAS,GAAc,EAAM,CAAI,GAGnC,eAAe,CAAC,EAAuB,EAAc,CACnD,OAAS,GAAgB,EAAM,CAAI,GAGrC,gBAAgB,CAAC,EAAgB,EAAgB,CAC/C,OAAS,GAAiB,EAAQ,CAAM,GAG1C,kBAAkB,CAAC,EAAuB,CACxC,OAAS,GAAmB,CAAI,EAEpC,EAEa,GAAM,GClIZ,SAAS,EAAQ,CAAC,EAAQ,CAC/B,OAAO,OAAO,UAAU,SAAS,KAAK,CAAC",
18
+ "debugId": "E599D642435C40F964756E2164756E21",
19
+ "names": []
20
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stacksjs/strings",
3
3
  "type": "module",
4
- "version": "0.62.0",
4
+ "version": "0.63.1",
5
5
  "description": "The Stacks string utilities.",
6
6
  "author": "Chris Breuer",
7
7
  "license": "MIT",
@@ -58,10 +58,6 @@
58
58
  "typecheck": "bun --bun tsc --noEmit",
59
59
  "prepublishOnly": "bun run build"
60
60
  },
61
- "peerDependencies": {
62
- "@stacksjs/alias": "latest",
63
- "@stacksjs/types": "latest"
64
- },
65
61
  "dependencies": {
66
62
  "@stacksjs/alias": "latest",
67
63
  "@stacksjs/types": "latest",