@danielhaim/titlecaser 1.7.9 → 1.7.10

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,5 +1,5 @@
1
1
  /*!
2
- * @danielhaim/titlecaser - v1.7.9 - 2025-09-18
2
+ * @danielhaim/titlecaser - v1.7.10 - 2025-09-18
3
3
  * https://github.com/danielhaim1/titlecaser.git
4
4
  * Copyright (c) 2025 Daniel Haim, Licensed Apache-2.0
5
- */(()=>{var e={16:e=>{"use strict";e.exports=JSON.parse('{"ranks":["Pvt.","Cpl.","Sgt.","SSgt.","GySgt.","MSgt.","1stSgt.","SgtMaj.","WO1","CW2","CW3","CW4","CW5","2ndLt.","1stLt.","Capt.","Maj.","LtCol.","Col.","BrigGen.","MajGen.","LtGen.","Gen.","Adm.","Cpt.","Cmdr.","Lt.","Ens."],"branches":["Army","Navy","Air Force","Marines","Coast Guard","Space Force","National Guard","People\'s Liberation Army","Russian Ground Forces","JASDF","ROKA"],"units":["Platoon","Company","Battalion","Regiment","Brigade","Division","Corps","Squad","Fleet","Wing","Squadron","Task Force","Eurocorps","Battlegroup","Rapid Reaction Force","Joint Expeditionary Force"],"acronyms":["DoD","NATO","EUFOR","EUTM","OSCE","UNSC","JAG","ROTC","AFB","MOS","AWOL","MRE","IED","FOB","TOC","CONUS","OCONUS","UCMJ","USMC","USAF","USN","USA","SOCOM","CENTCOM","NORAD","PACOM","JTF","RPG","SAM","ASEAN","AUKUS","QUAD","CSTO","SCO","CFSP","EEAS","EUMS","Frontex","GRU","FSB","PLAN","PLAAF"],"equipment":["Humvee","MRAP","Apache","Black Hawk","Bradley","Abrams","F-16","F-22","F-35","B-2","B-52","C-130","LCAC","MRE"],"operations":["Operation Desert Storm","Operation Enduring Freedom","Operation Iraqi Freedom","Operation Inherent Resolve"],"treaties":["Lisbon Treaty","Maastricht Treaty","Treaty of Rome","Nice Treaty","Schengen Agreement"],"regions":["South China Sea","Taiwan Strait","Korean DMZ","Kashmir","Kuril Islands","Senkaku Islands"],"alliances":["NATO","AUKUS","QUAD","ASEAN","SCO","CSTO","Five Eyes"]}')},157:e=>{"use strict";e.exports=JSON.parse('{"countries":["Afghanistan","Albania","Algeria","Andorra","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei","Bulgaria","Burkina Faso","Burundi","Cabo Verde","Cambodia","Cameroon","Canada","Central African Republic","Chad","Chile","China","Colombia","Comoros","Congo","Costa Rica","Cote d\'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Korea","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Zealand","Nicaragua","Niger","Nigeria","North Macedonia","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Yemen","Zambia","Zimbabwe"],"alpha2":["UK"],"alpha3":["USA"]}')},223:e=>{"use strict";e.exports=JSON.parse('{"sports":["FIFA","UEFA","NBA","NFL","MLB","NHL","NASCAR","IOC","FIBA","ATP","WTA","PGA","LPGA","FIA","WADA","ITF","AFL","NRL","ICC","IRB","IHF","FIVB","FINA","UCI","IAAF","ISU","WSF","BWF","WBC","WBO","IBF","IBO","UEFA","CONMEBOL","CONCACAF","CAF","AFC","OFC","CPL","MLS","LaLiga","Bundesliga","Ligue1","Eredivisie","JLeague","KLeague","Ryder Cup","Davis Cup","FedCup","XGames","Olympics","Paralympics","Dakar"],"apple":["Apple","AirDrop","AirPlay","AirPods","AirTags","FinalCut","GarageBand","iBooks","iCloud","iLife","iMac","iMessage","iMovie","iPhoto","iWatch","iWork","LogicPro","macOS","ProTools","QuickTime","iPhone","iPad","iPod","iOS","macOS","tvOS","watchOS"],"corporate":["Deloitte","Devoteam","ExxonMobil","GE","Boeing","Shell","Chevron"],"tech":["Bing","Salesforce","Asus","Acer","Lenovo","Huawei","Xiaomi","Epson","Nvidia","AMD","Qualcomm","Logitech","Panasonic","Sharp","Toshiba","Philips","Fujitsu","Netgear","Lexmark","Razer","SAP","Symantec","Kaspersky","Avast","McAfee","Siemens","Canon","Nikon","Garmin","GoPro","Oculus","Zoom","Slack","Trello","WeChat","Alibaba","Tencent","Baidu","Roku","Fitbit","Dropbox","Reddit","TikTok","Slack","Trello","Uber","Zoom","Reddit","Quora","JIRA","ZoomInfo","HubSpot","Mailchimp","WeChat","Dropbox","Uber","Telegram","Discord","StackOverflow","Quora","Reddit","ZoomInfo","Airbnb","LinkedIn","Snapchat","GitHub","GitLab","Nginx","OpenSSL","Webpack","Unity3D","Figma","JIRA","Kubernetes","TensorFlow","NPM","WooCommerce","WordPress","Slack","Trello","Uber","Zoom","Reddit","Quora","WeChat","Dropbox","Telegram","Discord","StackOverflow","Airbnb","LinkedIn","Snapchat","JIRA","MobX","VMware","Google"],"business":["Visa","Mastercard","Citibank","JPMorgan","Barclay","AMEX","Citigroup","PayPal","BNP","HSBC","Santander","UBS","Allianz","Prudential","Vanguard","BlackRock","CapitalOne","TD","Robinhood","MoneyGram","SoFi","Experian","Equifax","TransUnion","MasterCard","Blockchain","Coinbase","Binance","Kraken","Ethereum","Bitcoin"],"automotive":["BMW","Ford","Mercedes","Nissan","Tesla","Toyota","Audi","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","LandRover","Lexus","Maserati","Mazda","McLaren","Mitsubishi","Peugeot","Porsche","Renault","RollsRoyce","Saab","Subaru","Suzuki","Volkswagen","Volvo","Alfa Romeo","Bentley","Bugatti","Cadillac","Citroen","Daewoo","Daihatsu","Datsun","DeLorean","Fiat Chrysler","GMC","Holden","Hummer","Isuzu","Koenigsegg","Lancia","Lincoln","Lotus","Mahindra","Suzuki","Opel","Pagani","Perodua","Proton","Rover","Scania","Skoda","SsangYong","Tata","Vauxhall","VinFast","Yugo","Zenvo"],"media":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","HBO","Showtime","Starz","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Vine","Zynga","Tidal","Quibi","Crave","Gaia","PlutoTV","Vudu","Kanopy","Mubi","BritBox"],"telecom":["Verizon","Sprint","Nokia","Ericsson","Vodafone","AT&T","Huawei","Xiaomi","Orange","NTT","T-Mobile","Telefonica","Airtel","Telstra","Rogers","Bell","MTN","ZTE","Qualcomm","Motorola","Telus","BT","Swisscom","SoftBank","KDDI"],"entertainment":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","Pandora","HBO","Showtime","Starz","Paramount","Peacock","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Zynga","Tidal","Oscars"],"retail":["Amazon","eBay","IKEA","Walmart","Zara","Target","Costco","Sephora","Nordstrom","Tesco","Asda","Aldi","Lidl","Carrefour","Uniqlo","H&M","Gap","Cabela’s","BassPro","REI","Ulta","Saks","JCPenney","Belk","Argos","Safeway","Kroger","Publix","HomeDepot","Woolworths","Staples","OfficeMax","B&H","Newegg","MicroCenter","Frys","Monoprix","Waitrose","Morrisons","Ocado","Flipkart","Rakuten","Alibaba","JD","Taobao","Tmall","Guomei","Suning"],"food":["Nestle","Pepsi","Coca-Cola","PepsiCo","Starbucks","KFC","BurgerKing","PizzaHut","TacoBell","Kroger","Costco","Woolworths","Carrefour","Tesco","Aldi","Lidl","Walmart","Safeway","Publix","WholeFoods","RedBull","Monster","Nespresso","Heineken","Budweiser","Corona","Guinness","GeneralMills","Unilever","Kraft","Heinz","Danone","Campbell","Tyson","Conagra","Mondelez","Suntory","Diageo","Pernod"],"pharmaceutical":["Pfizer","Moderna","Gilead","Merck","Novartis","Sanofi","Roche","AbbVie","Amgen","Bayer","Biogen","BristolMyers","Celgene","GSK","Janssen","Lilly","Medtronic","Mylan","NovoNordisk","Regeneron","Teva","AstraZeneca","Boehringer","Daiichi","Eisai","Genentech","Grifols","Ipsen","Mundipharma","Otsuka","Purdue","Sandoz","Servier","SunPharma","Takeda","UCB","Viatris","Wockhardt","Zydus","Alkem"],"nonprofit":["NGO","NPO","NGOs","NPOs","UN","UNESCO","UNICEF","UNHCR","UNODC","UNDP","UNFPA","UNEP","UNRWA"]}')},279:(e,t,r)=>{var n,i;n=[t,r(416)],void 0===(i=function(e,r){"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(e){u=!0,i=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}(e,t)||u(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||u(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=u(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||null==r.return||r.return()}finally{if(s)throw a}}}}function u(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,f(n.key),n)}}function d(e,t,r){return(t=f(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=n(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}Object.defineProperty(e,"__esModule",{value:!0}),t.TitleCaserUtils=void 0;var y=t.TitleCaserUtils=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return t=e,u=[{key:"validateOption",value:function(e,t){if(!Array.isArray(t))throw new TypeError("Invalid option: ".concat(e," must be an array"));if(!t.every((function(e){return"string"==typeof e})))throw new TypeError("Invalid option: ".concat(e," must be an array of strings"))}},{key:"validateOptions",value:function(e){for(var t=0,n=Object.keys(e);t<n.length;t++){var i=n[t];if("style"!==i)if("wordReplacementsList"!==i){if(!r.titleCaseDefaultOptionsList.hasOwnProperty(i))throw new TypeError("Invalid option: ".concat(i));this.TitleCaseValidator.validateOption(i,e[i])}else{if(!Array.isArray(e.wordReplacementsList))throw new TypeError("Invalid option: ".concat(i," must be an array"));var a,o=l(e.wordReplacementsList);try{for(o.s();!(a=o.n()).done;)if("string"!=typeof a.value)throw new TypeError("Invalid option: ".concat(i," must contain only strings"))}catch(e){o.e(e)}finally{o.f()}}else{if("string"!=typeof e.style)throw new TypeError("Invalid option: ".concat(i," must be a string"));if(!r.allowedTitleCaseStylesList.includes(e.style))throw new TypeError("Invalid option: ".concat(i," must be a string"))}}}},{key:"getTitleCaseOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=JSON.stringify({options:t,lowercaseWords:n});if(e.titleCaseOptionsCache.has(o))return e.titleCaseOptionsCache.get(o);var l=s(s(s({},r.titleCaseDefaultOptionsList[t.style||"ap"]),t),{},{smartQuotes:!!t.hasOwnProperty("smartQuotes")&&t.smartQuotes}),u=l.articlesList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),c=l.shortConjunctionsList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),p=l.shortPrepositionsList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),d=[].concat(a((l.replaceTerms||[]).map((function(e){var t=i(e,2),r=t[0],n=t[1];return[r.toLowerCase(),n]}))),a(r.wordReplacementsList)),f={articlesList:u,shortConjunctionsList:c,shortPrepositionsList:p,neverCapitalizedList:a(l.neverCapitalizedList),replaceTerms:d,smartQuotes:l.smartQuotes};return e.titleCaseOptionsCache.set(o,f),f}},{key:"capitalizeFirstLetter",value:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},{key:"isShortConjunction",value:function(t,r){var n=a(e.getTitleCaseOptions({style:r}).shortConjunctionsList),i=t.toLowerCase();return n.includes(i)}},{key:"isArticle",value:function(t,r){return e.getTitleCaseOptions({style:r}).articlesList.includes(t.toLowerCase())}},{key:"isShortPreposition",value:function(t,r){return e.getTitleCaseOptions({style:r}).shortPrepositionsList.includes(t.toLowerCase())}},{key:"isNeverCapitalized",value:function(t,r){var n="".concat(r,"_").concat(t.toLowerCase());if(e.isNeverCapitalizedCache.has(n))return e.isNeverCapitalizedCache.get(n);var i=e.getTitleCaseOptions({style:r}).neverCapitalizedList.includes(t.toLowerCase());return e.isNeverCapitalizedCache.set(n,i),i}},{key:"isShortWord",value:function(t,i){if("string"!=typeof t)throw new TypeError("Invalid input: word must be a string. Received ".concat(n(t),"."));if(!r.allowedTitleCaseStylesList.includes(i))throw new Error("Invalid option: style must be one of ".concat(r.allowedTitleCaseStylesList.join(", "),"."));return e.isShortConjunction(t,i)||e.isArticle(t,i)||e.isShortPreposition(t,i)||e.isNeverCapitalized(t,i)}},{key:"hasNumbers",value:function(e){return/\d/.test(e)}},{key:"hasUppercaseMultiple",value:function(e){for(var t=0,r=0;r<e.length&&t<2;r++)/[A-Z]/.test(e[r])&&t++;return t>=2}},{key:"hasUppercaseIntentional",value:function(e){if(e.length<=4)return/[A-Z]/.test(e.slice(1));var t=/[A-Z]/.test(e.slice(1)),r=/[a-z]/.test(e.slice(1));return t&&r}},{key:"isEntirelyUppercase",value:function(e){return e===e.toUpperCase()&&e!==e.toLowerCase()&&e.length>1}},{key:"isRegionalAcronym",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");if(e.length<2)return!1;var t=e.toLowerCase();return r.regionalAcronymList.includes(t)}},{key:"isRegionalAcronymNoDot",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof t)return!1;var i=e.toLowerCase().replace(/[^\w\s]/g,""),a=t.toLowerCase().replace(/[^\w\s]/g,"");return!!(n&&r.regionalAcronymList.includes(i)&&["the"].includes(n.toLowerCase()))||r.regionalAcronymList.includes(i)&&r.directFollowingIndicatorsRegionalAcronym.includes(a)}},{key:"isFinalWordRegionalAcronym",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof t)return!1;var i=e.toLowerCase().replace(/[^\w]/g,""),a=t.toLowerCase().replace(/[^\w]/g,""),o="string"==typeof n?n.toLowerCase().replace(/[^\w]/g,""):null;return!!(r.regionalAcronymList.includes(i)&&(r.regionalAcronymPrecedingWords.includes(a)||"the"===a&&o&&r.regionalAcronymPrecedingWords.includes(o)))}},{key:"normalizeRegionalAcronym",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");return e.toUpperCase()}},{key:"normalizeAcronymKey",value:function(e){return e.toLowerCase().replace(/\./g,"")}},{key:"normalizeCasingForWordByStyle",value:function(e,t){if(!e||!t||!r.titleCaseDefaultOptionsList[t])return!1;var n=e.toLowerCase(),i=r.titleCaseDefaultOptionsList[t],o=i.shortConjunctionsList,s=i.articlesList,l=i.shortPrepositionsList,u=i.neverCapitalizedList;return!![].concat(a(o),a(s),a(l),a(u)).includes(n)&&e}},{key:"hasSuffix",value:function(e){return e.length>2&&e.endsWith("'s")}},{key:"hasApostrophe",value:function(e){return-1!==e.indexOf("'")}},{key:"hasHyphen",value:function(e){return-1!==e.indexOf("-")||-1!==e.indexOf("–")||-1!==e.indexOf("—")}},{key:"hasRomanNumeral",value:function(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");var t=e.includes("'")?e.split("'"):[e],r=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;return t.every((function(e){return r.test(e)}))}},{key:"hasHyphenRomanNumeral",value:function(t){if("string"!=typeof t||""===t)throw new TypeError("Invalid input: word must be a non-empty string.");for(var r=t.split("-"),n=0;n<r.length;n++)if(!e.hasRomanNumeral(r[n]))return!1;return!0}},{key:"hasHtmlBreak",value:function(e){return"nl2br"===e}},{key:"hasUnicodeSymbols",value:function(e){return/[^\x00-\x7F\u00A0-\u00FF\u0100-\u017F\u0180-\u024F\u0250-\u02AF\u02B0-\u02FF\u0300-\u036F\u0370-\u03FF\u0400-\u04FF\u0500-\u052F\u0530-\u058F\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u0780-\u07BF\u07C0-\u07FF\u0800-\u083F\u0840-\u085F\u0860-\u087F\u0880-\u08AF\u08B0-\u08FF\u0900-\u097F\u0980-\u09FF\u0A00-\u0A7F\u0A80-\u0AFF\u0B00-\u0B7F\u0B80-\u0BFF\u0C00-\u0C7F\u0C80-\u0CFF\u0D00-\u0D7F\u0D80-\u0DFF\u0E00-\u0E7F\u0E80-\u0EFF\u0F00-\u0FFF]/.test(e)}},{key:"hasCurrencySymbols",value:function(e){return/[^\x00-\x7F\u00A0-\u00FF\u20AC\u20A0-\u20B9\u20BD\u20A1-\u20A2\u00A3-\u00A5\u058F\u060B\u09F2-\u09F3\u0AF1\u0BF9\u0E3F\u17DB\u20A6\u20A8\u20B1\u2113\u20AA-\u20AB\u20AA\u20AC-\u20AD\u20B9]/.test(e)}},{key:"isWordAmpersand",value:function(e){return/&amp;|&/.test(e)}},{key:"startsWithSymbol",value:function(e){if("string"!=typeof e)throw new Error("Parameter 'word' must be a string. Received '".concat(n(e),"' instead."));if(0===e.length)return!1;var t=e.charAt(0);return"#"===t||"@"===t||"."===t}},{key:"escapeSpecialCharacters",value:function(e){return e.replace(/[&<>"']/g,(function(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#x27;";default:return e}}))}},{key:"unescapeSpecialCharacters",value:function(e){return e.replace(/&amp;|&lt;|&gt;|&quot;|&#x27;/g,(function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&#x27;":return"'";default:return e}}))}},{key:"endsWithSymbol",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[".",",",";",":","?","!"];if("string"!=typeof e||!Array.isArray(t))throw new Error("Invalid arguments");return t.some((function(t){return e.endsWith(t)}))||t.includes(e.slice(-2))}},{key:"isWordIgnored",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.ignoredWordList;if(!Array.isArray(n))throw new TypeError("Invalid input: ignoredWords must be an array.");if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");return t=e.toLowerCase().trim(),n.includes(t)}},{key:"isWordInArray",value:function(e,t){return!!Array.isArray(t)&&t.some((function(t){return t.toLowerCase()===e.toLowerCase()}))}},{key:"convertQuotesToCurly",value:function(e){for(var t={"'":["‘","’"],'"':["“","”"]},r="",n=0;n<e.length;n++){var i=e[n],a=t[i];if(a){var o=e[n-1],s=e[n+1],l=o&&" "!==o&&"\n"!==o?a[1]:a[0];r+=l,l===a[1]&&/[.,;!?()\[\]{}:]/.test(s)&&(r+=s,n++)}else r+=i}return r}},{key:"replaceTerm",value:function(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||"object"!==n(t))throw new TypeError("Invalid input: replaceTermObj must be a non-null object.");var r;if(r=e.toLowerCase(),t.hasOwnProperty(r))return t[r];if(t.hasOwnProperty(e))return t[e];var i=e.toUpperCase();return t.hasOwnProperty(i)?t[i]:e}},{key:"isElidedWord",value:function(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var t,r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),n=e.trim().toLowerCase().replace(/'/g,"’"),i=l(r);try{for(i.s();!(t=i.n()).done;){var a=t.value;if(n.startsWith(a))return!0}}catch(e){i.e(e)}finally{i.f()}return!1}},{key:"normalizeElidedWord",value:function(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var t,r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),n=e.trim(),i=n.replace(/'/g,"’").toLowerCase(),a=l(r);try{for(a.s();!(t=a.n()).done;){var o=t.value;if(i.startsWith(o)){var s=o.length,u=n.slice(s);return o.charAt(0).toUpperCase()+o.slice(1)+(u.length>0?u.charAt(0).toUpperCase()+u.slice(1):"")}}}catch(e){a.e(e)}finally{a.f()}return!1}},{key:"correctSuffix",value:function(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t)||t.some((function(e){return"string"!=typeof e})))throw new TypeError("Invalid input: correctTerms must be an array of strings.");if(/'s$/i.test(e)){var r=e.slice(0,-2),n=t.findIndex((function(e){return e.toLowerCase()===r.toLowerCase()}));if(n>=0){var i=t[n];return"".concat(i,"'s")}var a=r.charAt(0).toUpperCase()+r.slice(1);return"".concat(a,"'s")}return e}},{key:"correctTerm",value:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/[-']/;if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t))throw new TypeError("Invalid input: correctTerms must be an array.");if(!("string"==typeof r||Array.isArray(r)||r instanceof RegExp))throw new TypeError("Invalid input: delimiters must be a string, an array of strings, or a regular expression.");"string"==typeof r?r=new RegExp("[".concat(r,"]")):Array.isArray(r)&&(r=new RegExp("[".concat(r.join(""),"]")));for(var n=e.split(r),i=n.length,a=function(){var e=n[o].toLowerCase(),r=t.findIndex((function(t){return t.toLowerCase()===e}));n[o]=r>=0?t[r]:n[o].charAt(0).toUpperCase()+n[o].slice(1).toLowerCase()},o=0;o<i;o++)a();var s=r.source.charAt(0);return e.includes("-")?s="-":e.includes("'")&&(s="'"),n.join(s)}},{key:"correctTermHyphenated",value:function(t,n){var i=t.split("-"),a=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},o=function(e){return e.charAt(0)+e.slice(1).toLowerCase()},s={ap:function(e,t){return 0===t?a(e):o(e)},chicago:a,apa:function(t,r,i){return e.isShortWord(t,n)&&r>0&&r<i-1?t.toLowerCase():a(t)},nyt:function(e,t){return 0===t?a(e):o(e)},wikipedia:function(e,t){return 0===t?a(e):o(e)}},l=s[n]||o,u=i.map((function(e,t){var n=e;if(/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})'s$/i.test(e))return n.toUpperCase().replace(/'S$/,"'s");var a=/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;if(a.test(e))return e.toUpperCase();if(e.includes("'")){var o=e.split("'");return o.every((function(e){return a.test(e)}))?n=o.map((function(e){return e.toUpperCase()})).join("'"):l(n,t,i.length)}var s=e.toLowerCase(),u=r.correctTitleCasingList.findIndex((function(e){return e.toLowerCase()===s}));if(u>=0)n=r.correctTitleCasingList[u];else if(s.endsWith("'s")){var c=s.substring(0,s.length-2),p=r.correctTitleCasingList.findIndex((function(e){return e.toLowerCase()===c}));p>=0&&(n="".concat(r.correctTitleCasingList[p],"'s"))}return l(n,t,i.length)}));return u.join("-")}}],(o=null)&&p(t.prototype,o),u&&p(t,u),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,o,u}();d(y,"TitleCaseValidator",void 0),d(y,"titleCaseOptionsCache",new Map),d(y,"isNeverCapitalizedCache",new Map)}.apply(t,n))||(e.exports=i)},321:e=>{"use strict";e.exports=JSON.parse('{"advertising":["AdWords","AdSense","AdMob","DoubleClick","SpotX"],"digitalMarketing":["DSP","SSP","CTR","CPA","CPC","CPL","CPM","CRM","SEO","SEM","SMM","A/B","CTOR","KPI","SERP","FAQ","PR"],"general":["B2B","B2C","CMO","USP","PWA","SMO","T&C","TOS","PP","UI","UX","UI/UX"],"blockchain":["PoE","PoW","PoC"],"accessibility":["A11Y"]}')},388:(e,t,r)=>{var n,i;n=[t,r(416),r(279)],void 0===(i=function(e,r,n){"use strict";function i(e,t,r){return(t=p(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(e){u=!0,i=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}(e,t)||s(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){if(e){if("string"==typeof e)return l(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function c(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,p(n.key),n)}}function p(e){var t=function(e,t){if("object"!=u(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==u(t)?t:t+""}Object.defineProperty(e,"__esModule",{value:!0}),t.TitleCaser=void 0;t.TitleCaser=function(){return e=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.options=t,this.debug=t.debug||!1,this.wordReplacementsList=r.wordReplacementsList,this.correctPhraseCasingList=r.correctPhraseCasingList},(t=[{key:"logWarning",value:function(e){this.debug&&console.warn("Warning: ".concat(e))}},{key:"toTitleCase",value:function(e){var t=this;try{var i=function(e){return!!n.TitleCaserUtils.isRegionalAcronym(e)||!!n.TitleCaserUtils.hasUppercaseIntentional(e)||!!n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)};if(0===e.trim().length)throw new TypeError("Invalid input: input must not be empty.");if("string"!=typeof e)throw new TypeError("Invalid input: input must be a string.");if(void 0!==this.options&&"object"!==u(this.options))throw new TypeError("Invalid options: options must be an object.");var s=this.options,l=s.style,c=void 0===l?"ap":l,p=s.neverCapitalize,d=void 0===p?[]:p,f=s.replaceTermList,y=void 0===f?this.wordReplacementsList:f,m=s.smartQuotes,g=void 0!==m&&m,h=r.titleCaseDefaultOptionsList[c]||{},C=["nl2br"].concat(o(d)),v=n.TitleCaserUtils.getTitleCaseOptions(this.options,r.commonShortWords,r.wordReplacementsList),b=(v.articlesList,v.shortConjunctionsList,v.shortPrepositionsList,v.neverCapitalizedList,v.replaceTerms,v.smartQuotes,y.map((function(e){return Object.keys(e)[0].toLowerCase()}))),S=Object.fromEntries(y.map((function(e){return[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]]})));this.logWarning("replaceTermsArray: ".concat(b)),this.logWarning("this.wordReplacementsList: ".concat(this.wordReplacementsList));var A=e.trim();A=(A=A.replace(/<\s*br\s*\/?\s*>/gi," nl2br ")).replace(/ {2,}/g,(function(e){return e.slice(0,1)})),n.TitleCaserUtils.isEntirelyUppercase(A.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),A=A.toLowerCase());var w=A.split(" "),T=w.map((function(e,i){switch(!0){case n.TitleCaserUtils.isWordAmpersand(e):case n.TitleCaserUtils.hasHtmlBreak(e):case n.TitleCaserUtils.isWordIgnored(e,C):return e;case b.includes(e.toLowerCase()):return S[e.toLowerCase()];case n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList):return n.TitleCaserUtils.correctTerm(e,r.correctTitleCasingList);case n.TitleCaserUtils.isElidedWord(e):return n.TitleCaserUtils.normalizeElidedWord(e);case n.TitleCaserUtils.hasHyphen(e):var a=e.replace(/[\W_]+$/,""),o=e.slice(a.length),s=a.split("-"),l=s.map((function(e){var t=e.toLowerCase();return b.includes(t)?S[t]:e})),u=l.every((function(e,t){return e===s[t]}))?n.TitleCaserUtils.correctTermHyphenated(e,c):l.join("-");return u.endsWith(o)?u:u+o;case n.TitleCaserUtils.hasSuffix(e,c):return n.TitleCaserUtils.correctSuffix(e,r.correctTitleCasingList);case n.TitleCaserUtils.hasUppercaseIntentional(e):return e;case n.TitleCaserUtils.isShortWord(e,c)&&0!==i:return i>0&&n.TitleCaserUtils.endsWithSymbol(w[i-1],[":","?","!","."])?e.charAt(0).toUpperCase()+e.slice(1):n.TitleCaserUtils.normalizeCasingForWordByStyle(e,c);case n.TitleCaserUtils.endsWithSymbol(e):t.logWarning("Check if the word ends with a symbol: ".concat(e));var p=e.split(/([.,\/#!$%\^&\*;:{}=\-_`~()?])/g);t.logWarning("Splitting word at symbols, result: ".concat(p));var d=p.map((function(e){if(t.logWarning("Processing part: ".concat(e)),n.TitleCaserUtils.endsWithSymbol(e))return t.logWarning("Part is a symbol: ".concat(e)),e;if(t.logWarning("Part is a word: ".concat(e)),n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)){var i=n.TitleCaserUtils.correctTerm(e,r.correctTitleCasingList);return t.logWarning("Word is in correctTitleCasingList, corrected term: ".concat(i)),i}if(b.includes(e)){var a=S[e];return t.logWarning("Word is in replaceTermsArray, replacement: ".concat(a)),a}var o=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase();return t.logWarning("Applying title casing to word: ".concat(o)),o}));return d.join("");case n.TitleCaserUtils.startsWithSymbol(e):return n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)?n.TitleCaserUtils.correctTerm(e):e;case n.TitleCaserUtils.hasRomanNumeral(e):return e.toUpperCase();case n.TitleCaserUtils.hasNumbers(e):return e;default:return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}}));A=(A=T.join(" ")).replace(/nl2br/gi,"<br>"),g&&(A=n.TitleCaserUtils.convertQuotesToCurly(A));for(var L=A.split(" "),O=L[0],P=L[1]||null,I=(L[L.length-1],0);I<L.length;I++){I>0&&L[I-1];var F=L[I],k=I<L.length-1?L[I+1]:null,R=F.match(/[.,!?;:]+$/),E="";R&&(E=R[0],F=F.replace(/[.,!?;:]+$/,"")),n.TitleCaserUtils.isRegionalAcronym(F)&&(F=n.TitleCaserUtils.normalizeRegionalAcronym(F)),n.TitleCaserUtils.isRegionalAcronymNoDot(F,k)&&(F=n.TitleCaserUtils.normalizeRegionalAcronym(F)),""!==E&&(F+=E)}for(var M=(A=L.join(" ")).split(" "),U=1;U<M.length-1;U++){var B=M[U];M[U-1],M[U+1],B===B.toUpperCase()||n.TitleCaserUtils.hasUppercaseIntentional(B)||n.TitleCaserUtils.isWordInArray(B,r.commonShortWords)&&(M[U]=B.length<=3?B.toLowerCase():B)}for(var D=(A=M.join(" ")).split(" "),N=0;N<D.length;N++){var j=D[N],W=D[N+1],x=D[N-1];null!==W&&n.TitleCaserUtils.isRegionalAcronymNoDot(j,W,x)&&(D[N]=j.toUpperCase())}var G=D[D.length-1],z=D[D.length-2],H=D[D.length-3];n.TitleCaserUtils.isRegionalAcronym(O)&&(console.log("firstWord is a regional acronym, proof: ",O),D[0]=O.toUpperCase()),n.TitleCaserUtils.isRegionalAcronymNoDot(O,P)&&(D[0]=O.toUpperCase()),n.TitleCaserUtils.isFinalWordRegionalAcronym(G,z,H)&&(D[D.length-1]=G.toUpperCase()),A=D.join(" ");for(var V=0,K=Object.entries(this.correctPhraseCasingList);V<K.length;V++){var Q=a(K[V],2),J=Q[0],X=Q[1],Z=new RegExp(J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");A=A.replace(Z,X)}if("sentence"===h.caseStyle){for(var q=A.split(" "),$=!1,Y=0;Y<q.length;Y++){var _=q[Y];$||!/[A-Za-z]/.test(_)?i(_)||(q[Y]=_.toLowerCase()):(i(_)||(q[Y]=_.charAt(0).toUpperCase()+_.slice(1).toLowerCase()),$=!0)}A=q.join(" ")}return A}catch(e){throw new Error(e)}}},{key:"setReplaceTerms",value:function(e){var t=this;if(!Array.isArray(e))throw new TypeError("Invalid argument: setReplaceTerms must be an array of objects.");e.forEach((function(e){if(e&&"object"===u(e)){var r=a(Object.entries(e)[0],2),n=r[0],o=r[1],s=t.wordReplacementsList.findIndex((function(e){return e.hasOwnProperty(n)}));-1!==s?t.wordReplacementsList[s][n]=o:t.wordReplacementsList.push(i({},n,o))}else console.warn("Invalid entry in terms array:",e)})),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}},{key:"addReplaceTerm",value:function(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: term and replacement must be strings.");var r=this.wordReplacementsList.findIndex((function(t){return Object.keys(t)[0]===e}));-1!==r?this.wordReplacementsList[r][e]=t:this.wordReplacementsList.push(i({},e,t)),this.options.wordReplacementsList=this.wordReplacementsList}},{key:"removeReplaceTerm",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid argument: term must be a string.");var t=this.wordReplacementsList.findIndex((function(t){return Object.keys(t)[0]===e}));if(-1===t)throw new Error("Term '".concat(e,"' not found in word replacements list."));this.wordReplacementsList.splice(t,1),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}},{key:"addExactPhraseReplacements",value:function(e){var t=this;if(!Array.isArray(e))throw new TypeError("Invalid argument: newPhrases must be an array.");e.forEach((function(e){if("object"!==u(e)||Array.isArray(e)||1!==Object.keys(e).length){if("object"!==u(e)||Array.isArray(e))throw new TypeError("Invalid argument: Each item must be an object with a single key-value pair.");Object.entries(e).forEach((function(e){var r=a(e,2),n=r[0],i=r[1];if("string"!=typeof n||"string"!=typeof i)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");t.correctPhraseCasingList[n]=i}))}else{var r=Object.keys(e)[0],n=e[r];if("string"!=typeof r||"string"!=typeof n)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");t.correctPhraseCasingList[r]=n}})),this.logWarning("Log the this.correctPhraseCasingList: ".concat(this.correctPhraseCasingList))}},{key:"setStyle",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid argument: style must be a string.");this.options.style=e}}])&&c(e.prototype,t),s&&c(e,s),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,s}()}.apply(t,n))||(e.exports=i)},416:(e,t,r)=>{var n,i;n=[t,r(223),r(814),r(661),r(157),r(321),r(742),r(501),r(491),r(16)],void 0===(i=function(e,r,n,i,a,o,s,l,u,c){"use strict";function p(e){return e&&e.__esModule?e:{default:e}}function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function f(e){return function(e){if(Array.isArray(e))return y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return y(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?y(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}Object.defineProperty(e,"__esModule",{value:!0}),t.wordReplacementsList=t.titleCaseStylesList=t.titleCaseDefaultOptionsList=t.regionalAcronymPrecedingWords=t.regionalAcronymList=t.ignoredWordList=t.directFollowingIndicatorsRegionalAcronym=t.correctTitleCasingList=t.correctPhraseCasingList=t.commonShortWords=t.allowedTitleCaseStylesList=void 0,r=p(r),n=p(n),i=p(i),a=p(a),o=p(o),s=p(s),l=p(l),u=p(u),c=p(c);var m=function(){for(var e=[],t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return r.forEach((function(t){Array.isArray(t)?t.forEach((function(t){Object.values(t).forEach((function(t){e.push.apply(e,f(t))}))})):"object"===d(t)&&Object.values(t).forEach((function(t){e.push.apply(e,f(t))}))})),f(new Set(e))}(r.default,n.default,i.default,a.default,o.default,s.default,l.default,u.default,c.default),g=(t.correctTitleCasingList=m,t.commonShortWords=["the","in","to","within","towards","into","at","of","for","by","on","from","with","through","about","across","over","under","between"],t.wordReplacementsList=[{"a.k.a":"AKA"},{"a.s.a.p":"ASAP"},{"f.a.q":"FAQ"},{"f.a.q.s":"FAQs"},{FAQS:"FAQs"},{"f.y.i":"FYI"},{"d.i.y":"DIY"},{"t.b.d":"TBD"},{"back-end":"Backend"},{"front-end":"Frontend"},{"full-stack":"Fullstack"},{nodejs:"Node.js"},{nextjs:"Next.js"},{nuxtjs:"Nuxt.js"},{reactjs:"React"},{"react.js":"React"},{"cyber-security":"Cybersecurity"}],t.titleCaseStylesList=Object.freeze({AP:"ap",APA:"apa",BRITISH:"british",CHICAGO:"chicago",NYT:"nyt",WIKIPEDIA:"wikipedia"}));t.allowedTitleCaseStylesList=Object.values(g),t.titleCaseDefaultOptionsList=Object.freeze({ap:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},apa:{caseStyle:"title",shortConjunctionsList:["and","as","but","for","if","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","for","in","of","off","on","per","to","via"],neverCapitalizedList:[]},british:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},chicago:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:["etc."]},nyt:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},wikipedia:{caseStyle:"sentence",shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]}}),t.ignoredWordList=[],t.correctPhraseCasingList={"the cybersmile foundation":"The Cybersmile Foundation","co. by colgate":"CO. by Colgate","on & off":"On & Off","on and off":"On and Off"},t.regionalAcronymList=["usa","us","u.s.a","u.s.","u.s","u.s.a.","eu","e.u.","e.u","uk","u.k.","u.k"],t.regionalAcronymPrecedingWords=["the","via","among","across","beyond","outside","alongside","throughout","despite","unlike","upon"],t.directFollowingIndicatorsRegionalAcronym=["act","acts","administration","administrations","agency","agencies","agreement","agreements","airforce","airforces","aid","alliance","alliances","ambassador","ambassadors","authority","authorities","bill","bills","bloc","blocs","budget","budgets","bureau","bureaus","cabinet","cabinets","charter","charters","command","commands","commission","commissions","conference","conferences","congress","congresses","convention","conventions","council","councils","court","courts","defense","defences","defence","defenses","delegation","delegations","democracy","democracies","department","departments","development","developments","directive","directives","diplomacy","division","divisions","economy","economies","embassy","embassies","engagement","engagements","envoy","envoys","exports","federation","federations","finance","finances","forces","framework","frameworks","funding","government","governments","hearing","hearings","imports","initiative","initiatives","intel","intelligence","intervention","interventions","jurisdiction","jurisdictions","law","laws","leadership","leaders","legislation","liaison","liaisons","mandate","mandates","markets","marines","military","militaries","ministry","ministries","mission","missions","navy","navies","negotiations","office","offices","operations","oversight","parliament","parliaments","plan","plans","policies","policy","policy-makers","precedent","precedents","presence","program","programme","programmes","programs","project","projects","protocol","protocols","province","provinces","reform","reforms","regulation","regulations","regulator","regulators","relations","representation","representations","republic","republics","resolution","resolutions","ruling","rulings","sanctions","security","securities","senate","senates","service","services","state","states","statute","statutes","strategy","strategies","summit","summits","summitry","surveillance","talks","tariffs","territory","territories","trade","trades","treasury","treasuries","treaty","treaties","tribunal","tribunals","troops","union","unions","veterans","warships","zone","zones"]}.apply(t,n))||(e.exports=i)},491:e=>{"use strict";e.exports=JSON.parse('{"timeRelated":["a.m.","p.m.","ca.","cc.","fig.","pl.","pt.","rev.","sr.","v.","vol.","et al.","pp.","p."],"academic":["adj.","adv.","cf.","cm.","co.","corp.","dept.","dist.","ed.","edn.","esp.","etc.","ex.","i.e.","e.g.","op. cit.","vs."]}')},501:e=>{"use strict";e.exports=JSON.parse('{"terms":["API","APIs","ASCII","CI","CLI","DLL","DNS","EC2","FTP","HTTP","HTTPS","ICMP","IDE","IP","ISP","LPWAN","M2M","MQTT","OOP","REST","SSH","SSL","TCP","UDP","URL","WLAN","WYSIWYG","IMAP","RSS","IaaS","PaaS","SaaS","CaaS","FaaS","XaaS","RaaS","IoE","IoT","LoRa","NB-IoT","RFID","RF","RFI","RFQ","ECMAScript","IO","I/O","DevOps","SecOps","DDoS","VoIP","AI","AR","ML","VR","CI/CD","DevSecOps","UI/UX","UX/UI","UI","UX","MVC","ORM","3G","4G","5G","NumPy","VPN","PKI","WAN","NAT","GPU","SSD","HDD","RAM","Frontend","Backend","Fullstack"],"legal":["DMCA","GDPR","HIPAA","NDA","SOW","TOS"],"languages":["JavaScript","TypeScript","Java","PHP","SQL","CSS",".NET","ES5","ES6","NoSQL","DynamoDB","Terraform","CloudFormation","RDS","Python","Ruby","Go","Swift","Kotlin","Perl"],"formats":["JSON","XML","YAML","GraphQL","WebSocket","RESTful"],"secops":["RaaS","DevSecOps","SecOps","Cybersecurity","DDoS"],"technologies":["AWS","Azure","GCP","VMware","Docker","Ansible","Chef","Puppet","Git","Subversion","Jenkins","CircleCI","Hadoop","Spark","BigQuery","PowerBI","Tableau"],"os":["Android","macOS","Windows","Linux","iOS","Ubuntu","CentOS","Fedora","Debian","SUSE","HarmonyOS","FreeRTOS","BeOS","BSD","Cordova","Flutter"],"programming":["Angular","Bootstrap","CodeIgniter","jQuery","Laravel","Redux","Vue.js","VueX","SCSS","AJAX","GraphQL","HTML","HTML5","MySQL","MongoDB","PostgresQL","SQLite","ASP","ASPX","Elasticsearch","Nginx","OpenSSL","Webpack","Unity3D","Kubernetes","TensorFlow","NPM","cURL"]}')},661:e=>{"use strict";e.exports=JSON.parse('{"eterms":["eBook","eBooks","eMarket","eMarketplace","eMarketplaces","eMarkets","eReader","eShop","eShops","eStore","eStores","E-commerce","E-com"]}')},742:e=>{"use strict";e.exports=JSON.parse('{"miscellaneous":["w/","w/o","Open Source","Cybersecurity","Ecosystem","Biodiversity","LGBT","LGBTQ+","LGBTQIA+","2SLGBTQ+","BIPOC"]}')},814:e=>{"use strict";e.exports=JSON.parse('{"commercial":["Ltd.","LLC","PLC","Co.","Inc.","St.","Ave.","Bldg.","No.","GmbH"],"titles":["CEO","CEOs","CFO","CFOs","CIO","CIOs","CMO","CMOs","COO","COOs","CPO","CPOs","CRO","CROs","CSO","CSOs","CTO","CTOs","EVP","EVPs","HR","HRs","SVP","SVPs","VP","VPs","CMTO","CDO"],"accounting":["AP","COGS","EBIT","EPS","FIFO","GAAP","LIFO","P&L","ROI","SOX","TCO","VAT","EBITDA","NPV","WACC","AR"],"finance":["CAGR","DCF","ETF","IPO","IRR","M&A","NAV","PE","PEG","PPE","ROE","S&P","TVM","VC","FOMC","FX","ETF"],"legal":["AFA","ADR","CCPA","CFAA","CISG","DMCA","EULA","GDPR","HIPAA","NDA","SOW","TOS","LLM","JD","Esq.","AG","SARL","KYC","AML","ph.d.","m.d.","d.d.s.","d.m.d.","d.o.","d.c.","d.v.m.","d.n.p.","d.p.m.","d.s.w.","d.s.n.","d.n.sc.","d.n.a.","d.n.t.","d.n.p.t.","d.n.o.","d.n.m.","d.n.e.","d.n.s.","d.n.p.s."]}')},987:(e,t,r)=>{var n,i;e=r.nmd(e),n=[r(388)],void 0===(i=function(t){"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}void 0===String.prototype.toTitleCase&&(String.prototype.toTitleCase=function(e){return new t.TitleCaser(e).toTitleCase(this)}),"object"===r(e)&&e.exports&&(e.exports={TitleCaser:t.TitleCaser}),"undefined"!=typeof window&&window.document&&(window.TitleCaser=t.TitleCaser)}.apply(t,n))||(e.exports=i)}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={id:n,loaded:!1,exports:{}};return e[n](a,a.exports,r),a.loaded=!0,a.exports}r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);r(987)})();
5
+ */(()=>{var e={16:e=>{"use strict";e.exports=JSON.parse('{"ranks":["Pvt.","Cpl.","Sgt.","SSgt.","GySgt.","MSgt.","1stSgt.","SgtMaj.","WO1","CW2","CW3","CW4","CW5","2ndLt.","1stLt.","Capt.","Maj.","LtCol.","Col.","BrigGen.","MajGen.","LtGen.","Gen.","Adm.","Cpt.","Cmdr.","Lt.","Ens."],"branches":["Army","Navy","Air Force","Marines","Coast Guard","Space Force","National Guard","People\'s Liberation Army","Russian Ground Forces","JASDF","ROKA"],"units":["Platoon","Company","Battalion","Regiment","Brigade","Division","Corps","Squad","Fleet","Wing","Squadron","Task Force","Eurocorps","Battlegroup","Rapid Reaction Force","Joint Expeditionary Force"],"acronyms":["DoD","NATO","EUFOR","EUTM","OSCE","UNSC","JAG","ROTC","AFB","MOS","AWOL","MRE","IED","FOB","TOC","CONUS","OCONUS","UCMJ","USMC","USAF","USN","USA","SOCOM","CENTCOM","NORAD","PACOM","JTF","RPG","SAM","ASEAN","AUKUS","QUAD","CSTO","SCO","CFSP","EEAS","EUMS","Frontex","GRU","FSB","PLAN","PLAAF"],"equipment":["Humvee","MRAP","Apache","Black Hawk","Bradley","Abrams","F-16","F-22","F-35","B-2","B-52","C-130","LCAC","MRE"],"operations":["Operation Desert Storm","Operation Enduring Freedom","Operation Iraqi Freedom","Operation Inherent Resolve"],"treaties":["Lisbon Treaty","Maastricht Treaty","Treaty of Rome","Nice Treaty","Schengen Agreement"],"regions":["South China Sea","Taiwan Strait","Korean DMZ","Kashmir","Kuril Islands","Senkaku Islands"],"alliances":["NATO","AUKUS","QUAD","ASEAN","SCO","CSTO","Five Eyes"]}')},157:e=>{"use strict";e.exports=JSON.parse('{"countries":["Afghanistan","Albania","Algeria","Andorra","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei","Bulgaria","Burkina Faso","Burundi","Cabo Verde","Cambodia","Cameroon","Canada","Central African Republic","Chad","Chile","China","Colombia","Comoros","Congo","Costa Rica","Cote d\'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Korea","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Zealand","Nicaragua","Niger","Nigeria","North Macedonia","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Yemen","Zambia","Zimbabwe"],"alpha2":["UK"],"alpha3":["USA"]}')},223:e=>{"use strict";e.exports=JSON.parse('{"sports":["FIFA","UEFA","NBA","NFL","MLB","NHL","NASCAR","IOC","FIBA","ATP","WTA","PGA","LPGA","FIA","WADA","ITF","AFL","NRL","ICC","IRB","IHF","FIVB","FINA","UCI","IAAF","ISU","WSF","BWF","WBC","WBO","IBF","IBO","UEFA","CONMEBOL","CONCACAF","CAF","AFC","OFC","CPL","MLS","LaLiga","Bundesliga","Ligue1","Eredivisie","JLeague","KLeague","Ryder Cup","Davis Cup","FedCup","XGames","Olympics","Paralympics","Dakar"],"apple":["Apple","AirDrop","AirPlay","AirPods","AirTags","FinalCut","GarageBand","iBooks","iCloud","iLife","iMac","iMessage","iMovie","iPhoto","iWatch","iWork","LogicPro","macOS","ProTools","QuickTime","iPhone","iPad","iPod","iOS","macOS","tvOS","watchOS"],"corporate":["Deloitte","Devoteam","ExxonMobil","GE","Boeing","Shell","Chevron"],"tech":["Bing","Salesforce","Asus","Acer","Lenovo","Huawei","Xiaomi","Epson","Nvidia","AMD","Qualcomm","Logitech","Panasonic","Sharp","Toshiba","Philips","Fujitsu","Netgear","Lexmark","Razer","SAP","Symantec","Kaspersky","Avast","McAfee","Siemens","Canon","Nikon","Garmin","GoPro","Oculus","Zoom","Slack","Trello","WeChat","Alibaba","Tencent","Baidu","Roku","Fitbit","Dropbox","Reddit","TikTok","Slack","Trello","Uber","Zoom","Reddit","Quora","JIRA","ZoomInfo","HubSpot","Mailchimp","WeChat","Dropbox","Uber","Telegram","Discord","StackOverflow","Quora","Reddit","ZoomInfo","Airbnb","LinkedIn","Snapchat","GitHub","GitLab","Nginx","OpenSSL","Webpack","Unity3D","Figma","JIRA","Kubernetes","TensorFlow","NPM","WooCommerce","WordPress","Slack","Trello","Uber","Zoom","Reddit","Quora","WeChat","Dropbox","Telegram","Discord","StackOverflow","Airbnb","LinkedIn","Snapchat","JIRA","MobX","VMware","Google"],"business":["Visa","Mastercard","Citibank","JPMorgan","Barclay","AMEX","Citigroup","PayPal","BNP","HSBC","Santander","UBS","Allianz","Prudential","Vanguard","BlackRock","CapitalOne","TD","Robinhood","MoneyGram","SoFi","Experian","Equifax","TransUnion","MasterCard","Blockchain","Coinbase","Binance","Kraken","Ethereum","Bitcoin"],"automotive":["BMW","Ford","Mercedes","Nissan","Tesla","Toyota","Audi","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","LandRover","Lexus","Maserati","Mazda","McLaren","Mitsubishi","Peugeot","Porsche","Renault","RollsRoyce","Saab","Subaru","Suzuki","Volkswagen","Volvo","Alfa Romeo","Bentley","Bugatti","Cadillac","Citroen","Daewoo","Daihatsu","Datsun","DeLorean","Fiat Chrysler","GMC","Holden","Hummer","Isuzu","Koenigsegg","Lancia","Lincoln","Lotus","Mahindra","Suzuki","Opel","Pagani","Perodua","Proton","Rover","Scania","Skoda","SsangYong","Tata","Vauxhall","VinFast","Yugo","Zenvo"],"media":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","HBO","Showtime","Starz","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Vine","Zynga","Tidal","Quibi","Crave","Gaia","PlutoTV","Vudu","Kanopy","Mubi","BritBox"],"telecom":["Verizon","Sprint","Nokia","Ericsson","Vodafone","AT&T","Huawei","Xiaomi","Orange","NTT","T-Mobile","Telefonica","Airtel","Telstra","Rogers","Bell","MTN","ZTE","Qualcomm","Motorola","Telus","BT","Swisscom","SoftBank","KDDI"],"entertainment":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","Pandora","HBO","Showtime","Starz","Paramount","Peacock","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Zynga","Tidal","Oscars"],"retail":["Amazon","eBay","IKEA","Walmart","Zara","Target","Costco","Sephora","Nordstrom","Tesco","Asda","Aldi","Lidl","Carrefour","Uniqlo","H&M","Gap","Cabela’s","BassPro","REI","Ulta","Saks","JCPenney","Belk","Argos","Safeway","Kroger","Publix","HomeDepot","Woolworths","Staples","OfficeMax","B&H","Newegg","MicroCenter","Frys","Monoprix","Waitrose","Morrisons","Ocado","Flipkart","Rakuten","Alibaba","JD","Taobao","Tmall","Guomei","Suning"],"food":["Nestle","Pepsi","Coca-Cola","PepsiCo","Starbucks","KFC","BurgerKing","PizzaHut","TacoBell","Kroger","Costco","Woolworths","Carrefour","Tesco","Aldi","Lidl","Walmart","Safeway","Publix","WholeFoods","RedBull","Monster","Nespresso","Heineken","Budweiser","Corona","Guinness","GeneralMills","Unilever","Kraft","Heinz","Danone","Campbell","Tyson","Conagra","Mondelez","Suntory","Diageo","Pernod"],"pharmaceutical":["Pfizer","Moderna","Gilead","Merck","Novartis","Sanofi","Roche","AbbVie","Amgen","Bayer","Biogen","BristolMyers","Celgene","GSK","Janssen","Lilly","Medtronic","Mylan","NovoNordisk","Regeneron","Teva","AstraZeneca","Boehringer","Daiichi","Eisai","Genentech","Grifols","Ipsen","Mundipharma","Otsuka","Purdue","Sandoz","Servier","SunPharma","Takeda","UCB","Viatris","Wockhardt","Zydus","Alkem"],"nonprofit":["NGO","NPO","NGOs","NPOs","UN","UNESCO","UNICEF","UNHCR","UNODC","UNDP","UNFPA","UNEP","UNRWA"]}')},279:(e,t,r)=>{var n,a;n=[t,r(416)],void 0===(a=function(e,r){"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,i,o,s=[],l=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw a}}return s}}(e,t)||u(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||u(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=u(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){s=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(s)throw i}}}}function u(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,f(n.key),n)}}function d(e,t,r){return(t=f(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var a=r.call(e,t||"default");if("object"!=n(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==n(t)?t:t+""}Object.defineProperty(e,"__esModule",{value:!0}),t.TitleCaserUtils=void 0;var y=t.TitleCaserUtils=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e)}return t=e,u=[{key:"validateOption",value:function(e,t){if(!Array.isArray(t))throw new TypeError("Invalid option: ".concat(e," must be an array"));if(!t.every((function(e){return"string"==typeof e})))throw new TypeError("Invalid option: ".concat(e," must be an array of strings"))}},{key:"validateOptions",value:function(e){for(var t=0,n=Object.keys(e);t<n.length;t++){var a=n[t];if("style"!==a)if("wordReplacementsList"!==a){if(!r.titleCaseDefaultOptionsList.hasOwnProperty(a))throw new TypeError("Invalid option: ".concat(a));this.TitleCaseValidator.validateOption(a,e[a])}else{if(!Array.isArray(e.wordReplacementsList))throw new TypeError("Invalid option: ".concat(a," must be an array"));var i,o=l(e.wordReplacementsList);try{for(o.s();!(i=o.n()).done;)if("string"!=typeof i.value)throw new TypeError("Invalid option: ".concat(a," must contain only strings"))}catch(e){o.e(e)}finally{o.f()}}else{if("string"!=typeof e.style)throw new TypeError("Invalid option: ".concat(a," must be a string"));if(!r.allowedTitleCaseStylesList.includes(e.style))throw new TypeError("Invalid option: ".concat(a," must be a string"))}}}},{key:"getTitleCaseOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],o=JSON.stringify({options:t,lowercaseWords:n});if(e.titleCaseOptionsCache.has(o))return e.titleCaseOptionsCache.get(o);var l=s(s(s({},r.titleCaseDefaultOptionsList[t.style||"ap"]),t),{},{smartQuotes:!!t.hasOwnProperty("smartQuotes")&&t.smartQuotes}),u=l.articlesList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),c=l.shortConjunctionsList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),p=l.shortPrepositionsList.concat(n).filter((function(e,t,r){return r.indexOf(e)===t})),d=[].concat(i((l.replaceTerms||[]).map((function(e){var t=a(e,2),r=t[0],n=t[1];return[r.toLowerCase(),n]}))),i(r.wordReplacementsList)),f={articlesList:u,shortConjunctionsList:c,shortPrepositionsList:p,neverCapitalizedList:i(l.neverCapitalizedList),replaceTerms:d,smartQuotes:l.smartQuotes};return e.titleCaseOptionsCache.set(o,f),f}},{key:"capitalizeFirstLetter",value:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},{key:"isShortConjunction",value:function(t,r){var n=i(e.getTitleCaseOptions({style:r}).shortConjunctionsList),a=t.toLowerCase();return n.includes(a)}},{key:"isArticle",value:function(t,r){return e.getTitleCaseOptions({style:r}).articlesList.includes(t.toLowerCase())}},{key:"isShortPreposition",value:function(t,r){return e.getTitleCaseOptions({style:r}).shortPrepositionsList.includes(t.toLowerCase())}},{key:"isNeverCapitalized",value:function(t,r){var n="".concat(r,"_").concat(t.toLowerCase());if(e.isNeverCapitalizedCache.has(n))return e.isNeverCapitalizedCache.get(n);var a=e.getTitleCaseOptions({style:r}).neverCapitalizedList.includes(t.toLowerCase());return e.isNeverCapitalizedCache.set(n,a),a}},{key:"isShortWord",value:function(t,a){if("string"!=typeof t)throw new TypeError("Invalid input: word must be a string. Received ".concat(n(t),"."));if(!r.allowedTitleCaseStylesList.includes(a))throw new Error("Invalid option: style must be one of ".concat(r.allowedTitleCaseStylesList.join(", "),"."));return e.isShortConjunction(t,a)||e.isArticle(t,a)||e.isShortPreposition(t,a)||e.isNeverCapitalized(t,a)}},{key:"hasNumbers",value:function(e){return/\d/.test(e)}},{key:"hasUppercaseMultiple",value:function(e){for(var t=0,r=0;r<e.length&&t<2;r++)/[A-Z]/.test(e[r])&&t++;return t>=2}},{key:"hasUppercaseIntentional",value:function(e){if(e.length<=4)return/[A-Z]/.test(e.slice(1));var t=/[A-Z]/.test(e.slice(1)),r=/[a-z]/.test(e.slice(1));return t&&r}},{key:"isEntirelyUppercase",value:function(e){return e===e.toUpperCase()&&e!==e.toLowerCase()&&e.length>1}},{key:"isRegionalAcronym",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");if(e.length<2)return!1;var t=e.toLowerCase();return r.regionalAcronymList.includes(t)}},{key:"isRegionalAcronymNoDot",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof t)return!1;var a=e.toLowerCase().replace(/[^\w\s]/g,""),i=t.toLowerCase().replace(/[^\w\s]/g,"");return!!(n&&r.regionalAcronymList.includes(a)&&["the"].includes(n.toLowerCase()))||r.regionalAcronymList.includes(a)&&r.directFollowingIndicatorsRegionalAcronym.includes(i)}},{key:"isFinalWordRegionalAcronym",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof t)return!1;var a=e.toLowerCase().replace(/[^\w]/g,""),i=t.toLowerCase().replace(/[^\w]/g,""),o="string"==typeof n?n.toLowerCase().replace(/[^\w]/g,""):null;return!!(r.regionalAcronymList.includes(a)&&(r.regionalAcronymPrecedingWords.includes(i)||"the"===i&&o&&r.regionalAcronymPrecedingWords.includes(o)))}},{key:"normalizeRegionalAcronym",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");return e.toUpperCase()}},{key:"normalizeAcronymKey",value:function(e){return e.toLowerCase().replace(/\./g,"")}},{key:"normalizeCasingForWordByStyle",value:function(e,t){if(!e||!t||!r.titleCaseDefaultOptionsList[t])return!1;var n=e.toLowerCase(),a=r.titleCaseDefaultOptionsList[t],o=a.shortConjunctionsList,s=a.articlesList,l=a.shortPrepositionsList,u=a.neverCapitalizedList;return!![].concat(i(o),i(s),i(l),i(u)).includes(n)&&e}},{key:"hasSuffix",value:function(e){return e.length>2&&e.endsWith("'s")}},{key:"hasApostrophe",value:function(e){return-1!==e.indexOf("'")}},{key:"hasHyphen",value:function(e){return-1!==e.indexOf("-")||-1!==e.indexOf("–")||-1!==e.indexOf("—")}},{key:"hasRomanNumeral",value:function(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");var t=e.includes("'")?e.split("'"):[e],r=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;return t.every((function(e){return r.test(e)}))}},{key:"hasHyphenRomanNumeral",value:function(t){if("string"!=typeof t||""===t)throw new TypeError("Invalid input: word must be a non-empty string.");for(var r=t.split("-"),n=0;n<r.length;n++)if(!e.hasRomanNumeral(r[n]))return!1;return!0}},{key:"hasHtmlBreak",value:function(e){return"nl2br"===e}},{key:"hasUnicodeSymbols",value:function(e){return/[^\x00-\x7F\u00A0-\u00FF\u0100-\u017F\u0180-\u024F\u0250-\u02AF\u02B0-\u02FF\u0300-\u036F\u0370-\u03FF\u0400-\u04FF\u0500-\u052F\u0530-\u058F\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u0780-\u07BF\u07C0-\u07FF\u0800-\u083F\u0840-\u085F\u0860-\u087F\u0880-\u08AF\u08B0-\u08FF\u0900-\u097F\u0980-\u09FF\u0A00-\u0A7F\u0A80-\u0AFF\u0B00-\u0B7F\u0B80-\u0BFF\u0C00-\u0C7F\u0C80-\u0CFF\u0D00-\u0D7F\u0D80-\u0DFF\u0E00-\u0E7F\u0E80-\u0EFF\u0F00-\u0FFF]/.test(e)}},{key:"hasCurrencySymbols",value:function(e){return/[^\x00-\x7F\u00A0-\u00FF\u20AC\u20A0-\u20B9\u20BD\u20A1-\u20A2\u00A3-\u00A5\u058F\u060B\u09F2-\u09F3\u0AF1\u0BF9\u0E3F\u17DB\u20A6\u20A8\u20B1\u2113\u20AA-\u20AB\u20AA\u20AC-\u20AD\u20B9]/.test(e)}},{key:"isWordAmpersand",value:function(e){return/&amp;|&/.test(e)}},{key:"startsWithSymbol",value:function(e){if("string"!=typeof e)throw new Error("Parameter 'word' must be a string. Received '".concat(n(e),"' instead."));if(0===e.length)return!1;var t=e.charAt(0);return"#"===t||"@"===t||"."===t}},{key:"escapeSpecialCharacters",value:function(e){return e.replace(/[&<>"']/g,(function(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#x27;";default:return e}}))}},{key:"unescapeSpecialCharacters",value:function(e){return e.replace(/&amp;|&lt;|&gt;|&quot;|&#x27;/g,(function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&#x27;":return"'";default:return e}}))}},{key:"endsWithSymbol",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[".",",",";",":","?","!"];if("string"!=typeof e||!Array.isArray(t))throw new Error("Invalid arguments");return t.some((function(t){return e.endsWith(t)}))||t.includes(e.slice(-2))}},{key:"isWordIgnored",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.ignoredWordList;if(!Array.isArray(n))throw new TypeError("Invalid input: ignoredWords must be an array.");if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");return t=e.toLowerCase().trim(),n.includes(t)}},{key:"isWordInArray",value:function(e,t){return!!Array.isArray(t)&&t.some((function(t){return t.toLowerCase()===e.toLowerCase()}))}},{key:"convertQuotesToCurly",value:function(e){for(var t={"'":["‘","’"],'"':["“","”"]},r="",n=0;n<e.length;n++){var a=e[n],i=t[a];if(i){var o=e[n-1],s=e[n+1],l=o&&" "!==o&&"\n"!==o?i[1]:i[0];r+=l,l===i[1]&&/[.,;!?()\[\]{}:]/.test(s)&&(r+=s,n++)}else r+=a}return r}},{key:"replaceTerm",value:function(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||"object"!==n(t))throw new TypeError("Invalid input: replaceTermObj must be a non-null object.");var r;if(r=e.toLowerCase(),t.hasOwnProperty(r))return t[r];if(t.hasOwnProperty(e))return t[e];var a=e.toUpperCase();return t.hasOwnProperty(a)?t[a]:e}},{key:"isElidedWord",value:function(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var t,r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),n=e.trim().toLowerCase().replace(/'/g,"’"),a=l(r);try{for(a.s();!(t=a.n()).done;){var i=t.value;if(n.startsWith(i))return!0}}catch(e){a.e(e)}finally{a.f()}return!1}},{key:"normalizeElidedWord",value:function(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var t,r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),n=e.trim(),a=n.replace(/'/g,"’").toLowerCase(),i=l(r);try{for(i.s();!(t=i.n()).done;){var o=t.value;if(a.startsWith(o)){var s=o.length,u=n.slice(s);return o.charAt(0).toUpperCase()+o.slice(1)+(u.length>0?u.charAt(0).toUpperCase()+u.slice(1):"")}}}catch(e){i.e(e)}finally{i.f()}return!1}},{key:"correctSuffix",value:function(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t)||t.some((function(e){return"string"!=typeof e})))throw new TypeError("Invalid input: correctTerms must be an array of strings.");if(/'s$/i.test(e)){var r=e.slice(0,-2),n=t.findIndex((function(e){return e.toLowerCase()===r.toLowerCase()}));if(n>=0){var a=t[n];return"".concat(a,"'s")}var i=r.charAt(0).toUpperCase()+r.slice(1);return"".concat(i,"'s")}return e}},{key:"correctTerm",value:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/[-']/;if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t))throw new TypeError("Invalid input: correctTerms must be an array.");if(!("string"==typeof r||Array.isArray(r)||r instanceof RegExp))throw new TypeError("Invalid input: delimiters must be a string, an array of strings, or a regular expression.");"string"==typeof r?r=new RegExp("[".concat(r,"]")):Array.isArray(r)&&(r=new RegExp("[".concat(r.join(""),"]")));for(var n=e.split(r),a=n.length,i=function(){var e=n[o].toLowerCase(),r=t.findIndex((function(t){return t.toLowerCase()===e}));n[o]=r>=0?t[r]:n[o].charAt(0).toUpperCase()+n[o].slice(1).toLowerCase()},o=0;o<a;o++)i();var s=r.source.charAt(0);return e.includes("-")?s="-":e.includes("'")&&(s="'"),n.join(s)}},{key:"correctTermHyphenated",value:function(t,n){var a=t.split("-"),i=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},o=function(e){return e.charAt(0)+e.slice(1).toLowerCase()},s={ap:function(e,t){return 0===t?i(e):o(e)},chicago:i,apa:function(t,r,a){return e.isShortWord(t,n)&&r>0&&r<a-1?t.toLowerCase():i(t)},nyt:function(e,t){return 0===t?i(e):o(e)},wikipedia:function(e,t){return 0===t?i(e):o(e)}},l=s[n]||o,u=a.map((function(e,t){var n=e;if(/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})'s$/i.test(e))return n.toUpperCase().replace(/'S$/,"'s");var i=/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;if(i.test(e))return e.toUpperCase();if(e.includes("'")){var o=e.split("'");return o.every((function(e){return i.test(e)}))?n=o.map((function(e){return e.toUpperCase()})).join("'"):l(n,t,a.length)}var s=e.toLowerCase(),u=r.correctTitleCasingList.findIndex((function(e){return e.toLowerCase()===s}));if(u>=0)n=r.correctTitleCasingList[u];else if(s.endsWith("'s")){var c=s.substring(0,s.length-2),p=r.correctTitleCasingList.findIndex((function(e){return e.toLowerCase()===c}));p>=0&&(n="".concat(r.correctTitleCasingList[p],"'s"))}return l(n,t,a.length)}));return u.join("-")}}],(o=null)&&p(t.prototype,o),u&&p(t,u),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,o,u}();d(y,"TitleCaseValidator",void 0),d(y,"titleCaseOptionsCache",new Map),d(y,"isNeverCapitalizedCache",new Map)}.apply(t,n))||(e.exports=a)},321:e=>{"use strict";e.exports=JSON.parse('{"advertising":["AdWords","AdSense","AdMob","DoubleClick","SpotX"],"digitalMarketing":["DSP","SSP","CTR","CPA","CPC","CPL","CPM","CRM","SEO","SEM","SMM","A/B","CTOR","KPI","SERP","FAQ","PR"],"general":["B2B","B2C","CMO","USP","PWA","SMO","T&C","TOS","PP","UI","UX","UI/UX"],"blockchain":["PoE","PoW","PoC"],"accessibility":["A11Y"]}')},388:(e,t,r)=>{var n,a;n=[t,r(416),r(279)],void 0===(a=function(e,r,n){"use strict";function a(e,t,r){return(t=p(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,i,o,s=[],l=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=i.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw a}}return s}}(e,t)||s(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){if(e){if("string"==typeof e)return l(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function c(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,p(n.key),n)}}function p(e){var t=function(e,t){if("object"!=u(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==u(t)?t:t+""}Object.defineProperty(e,"__esModule",{value:!0}),t.TitleCaser=void 0;t.TitleCaser=function(){return e=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.options=t,this.debug=t.debug||!1,this.wordReplacementsList=r.wordReplacementsList,this.correctPhraseCasingList=r.correctPhraseCasingList},(t=[{key:"logWarning",value:function(e){this.debug&&console.warn("Warning: ".concat(e))}},{key:"toTitleCase",value:function(e){var t=this;try{var a=function(e){return!!n.TitleCaserUtils.isRegionalAcronym(e)||!!n.TitleCaserUtils.hasUppercaseIntentional(e)||!!n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)};if(0===e.trim().length)throw new TypeError("Invalid input: input must not be empty.");if("string"!=typeof e)throw new TypeError("Invalid input: input must be a string.");if(void 0!==this.options&&"object"!==u(this.options))throw new TypeError("Invalid options: options must be an object.");var s=this.options,l=s.style,c=void 0===l?"ap":l,p=s.neverCapitalize,d=void 0===p?[]:p,f=s.replaceTermList,y=void 0===f?this.wordReplacementsList:f,m=s.smartQuotes,g=void 0!==m&&m,h=r.titleCaseDefaultOptionsList[c]||{},C=["nl2br"].concat(o(d)),v=n.TitleCaserUtils.getTitleCaseOptions(this.options,r.commonShortWords,r.wordReplacementsList),b=(v.articlesList,v.shortConjunctionsList,v.shortPrepositionsList,v.neverCapitalizedList,v.replaceTerms,v.smartQuotes,y.map((function(e){return Object.keys(e)[0].toLowerCase()}))),S=Object.fromEntries(y.map((function(e){return[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]]})));this.logWarning("replaceTermsArray: ".concat(b)),this.logWarning("this.wordReplacementsList: ".concat(this.wordReplacementsList));var A=e.trim();A=(A=A.replace(/<\s*br\s*\/?\s*>/gi," nl2br ")).replace(/ {2,}/g,(function(e){return e.slice(0,1)})),n.TitleCaserUtils.isEntirelyUppercase(A.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),A=A.toLowerCase());var w=A.split(" "),T=w.map((function(e,a){switch(!0){case n.TitleCaserUtils.isWordAmpersand(e):case n.TitleCaserUtils.hasHtmlBreak(e):case n.TitleCaserUtils.isWordIgnored(e,C):return e;case b.includes(e.toLowerCase()):return S[e.toLowerCase()];case n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList):return n.TitleCaserUtils.correctTerm(e,r.correctTitleCasingList);case n.TitleCaserUtils.isElidedWord(e):return n.TitleCaserUtils.normalizeElidedWord(e);case n.TitleCaserUtils.hasHyphen(e):var i=e.replace(/[\W_]+$/,""),o=e.slice(i.length),s=i.split("-"),l=s.map((function(e){var t=e.toLowerCase();return b.includes(t)?S[t]:e})),u=l.every((function(e,t){return e===s[t]}))?n.TitleCaserUtils.correctTermHyphenated(e,c):l.join("-");return u.endsWith(o)?u:u+o;case n.TitleCaserUtils.hasSuffix(e,c):return n.TitleCaserUtils.correctSuffix(e,r.correctTitleCasingList);case n.TitleCaserUtils.hasUppercaseIntentional(e):return e;case n.TitleCaserUtils.isShortWord(e,c)&&0!==a:return a>0&&n.TitleCaserUtils.endsWithSymbol(w[a-1],[":","?","!","."])?e.charAt(0).toUpperCase()+e.slice(1):n.TitleCaserUtils.normalizeCasingForWordByStyle(e,c);case n.TitleCaserUtils.endsWithSymbol(e):t.logWarning("Check if the word ends with a symbol: ".concat(e));var p=e.split(/([.,\/#!$%\^&\*;:{}=\-_`~()?])/g);t.logWarning("Splitting word at symbols, result: ".concat(p));var d=p.map((function(e){if(t.logWarning("Processing part: ".concat(e)),n.TitleCaserUtils.endsWithSymbol(e))return t.logWarning("Part is a symbol: ".concat(e)),e;if(t.logWarning("Part is a word: ".concat(e)),n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)){var a=n.TitleCaserUtils.correctTerm(e,r.correctTitleCasingList);return t.logWarning("Word is in correctTitleCasingList, corrected term: ".concat(a)),a}if(b.includes(e)){var i=S[e];return t.logWarning("Word is in replaceTermsArray, replacement: ".concat(i)),i}var o=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase();return t.logWarning("Applying title casing to word: ".concat(o)),o}));return d.join("");case n.TitleCaserUtils.startsWithSymbol(e):return n.TitleCaserUtils.isWordInArray(e,r.correctTitleCasingList)?n.TitleCaserUtils.correctTerm(e):e;case n.TitleCaserUtils.hasRomanNumeral(e):return e.toUpperCase();case n.TitleCaserUtils.hasNumbers(e):return e;default:return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}}));A=(A=T.join(" ")).replace(/nl2br/gi,"<br>"),g&&(A=n.TitleCaserUtils.convertQuotesToCurly(A));for(var L=A.split(" "),O=L[0],P=L[1]||null,I=(L[L.length-1],0);I<L.length;I++){I>0&&L[I-1];var F=L[I],k=I<L.length-1?L[I+1]:null,R=F.match(/[.,!?;:]+$/),E="";R&&(E=R[0],F=F.replace(/[.,!?;:]+$/,"")),n.TitleCaserUtils.isRegionalAcronym(F)&&(F=n.TitleCaserUtils.normalizeRegionalAcronym(F)),n.TitleCaserUtils.isRegionalAcronymNoDot(F,k)&&(F=n.TitleCaserUtils.normalizeRegionalAcronym(F)),""!==E&&(F+=E)}for(var M=(A=L.join(" ")).split(" "),U=1;U<M.length-1;U++){var B=M[U];M[U-1],M[U+1],B===B.toUpperCase()||n.TitleCaserUtils.hasUppercaseIntentional(B)||n.TitleCaserUtils.isWordInArray(B,r.commonShortWords)&&(M[U]=B.length<=3?B.toLowerCase():B)}for(var D=(A=M.join(" ")).split(" "),N=0;N<D.length;N++){var j=D[N],W=D[N+1],x=D[N-1];null!==W&&n.TitleCaserUtils.isRegionalAcronymNoDot(j,W,x)&&(D[N]=j.toUpperCase())}var G=D[D.length-1],z=D[D.length-2],H=D[D.length-3];n.TitleCaserUtils.isRegionalAcronym(O)&&(console.log("firstWord is a regional acronym, proof: ",O),D[0]=O.toUpperCase()),n.TitleCaserUtils.isRegionalAcronymNoDot(O,P)&&(D[0]=O.toUpperCase()),n.TitleCaserUtils.isFinalWordRegionalAcronym(G,z,H)&&(D[D.length-1]=G.toUpperCase()),A=D.join(" ");for(var V=0,K=Object.entries(this.correctPhraseCasingList);V<K.length;V++){var Q=i(K[V],2),J=Q[0],X=Q[1],Z=new RegExp(J.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");A=A.replace(Z,X)}if("sentence"===h.caseStyle){for(var q=A.split(" "),$=!1,Y=0;Y<q.length;Y++){var _=q[Y];$||!/[A-Za-z]/.test(_)?a(_)||(q[Y]=_.toLowerCase()):(a(_)||(q[Y]=_.charAt(0).toUpperCase()+_.slice(1).toLowerCase()),$=!0)}A=q.join(" ")}return A}catch(e){throw new Error(e)}}},{key:"setReplaceTerms",value:function(e){var t=this;if(!Array.isArray(e))throw new TypeError("Invalid argument: setReplaceTerms must be an array of objects.");e.forEach((function(e){if(e&&"object"===u(e)){var r=i(Object.entries(e)[0],2),n=r[0],o=r[1],s=t.wordReplacementsList.findIndex((function(e){return e.hasOwnProperty(n)}));-1!==s?t.wordReplacementsList[s][n]=o:t.wordReplacementsList.push(a({},n,o))}else console.warn("Invalid entry in terms array:",e)})),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}},{key:"addReplaceTerm",value:function(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: term and replacement must be strings.");var r=this.wordReplacementsList.findIndex((function(t){return Object.keys(t)[0]===e}));-1!==r?this.wordReplacementsList[r][e]=t:this.wordReplacementsList.push(a({},e,t)),this.options.wordReplacementsList=this.wordReplacementsList}},{key:"removeReplaceTerm",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid argument: term must be a string.");var t=this.wordReplacementsList.findIndex((function(t){return Object.keys(t)[0]===e}));if(-1===t)throw new Error("Term '".concat(e,"' not found in word replacements list."));this.wordReplacementsList.splice(t,1),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}},{key:"addExactPhraseReplacements",value:function(e){var t=this;if(!Array.isArray(e))throw new TypeError("Invalid argument: newPhrases must be an array.");e.forEach((function(e){if("object"!==u(e)||Array.isArray(e)||1!==Object.keys(e).length){if("object"!==u(e)||Array.isArray(e))throw new TypeError("Invalid argument: Each item must be an object with a single key-value pair.");Object.entries(e).forEach((function(e){var r=i(e,2),n=r[0],a=r[1];if("string"!=typeof n||"string"!=typeof a)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");t.correctPhraseCasingList[n]=a}))}else{var r=Object.keys(e)[0],n=e[r];if("string"!=typeof r||"string"!=typeof n)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");t.correctPhraseCasingList[r]=n}})),this.logWarning("Log the this.correctPhraseCasingList: ".concat(this.correctPhraseCasingList))}},{key:"setStyle",value:function(e){if("string"!=typeof e)throw new TypeError("Invalid argument: style must be a string.");this.options.style=e}}])&&c(e.prototype,t),s&&c(e,s),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t,s}()}.apply(t,n))||(e.exports=a)},416:(e,t,r)=>{var n,a;n=[t,r(223),r(814),r(661),r(157),r(321),r(742),r(501),r(491),r(16)],void 0===(a=function(e,r,n,a,i,o,s,l,u,c){"use strict";function p(e){return e&&e.__esModule?e:{default:e}}function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function f(e){return function(e){if(Array.isArray(e))return y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return y(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?y(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}Object.defineProperty(e,"__esModule",{value:!0}),t.wordReplacementsList=t.titleCaseStylesList=t.titleCaseDefaultOptionsList=t.regionalAcronymPrecedingWords=t.regionalAcronymList=t.ignoredWordList=t.directFollowingIndicatorsRegionalAcronym=t.correctTitleCasingList=t.correctPhraseCasingList=t.commonShortWords=t.allowedTitleCaseStylesList=void 0,r=p(r),n=p(n),a=p(a),i=p(i),o=p(o),s=p(s),l=p(l),u=p(u),c=p(c);var m=function(){for(var e=[],t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return r.forEach((function(t){Array.isArray(t)?t.forEach((function(t){Object.values(t).forEach((function(t){e.push.apply(e,f(t))}))})):"object"===d(t)&&Object.values(t).forEach((function(t){e.push.apply(e,f(t))}))})),f(new Set(e))}(r.default,n.default,a.default,i.default,o.default,s.default,l.default,u.default,c.default),g=(t.correctTitleCasingList=m,t.commonShortWords=["the","in","to","within","towards","into","at","of","for","by","on","from","with","through","about","across","over","under","between"],t.wordReplacementsList=[{"a.k.a":"AKA"},{"a.s.a.p":"ASAP"},{"f.a.q":"FAQ"},{"f.a.q.s":"FAQs"},{FAQS:"FAQs"},{"f.y.i":"FYI"},{"d.i.y":"DIY"},{"t.b.d":"TBD"},{"back-end":"Backend"},{"front-end":"Frontend"},{"full-stack":"Fullstack"},{nodejs:"Node.js"},{nextjs:"Next.js"},{nuxtjs:"Nuxt.js"},{reactjs:"React"},{"react.js":"React"},{"cyber-security":"Cybersecurity"}],t.titleCaseStylesList=Object.freeze({AP:"ap",APA:"apa",BRITISH:"british",CHICAGO:"chicago",NYT:"nyt",WIKIPEDIA:"wikipedia"}));t.allowedTitleCaseStylesList=Object.values(g),t.titleCaseDefaultOptionsList=Object.freeze({ap:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},apa:{caseStyle:"title",shortConjunctionsList:["and","as","but","for","if","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","for","in","of","off","on","per","to","via"],neverCapitalizedList:[]},british:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},chicago:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:["etc."]},nyt:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},wikipedia:{caseStyle:"sentence",shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]}}),t.ignoredWordList=[],t.correctPhraseCasingList={"the cybersmile foundation":"The Cybersmile Foundation","co. by colgate":"CO. by Colgate","on & off":"On & Off","on and off":"On and Off"},t.regionalAcronymList=["usa","us","u.s.a","u.s.","u.s","u.s.a.","eu","e.u.","e.u","uk","u.k.","u.k"],t.regionalAcronymPrecedingWords=["the","via","among","across","beyond","outside","alongside","throughout","despite","unlike","upon"],t.directFollowingIndicatorsRegionalAcronym=["act","acts","administration","administrations","agency","agencies","agreement","agreements","airforce","airforces","aid","alliance","alliances","ambassador","ambassadors","authority","authorities","bill","bills","bloc","blocs","budget","budgets","bureau","bureaus","cabinet","cabinets","charter","charters","command","commands","commission","commissions","conference","conferences","congress","congresses","convention","conventions","council","councils","court","courts","defense","defences","defence","defenses","delegation","delegations","democracy","democracies","department","departments","development","developments","directive","directives","diplomacy","division","divisions","economy","economies","embassy","embassies","engagement","engagements","envoy","envoys","exports","federation","federations","finance","finances","forces","framework","frameworks","funding","government","governments","hearing","hearings","imports","initiative","initiatives","intel","intelligence","intervention","interventions","jurisdiction","jurisdictions","law","laws","leadership","leaders","legislation","liaison","liaisons","mandate","mandates","markets","marines","military","militaries","ministry","ministries","mission","missions","navy","navies","negotiations","office","offices","operations","oversight","parliament","parliaments","plan","plans","policies","policy","policy-makers","precedent","precedents","presence","program","programme","programmes","programs","project","projects","protocol","protocols","province","provinces","reform","reforms","regulation","regulations","regulator","regulators","relations","representation","representations","republic","republics","resolution","resolutions","ruling","rulings","sanctions","security","securities","senate","senates","service","services","state","states","statute","statutes","strategy","strategies","summit","summits","summitry","surveillance","talks","tariffs","territory","territories","trade","trades","treasury","treasuries","treaty","treaties","tribunal","tribunals","troops","union","unions","veterans","warships","zone","zones"]}.apply(t,n))||(e.exports=a)},491:e=>{"use strict";e.exports=JSON.parse('{"timeRelated":["a.m.","p.m.","ca.","cc.","fig.","pl.","pt.","rev.","sr.","v.","vol.","et al.","pp.","p."],"academic":["adj.","adv.","cf.","cm.","co.","corp.","dept.","dist.","ed.","edn.","esp.","etc.","ex.","i.e.","e.g.","op. cit.","vs."]}')},501:e=>{"use strict";e.exports=JSON.parse('{"terms":["API","APIs","ASCII","CI","CLI","DLL","DNS","EC2","FTP","HTTP","HTTPS","ICMP","IDE","IP","ISP","LPWAN","M2M","MQTT","OOP","REST","SSH","SSL","TCP","UDP","URL","WLAN","WYSIWYG","IMAP","RSS","IaaS","PaaS","SaaS","CaaS","FaaS","XaaS","RaaS","IoE","IoT","LoRa","NB-IoT","RFID","RF","RFI","RFQ","ECMAScript","IO","I/O","DevOps","SecOps","DDoS","VoIP","AI","AR","ML","VR","CI/CD","DevSecOps","UI/UX","UX/UI","UI","UX","MVC","ORM","3G","4G","5G","NumPy","VPN","PKI","WAN","NAT","GPU","SSD","HDD","RAM","Frontend","Backend","Fullstack"],"legal":["DMCA","GDPR","HIPAA","NDA","SOW","TOS"],"languages":["JavaScript","TypeScript","Java","PHP","SQL","CSS",".NET","ES5","ES6","NoSQL","DynamoDB","Terraform","CloudFormation","RDS","Python","Ruby","Go","Swift","Kotlin","Perl"],"formats":["JSON","XML","YAML","GraphQL","WebSocket","RESTful"],"secops":["RaaS","DevSecOps","SecOps","Cybersecurity","DDoS"],"technologies":["AWS","Azure","GCP","VMware","Docker","Ansible","Chef","Puppet","Git","Subversion","Jenkins","CircleCI","Hadoop","Spark","BigQuery","PowerBI","Tableau"],"os":["Android","macOS","Windows","Linux","iOS","Ubuntu","CentOS","Fedora","Debian","SUSE","HarmonyOS","FreeRTOS","BeOS","BSD","Cordova","Flutter"],"programming":["Angular","Bootstrap","CodeIgniter","jQuery","Laravel","Redux","Vue.js","VueX","SCSS","AJAX","GraphQL","HTML","HTML5","MySQL","MongoDB","PostgresQL","SQLite","ASP","ASPX","Elasticsearch","Nginx","OpenSSL","Webpack","Unity3D","Kubernetes","TensorFlow","NPM","cURL"]}')},661:e=>{"use strict";e.exports=JSON.parse('{"eterms":["eBook","eBooks","eMarket","eMarketplace","eMarketplaces","eMarkets","eReader","eShop","eShops","eStore","eStores","E-commerce","E-com"]}')},742:e=>{"use strict";e.exports=JSON.parse('{"miscellaneous":["w/","w/o","Open Source","Cybersecurity","Ecosystem","Biodiversity","LGBT","LGBTQ+","LGBTQIA+","2SLGBTQ+","BIPOC"]}')},814:e=>{"use strict";e.exports=JSON.parse('{"commercial":["Ltd.","LLC","PLC","Co.","Inc.","St.","Ave.","Bldg.","No.","GmbH"],"titles":["CEO","CEOs","CFO","CFOs","CIO","CIOs","CMO","CMOs","COO","COOs","CPO","CPOs","CRO","CROs","CSO","CSOs","CTO","CTOs","EVP","EVPs","HR","HRs","SVP","SVPs","VP","VPs","CMTO","CDO"],"accounting":["AP","COGS","EBIT","EPS","FIFO","GAAP","LIFO","P&L","ROI","SOX","TCO","VAT","EBITDA","NPV","WACC","AR"],"finance":["CAGR","DCF","ETF","IPO","IRR","M&A","NAV","PE","PEG","PPE","ROE","S&P","TVM","VC","FOMC","FX","ETF"],"legal":["AFA","ADR","CCPA","CFAA","CISG","DMCA","EULA","GDPR","HIPAA","NDA","SOW","TOS","LLM","JD","Esq.","AG","SARL","KYC","AML","ph.d.","m.d.","d.d.s.","d.m.d.","d.o.","d.c.","d.v.m.","d.n.p.","d.p.m.","d.s.w.","d.s.n.","d.n.sc.","d.n.a.","d.n.t.","d.n.p.t.","d.n.o.","d.n.m.","d.n.e.","d.n.s.","d.n.p.s."]}')},987:(e,t,r)=>{var n,a;n=[t,r(388)],void 0===(a=function(e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"TitleCaser",{enumerable:!0,get:function(){return r.TitleCaser}}),t.default=void 0,void 0===String.prototype.toTitleCase&&(String.prototype.toTitleCase=function(e){return new r.TitleCaser(e).toTitleCase(this)}),"undefined"!=typeof window&&window.document&&(window.TitleCaser=r.TitleCaser);t.default=r.TitleCaser}.apply(t,n))||(e.exports=a)}},t={};(function r(n){var a=t[n];if(void 0!==a)return a.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,r),i.exports})(987)})();
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * @danielhaim/titlecaser - v1.7.10 - 2025-09-18
3
+ * https://github.com/danielhaim1/titlecaser.git
4
+ * Copyright (c) 2025 Daniel Haim, Licensed Apache-2.0
5
+ */var e=function(){for(var e=[],r=arguments.length,t=new Array(r),a=0;a<r;a++)t[a]=arguments[a];return t.forEach((r=>{Array.isArray(r)?r.forEach((r=>{Object.values(r).forEach((r=>{e.push(...r)}))})):"object"==typeof r&&Object.values(r).forEach((r=>{e.push(...r)}))})),[...new Set(e)]}(JSON.parse('{"sports":["FIFA","UEFA","NBA","NFL","MLB","NHL","NASCAR","IOC","FIBA","ATP","WTA","PGA","LPGA","FIA","WADA","ITF","AFL","NRL","ICC","IRB","IHF","FIVB","FINA","UCI","IAAF","ISU","WSF","BWF","WBC","WBO","IBF","IBO","UEFA","CONMEBOL","CONCACAF","CAF","AFC","OFC","CPL","MLS","LaLiga","Bundesliga","Ligue1","Eredivisie","JLeague","KLeague","Ryder Cup","Davis Cup","FedCup","XGames","Olympics","Paralympics","Dakar"],"apple":["Apple","AirDrop","AirPlay","AirPods","AirTags","FinalCut","GarageBand","iBooks","iCloud","iLife","iMac","iMessage","iMovie","iPhoto","iWatch","iWork","LogicPro","macOS","ProTools","QuickTime","iPhone","iPad","iPod","iOS","macOS","tvOS","watchOS"],"corporate":["Deloitte","Devoteam","ExxonMobil","GE","Boeing","Shell","Chevron"],"tech":["Bing","Salesforce","Asus","Acer","Lenovo","Huawei","Xiaomi","Epson","Nvidia","AMD","Qualcomm","Logitech","Panasonic","Sharp","Toshiba","Philips","Fujitsu","Netgear","Lexmark","Razer","SAP","Symantec","Kaspersky","Avast","McAfee","Siemens","Canon","Nikon","Garmin","GoPro","Oculus","Zoom","Slack","Trello","WeChat","Alibaba","Tencent","Baidu","Roku","Fitbit","Dropbox","Reddit","TikTok","Slack","Trello","Uber","Zoom","Reddit","Quora","JIRA","ZoomInfo","HubSpot","Mailchimp","WeChat","Dropbox","Uber","Telegram","Discord","StackOverflow","Quora","Reddit","ZoomInfo","Airbnb","LinkedIn","Snapchat","GitHub","GitLab","Nginx","OpenSSL","Webpack","Unity3D","Figma","JIRA","Kubernetes","TensorFlow","NPM","WooCommerce","WordPress","Slack","Trello","Uber","Zoom","Reddit","Quora","WeChat","Dropbox","Telegram","Discord","StackOverflow","Airbnb","LinkedIn","Snapchat","JIRA","MobX","VMware","Google"],"business":["Visa","Mastercard","Citibank","JPMorgan","Barclay","AMEX","Citigroup","PayPal","BNP","HSBC","Santander","UBS","Allianz","Prudential","Vanguard","BlackRock","CapitalOne","TD","Robinhood","MoneyGram","SoFi","Experian","Equifax","TransUnion","MasterCard","Blockchain","Coinbase","Binance","Kraken","Ethereum","Bitcoin"],"automotive":["BMW","Ford","Mercedes","Nissan","Tesla","Toyota","Audi","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","LandRover","Lexus","Maserati","Mazda","McLaren","Mitsubishi","Peugeot","Porsche","Renault","RollsRoyce","Saab","Subaru","Suzuki","Volkswagen","Volvo","Alfa Romeo","Bentley","Bugatti","Cadillac","Citroen","Daewoo","Daihatsu","Datsun","DeLorean","Fiat Chrysler","GMC","Holden","Hummer","Isuzu","Koenigsegg","Lancia","Lincoln","Lotus","Mahindra","Suzuki","Opel","Pagani","Perodua","Proton","Rover","Scania","Skoda","SsangYong","Tata","Vauxhall","VinFast","Yugo","Zenvo"],"media":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","HBO","Showtime","Starz","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Vine","Zynga","Tidal","Quibi","Crave","Gaia","PlutoTV","Vudu","Kanopy","Mubi","BritBox"],"telecom":["Verizon","Sprint","Nokia","Ericsson","Vodafone","AT&T","Huawei","Xiaomi","Orange","NTT","T-Mobile","Telefonica","Airtel","Telstra","Rogers","Bell","MTN","ZTE","Qualcomm","Motorola","Telus","BT","Swisscom","SoftBank","KDDI"],"entertainment":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","Pandora","HBO","Showtime","Starz","Paramount","Peacock","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Zynga","Tidal","Oscars"],"retail":["Amazon","eBay","IKEA","Walmart","Zara","Target","Costco","Sephora","Nordstrom","Tesco","Asda","Aldi","Lidl","Carrefour","Uniqlo","H&M","Gap","Cabela’s","BassPro","REI","Ulta","Saks","JCPenney","Belk","Argos","Safeway","Kroger","Publix","HomeDepot","Woolworths","Staples","OfficeMax","B&H","Newegg","MicroCenter","Frys","Monoprix","Waitrose","Morrisons","Ocado","Flipkart","Rakuten","Alibaba","JD","Taobao","Tmall","Guomei","Suning"],"food":["Nestle","Pepsi","Coca-Cola","PepsiCo","Starbucks","KFC","BurgerKing","PizzaHut","TacoBell","Kroger","Costco","Woolworths","Carrefour","Tesco","Aldi","Lidl","Walmart","Safeway","Publix","WholeFoods","RedBull","Monster","Nespresso","Heineken","Budweiser","Corona","Guinness","GeneralMills","Unilever","Kraft","Heinz","Danone","Campbell","Tyson","Conagra","Mondelez","Suntory","Diageo","Pernod"],"pharmaceutical":["Pfizer","Moderna","Gilead","Merck","Novartis","Sanofi","Roche","AbbVie","Amgen","Bayer","Biogen","BristolMyers","Celgene","GSK","Janssen","Lilly","Medtronic","Mylan","NovoNordisk","Regeneron","Teva","AstraZeneca","Boehringer","Daiichi","Eisai","Genentech","Grifols","Ipsen","Mundipharma","Otsuka","Purdue","Sandoz","Servier","SunPharma","Takeda","UCB","Viatris","Wockhardt","Zydus","Alkem"],"nonprofit":["NGO","NPO","NGOs","NPOs","UN","UNESCO","UNICEF","UNHCR","UNODC","UNDP","UNFPA","UNEP","UNRWA"]}'),JSON.parse('{"commercial":["Ltd.","LLC","PLC","Co.","Inc.","St.","Ave.","Bldg.","No.","GmbH"],"titles":["CEO","CEOs","CFO","CFOs","CIO","CIOs","CMO","CMOs","COO","COOs","CPO","CPOs","CRO","CROs","CSO","CSOs","CTO","CTOs","EVP","EVPs","HR","HRs","SVP","SVPs","VP","VPs","CMTO","CDO"],"accounting":["AP","COGS","EBIT","EPS","FIFO","GAAP","LIFO","P&L","ROI","SOX","TCO","VAT","EBITDA","NPV","WACC","AR"],"finance":["CAGR","DCF","ETF","IPO","IRR","M&A","NAV","PE","PEG","PPE","ROE","S&P","TVM","VC","FOMC","FX","ETF"],"legal":["AFA","ADR","CCPA","CFAA","CISG","DMCA","EULA","GDPR","HIPAA","NDA","SOW","TOS","LLM","JD","Esq.","AG","SARL","KYC","AML","ph.d.","m.d.","d.d.s.","d.m.d.","d.o.","d.c.","d.v.m.","d.n.p.","d.p.m.","d.s.w.","d.s.n.","d.n.sc.","d.n.a.","d.n.t.","d.n.p.t.","d.n.o.","d.n.m.","d.n.e.","d.n.s.","d.n.p.s."]}'),JSON.parse('{"eterms":["eBook","eBooks","eMarket","eMarketplace","eMarketplaces","eMarkets","eReader","eShop","eShops","eStore","eStores","E-commerce","E-com"]}'),JSON.parse('{"countries":["Afghanistan","Albania","Algeria","Andorra","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei","Bulgaria","Burkina Faso","Burundi","Cabo Verde","Cambodia","Cameroon","Canada","Central African Republic","Chad","Chile","China","Colombia","Comoros","Congo","Costa Rica","Cote d\'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Korea","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Zealand","Nicaragua","Niger","Nigeria","North Macedonia","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Yemen","Zambia","Zimbabwe"],"alpha2":["UK"],"alpha3":["USA"]}'),JSON.parse('{"advertising":["AdWords","AdSense","AdMob","DoubleClick","SpotX"],"digitalMarketing":["DSP","SSP","CTR","CPA","CPC","CPL","CPM","CRM","SEO","SEM","SMM","A/B","CTOR","KPI","SERP","FAQ","PR"],"general":["B2B","B2C","CMO","USP","PWA","SMO","T&C","TOS","PP","UI","UX","UI/UX"],"blockchain":["PoE","PoW","PoC"],"accessibility":["A11Y"]}'),JSON.parse('{"miscellaneous":["w/","w/o","Open Source","Cybersecurity","Ecosystem","Biodiversity","LGBT","LGBTQ+","LGBTQIA+","2SLGBTQ+","BIPOC"]}'),JSON.parse('{"terms":["API","APIs","ASCII","CI","CLI","DLL","DNS","EC2","FTP","HTTP","HTTPS","ICMP","IDE","IP","ISP","LPWAN","M2M","MQTT","OOP","REST","SSH","SSL","TCP","UDP","URL","WLAN","WYSIWYG","IMAP","RSS","IaaS","PaaS","SaaS","CaaS","FaaS","XaaS","RaaS","IoE","IoT","LoRa","NB-IoT","RFID","RF","RFI","RFQ","ECMAScript","IO","I/O","DevOps","SecOps","DDoS","VoIP","AI","AR","ML","VR","CI/CD","DevSecOps","UI/UX","UX/UI","UI","UX","MVC","ORM","3G","4G","5G","NumPy","VPN","PKI","WAN","NAT","GPU","SSD","HDD","RAM","Frontend","Backend","Fullstack"],"legal":["DMCA","GDPR","HIPAA","NDA","SOW","TOS"],"languages":["JavaScript","TypeScript","Java","PHP","SQL","CSS",".NET","ES5","ES6","NoSQL","DynamoDB","Terraform","CloudFormation","RDS","Python","Ruby","Go","Swift","Kotlin","Perl"],"formats":["JSON","XML","YAML","GraphQL","WebSocket","RESTful"],"secops":["RaaS","DevSecOps","SecOps","Cybersecurity","DDoS"],"technologies":["AWS","Azure","GCP","VMware","Docker","Ansible","Chef","Puppet","Git","Subversion","Jenkins","CircleCI","Hadoop","Spark","BigQuery","PowerBI","Tableau"],"os":["Android","macOS","Windows","Linux","iOS","Ubuntu","CentOS","Fedora","Debian","SUSE","HarmonyOS","FreeRTOS","BeOS","BSD","Cordova","Flutter"],"programming":["Angular","Bootstrap","CodeIgniter","jQuery","Laravel","Redux","Vue.js","VueX","SCSS","AJAX","GraphQL","HTML","HTML5","MySQL","MongoDB","PostgresQL","SQLite","ASP","ASPX","Elasticsearch","Nginx","OpenSSL","Webpack","Unity3D","Kubernetes","TensorFlow","NPM","cURL"]}'),JSON.parse('{"timeRelated":["a.m.","p.m.","ca.","cc.","fig.","pl.","pt.","rev.","sr.","v.","vol.","et al.","pp.","p."],"academic":["adj.","adv.","cf.","cm.","co.","corp.","dept.","dist.","ed.","edn.","esp.","etc.","ex.","i.e.","e.g.","op. cit.","vs."]}'),JSON.parse('{"ranks":["Pvt.","Cpl.","Sgt.","SSgt.","GySgt.","MSgt.","1stSgt.","SgtMaj.","WO1","CW2","CW3","CW4","CW5","2ndLt.","1stLt.","Capt.","Maj.","LtCol.","Col.","BrigGen.","MajGen.","LtGen.","Gen.","Adm.","Cpt.","Cmdr.","Lt.","Ens."],"branches":["Army","Navy","Air Force","Marines","Coast Guard","Space Force","National Guard","People\'s Liberation Army","Russian Ground Forces","JASDF","ROKA"],"units":["Platoon","Company","Battalion","Regiment","Brigade","Division","Corps","Squad","Fleet","Wing","Squadron","Task Force","Eurocorps","Battlegroup","Rapid Reaction Force","Joint Expeditionary Force"],"acronyms":["DoD","NATO","EUFOR","EUTM","OSCE","UNSC","JAG","ROTC","AFB","MOS","AWOL","MRE","IED","FOB","TOC","CONUS","OCONUS","UCMJ","USMC","USAF","USN","USA","SOCOM","CENTCOM","NORAD","PACOM","JTF","RPG","SAM","ASEAN","AUKUS","QUAD","CSTO","SCO","CFSP","EEAS","EUMS","Frontex","GRU","FSB","PLAN","PLAAF"],"equipment":["Humvee","MRAP","Apache","Black Hawk","Bradley","Abrams","F-16","F-22","F-35","B-2","B-52","C-130","LCAC","MRE"],"operations":["Operation Desert Storm","Operation Enduring Freedom","Operation Iraqi Freedom","Operation Inherent Resolve"],"treaties":["Lisbon Treaty","Maastricht Treaty","Treaty of Rome","Nice Treaty","Schengen Agreement"],"regions":["South China Sea","Taiwan Strait","Korean DMZ","Kashmir","Kuril Islands","Senkaku Islands"],"alliances":["NATO","AUKUS","QUAD","ASEAN","SCO","CSTO","Five Eyes"]}')),r=["the","in","to","within","towards","into","at","of","for","by","on","from","with","through","about","across","over","under","between"],t=[{"a.k.a":"AKA"},{"a.s.a.p":"ASAP"},{"f.a.q":"FAQ"},{"f.a.q.s":"FAQs"},{FAQS:"FAQs"},{"f.y.i":"FYI"},{"d.i.y":"DIY"},{"t.b.d":"TBD"},{"back-end":"Backend"},{"front-end":"Frontend"},{"full-stack":"Fullstack"},{nodejs:"Node.js"},{nextjs:"Next.js"},{nuxtjs:"Nuxt.js"},{reactjs:"React"},{"react.js":"React"},{"cyber-security":"Cybersecurity"}],a=Object.freeze({AP:"ap",APA:"apa",BRITISH:"british",CHICAGO:"chicago",NYT:"nyt",WIKIPEDIA:"wikipedia"}),i=Object.values(a),o=Object.freeze({ap:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},apa:{caseStyle:"title",shortConjunctionsList:["and","as","but","for","if","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","for","in","of","off","on","per","to","via"],neverCapitalizedList:[]},british:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},chicago:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:["etc."]},nyt:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},wikipedia:{caseStyle:"sentence",shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]}}),n=[],s={"the cybersmile foundation":"The Cybersmile Foundation","co. by colgate":"CO. by Colgate","on & off":"On & Off","on and off":"On and Off"},c=["usa","us","u.s.a","u.s.","u.s","u.s.a.","eu","e.u.","e.u","uk","u.k.","u.k"],l=["the","via","among","across","beyond","outside","alongside","throughout","despite","unlike","upon"],u=["act","acts","administration","administrations","agency","agencies","agreement","agreements","airforce","airforces","aid","alliance","alliances","ambassador","ambassadors","authority","authorities","bill","bills","bloc","blocs","budget","budgets","bureau","bureaus","cabinet","cabinets","charter","charters","command","commands","commission","commissions","conference","conferences","congress","congresses","convention","conventions","council","councils","court","courts","defense","defences","defence","defenses","delegation","delegations","democracy","democracies","department","departments","development","developments","directive","directives","diplomacy","division","divisions","economy","economies","embassy","embassies","engagement","engagements","envoy","envoys","exports","federation","federations","finance","finances","forces","framework","frameworks","funding","government","governments","hearing","hearings","imports","initiative","initiatives","intel","intelligence","intervention","interventions","jurisdiction","jurisdictions","law","laws","leadership","leaders","legislation","liaison","liaisons","mandate","mandates","markets","marines","military","militaries","ministry","ministries","mission","missions","navy","navies","negotiations","office","offices","operations","oversight","parliament","parliaments","plan","plans","policies","policy","policy-makers","precedent","precedents","presence","program","programme","programmes","programs","project","projects","protocol","protocols","province","provinces","reform","reforms","regulation","regulations","regulator","regulators","relations","representation","representations","republic","republics","resolution","resolutions","ruling","rulings","sanctions","security","securities","senate","senates","service","services","state","states","statute","statutes","strategy","strategies","summit","summits","summitry","surveillance","talks","tariffs","territory","territories","trade","trades","treasury","treasuries","treaty","treaties","tribunal","tribunals","troops","union","unions","veterans","warships","zone","zones"];function p(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,a)}return t}function d(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?p(Object(t),!0).forEach((function(r){m(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):p(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function m(e,r,t){return(r=function(e){var r=function(e,r){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,r||"default");if("object"!=typeof a)return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:r+""}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class g{static validateOption(e,r){if(!Array.isArray(r))throw new TypeError("Invalid option: ".concat(e," must be an array"));if(!r.every((e=>"string"==typeof e)))throw new TypeError("Invalid option: ".concat(e," must be an array of strings"))}static validateOptions(e){for(var r of Object.keys(e))if("style"!==r)if("wordReplacementsList"!==r){if(!o.hasOwnProperty(r))throw new TypeError("Invalid option: ".concat(r));this.TitleCaseValidator.validateOption(r,e[r])}else{if(!Array.isArray(e.wordReplacementsList))throw new TypeError("Invalid option: ".concat(r," must be an array"));for(var t of e.wordReplacementsList)if("string"!=typeof t)throw new TypeError("Invalid option: ".concat(r," must contain only strings"))}else{if("string"!=typeof e.style)throw new TypeError("Invalid option: ".concat(r," must be a string"));if(!i.includes(e.style))throw new TypeError("Invalid option: ".concat(r," must be a string"))}}static getTitleCaseOptions(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],a=JSON.stringify({options:e,lowercaseWords:r});if(g.titleCaseOptionsCache.has(a))return g.titleCaseOptionsCache.get(a);var i=d(d(d({},o[e.style||"ap"]),e),{},{smartQuotes:!!e.hasOwnProperty("smartQuotes")&&e.smartQuotes}),n=i.articlesList.concat(r).filter(((e,r,t)=>t.indexOf(e)===r)),s=i.shortConjunctionsList.concat(r).filter(((e,r,t)=>t.indexOf(e)===r)),c=i.shortPrepositionsList.concat(r).filter(((e,r,t)=>t.indexOf(e)===r)),l=[...(i.replaceTerms||[]).map((e=>{var[r,t]=e;return[r.toLowerCase(),t]})),...t],u={articlesList:n,shortConjunctionsList:s,shortPrepositionsList:c,neverCapitalizedList:[...i.neverCapitalizedList],replaceTerms:l,smartQuotes:i.smartQuotes};return g.titleCaseOptionsCache.set(a,u),u}static capitalizeFirstLetter(e){return e.charAt(0).toUpperCase()+e.slice(1)}static isShortConjunction(e,r){var t=[...g.getTitleCaseOptions({style:r}).shortConjunctionsList],a=e.toLowerCase();return t.includes(a)}static isArticle(e,r){return g.getTitleCaseOptions({style:r}).articlesList.includes(e.toLowerCase())}static isShortPreposition(e,r){var{shortPrepositionsList:t}=g.getTitleCaseOptions({style:r});return t.includes(e.toLowerCase())}static isNeverCapitalized(e,r){var t="".concat(r,"_").concat(e.toLowerCase());if(g.isNeverCapitalizedCache.has(t))return g.isNeverCapitalizedCache.get(t);var{neverCapitalizedList:a}=g.getTitleCaseOptions({style:r}),i=a.includes(e.toLowerCase());return g.isNeverCapitalizedCache.set(t,i),i}static isShortWord(e,r){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string. Received ".concat(typeof e,"."));if(!i.includes(r))throw new Error("Invalid option: style must be one of ".concat(i.join(", "),"."));return g.isShortConjunction(e,r)||g.isArticle(e,r)||g.isShortPreposition(e,r)||g.isNeverCapitalized(e,r)}static hasNumbers(e){return/\d/.test(e)}static hasUppercaseMultiple(e){for(var r=0,t=0;t<e.length&&r<2;t++)/[A-Z]/.test(e[t])&&r++;return r>=2}static hasUppercaseIntentional(e){if(e.length<=4)return/[A-Z]/.test(e.slice(1));var r=/[A-Z]/.test(e.slice(1)),t=/[a-z]/.test(e.slice(1));return r&&t}static isEntirelyUppercase(e){return e===e.toUpperCase()&&e!==e.toLowerCase()&&e.length>1}static isRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");if(e.length<2)return!1;var r=e.toLowerCase();return c.includes(r)}static isRegionalAcronymNoDot(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof r)return!1;var a=e.toLowerCase().replace(/[^\w\s]/g,""),i=r.toLowerCase().replace(/[^\w\s]/g,"");return!!(t&&c.includes(a)&&["the"].includes(t.toLowerCase()))||c.includes(a)&&u.includes(i)}static isFinalWordRegionalAcronym(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if("string"!=typeof e||"string"!=typeof r)return!1;var a=e.toLowerCase().replace(/[^\w]/g,""),i=r.toLowerCase().replace(/[^\w]/g,""),o="string"==typeof t?t.toLowerCase().replace(/[^\w]/g,""):null;return!!c.includes(a)&&(!!l.includes(i)||!("the"!==i||!o||!l.includes(o)))}static normalizeRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");return e.toUpperCase()}static normalizeAcronymKey(e){return e.toLowerCase().replace(/\./g,"")}static normalizeCasingForWordByStyle(e,r){if(!e||!r||!o[r])return!1;var t=e.toLowerCase(),{shortConjunctionsList:a,articlesList:i,shortPrepositionsList:n,neverCapitalizedList:s}=o[r];return!![...a,...i,...n,...s].includes(t)&&e}static hasSuffix(e){return e.length>2&&e.endsWith("'s")}static hasApostrophe(e){return-1!==e.indexOf("'")}static hasHyphen(e){return-1!==e.indexOf("-")||-1!==e.indexOf("–")||-1!==e.indexOf("—")}static hasRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");var r=e.includes("'")?e.split("'"):[e],t=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;return r.every((e=>t.test(e)))}static hasHyphenRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");for(var r=e.split("-"),t=0;t<r.length;t++)if(!g.hasRomanNumeral(r[t]))return!1;return!0}static hasHtmlBreak(e){return"nl2br"===e}static hasUnicodeSymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u0100-\u017F\u0180-\u024F\u0250-\u02AF\u02B0-\u02FF\u0300-\u036F\u0370-\u03FF\u0400-\u04FF\u0500-\u052F\u0530-\u058F\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u0780-\u07BF\u07C0-\u07FF\u0800-\u083F\u0840-\u085F\u0860-\u087F\u0880-\u08AF\u08B0-\u08FF\u0900-\u097F\u0980-\u09FF\u0A00-\u0A7F\u0A80-\u0AFF\u0B00-\u0B7F\u0B80-\u0BFF\u0C00-\u0C7F\u0C80-\u0CFF\u0D00-\u0D7F\u0D80-\u0DFF\u0E00-\u0E7F\u0E80-\u0EFF\u0F00-\u0FFF]/.test(e)}static hasCurrencySymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u20AC\u20A0-\u20B9\u20BD\u20A1-\u20A2\u00A3-\u00A5\u058F\u060B\u09F2-\u09F3\u0AF1\u0BF9\u0E3F\u17DB\u20A6\u20A8\u20B1\u2113\u20AA-\u20AB\u20AA\u20AC-\u20AD\u20B9]/.test(e)}static isWordAmpersand(e){return/&amp;|&/.test(e)}static startsWithSymbol(e){if("string"!=typeof e)throw new Error("Parameter 'word' must be a string. Received '".concat(typeof e,"' instead."));if(0===e.length)return!1;var r=e.charAt(0);return"#"===r||"@"===r||"."===r}static escapeSpecialCharacters(e){return e.replace(/[&<>"']/g,(function(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#x27;";default:return e}}))}static unescapeSpecialCharacters(e){return e.replace(/&amp;|&lt;|&gt;|&quot;|&#x27;/g,(function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&#x27;":return"'";default:return e}}))}static endsWithSymbol(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[".",",",";",":","?","!"];if("string"!=typeof e||!Array.isArray(r))throw new Error("Invalid arguments");return r.some((r=>e.endsWith(r)))||r.includes(e.slice(-2))}static isWordIgnored(e){var r,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n;if(!Array.isArray(t))throw new TypeError("Invalid input: ignoredWords must be an array.");if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");return r=e.toLowerCase().trim(),t.includes(r)}static isWordInArray(e,r){return!!Array.isArray(r)&&r.some((r=>r.toLowerCase()===e.toLowerCase()))}static convertQuotesToCurly(e){for(var r={"'":["‘","’"],'"':["“","”"]},t="",a=0;a<e.length;a++){var i=e[a],o=r[i];if(o){var n=e[a-1],s=e[a+1],c=!n||" "===n||"\n"===n?o[0]:o[1];t+=c,c===o[1]&&/[.,;!?()\[\]{}:]/.test(s)&&(t+=s,a++)}else t+=i}return t}static replaceTerm(e,r){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!r||"object"!=typeof r)throw new TypeError("Invalid input: replaceTermObj must be a non-null object.");var t;if(t=e.toLowerCase(),r.hasOwnProperty(t))return r[t];if(r.hasOwnProperty(e))return r[e];var a=e.toUpperCase();return r.hasOwnProperty(a)?r[a]:e}static isElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),t=e.trim().toLowerCase().replace(/'/g,"’");for(var a of r)if(t.startsWith(a))return!0;return!1}static normalizeElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");var r=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),t=e.trim(),a=t.replace(/'/g,"’").toLowerCase();for(var i of r)if(a.startsWith(i)){var o=i.length,n=t.slice(o);return i.charAt(0).toUpperCase()+i.slice(1)+(n.length>0?n.charAt(0).toUpperCase()+n.slice(1):"")}return!1}static correctSuffix(e,r){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!r||!Array.isArray(r)||r.some((e=>"string"!=typeof e)))throw new TypeError("Invalid input: correctTerms must be an array of strings.");if(/'s$/i.test(e)){var t=e.slice(0,-2),a=r.findIndex((e=>e.toLowerCase()===t.toLowerCase()));if(a>=0){var i=r[a];return"".concat(i,"'s")}var o=t.charAt(0).toUpperCase()+t.slice(1);return"".concat(o,"'s")}return e}static correctTerm(e,r){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/[-']/;if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!r||!Array.isArray(r))throw new TypeError("Invalid input: correctTerms must be an array.");if(!("string"==typeof t||Array.isArray(t)||t instanceof RegExp))throw new TypeError("Invalid input: delimiters must be a string, an array of strings, or a regular expression.");"string"==typeof t?t=new RegExp("[".concat(t,"]")):Array.isArray(t)&&(t=new RegExp("[".concat(t.join(""),"]")));for(var a=e.split(t),i=a.length,o=function(){var e=a[n].toLowerCase(),t=r.findIndex((r=>r.toLowerCase()===e));a[n]=t>=0?r[t]:a[n].charAt(0).toUpperCase()+a[n].slice(1).toLowerCase()},n=0;n<i;n++)o();var s=t.source.charAt(0);return e.includes("-")?s="-":e.includes("'")&&(s="'"),a.join(s)}static correctTermHyphenated(r,t){var a=r.split("-"),i=e=>e.charAt(0).toUpperCase()+e.slice(1),o=e=>e.charAt(0)+e.slice(1).toLowerCase(),n={ap:(e,r)=>0===r?i(e):o(e),chicago:i,apa:(e,r,a)=>g.isShortWord(e,t)&&r>0&&r<a-1?e.toLowerCase():i(e),nyt:(e,r)=>0===r?i(e):o(e),wikipedia:(e,r)=>0===r?i(e):o(e)},s=n[t]||o,c=a.map(((r,t)=>{var i=r;if(/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})'s$/i.test(r))return i.toUpperCase().replace(/'S$/,"'s");var o=/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;if(o.test(r))return r.toUpperCase();if(r.includes("'")){var n=r.split("'");return n.every((e=>o.test(e)))?i=n.map((e=>e.toUpperCase())).join("'"):s(i,t,a.length)}var c=r.toLowerCase(),l=e.findIndex((e=>e.toLowerCase()===c));if(l>=0)i=e[l];else if(c.endsWith("'s")){var u=c.substring(0,c.length-2),p=e.findIndex((e=>e.toLowerCase()===u));p>=0&&(i="".concat(e[p],"'s"))}return s(i,t,a.length)}));return c.join("-")}}m(g,"TitleCaseValidator",void 0),m(g,"titleCaseOptionsCache",new Map),m(g,"isNeverCapitalizedCache",new Map);class h{constructor(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=e,this.debug=e.debug||!1,this.wordReplacementsList=t,this.correctPhraseCasingList=s}logWarning(e){this.debug&&console.warn("Warning: ".concat(e))}toTitleCase(a){try{if(0===a.trim().length)throw new TypeError("Invalid input: input must not be empty.");if("string"!=typeof a)throw new TypeError("Invalid input: input must be a string.");if(void 0!==this.options&&"object"!=typeof this.options)throw new TypeError("Invalid options: options must be an object.");var{style:i="ap",neverCapitalize:n=[],replaceTermList:s=this.wordReplacementsList,smartQuotes:c=!1}=this.options,l=o[i]||{},u=["nl2br",...n],{articlesList:p,shortConjunctionsList:d,shortPrepositionsList:m,neverCapitalizedList:h,replaceTerms:y,smartQuotes:C}=g.getTitleCaseOptions(this.options,r,t),f=s.map((e=>Object.keys(e)[0].toLowerCase())),S=Object.fromEntries(s.map((e=>[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]])));this.logWarning("replaceTermsArray: ".concat(f)),this.logWarning("this.wordReplacementsList: ".concat(this.wordReplacementsList));var A=a.trim();A=(A=A.replace(/<\s*br\s*\/?\s*>/gi," nl2br ")).replace(/ {2,}/g,(e=>e.slice(0,1))),g.isEntirelyUppercase(A.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),A=A.toLowerCase());var w=A.split(" "),v=w.map(((r,t)=>{switch(!0){case g.isWordAmpersand(r):case g.hasHtmlBreak(r):case g.isWordIgnored(r,u):return r;case f.includes(r.toLowerCase()):return S[r.toLowerCase()];case g.isWordInArray(r,e):return g.correctTerm(r,e);case g.isElidedWord(r):return g.normalizeElidedWord(r);case g.hasHyphen(r):var a=r.replace(/[\W_]+$/,""),o=r.slice(a.length),n=a.split("-"),s=n.map((e=>{var r=e.toLowerCase();return f.includes(r)?S[r]:e})),c=!s.every(((e,r)=>e===n[r])),l=c?s.join("-"):g.correctTermHyphenated(r,i);return l.endsWith(o)?l:l+o;case g.hasSuffix(r,i):return g.correctSuffix(r,e);case g.hasUppercaseIntentional(r):return r;case g.isShortWord(r,i)&&0!==t:return t>0&&g.endsWithSymbol(w[t-1],[":","?","!","."])?r.charAt(0).toUpperCase()+r.slice(1):g.normalizeCasingForWordByStyle(r,i);case g.endsWithSymbol(r):this.logWarning("Check if the word ends with a symbol: ".concat(r));var p=r.split(/([.,\/#!$%\^&\*;:{}=\-_`~()?])/g);this.logWarning("Splitting word at symbols, result: ".concat(p));var d=p.map((r=>{if(this.logWarning("Processing part: ".concat(r)),g.endsWithSymbol(r))return this.logWarning("Part is a symbol: ".concat(r)),r;if(this.logWarning("Part is a word: ".concat(r)),g.isWordInArray(r,e)){var t=g.correctTerm(r,e);return this.logWarning("Word is in correctTitleCasingList, corrected term: ".concat(t)),t}if(f.includes(r)){var a=S[r];return this.logWarning("Word is in replaceTermsArray, replacement: ".concat(a)),a}var i=r.charAt(0).toUpperCase()+r.slice(1).toLowerCase();return this.logWarning("Applying title casing to word: ".concat(i)),i}));return d.join("");case g.startsWithSymbol(r):return g.isWordInArray(r,e)?g.correctTerm(r):r;case g.hasRomanNumeral(r):return r.toUpperCase();case g.hasNumbers(r):return r;default:return r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()}}));A=(A=v.join(" ")).replace(/nl2br/gi,"<br>"),c&&(A=g.convertQuotesToCurly(A));for(var b=A.split(" "),L=b[0],T=b[1]||null,O=(b[b.length-1],0);O<b.length;O++){O>0&&b[O-1];var P=b[O],I=O<b.length-1?b[O+1]:null,F=P.match(/[.,!?;:]+$/),R="";F&&(R=F[0],P=P.replace(/[.,!?;:]+$/,"")),g.isRegionalAcronym(P)&&(P=g.normalizeRegionalAcronym(P)),g.isRegionalAcronymNoDot(P,I)&&(P=g.normalizeRegionalAcronym(P)),""!==R&&(P+=R)}for(var E=(A=b.join(" ")).split(" "),M=1;M<E.length-1;M++){var B=E[M];E[M-1],E[M+1];B===B.toUpperCase()||g.hasUppercaseIntentional(B)||g.isWordInArray(B,r)&&(E[M]=B.length<=3?B.toLowerCase():B)}for(var k=(A=E.join(" ")).split(" "),N=0;N<k.length;N++){var D=k[N],W=k[N+1],U=k[N-1];null!==W&&g.isRegionalAcronymNoDot(D,W,U)&&(k[N]=D.toUpperCase())}var j=k[k.length-1],G=k[k.length-2],z=k[k.length-3];for(var[x,H]of(g.isRegionalAcronym(L)&&(console.log("firstWord is a regional acronym, proof: ",L),k[0]=L.toUpperCase()),g.isRegionalAcronymNoDot(L,T)&&(k[0]=L.toUpperCase()),g.isFinalWordRegionalAcronym(j,G,z)&&(k[k.length-1]=j.toUpperCase()),A=k.join(" "),Object.entries(this.correctPhraseCasingList))){var V=new RegExp(x.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");A=A.replace(V,H)}function Z(r){return!!g.isRegionalAcronym(r)||(!!g.hasUppercaseIntentional(r)||!!g.isWordInArray(r,e))}if("sentence"===l.caseStyle){for(var K=A.split(" "),Q=!1,J=0;J<K.length;J++){var X=K[J];Q||!/[A-Za-z]/.test(X)?Z(X)||(K[J]=X.toLowerCase()):(Z(X)||(K[J]=X.charAt(0).toUpperCase()+X.slice(1).toLowerCase()),Q=!0)}A=K.join(" ")}return A}catch(q){throw new Error(q)}}setReplaceTerms(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: setReplaceTerms must be an array of objects.");e.forEach((e=>{if(e&&"object"==typeof e){var[r,t]=Object.entries(e)[0],a=this.wordReplacementsList.findIndex((e=>e.hasOwnProperty(r)));-1!==a?this.wordReplacementsList[a][r]=t:this.wordReplacementsList.push({[r]:t})}else console.warn("Invalid entry in terms array:",e)})),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}addReplaceTerm(e,r){if("string"!=typeof e||"string"!=typeof r)throw new TypeError("Invalid argument: term and replacement must be strings.");var t=this.wordReplacementsList.findIndex((r=>Object.keys(r)[0]===e));-1!==t?this.wordReplacementsList[t][e]=r:this.wordReplacementsList.push({[e]:r}),this.options.wordReplacementsList=this.wordReplacementsList}removeReplaceTerm(e){if("string"!=typeof e)throw new TypeError("Invalid argument: term must be a string.");var r=this.wordReplacementsList.findIndex((r=>Object.keys(r)[0]===e));if(-1===r)throw new Error("Term '".concat(e,"' not found in word replacements list."));this.wordReplacementsList.splice(r,1),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning("Log the updated this.wordReplacementsList: ".concat(this.wordReplacementsList))}addExactPhraseReplacements(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: newPhrases must be an array.");e.forEach((e=>{if("object"!=typeof e||Array.isArray(e)||1!==Object.keys(e).length){if("object"!=typeof e||Array.isArray(e))throw new TypeError("Invalid argument: Each item must be an object with a single key-value pair.");Object.entries(e).forEach((e=>{var[r,t]=e;if("string"!=typeof r||"string"!=typeof t)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[r]=t}))}else{var r=Object.keys(e)[0],t=e[r];if("string"!=typeof r||"string"!=typeof t)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[r]=t}})),this.logWarning("Log the this.correctPhraseCasingList: ".concat(this.correctPhraseCasingList))}setStyle(e){if("string"!=typeof e)throw new TypeError("Invalid argument: style must be a string.");this.options.style=e}}void 0===String.prototype.toTitleCase&&(String.prototype.toTitleCase=function(e){return new h(e).toTitleCase(this)}),"undefined"!=typeof window&&window.document&&(window.TitleCaser=h);const y=h;export{h as TitleCaser,y as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @danielhaim/titlecaser - v1.7.9 - 2025-09-18
2
+ * @danielhaim/titlecaser - v1.7.10 - 2025-09-18
3
3
  * https://github.com/danielhaim1/titlecaser.git
4
4
  * Copyright (c) 2025 Daniel Haim, Licensed Apache-2.0
5
- */(()=>{"use strict";var e={16:e=>{e.exports=JSON.parse('{"ranks":["Pvt.","Cpl.","Sgt.","SSgt.","GySgt.","MSgt.","1stSgt.","SgtMaj.","WO1","CW2","CW3","CW4","CW5","2ndLt.","1stLt.","Capt.","Maj.","LtCol.","Col.","BrigGen.","MajGen.","LtGen.","Gen.","Adm.","Cpt.","Cmdr.","Lt.","Ens."],"branches":["Army","Navy","Air Force","Marines","Coast Guard","Space Force","National Guard","People\'s Liberation Army","Russian Ground Forces","JASDF","ROKA"],"units":["Platoon","Company","Battalion","Regiment","Brigade","Division","Corps","Squad","Fleet","Wing","Squadron","Task Force","Eurocorps","Battlegroup","Rapid Reaction Force","Joint Expeditionary Force"],"acronyms":["DoD","NATO","EUFOR","EUTM","OSCE","UNSC","JAG","ROTC","AFB","MOS","AWOL","MRE","IED","FOB","TOC","CONUS","OCONUS","UCMJ","USMC","USAF","USN","USA","SOCOM","CENTCOM","NORAD","PACOM","JTF","RPG","SAM","ASEAN","AUKUS","QUAD","CSTO","SCO","CFSP","EEAS","EUMS","Frontex","GRU","FSB","PLAN","PLAAF"],"equipment":["Humvee","MRAP","Apache","Black Hawk","Bradley","Abrams","F-16","F-22","F-35","B-2","B-52","C-130","LCAC","MRE"],"operations":["Operation Desert Storm","Operation Enduring Freedom","Operation Iraqi Freedom","Operation Inherent Resolve"],"treaties":["Lisbon Treaty","Maastricht Treaty","Treaty of Rome","Nice Treaty","Schengen Agreement"],"regions":["South China Sea","Taiwan Strait","Korean DMZ","Kashmir","Kuril Islands","Senkaku Islands"],"alliances":["NATO","AUKUS","QUAD","ASEAN","SCO","CSTO","Five Eyes"]}')},157:e=>{e.exports=JSON.parse('{"countries":["Afghanistan","Albania","Algeria","Andorra","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei","Bulgaria","Burkina Faso","Burundi","Cabo Verde","Cambodia","Cameroon","Canada","Central African Republic","Chad","Chile","China","Colombia","Comoros","Congo","Costa Rica","Cote d\'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Korea","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Zealand","Nicaragua","Niger","Nigeria","North Macedonia","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Yemen","Zambia","Zimbabwe"],"alpha2":["UK"],"alpha3":["USA"]}')},223:e=>{e.exports=JSON.parse('{"sports":["FIFA","UEFA","NBA","NFL","MLB","NHL","NASCAR","IOC","FIBA","ATP","WTA","PGA","LPGA","FIA","WADA","ITF","AFL","NRL","ICC","IRB","IHF","FIVB","FINA","UCI","IAAF","ISU","WSF","BWF","WBC","WBO","IBF","IBO","UEFA","CONMEBOL","CONCACAF","CAF","AFC","OFC","CPL","MLS","LaLiga","Bundesliga","Ligue1","Eredivisie","JLeague","KLeague","Ryder Cup","Davis Cup","FedCup","XGames","Olympics","Paralympics","Dakar"],"apple":["Apple","AirDrop","AirPlay","AirPods","AirTags","FinalCut","GarageBand","iBooks","iCloud","iLife","iMac","iMessage","iMovie","iPhoto","iWatch","iWork","LogicPro","macOS","ProTools","QuickTime","iPhone","iPad","iPod","iOS","macOS","tvOS","watchOS"],"corporate":["Deloitte","Devoteam","ExxonMobil","GE","Boeing","Shell","Chevron"],"tech":["Bing","Salesforce","Asus","Acer","Lenovo","Huawei","Xiaomi","Epson","Nvidia","AMD","Qualcomm","Logitech","Panasonic","Sharp","Toshiba","Philips","Fujitsu","Netgear","Lexmark","Razer","SAP","Symantec","Kaspersky","Avast","McAfee","Siemens","Canon","Nikon","Garmin","GoPro","Oculus","Zoom","Slack","Trello","WeChat","Alibaba","Tencent","Baidu","Roku","Fitbit","Dropbox","Reddit","TikTok","Slack","Trello","Uber","Zoom","Reddit","Quora","JIRA","ZoomInfo","HubSpot","Mailchimp","WeChat","Dropbox","Uber","Telegram","Discord","StackOverflow","Quora","Reddit","ZoomInfo","Airbnb","LinkedIn","Snapchat","GitHub","GitLab","Nginx","OpenSSL","Webpack","Unity3D","Figma","JIRA","Kubernetes","TensorFlow","NPM","WooCommerce","WordPress","Slack","Trello","Uber","Zoom","Reddit","Quora","WeChat","Dropbox","Telegram","Discord","StackOverflow","Airbnb","LinkedIn","Snapchat","JIRA","MobX","VMware","Google"],"business":["Visa","Mastercard","Citibank","JPMorgan","Barclay","AMEX","Citigroup","PayPal","BNP","HSBC","Santander","UBS","Allianz","Prudential","Vanguard","BlackRock","CapitalOne","TD","Robinhood","MoneyGram","SoFi","Experian","Equifax","TransUnion","MasterCard","Blockchain","Coinbase","Binance","Kraken","Ethereum","Bitcoin"],"automotive":["BMW","Ford","Mercedes","Nissan","Tesla","Toyota","Audi","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","LandRover","Lexus","Maserati","Mazda","McLaren","Mitsubishi","Peugeot","Porsche","Renault","RollsRoyce","Saab","Subaru","Suzuki","Volkswagen","Volvo","Alfa Romeo","Bentley","Bugatti","Cadillac","Citroen","Daewoo","Daihatsu","Datsun","DeLorean","Fiat Chrysler","GMC","Holden","Hummer","Isuzu","Koenigsegg","Lancia","Lincoln","Lotus","Mahindra","Suzuki","Opel","Pagani","Perodua","Proton","Rover","Scania","Skoda","SsangYong","Tata","Vauxhall","VinFast","Yugo","Zenvo"],"media":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","HBO","Showtime","Starz","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Vine","Zynga","Tidal","Quibi","Crave","Gaia","PlutoTV","Vudu","Kanopy","Mubi","BritBox"],"telecom":["Verizon","Sprint","Nokia","Ericsson","Vodafone","AT&T","Huawei","Xiaomi","Orange","NTT","T-Mobile","Telefonica","Airtel","Telstra","Rogers","Bell","MTN","ZTE","Qualcomm","Motorola","Telus","BT","Swisscom","SoftBank","KDDI"],"entertainment":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","Pandora","HBO","Showtime","Starz","Paramount","Peacock","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Zynga","Tidal","Oscars"],"retail":["Amazon","eBay","IKEA","Walmart","Zara","Target","Costco","Sephora","Nordstrom","Tesco","Asda","Aldi","Lidl","Carrefour","Uniqlo","H&M","Gap","Cabela’s","BassPro","REI","Ulta","Saks","JCPenney","Belk","Argos","Safeway","Kroger","Publix","HomeDepot","Woolworths","Staples","OfficeMax","B&H","Newegg","MicroCenter","Frys","Monoprix","Waitrose","Morrisons","Ocado","Flipkart","Rakuten","Alibaba","JD","Taobao","Tmall","Guomei","Suning"],"food":["Nestle","Pepsi","Coca-Cola","PepsiCo","Starbucks","KFC","BurgerKing","PizzaHut","TacoBell","Kroger","Costco","Woolworths","Carrefour","Tesco","Aldi","Lidl","Walmart","Safeway","Publix","WholeFoods","RedBull","Monster","Nespresso","Heineken","Budweiser","Corona","Guinness","GeneralMills","Unilever","Kraft","Heinz","Danone","Campbell","Tyson","Conagra","Mondelez","Suntory","Diageo","Pernod"],"pharmaceutical":["Pfizer","Moderna","Gilead","Merck","Novartis","Sanofi","Roche","AbbVie","Amgen","Bayer","Biogen","BristolMyers","Celgene","GSK","Janssen","Lilly","Medtronic","Mylan","NovoNordisk","Regeneron","Teva","AstraZeneca","Boehringer","Daiichi","Eisai","Genentech","Grifols","Ipsen","Mundipharma","Otsuka","Purdue","Sandoz","Servier","SunPharma","Takeda","UCB","Viatris","Wockhardt","Zydus","Alkem"],"nonprofit":["NGO","NPO","NGOs","NPOs","UN","UNESCO","UNICEF","UNHCR","UNODC","UNDP","UNFPA","UNEP","UNRWA"]}')},279:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TitleCaserUtils=void 0;var i=r(416);function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class n{static validateOption(e,t){if(!Array.isArray(t))throw new TypeError(`Invalid option: ${e} must be an array`);if(!t.every((e=>"string"==typeof e)))throw new TypeError(`Invalid option: ${e} must be an array of strings`)}static validateOptions(e){for(const t of Object.keys(e))if("style"!==t)if("wordReplacementsList"!==t){if(!i.titleCaseDefaultOptionsList.hasOwnProperty(t))throw new TypeError(`Invalid option: ${t}`);this.TitleCaseValidator.validateOption(t,e[t])}else{if(!Array.isArray(e.wordReplacementsList))throw new TypeError(`Invalid option: ${t} must be an array`);for(const r of e.wordReplacementsList)if("string"!=typeof r)throw new TypeError(`Invalid option: ${t} must contain only strings`)}else{if("string"!=typeof e.style)throw new TypeError(`Invalid option: ${t} must be a string`);if(!i.allowedTitleCaseStylesList.includes(e.style))throw new TypeError(`Invalid option: ${t} must be a string`)}}static getTitleCaseOptions(e={},t=[]){const r=JSON.stringify({options:e,lowercaseWords:t});if(n.titleCaseOptionsCache.has(r))return n.titleCaseOptionsCache.get(r);const a=s(s(s({},i.titleCaseDefaultOptionsList[e.style||"ap"]),e),{},{smartQuotes:!!e.hasOwnProperty("smartQuotes")&&e.smartQuotes}),o=a.articlesList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),l=a.shortConjunctionsList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),c=a.shortPrepositionsList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),u=[...(a.replaceTerms||[]).map((([e,t])=>[e.toLowerCase(),t])),...i.wordReplacementsList],p={articlesList:o,shortConjunctionsList:l,shortPrepositionsList:c,neverCapitalizedList:[...a.neverCapitalizedList],replaceTerms:u,smartQuotes:a.smartQuotes};return n.titleCaseOptionsCache.set(r,p),p}static capitalizeFirstLetter(e){return e.charAt(0).toUpperCase()+e.slice(1)}static isShortConjunction(e,t){const r=[...n.getTitleCaseOptions({style:t}).shortConjunctionsList],i=e.toLowerCase();return r.includes(i)}static isArticle(e,t){return n.getTitleCaseOptions({style:t}).articlesList.includes(e.toLowerCase())}static isShortPreposition(e,t){const{shortPrepositionsList:r}=n.getTitleCaseOptions({style:t});return r.includes(e.toLowerCase())}static isNeverCapitalized(e,t){const r=`${t}_${e.toLowerCase()}`;if(n.isNeverCapitalizedCache.has(r))return n.isNeverCapitalizedCache.get(r);const{neverCapitalizedList:i}=n.getTitleCaseOptions({style:t}),a=i.includes(e.toLowerCase());return n.isNeverCapitalizedCache.set(r,a),a}static isShortWord(e,t){if("string"!=typeof e)throw new TypeError(`Invalid input: word must be a string. Received ${typeof e}.`);if(!i.allowedTitleCaseStylesList.includes(t))throw new Error(`Invalid option: style must be one of ${i.allowedTitleCaseStylesList.join(", ")}.`);return n.isShortConjunction(e,t)||n.isArticle(e,t)||n.isShortPreposition(e,t)||n.isNeverCapitalized(e,t)}static hasNumbers(e){return/\d/.test(e)}static hasUppercaseMultiple(e){let t=0;for(let r=0;r<e.length&&t<2;r++)/[A-Z]/.test(e[r])&&t++;return t>=2}static hasUppercaseIntentional(e){if(e.length<=4)return/[A-Z]/.test(e.slice(1));const t=/[A-Z]/.test(e.slice(1)),r=/[a-z]/.test(e.slice(1));return t&&r}static isEntirelyUppercase(e){return e===e.toUpperCase()&&e!==e.toLowerCase()&&e.length>1}static isRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");if(e.length<2)return!1;const t=e.toLowerCase();return i.regionalAcronymList.includes(t)}static isRegionalAcronymNoDot(e,t,r=null){if("string"!=typeof e||"string"!=typeof t)return!1;const a=e.toLowerCase().replace(/[^\w\s]/g,""),s=t.toLowerCase().replace(/[^\w\s]/g,"");return!!(r&&i.regionalAcronymList.includes(a)&&["the"].includes(r.toLowerCase()))||i.regionalAcronymList.includes(a)&&i.directFollowingIndicatorsRegionalAcronym.includes(s)}static isFinalWordRegionalAcronym(e,t,r=null){if("string"!=typeof e||"string"!=typeof t)return!1;const a=e.toLowerCase().replace(/[^\w]/g,""),s=t.toLowerCase().replace(/[^\w]/g,""),o="string"==typeof r?r.toLowerCase().replace(/[^\w]/g,""):null;return!!i.regionalAcronymList.includes(a)&&(!!i.regionalAcronymPrecedingWords.includes(s)||!("the"!==s||!o||!i.regionalAcronymPrecedingWords.includes(o)))}static normalizeRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");return e.toUpperCase()}static normalizeAcronymKey(e){return e.toLowerCase().replace(/\./g,"")}static normalizeCasingForWordByStyle(e,t){if(!e||!t||!i.titleCaseDefaultOptionsList[t])return!1;const r=e.toLowerCase(),{shortConjunctionsList:a,articlesList:s,shortPrepositionsList:o,neverCapitalizedList:n}=i.titleCaseDefaultOptionsList[t];return!![...a,...s,...o,...n].includes(r)&&e}static hasSuffix(e){return e.length>2&&e.endsWith("'s")}static hasApostrophe(e){return-1!==e.indexOf("'")}static hasHyphen(e){return-1!==e.indexOf("-")||-1!==e.indexOf("–")||-1!==e.indexOf("—")}static hasRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");const t=e.includes("'")?e.split("'"):[e],r=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;return t.every((e=>r.test(e)))}static hasHyphenRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");const t=e.split("-");for(let e=0;e<t.length;e++)if(!n.hasRomanNumeral(t[e]))return!1;return!0}static hasHtmlBreak(e){return"nl2br"===e}static hasUnicodeSymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u0100-\u017F\u0180-\u024F\u0250-\u02AF\u02B0-\u02FF\u0300-\u036F\u0370-\u03FF\u0400-\u04FF\u0500-\u052F\u0530-\u058F\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u0780-\u07BF\u07C0-\u07FF\u0800-\u083F\u0840-\u085F\u0860-\u087F\u0880-\u08AF\u08B0-\u08FF\u0900-\u097F\u0980-\u09FF\u0A00-\u0A7F\u0A80-\u0AFF\u0B00-\u0B7F\u0B80-\u0BFF\u0C00-\u0C7F\u0C80-\u0CFF\u0D00-\u0D7F\u0D80-\u0DFF\u0E00-\u0E7F\u0E80-\u0EFF\u0F00-\u0FFF]/.test(e)}static hasCurrencySymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u20AC\u20A0-\u20B9\u20BD\u20A1-\u20A2\u00A3-\u00A5\u058F\u060B\u09F2-\u09F3\u0AF1\u0BF9\u0E3F\u17DB\u20A6\u20A8\u20B1\u2113\u20AA-\u20AB\u20AA\u20AC-\u20AD\u20B9]/.test(e)}static isWordAmpersand(e){return/&amp;|&/.test(e)}static startsWithSymbol(e){if("string"!=typeof e)throw new Error(`Parameter 'word' must be a string. Received '${typeof e}' instead.`);if(0===e.length)return!1;const t=e.charAt(0);return"#"===t||"@"===t||"."===t}static escapeSpecialCharacters(e){return e.replace(/[&<>"']/g,(function(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#x27;";default:return e}}))}static unescapeSpecialCharacters(e){return e.replace(/&amp;|&lt;|&gt;|&quot;|&#x27;/g,(function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&#x27;":return"'";default:return e}}))}static endsWithSymbol(e,t=[".",",",";",":","?","!"]){if("string"!=typeof e||!Array.isArray(t))throw new Error("Invalid arguments");return t.some((t=>e.endsWith(t)))||t.includes(e.slice(-2))}static isWordIgnored(e,t=i.ignoredWordList){if(!Array.isArray(t))throw new TypeError("Invalid input: ignoredWords must be an array.");if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");let r;return r=e.toLowerCase().trim(),t.includes(r)}static isWordInArray(e,t){return!!Array.isArray(t)&&t.some((t=>t.toLowerCase()===e.toLowerCase()))}static convertQuotesToCurly(e){const t={"'":["‘","’"],'"':["“","”"]};let r="";for(let i=0;i<e.length;i++){const a=e[i],s=t[a];if(s){const t=e[i-1],a=e[i+1],o=!t||" "===t||"\n"===t?s[0]:s[1];r+=o,o===s[1]&&/[.,;!?()\[\]{}:]/.test(a)&&(r+=a,i++)}else r+=a}return r}static replaceTerm(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||"object"!=typeof t)throw new TypeError("Invalid input: replaceTermObj must be a non-null object.");let r;if(r=e.toLowerCase(),t.hasOwnProperty(r))return t[r];if(t.hasOwnProperty(e))return t[e];const i=e.toUpperCase();return t.hasOwnProperty(i)?t[i]:e}static isElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");const t=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),r=e.trim().toLowerCase().replace(/'/g,"’");for(const e of t)if(r.startsWith(e))return!0;return!1}static normalizeElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");const t=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),r=e.trim(),i=r.replace(/'/g,"’").toLowerCase();for(const e of t)if(i.startsWith(e)){const t=e.length,i=r.slice(t);return e.charAt(0).toUpperCase()+e.slice(1)+(i.length>0?i.charAt(0).toUpperCase()+i.slice(1):"")}return!1}static correctSuffix(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t)||t.some((e=>"string"!=typeof e)))throw new TypeError("Invalid input: correctTerms must be an array of strings.");if(/'s$/i.test(e)){const r=e.slice(0,-2),i=t.findIndex((e=>e.toLowerCase()===r.toLowerCase()));if(i>=0){return`${t[i]}'s`}return`${r.charAt(0).toUpperCase()+r.slice(1)}'s`}return e}static correctTerm(e,t,r=/[-']/){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t))throw new TypeError("Invalid input: correctTerms must be an array.");if(!("string"==typeof r||Array.isArray(r)||r instanceof RegExp))throw new TypeError("Invalid input: delimiters must be a string, an array of strings, or a regular expression.");"string"==typeof r?r=new RegExp(`[${r}]`):Array.isArray(r)&&(r=new RegExp(`[${r.join("")}]`));const i=e.split(r),a=i.length;for(let e=0;e<a;e++){const r=i[e].toLowerCase(),a=t.findIndex((e=>e.toLowerCase()===r));i[e]=a>=0?t[a]:i[e].charAt(0).toUpperCase()+i[e].slice(1).toLowerCase()}let s=r.source.charAt(0);return e.includes("-")?s="-":e.includes("'")&&(s="'"),i.join(s)}static correctTermHyphenated(e,t){const r=e.split("-"),a=e=>e.charAt(0).toUpperCase()+e.slice(1),s=e=>e.charAt(0)+e.slice(1).toLowerCase(),o={ap:(e,t)=>0===t?a(e):s(e),chicago:a,apa:(e,r,i)=>n.isShortWord(e,t)&&r>0&&r<i-1?e.toLowerCase():a(e),nyt:(e,t)=>0===t?a(e):s(e),wikipedia:(e,t)=>0===t?a(e):s(e)},l=o[t]||s,c=r.map(((e,t)=>{let a=e;if(/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})'s$/i.test(e)){return a.toUpperCase().replace(/'S$/,"'s")}const s=/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;if(s.test(e))return e.toUpperCase();if(e.includes("'")){const i=e.split("'");return i.every((e=>s.test(e)))?(a=i.map((e=>e.toUpperCase())).join("'"),a):l(a,t,r.length)}const o=e.toLowerCase(),n=i.correctTitleCasingList.findIndex((e=>e.toLowerCase()===o));if(n>=0)a=i.correctTitleCasingList[n];else if(o.endsWith("'s")){const e=o.substring(0,o.length-2),t=i.correctTitleCasingList.findIndex((t=>t.toLowerCase()===e));t>=0&&(a=`${i.correctTitleCasingList[t]}'s`)}return l(a,t,r.length)}));return c.join("-")}}t.TitleCaserUtils=n,o(n,"TitleCaseValidator",void 0),o(n,"titleCaseOptionsCache",new Map),o(n,"isNeverCapitalizedCache",new Map)},321:e=>{e.exports=JSON.parse('{"advertising":["AdWords","AdSense","AdMob","DoubleClick","SpotX"],"digitalMarketing":["DSP","SSP","CTR","CPA","CPC","CPL","CPM","CRM","SEO","SEM","SMM","A/B","CTOR","KPI","SERP","FAQ","PR"],"general":["B2B","B2C","CMO","USP","PWA","SMO","T&C","TOS","PP","UI","UX","UI/UX"],"blockchain":["PoE","PoW","PoC"],"accessibility":["A11Y"]}')},388:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TitleCaser=void 0;var i=r(416),a=r(279);t.TitleCaser=class{constructor(e={}){this.options=e,this.debug=e.debug||!1,this.wordReplacementsList=i.wordReplacementsList,this.correctPhraseCasingList=i.correctPhraseCasingList}logWarning(e){this.debug&&console.warn(`Warning: ${e}`)}toTitleCase(e){try{if(0===e.trim().length)throw new TypeError("Invalid input: input must not be empty.");if("string"!=typeof e)throw new TypeError("Invalid input: input must be a string.");if(void 0!==this.options&&"object"!=typeof this.options)throw new TypeError("Invalid options: options must be an object.");const{style:t="ap",neverCapitalize:r=[],replaceTermList:s=this.wordReplacementsList,smartQuotes:o=!1}=this.options,n=i.titleCaseDefaultOptionsList[t]||{},l=["nl2br",...r],{articlesList:c,shortConjunctionsList:u,shortPrepositionsList:p,neverCapitalizedList:d,replaceTerms:m,smartQuotes:C}=a.TitleCaserUtils.getTitleCaseOptions(this.options,i.commonShortWords,i.wordReplacementsList),g=s.map((e=>Object.keys(e)[0].toLowerCase())),h=Object.fromEntries(s.map((e=>[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]])));this.logWarning(`replaceTermsArray: ${g}`),this.logWarning(`this.wordReplacementsList: ${this.wordReplacementsList}`);let y=e.trim();y=y.replace(/<\s*br\s*\/?\s*>/gi," nl2br "),y=y.replace(/ {2,}/g,(e=>e.slice(0,1)));a.TitleCaserUtils.isEntirelyUppercase(y.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),y=y.toLowerCase());const f=y.split(" ");y=f.map(((e,r)=>{switch(!0){case a.TitleCaserUtils.isWordAmpersand(e):case a.TitleCaserUtils.hasHtmlBreak(e):case a.TitleCaserUtils.isWordIgnored(e,l):return e;case g.includes(e.toLowerCase()):return h[e.toLowerCase()];case a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList):return a.TitleCaserUtils.correctTerm(e,i.correctTitleCasingList);case a.TitleCaserUtils.isElidedWord(e):return a.TitleCaserUtils.normalizeElidedWord(e);case a.TitleCaserUtils.hasHyphen(e):const s=e.replace(/[\W_]+$/,""),o=e.slice(s.length),n=s.split("-"),c=n.map((e=>{const t=e.toLowerCase();return g.includes(t)?h[t]:e})),u=!c.every(((e,t)=>e===n[t]))?c.join("-"):a.TitleCaserUtils.correctTermHyphenated(e,t);return u.endsWith(o)?u:u+o;case a.TitleCaserUtils.hasSuffix(e,t):return a.TitleCaserUtils.correctSuffix(e,i.correctTitleCasingList);case a.TitleCaserUtils.hasUppercaseIntentional(e):return e;case a.TitleCaserUtils.isShortWord(e,t)&&0!==r:if(r>0&&a.TitleCaserUtils.endsWithSymbol(f[r-1],[":","?","!","."]))return e.charAt(0).toUpperCase()+e.slice(1);return a.TitleCaserUtils.normalizeCasingForWordByStyle(e,t);case a.TitleCaserUtils.endsWithSymbol(e):this.logWarning(`Check if the word ends with a symbol: ${e}`);const p=e.split(/([.,\/#!$%\^&\*;:{}=\-_`~()?])/g);this.logWarning(`Splitting word at symbols, result: ${p}`);return p.map((e=>{if(this.logWarning(`Processing part: ${e}`),a.TitleCaserUtils.endsWithSymbol(e))return this.logWarning(`Part is a symbol: ${e}`),e;if(this.logWarning(`Part is a word: ${e}`),a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList)){const t=a.TitleCaserUtils.correctTerm(e,i.correctTitleCasingList);return this.logWarning(`Word is in correctTitleCasingList, corrected term: ${t}`),t}if(g.includes(e)){const t=h[e];return this.logWarning(`Word is in replaceTermsArray, replacement: ${t}`),t}{const t=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase();return this.logWarning(`Applying title casing to word: ${t}`),t}})).join("");case a.TitleCaserUtils.startsWithSymbol(e):return a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList)?a.TitleCaserUtils.correctTerm(e):e;case a.TitleCaserUtils.hasRomanNumeral(e):return e.toUpperCase();case a.TitleCaserUtils.hasNumbers(e):return e;default:return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}})).join(" "),y=y.replace(/nl2br/gi,"<br>"),o&&(y=a.TitleCaserUtils.convertQuotesToCurly(y));const S=y.split(" ");let A=S[0],w=S[1]||null;S[S.length-1];for(let I=0;I<S.length;I++){I>0&&S[I-1];let F=S[I];const R=I<S.length-1?S[I+1]:null,E=F.match(/[.,!?;:]+$/);let M="";E&&(M=E[0],F=F.replace(/[.,!?;:]+$/,"")),a.TitleCaserUtils.isRegionalAcronym(F)&&(F=a.TitleCaserUtils.normalizeRegionalAcronym(F)),a.TitleCaserUtils.isRegionalAcronymNoDot(F,R)&&(F=a.TitleCaserUtils.normalizeRegionalAcronym(F)),""!==M&&(F+=M)}y=S.join(" ");const L=y.split(" ");for(let U=1;U<L.length-1;U++){const B=L[U];L[U-1],L[U+1];B===B.toUpperCase()||a.TitleCaserUtils.hasUppercaseIntentional(B)||a.TitleCaserUtils.isWordInArray(B,i.commonShortWords)&&(L[U]=B.length<=3?B.toLowerCase():B)}y=L.join(" ");const T=y.split(" ");for(let k=0;k<T.length;k++){let D=T[k],N=T[k+1],W=T[k-1];null!==N&&a.TitleCaserUtils.isRegionalAcronymNoDot(D,N,W)&&(T[k]=D.toUpperCase())}let b=T[T.length-1],O=T[T.length-2],v=T[T.length-3];a.TitleCaserUtils.isRegionalAcronym(A)&&(console.log("firstWord is a regional acronym, proof: ",A),T[0]=A.toUpperCase()),a.TitleCaserUtils.isRegionalAcronymNoDot(A,w)&&(T[0]=A.toUpperCase()),a.TitleCaserUtils.isFinalWordRegionalAcronym(b,O,v)&&(T[T.length-1]=b.toUpperCase()),y=T.join(" ");for(const[j,x]of Object.entries(this.correctPhraseCasingList)){const G=new RegExp(j.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");y=y.replace(G,x)}function P(e){return!!a.TitleCaserUtils.isRegionalAcronym(e)||(!!a.TitleCaserUtils.hasUppercaseIntentional(e)||!!a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList))}if("sentence"===n.caseStyle){const z=y.split(" ");let H=!1;for(let V=0;V<z.length;V++){let $=z[V];H||!/[A-Za-z]/.test($)?P($)||(z[V]=$.toLowerCase()):(P($)||(z[V]=$.charAt(0).toUpperCase()+$.slice(1).toLowerCase()),H=!0)}y=z.join(" ")}return y}catch(K){throw new Error(K)}}setReplaceTerms(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: setReplaceTerms must be an array of objects.");e.forEach((e=>{if(e&&"object"==typeof e){const[t,r]=Object.entries(e)[0],i=this.wordReplacementsList.findIndex((e=>e.hasOwnProperty(t)));-1!==i?this.wordReplacementsList[i][t]=r:this.wordReplacementsList.push({[t]:r})}else console.warn("Invalid entry in terms array:",e)})),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning(`Log the updated this.wordReplacementsList: ${this.wordReplacementsList}`)}addReplaceTerm(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: term and replacement must be strings.");const r=this.wordReplacementsList.findIndex((t=>Object.keys(t)[0]===e));-1!==r?this.wordReplacementsList[r][e]=t:this.wordReplacementsList.push({[e]:t}),this.options.wordReplacementsList=this.wordReplacementsList}removeReplaceTerm(e){if("string"!=typeof e)throw new TypeError("Invalid argument: term must be a string.");const t=this.wordReplacementsList.findIndex((t=>Object.keys(t)[0]===e));if(-1===t)throw new Error(`Term '${e}' not found in word replacements list.`);this.wordReplacementsList.splice(t,1),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning(`Log the updated this.wordReplacementsList: ${this.wordReplacementsList}`)}addExactPhraseReplacements(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: newPhrases must be an array.");e.forEach((e=>{if("object"!=typeof e||Array.isArray(e)||1!==Object.keys(e).length){if("object"!=typeof e||Array.isArray(e))throw new TypeError("Invalid argument: Each item must be an object with a single key-value pair.");Object.entries(e).forEach((([e,t])=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[e]=t}))}else{const t=Object.keys(e)[0],r=e[t];if("string"!=typeof t||"string"!=typeof r)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[t]=r}})),this.logWarning(`Log the this.correctPhraseCasingList: ${this.correctPhraseCasingList}`)}setStyle(e){if("string"!=typeof e)throw new TypeError("Invalid argument: style must be a string.");this.options.style=e}}},416:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.wordReplacementsList=t.titleCaseStylesList=t.titleCaseDefaultOptionsList=t.regionalAcronymPrecedingWords=t.regionalAcronymList=t.ignoredWordList=t.directFollowingIndicatorsRegionalAcronym=t.correctTitleCasingList=t.correctPhraseCasingList=t.commonShortWords=t.allowedTitleCaseStylesList=void 0;var i=d(r(223)),a=d(r(814)),s=d(r(661)),o=d(r(157)),n=d(r(321)),l=d(r(742)),c=d(r(501)),u=d(r(491)),p=d(r(16));function d(e){return e&&e.__esModule?e:{default:e}}const m=function(...e){const t=[];return e.forEach((e=>{Array.isArray(e)?e.forEach((e=>{Object.values(e).forEach((e=>{t.push(...e)}))})):"object"==typeof e&&Object.values(e).forEach((e=>{t.push(...e)}))})),[...new Set(t)]}(i.default,a.default,s.default,o.default,n.default,l.default,c.default,u.default,p.default),C=(t.correctTitleCasingList=m,t.commonShortWords=["the","in","to","within","towards","into","at","of","for","by","on","from","with","through","about","across","over","under","between"],t.wordReplacementsList=[{"a.k.a":"AKA"},{"a.s.a.p":"ASAP"},{"f.a.q":"FAQ"},{"f.a.q.s":"FAQs"},{FAQS:"FAQs"},{"f.y.i":"FYI"},{"d.i.y":"DIY"},{"t.b.d":"TBD"},{"back-end":"Backend"},{"front-end":"Frontend"},{"full-stack":"Fullstack"},{nodejs:"Node.js"},{nextjs:"Next.js"},{nuxtjs:"Nuxt.js"},{reactjs:"React"},{"react.js":"React"},{"cyber-security":"Cybersecurity"}],t.titleCaseStylesList=Object.freeze({AP:"ap",APA:"apa",BRITISH:"british",CHICAGO:"chicago",NYT:"nyt",WIKIPEDIA:"wikipedia"}));t.allowedTitleCaseStylesList=Object.values(C),t.titleCaseDefaultOptionsList=Object.freeze({ap:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},apa:{caseStyle:"title",shortConjunctionsList:["and","as","but","for","if","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","for","in","of","off","on","per","to","via"],neverCapitalizedList:[]},british:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},chicago:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:["etc."]},nyt:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},wikipedia:{caseStyle:"sentence",shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]}}),t.ignoredWordList=[],t.correctPhraseCasingList={"the cybersmile foundation":"The Cybersmile Foundation","co. by colgate":"CO. by Colgate","on & off":"On & Off","on and off":"On and Off"},t.regionalAcronymList=["usa","us","u.s.a","u.s.","u.s","u.s.a.","eu","e.u.","e.u","uk","u.k.","u.k"],t.regionalAcronymPrecedingWords=["the","via","among","across","beyond","outside","alongside","throughout","despite","unlike","upon"],t.directFollowingIndicatorsRegionalAcronym=["act","acts","administration","administrations","agency","agencies","agreement","agreements","airforce","airforces","aid","alliance","alliances","ambassador","ambassadors","authority","authorities","bill","bills","bloc","blocs","budget","budgets","bureau","bureaus","cabinet","cabinets","charter","charters","command","commands","commission","commissions","conference","conferences","congress","congresses","convention","conventions","council","councils","court","courts","defense","defences","defence","defenses","delegation","delegations","democracy","democracies","department","departments","development","developments","directive","directives","diplomacy","division","divisions","economy","economies","embassy","embassies","engagement","engagements","envoy","envoys","exports","federation","federations","finance","finances","forces","framework","frameworks","funding","government","governments","hearing","hearings","imports","initiative","initiatives","intel","intelligence","intervention","interventions","jurisdiction","jurisdictions","law","laws","leadership","leaders","legislation","liaison","liaisons","mandate","mandates","markets","marines","military","militaries","ministry","ministries","mission","missions","navy","navies","negotiations","office","offices","operations","oversight","parliament","parliaments","plan","plans","policies","policy","policy-makers","precedent","precedents","presence","program","programme","programmes","programs","project","projects","protocol","protocols","province","provinces","reform","reforms","regulation","regulations","regulator","regulators","relations","representation","representations","republic","republics","resolution","resolutions","ruling","rulings","sanctions","security","securities","senate","senates","service","services","state","states","statute","statutes","strategy","strategies","summit","summits","summitry","surveillance","talks","tariffs","territory","territories","trade","trades","treasury","treasuries","treaty","treaties","tribunal","tribunals","troops","union","unions","veterans","warships","zone","zones"]},491:e=>{e.exports=JSON.parse('{"timeRelated":["a.m.","p.m.","ca.","cc.","fig.","pl.","pt.","rev.","sr.","v.","vol.","et al.","pp.","p."],"academic":["adj.","adv.","cf.","cm.","co.","corp.","dept.","dist.","ed.","edn.","esp.","etc.","ex.","i.e.","e.g.","op. cit.","vs."]}')},501:e=>{e.exports=JSON.parse('{"terms":["API","APIs","ASCII","CI","CLI","DLL","DNS","EC2","FTP","HTTP","HTTPS","ICMP","IDE","IP","ISP","LPWAN","M2M","MQTT","OOP","REST","SSH","SSL","TCP","UDP","URL","WLAN","WYSIWYG","IMAP","RSS","IaaS","PaaS","SaaS","CaaS","FaaS","XaaS","RaaS","IoE","IoT","LoRa","NB-IoT","RFID","RF","RFI","RFQ","ECMAScript","IO","I/O","DevOps","SecOps","DDoS","VoIP","AI","AR","ML","VR","CI/CD","DevSecOps","UI/UX","UX/UI","UI","UX","MVC","ORM","3G","4G","5G","NumPy","VPN","PKI","WAN","NAT","GPU","SSD","HDD","RAM","Frontend","Backend","Fullstack"],"legal":["DMCA","GDPR","HIPAA","NDA","SOW","TOS"],"languages":["JavaScript","TypeScript","Java","PHP","SQL","CSS",".NET","ES5","ES6","NoSQL","DynamoDB","Terraform","CloudFormation","RDS","Python","Ruby","Go","Swift","Kotlin","Perl"],"formats":["JSON","XML","YAML","GraphQL","WebSocket","RESTful"],"secops":["RaaS","DevSecOps","SecOps","Cybersecurity","DDoS"],"technologies":["AWS","Azure","GCP","VMware","Docker","Ansible","Chef","Puppet","Git","Subversion","Jenkins","CircleCI","Hadoop","Spark","BigQuery","PowerBI","Tableau"],"os":["Android","macOS","Windows","Linux","iOS","Ubuntu","CentOS","Fedora","Debian","SUSE","HarmonyOS","FreeRTOS","BeOS","BSD","Cordova","Flutter"],"programming":["Angular","Bootstrap","CodeIgniter","jQuery","Laravel","Redux","Vue.js","VueX","SCSS","AJAX","GraphQL","HTML","HTML5","MySQL","MongoDB","PostgresQL","SQLite","ASP","ASPX","Elasticsearch","Nginx","OpenSSL","Webpack","Unity3D","Kubernetes","TensorFlow","NPM","cURL"]}')},661:e=>{e.exports=JSON.parse('{"eterms":["eBook","eBooks","eMarket","eMarketplace","eMarketplaces","eMarkets","eReader","eShop","eShops","eStore","eStores","E-commerce","E-com"]}')},742:e=>{e.exports=JSON.parse('{"miscellaneous":["w/","w/o","Open Source","Cybersecurity","Ecosystem","Biodiversity","LGBT","LGBTQ+","LGBTQIA+","2SLGBTQ+","BIPOC"]}')},814:e=>{e.exports=JSON.parse('{"commercial":["Ltd.","LLC","PLC","Co.","Inc.","St.","Ave.","Bldg.","No.","GmbH"],"titles":["CEO","CEOs","CFO","CFOs","CIO","CIOs","CMO","CMOs","COO","COOs","CPO","CPOs","CRO","CROs","CSO","CSOs","CTO","CTOs","EVP","EVPs","HR","HRs","SVP","SVPs","VP","VPs","CMTO","CDO"],"accounting":["AP","COGS","EBIT","EPS","FIFO","GAAP","LIFO","P&L","ROI","SOX","TCO","VAT","EBITDA","NPV","WACC","AR"],"finance":["CAGR","DCF","ETF","IPO","IRR","M&A","NAV","PE","PEG","PPE","ROE","S&P","TVM","VC","FOMC","FX","ETF"],"legal":["AFA","ADR","CCPA","CFAA","CISG","DMCA","EULA","GDPR","HIPAA","NDA","SOW","TOS","LLM","JD","Esq.","AG","SARL","KYC","AML","ph.d.","m.d.","d.d.s.","d.m.d.","d.o.","d.c.","d.v.m.","d.n.p.","d.p.m.","d.s.w.","d.s.n.","d.n.sc.","d.n.a.","d.n.t.","d.n.p.t.","d.n.o.","d.n.m.","d.n.e.","d.n.s.","d.n.p.s."]}')},987:(e,t,r)=>{var i=r(388);void 0===String.prototype.toTitleCase&&(String.prototype.toTitleCase=function(e){return new i.TitleCaser(e).toTitleCase(this)}),e.exports&&(e.exports={TitleCaser:i.TitleCaser}),"undefined"!=typeof window&&window.document&&(window.TitleCaser=i.TitleCaser)}},t={};var r=function r(i){var a=t[i];if(void 0!==a)return a.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,r),s.exports}(987);module.exports=r})();
5
+ */(()=>{"use strict";var e={16:e=>{e.exports=JSON.parse('{"ranks":["Pvt.","Cpl.","Sgt.","SSgt.","GySgt.","MSgt.","1stSgt.","SgtMaj.","WO1","CW2","CW3","CW4","CW5","2ndLt.","1stLt.","Capt.","Maj.","LtCol.","Col.","BrigGen.","MajGen.","LtGen.","Gen.","Adm.","Cpt.","Cmdr.","Lt.","Ens."],"branches":["Army","Navy","Air Force","Marines","Coast Guard","Space Force","National Guard","People\'s Liberation Army","Russian Ground Forces","JASDF","ROKA"],"units":["Platoon","Company","Battalion","Regiment","Brigade","Division","Corps","Squad","Fleet","Wing","Squadron","Task Force","Eurocorps","Battlegroup","Rapid Reaction Force","Joint Expeditionary Force"],"acronyms":["DoD","NATO","EUFOR","EUTM","OSCE","UNSC","JAG","ROTC","AFB","MOS","AWOL","MRE","IED","FOB","TOC","CONUS","OCONUS","UCMJ","USMC","USAF","USN","USA","SOCOM","CENTCOM","NORAD","PACOM","JTF","RPG","SAM","ASEAN","AUKUS","QUAD","CSTO","SCO","CFSP","EEAS","EUMS","Frontex","GRU","FSB","PLAN","PLAAF"],"equipment":["Humvee","MRAP","Apache","Black Hawk","Bradley","Abrams","F-16","F-22","F-35","B-2","B-52","C-130","LCAC","MRE"],"operations":["Operation Desert Storm","Operation Enduring Freedom","Operation Iraqi Freedom","Operation Inherent Resolve"],"treaties":["Lisbon Treaty","Maastricht Treaty","Treaty of Rome","Nice Treaty","Schengen Agreement"],"regions":["South China Sea","Taiwan Strait","Korean DMZ","Kashmir","Kuril Islands","Senkaku Islands"],"alliances":["NATO","AUKUS","QUAD","ASEAN","SCO","CSTO","Five Eyes"]}')},157:e=>{e.exports=JSON.parse('{"countries":["Afghanistan","Albania","Algeria","Andorra","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei","Bulgaria","Burkina Faso","Burundi","Cabo Verde","Cambodia","Cameroon","Canada","Central African Republic","Chad","Chile","China","Colombia","Comoros","Congo","Costa Rica","Cote d\'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Eswatini","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Korea","Kosovo","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Montenegro","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","Netherlands","New Zealand","Nicaragua","Niger","Nigeria","North Macedonia","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","Saint Kitts and Nevis","Saint Lucia","Saint Vincent and the Grenadines","Samoa","San Marino","Sao Tome and Principe","Saudi Arabia","Senegal","Serbia","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","South Sudan","Spain","Sri Lanka","Sudan","Suriname","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","Timor-Leste","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","United States","Uruguay","Uzbekistan","Vanuatu","Vatican City","Venezuela","Vietnam","Yemen","Zambia","Zimbabwe"],"alpha2":["UK"],"alpha3":["USA"]}')},223:e=>{e.exports=JSON.parse('{"sports":["FIFA","UEFA","NBA","NFL","MLB","NHL","NASCAR","IOC","FIBA","ATP","WTA","PGA","LPGA","FIA","WADA","ITF","AFL","NRL","ICC","IRB","IHF","FIVB","FINA","UCI","IAAF","ISU","WSF","BWF","WBC","WBO","IBF","IBO","UEFA","CONMEBOL","CONCACAF","CAF","AFC","OFC","CPL","MLS","LaLiga","Bundesliga","Ligue1","Eredivisie","JLeague","KLeague","Ryder Cup","Davis Cup","FedCup","XGames","Olympics","Paralympics","Dakar"],"apple":["Apple","AirDrop","AirPlay","AirPods","AirTags","FinalCut","GarageBand","iBooks","iCloud","iLife","iMac","iMessage","iMovie","iPhoto","iWatch","iWork","LogicPro","macOS","ProTools","QuickTime","iPhone","iPad","iPod","iOS","macOS","tvOS","watchOS"],"corporate":["Deloitte","Devoteam","ExxonMobil","GE","Boeing","Shell","Chevron"],"tech":["Bing","Salesforce","Asus","Acer","Lenovo","Huawei","Xiaomi","Epson","Nvidia","AMD","Qualcomm","Logitech","Panasonic","Sharp","Toshiba","Philips","Fujitsu","Netgear","Lexmark","Razer","SAP","Symantec","Kaspersky","Avast","McAfee","Siemens","Canon","Nikon","Garmin","GoPro","Oculus","Zoom","Slack","Trello","WeChat","Alibaba","Tencent","Baidu","Roku","Fitbit","Dropbox","Reddit","TikTok","Slack","Trello","Uber","Zoom","Reddit","Quora","JIRA","ZoomInfo","HubSpot","Mailchimp","WeChat","Dropbox","Uber","Telegram","Discord","StackOverflow","Quora","Reddit","ZoomInfo","Airbnb","LinkedIn","Snapchat","GitHub","GitLab","Nginx","OpenSSL","Webpack","Unity3D","Figma","JIRA","Kubernetes","TensorFlow","NPM","WooCommerce","WordPress","Slack","Trello","Uber","Zoom","Reddit","Quora","WeChat","Dropbox","Telegram","Discord","StackOverflow","Airbnb","LinkedIn","Snapchat","JIRA","MobX","VMware","Google"],"business":["Visa","Mastercard","Citibank","JPMorgan","Barclay","AMEX","Citigroup","PayPal","BNP","HSBC","Santander","UBS","Allianz","Prudential","Vanguard","BlackRock","CapitalOne","TD","Robinhood","MoneyGram","SoFi","Experian","Equifax","TransUnion","MasterCard","Blockchain","Coinbase","Binance","Kraken","Ethereum","Bitcoin"],"automotive":["BMW","Ford","Mercedes","Nissan","Tesla","Toyota","Audi","Chevrolet","Chrysler","Dodge","Ferrari","Fiat","Honda","Hyundai","Infiniti","Jaguar","Jeep","Kia","Lamborghini","LandRover","Lexus","Maserati","Mazda","McLaren","Mitsubishi","Peugeot","Porsche","Renault","RollsRoyce","Saab","Subaru","Suzuki","Volkswagen","Volvo","Alfa Romeo","Bentley","Bugatti","Cadillac","Citroen","Daewoo","Daihatsu","Datsun","DeLorean","Fiat Chrysler","GMC","Holden","Hummer","Isuzu","Koenigsegg","Lancia","Lincoln","Lotus","Mahindra","Suzuki","Opel","Pagani","Perodua","Proton","Rover","Scania","Skoda","SsangYong","Tata","Vauxhall","VinFast","Yugo","Zenvo"],"media":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","HBO","Showtime","Starz","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Vine","Zynga","Tidal","Quibi","Crave","Gaia","PlutoTV","Vudu","Kanopy","Mubi","BritBox"],"telecom":["Verizon","Sprint","Nokia","Ericsson","Vodafone","AT&T","Huawei","Xiaomi","Orange","NTT","T-Mobile","Telefonica","Airtel","Telstra","Rogers","Bell","MTN","ZTE","Qualcomm","Motorola","Telus","BT","Swisscom","SoftBank","KDDI"],"entertainment":["Disney","Netflix","YouTube","Instagram","Twitter","Facebook","Spotify","Hulu","TikTok","Snapchat","Vimeo","Twitch","Reddit","Pandora","HBO","Showtime","Starz","Paramount","Peacock","Crunchyroll","Audible","Pixar","DreamWorks","MGM","Lionsgate","Miramax","EpicGames","Ubisoft","Blizzard","Capcom","Bethesda","Sega","Roku","Fandango","IMDb","Shazam","SoundCloud","Vevo","Zynga","Tidal","Oscars"],"retail":["Amazon","eBay","IKEA","Walmart","Zara","Target","Costco","Sephora","Nordstrom","Tesco","Asda","Aldi","Lidl","Carrefour","Uniqlo","H&M","Gap","Cabela’s","BassPro","REI","Ulta","Saks","JCPenney","Belk","Argos","Safeway","Kroger","Publix","HomeDepot","Woolworths","Staples","OfficeMax","B&H","Newegg","MicroCenter","Frys","Monoprix","Waitrose","Morrisons","Ocado","Flipkart","Rakuten","Alibaba","JD","Taobao","Tmall","Guomei","Suning"],"food":["Nestle","Pepsi","Coca-Cola","PepsiCo","Starbucks","KFC","BurgerKing","PizzaHut","TacoBell","Kroger","Costco","Woolworths","Carrefour","Tesco","Aldi","Lidl","Walmart","Safeway","Publix","WholeFoods","RedBull","Monster","Nespresso","Heineken","Budweiser","Corona","Guinness","GeneralMills","Unilever","Kraft","Heinz","Danone","Campbell","Tyson","Conagra","Mondelez","Suntory","Diageo","Pernod"],"pharmaceutical":["Pfizer","Moderna","Gilead","Merck","Novartis","Sanofi","Roche","AbbVie","Amgen","Bayer","Biogen","BristolMyers","Celgene","GSK","Janssen","Lilly","Medtronic","Mylan","NovoNordisk","Regeneron","Teva","AstraZeneca","Boehringer","Daiichi","Eisai","Genentech","Grifols","Ipsen","Mundipharma","Otsuka","Purdue","Sandoz","Servier","SunPharma","Takeda","UCB","Viatris","Wockhardt","Zydus","Alkem"],"nonprofit":["NGO","NPO","NGOs","NPOs","UN","UNESCO","UNICEF","UNHCR","UNODC","UNDP","UNFPA","UNEP","UNRWA"]}')},279:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TitleCaserUtils=void 0;var i=r(416);function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,i)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,t||"default");if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class n{static validateOption(e,t){if(!Array.isArray(t))throw new TypeError(`Invalid option: ${e} must be an array`);if(!t.every((e=>"string"==typeof e)))throw new TypeError(`Invalid option: ${e} must be an array of strings`)}static validateOptions(e){for(const t of Object.keys(e))if("style"!==t)if("wordReplacementsList"!==t){if(!i.titleCaseDefaultOptionsList.hasOwnProperty(t))throw new TypeError(`Invalid option: ${t}`);this.TitleCaseValidator.validateOption(t,e[t])}else{if(!Array.isArray(e.wordReplacementsList))throw new TypeError(`Invalid option: ${t} must be an array`);for(const r of e.wordReplacementsList)if("string"!=typeof r)throw new TypeError(`Invalid option: ${t} must contain only strings`)}else{if("string"!=typeof e.style)throw new TypeError(`Invalid option: ${t} must be a string`);if(!i.allowedTitleCaseStylesList.includes(e.style))throw new TypeError(`Invalid option: ${t} must be a string`)}}static getTitleCaseOptions(e={},t=[]){const r=JSON.stringify({options:e,lowercaseWords:t});if(n.titleCaseOptionsCache.has(r))return n.titleCaseOptionsCache.get(r);const a=s(s(s({},i.titleCaseDefaultOptionsList[e.style||"ap"]),e),{},{smartQuotes:!!e.hasOwnProperty("smartQuotes")&&e.smartQuotes}),o=a.articlesList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),l=a.shortConjunctionsList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),c=a.shortPrepositionsList.concat(t).filter(((e,t,r)=>r.indexOf(e)===t)),u=[...(a.replaceTerms||[]).map((([e,t])=>[e.toLowerCase(),t])),...i.wordReplacementsList],p={articlesList:o,shortConjunctionsList:l,shortPrepositionsList:c,neverCapitalizedList:[...a.neverCapitalizedList],replaceTerms:u,smartQuotes:a.smartQuotes};return n.titleCaseOptionsCache.set(r,p),p}static capitalizeFirstLetter(e){return e.charAt(0).toUpperCase()+e.slice(1)}static isShortConjunction(e,t){const r=[...n.getTitleCaseOptions({style:t}).shortConjunctionsList],i=e.toLowerCase();return r.includes(i)}static isArticle(e,t){return n.getTitleCaseOptions({style:t}).articlesList.includes(e.toLowerCase())}static isShortPreposition(e,t){const{shortPrepositionsList:r}=n.getTitleCaseOptions({style:t});return r.includes(e.toLowerCase())}static isNeverCapitalized(e,t){const r=`${t}_${e.toLowerCase()}`;if(n.isNeverCapitalizedCache.has(r))return n.isNeverCapitalizedCache.get(r);const{neverCapitalizedList:i}=n.getTitleCaseOptions({style:t}),a=i.includes(e.toLowerCase());return n.isNeverCapitalizedCache.set(r,a),a}static isShortWord(e,t){if("string"!=typeof e)throw new TypeError(`Invalid input: word must be a string. Received ${typeof e}.`);if(!i.allowedTitleCaseStylesList.includes(t))throw new Error(`Invalid option: style must be one of ${i.allowedTitleCaseStylesList.join(", ")}.`);return n.isShortConjunction(e,t)||n.isArticle(e,t)||n.isShortPreposition(e,t)||n.isNeverCapitalized(e,t)}static hasNumbers(e){return/\d/.test(e)}static hasUppercaseMultiple(e){let t=0;for(let r=0;r<e.length&&t<2;r++)/[A-Z]/.test(e[r])&&t++;return t>=2}static hasUppercaseIntentional(e){if(e.length<=4)return/[A-Z]/.test(e.slice(1));const t=/[A-Z]/.test(e.slice(1)),r=/[a-z]/.test(e.slice(1));return t&&r}static isEntirelyUppercase(e){return e===e.toUpperCase()&&e!==e.toLowerCase()&&e.length>1}static isRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");if(e.length<2)return!1;const t=e.toLowerCase();return i.regionalAcronymList.includes(t)}static isRegionalAcronymNoDot(e,t,r=null){if("string"!=typeof e||"string"!=typeof t)return!1;const a=e.toLowerCase().replace(/[^\w\s]/g,""),s=t.toLowerCase().replace(/[^\w\s]/g,"");return!!(r&&i.regionalAcronymList.includes(a)&&["the"].includes(r.toLowerCase()))||i.regionalAcronymList.includes(a)&&i.directFollowingIndicatorsRegionalAcronym.includes(s)}static isFinalWordRegionalAcronym(e,t,r=null){if("string"!=typeof e||"string"!=typeof t)return!1;const a=e.toLowerCase().replace(/[^\w]/g,""),s=t.toLowerCase().replace(/[^\w]/g,""),o="string"==typeof r?r.toLowerCase().replace(/[^\w]/g,""):null;return!!i.regionalAcronymList.includes(a)&&(!!i.regionalAcronymPrecedingWords.includes(s)||!("the"!==s||!o||!i.regionalAcronymPrecedingWords.includes(o)))}static normalizeRegionalAcronym(e){if("string"!=typeof e)throw new TypeError("Invalid input: word must be a string.");return e.toUpperCase()}static normalizeAcronymKey(e){return e.toLowerCase().replace(/\./g,"")}static normalizeCasingForWordByStyle(e,t){if(!e||!t||!i.titleCaseDefaultOptionsList[t])return!1;const r=e.toLowerCase(),{shortConjunctionsList:a,articlesList:s,shortPrepositionsList:o,neverCapitalizedList:n}=i.titleCaseDefaultOptionsList[t];return!![...a,...s,...o,...n].includes(r)&&e}static hasSuffix(e){return e.length>2&&e.endsWith("'s")}static hasApostrophe(e){return-1!==e.indexOf("'")}static hasHyphen(e){return-1!==e.indexOf("-")||-1!==e.indexOf("–")||-1!==e.indexOf("—")}static hasRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");const t=e.includes("'")?e.split("'"):[e],r=/^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;return t.every((e=>r.test(e)))}static hasHyphenRomanNumeral(e){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");const t=e.split("-");for(let e=0;e<t.length;e++)if(!n.hasRomanNumeral(t[e]))return!1;return!0}static hasHtmlBreak(e){return"nl2br"===e}static hasUnicodeSymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u0100-\u017F\u0180-\u024F\u0250-\u02AF\u02B0-\u02FF\u0300-\u036F\u0370-\u03FF\u0400-\u04FF\u0500-\u052F\u0530-\u058F\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u0780-\u07BF\u07C0-\u07FF\u0800-\u083F\u0840-\u085F\u0860-\u087F\u0880-\u08AF\u08B0-\u08FF\u0900-\u097F\u0980-\u09FF\u0A00-\u0A7F\u0A80-\u0AFF\u0B00-\u0B7F\u0B80-\u0BFF\u0C00-\u0C7F\u0C80-\u0CFF\u0D00-\u0D7F\u0D80-\u0DFF\u0E00-\u0E7F\u0E80-\u0EFF\u0F00-\u0FFF]/.test(e)}static hasCurrencySymbols(e){return/[^\x00-\x7F\u00A0-\u00FF\u20AC\u20A0-\u20B9\u20BD\u20A1-\u20A2\u00A3-\u00A5\u058F\u060B\u09F2-\u09F3\u0AF1\u0BF9\u0E3F\u17DB\u20A6\u20A8\u20B1\u2113\u20AA-\u20AB\u20AA\u20AC-\u20AD\u20B9]/.test(e)}static isWordAmpersand(e){return/&amp;|&/.test(e)}static startsWithSymbol(e){if("string"!=typeof e)throw new Error(`Parameter 'word' must be a string. Received '${typeof e}' instead.`);if(0===e.length)return!1;const t=e.charAt(0);return"#"===t||"@"===t||"."===t}static escapeSpecialCharacters(e){return e.replace(/[&<>"']/g,(function(e){switch(e){case"&":return"&amp;";case"<":return"&lt;";case">":return"&gt;";case'"':return"&quot;";case"'":return"&#x27;";default:return e}}))}static unescapeSpecialCharacters(e){return e.replace(/&amp;|&lt;|&gt;|&quot;|&#x27;/g,(function(e){switch(e){case"&amp;":return"&";case"&lt;":return"<";case"&gt;":return">";case"&quot;":return'"';case"&#x27;":return"'";default:return e}}))}static endsWithSymbol(e,t=[".",",",";",":","?","!"]){if("string"!=typeof e||!Array.isArray(t))throw new Error("Invalid arguments");return t.some((t=>e.endsWith(t)))||t.includes(e.slice(-2))}static isWordIgnored(e,t=i.ignoredWordList){if(!Array.isArray(t))throw new TypeError("Invalid input: ignoredWords must be an array.");if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");let r;return r=e.toLowerCase().trim(),t.includes(r)}static isWordInArray(e,t){return!!Array.isArray(t)&&t.some((t=>t.toLowerCase()===e.toLowerCase()))}static convertQuotesToCurly(e){const t={"'":["‘","’"],'"':["“","”"]};let r="";for(let i=0;i<e.length;i++){const a=e[i],s=t[a];if(s){const t=e[i-1],a=e[i+1],o=!t||" "===t||"\n"===t?s[0]:s[1];r+=o,o===s[1]&&/[.,;!?()\[\]{}:]/.test(a)&&(r+=a,i++)}else r+=a}return r}static replaceTerm(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||"object"!=typeof t)throw new TypeError("Invalid input: replaceTermObj must be a non-null object.");let r;if(r=e.toLowerCase(),t.hasOwnProperty(r))return t[r];if(t.hasOwnProperty(e))return t[e];const i=e.toUpperCase();return t.hasOwnProperty(i)?t[i]:e}static isElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");const t=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),r=e.trim().toLowerCase().replace(/'/g,"’");for(const e of t)if(r.startsWith(e))return!0;return!1}static normalizeElidedWord(e){if("string"!=typeof e||""===e.trim())throw new TypeError("Invalid input: word must be a non-empty string.");const t=new Set(["o’","fo’","ne’er","e’er","’tis","’twas","’n’"]),r=e.trim(),i=r.replace(/'/g,"’").toLowerCase();for(const e of t)if(i.startsWith(e)){const t=e.length,i=r.slice(t);return e.charAt(0).toUpperCase()+e.slice(1)+(i.length>0?i.charAt(0).toUpperCase()+i.slice(1):"")}return!1}static correctSuffix(e,t){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t)||t.some((e=>"string"!=typeof e)))throw new TypeError("Invalid input: correctTerms must be an array of strings.");if(/'s$/i.test(e)){const r=e.slice(0,-2),i=t.findIndex((e=>e.toLowerCase()===r.toLowerCase()));if(i>=0){return`${t[i]}'s`}return`${r.charAt(0).toUpperCase()+r.slice(1)}'s`}return e}static correctTerm(e,t,r=/[-']/){if("string"!=typeof e||""===e)throw new TypeError("Invalid input: word must be a non-empty string.");if(!t||!Array.isArray(t))throw new TypeError("Invalid input: correctTerms must be an array.");if(!("string"==typeof r||Array.isArray(r)||r instanceof RegExp))throw new TypeError("Invalid input: delimiters must be a string, an array of strings, or a regular expression.");"string"==typeof r?r=new RegExp(`[${r}]`):Array.isArray(r)&&(r=new RegExp(`[${r.join("")}]`));const i=e.split(r),a=i.length;for(let e=0;e<a;e++){const r=i[e].toLowerCase(),a=t.findIndex((e=>e.toLowerCase()===r));i[e]=a>=0?t[a]:i[e].charAt(0).toUpperCase()+i[e].slice(1).toLowerCase()}let s=r.source.charAt(0);return e.includes("-")?s="-":e.includes("'")&&(s="'"),i.join(s)}static correctTermHyphenated(e,t){const r=e.split("-"),a=e=>e.charAt(0).toUpperCase()+e.slice(1),s=e=>e.charAt(0)+e.slice(1).toLowerCase(),o={ap:(e,t)=>0===t?a(e):s(e),chicago:a,apa:(e,r,i)=>n.isShortWord(e,t)&&r>0&&r<i-1?e.toLowerCase():a(e),nyt:(e,t)=>0===t?a(e):s(e),wikipedia:(e,t)=>0===t?a(e):s(e)},l=o[t]||s,c=r.map(((e,t)=>{let a=e;if(/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})'s$/i.test(e)){return a.toUpperCase().replace(/'S$/,"'s")}const s=/^(M{0,3})(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;if(s.test(e))return e.toUpperCase();if(e.includes("'")){const i=e.split("'");return i.every((e=>s.test(e)))?(a=i.map((e=>e.toUpperCase())).join("'"),a):l(a,t,r.length)}const o=e.toLowerCase(),n=i.correctTitleCasingList.findIndex((e=>e.toLowerCase()===o));if(n>=0)a=i.correctTitleCasingList[n];else if(o.endsWith("'s")){const e=o.substring(0,o.length-2),t=i.correctTitleCasingList.findIndex((t=>t.toLowerCase()===e));t>=0&&(a=`${i.correctTitleCasingList[t]}'s`)}return l(a,t,r.length)}));return c.join("-")}}t.TitleCaserUtils=n,o(n,"TitleCaseValidator",void 0),o(n,"titleCaseOptionsCache",new Map),o(n,"isNeverCapitalizedCache",new Map)},321:e=>{e.exports=JSON.parse('{"advertising":["AdWords","AdSense","AdMob","DoubleClick","SpotX"],"digitalMarketing":["DSP","SSP","CTR","CPA","CPC","CPL","CPM","CRM","SEO","SEM","SMM","A/B","CTOR","KPI","SERP","FAQ","PR"],"general":["B2B","B2C","CMO","USP","PWA","SMO","T&C","TOS","PP","UI","UX","UI/UX"],"blockchain":["PoE","PoW","PoC"],"accessibility":["A11Y"]}')},388:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.TitleCaser=void 0;var i=r(416),a=r(279);t.TitleCaser=class{constructor(e={}){this.options=e,this.debug=e.debug||!1,this.wordReplacementsList=i.wordReplacementsList,this.correctPhraseCasingList=i.correctPhraseCasingList}logWarning(e){this.debug&&console.warn(`Warning: ${e}`)}toTitleCase(e){try{if(0===e.trim().length)throw new TypeError("Invalid input: input must not be empty.");if("string"!=typeof e)throw new TypeError("Invalid input: input must be a string.");if(void 0!==this.options&&"object"!=typeof this.options)throw new TypeError("Invalid options: options must be an object.");const{style:t="ap",neverCapitalize:r=[],replaceTermList:s=this.wordReplacementsList,smartQuotes:o=!1}=this.options,n=i.titleCaseDefaultOptionsList[t]||{},l=["nl2br",...r],{articlesList:c,shortConjunctionsList:u,shortPrepositionsList:p,neverCapitalizedList:d,replaceTerms:m,smartQuotes:C}=a.TitleCaserUtils.getTitleCaseOptions(this.options,i.commonShortWords,i.wordReplacementsList),g=s.map((e=>Object.keys(e)[0].toLowerCase())),y=Object.fromEntries(s.map((e=>[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]])));this.logWarning(`replaceTermsArray: ${g}`),this.logWarning(`this.wordReplacementsList: ${this.wordReplacementsList}`);let h=e.trim();h=h.replace(/<\s*br\s*\/?\s*>/gi," nl2br "),h=h.replace(/ {2,}/g,(e=>e.slice(0,1)));a.TitleCaserUtils.isEntirelyUppercase(h.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),h=h.toLowerCase());const f=h.split(" ");h=f.map(((e,r)=>{switch(!0){case a.TitleCaserUtils.isWordAmpersand(e):case a.TitleCaserUtils.hasHtmlBreak(e):case a.TitleCaserUtils.isWordIgnored(e,l):return e;case g.includes(e.toLowerCase()):return y[e.toLowerCase()];case a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList):return a.TitleCaserUtils.correctTerm(e,i.correctTitleCasingList);case a.TitleCaserUtils.isElidedWord(e):return a.TitleCaserUtils.normalizeElidedWord(e);case a.TitleCaserUtils.hasHyphen(e):const s=e.replace(/[\W_]+$/,""),o=e.slice(s.length),n=s.split("-"),c=n.map((e=>{const t=e.toLowerCase();return g.includes(t)?y[t]:e})),u=!c.every(((e,t)=>e===n[t]))?c.join("-"):a.TitleCaserUtils.correctTermHyphenated(e,t);return u.endsWith(o)?u:u+o;case a.TitleCaserUtils.hasSuffix(e,t):return a.TitleCaserUtils.correctSuffix(e,i.correctTitleCasingList);case a.TitleCaserUtils.hasUppercaseIntentional(e):return e;case a.TitleCaserUtils.isShortWord(e,t)&&0!==r:if(r>0&&a.TitleCaserUtils.endsWithSymbol(f[r-1],[":","?","!","."]))return e.charAt(0).toUpperCase()+e.slice(1);return a.TitleCaserUtils.normalizeCasingForWordByStyle(e,t);case a.TitleCaserUtils.endsWithSymbol(e):this.logWarning(`Check if the word ends with a symbol: ${e}`);const p=e.split(/([.,\/#!$%\^&\*;:{}=\-_`~()?])/g);this.logWarning(`Splitting word at symbols, result: ${p}`);return p.map((e=>{if(this.logWarning(`Processing part: ${e}`),a.TitleCaserUtils.endsWithSymbol(e))return this.logWarning(`Part is a symbol: ${e}`),e;if(this.logWarning(`Part is a word: ${e}`),a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList)){const t=a.TitleCaserUtils.correctTerm(e,i.correctTitleCasingList);return this.logWarning(`Word is in correctTitleCasingList, corrected term: ${t}`),t}if(g.includes(e)){const t=y[e];return this.logWarning(`Word is in replaceTermsArray, replacement: ${t}`),t}{const t=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase();return this.logWarning(`Applying title casing to word: ${t}`),t}})).join("");case a.TitleCaserUtils.startsWithSymbol(e):return a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList)?a.TitleCaserUtils.correctTerm(e):e;case a.TitleCaserUtils.hasRomanNumeral(e):return e.toUpperCase();case a.TitleCaserUtils.hasNumbers(e):return e;default:return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}})).join(" "),h=h.replace(/nl2br/gi,"<br>"),o&&(h=a.TitleCaserUtils.convertQuotesToCurly(h));const S=h.split(" ");let A=S[0],w=S[1]||null;S[S.length-1];for(let I=0;I<S.length;I++){I>0&&S[I-1];let F=S[I];const R=I<S.length-1?S[I+1]:null,E=F.match(/[.,!?;:]+$/);let M="";E&&(M=E[0],F=F.replace(/[.,!?;:]+$/,"")),a.TitleCaserUtils.isRegionalAcronym(F)&&(F=a.TitleCaserUtils.normalizeRegionalAcronym(F)),a.TitleCaserUtils.isRegionalAcronymNoDot(F,R)&&(F=a.TitleCaserUtils.normalizeRegionalAcronym(F)),""!==M&&(F+=M)}h=S.join(" ");const L=h.split(" ");for(let U=1;U<L.length-1;U++){const B=L[U];L[U-1],L[U+1];B===B.toUpperCase()||a.TitleCaserUtils.hasUppercaseIntentional(B)||a.TitleCaserUtils.isWordInArray(B,i.commonShortWords)&&(L[U]=B.length<=3?B.toLowerCase():B)}h=L.join(" ");const T=h.split(" ");for(let k=0;k<T.length;k++){let D=T[k],N=T[k+1],W=T[k-1];null!==N&&a.TitleCaserUtils.isRegionalAcronymNoDot(D,N,W)&&(T[k]=D.toUpperCase())}let b=T[T.length-1],O=T[T.length-2],v=T[T.length-3];a.TitleCaserUtils.isRegionalAcronym(A)&&(console.log("firstWord is a regional acronym, proof: ",A),T[0]=A.toUpperCase()),a.TitleCaserUtils.isRegionalAcronymNoDot(A,w)&&(T[0]=A.toUpperCase()),a.TitleCaserUtils.isFinalWordRegionalAcronym(b,O,v)&&(T[T.length-1]=b.toUpperCase()),h=T.join(" ");for(const[j,x]of Object.entries(this.correctPhraseCasingList)){const G=new RegExp(j.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");h=h.replace(G,x)}function P(e){return!!a.TitleCaserUtils.isRegionalAcronym(e)||(!!a.TitleCaserUtils.hasUppercaseIntentional(e)||!!a.TitleCaserUtils.isWordInArray(e,i.correctTitleCasingList))}if("sentence"===n.caseStyle){const z=h.split(" ");let H=!1;for(let V=0;V<z.length;V++){let $=z[V];H||!/[A-Za-z]/.test($)?P($)||(z[V]=$.toLowerCase()):(P($)||(z[V]=$.charAt(0).toUpperCase()+$.slice(1).toLowerCase()),H=!0)}h=z.join(" ")}return h}catch(K){throw new Error(K)}}setReplaceTerms(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: setReplaceTerms must be an array of objects.");e.forEach((e=>{if(e&&"object"==typeof e){const[t,r]=Object.entries(e)[0],i=this.wordReplacementsList.findIndex((e=>e.hasOwnProperty(t)));-1!==i?this.wordReplacementsList[i][t]=r:this.wordReplacementsList.push({[t]:r})}else console.warn("Invalid entry in terms array:",e)})),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning(`Log the updated this.wordReplacementsList: ${this.wordReplacementsList}`)}addReplaceTerm(e,t){if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: term and replacement must be strings.");const r=this.wordReplacementsList.findIndex((t=>Object.keys(t)[0]===e));-1!==r?this.wordReplacementsList[r][e]=t:this.wordReplacementsList.push({[e]:t}),this.options.wordReplacementsList=this.wordReplacementsList}removeReplaceTerm(e){if("string"!=typeof e)throw new TypeError("Invalid argument: term must be a string.");const t=this.wordReplacementsList.findIndex((t=>Object.keys(t)[0]===e));if(-1===t)throw new Error(`Term '${e}' not found in word replacements list.`);this.wordReplacementsList.splice(t,1),this.options.wordReplacementsList=this.wordReplacementsList,this.logWarning(`Log the updated this.wordReplacementsList: ${this.wordReplacementsList}`)}addExactPhraseReplacements(e){if(!Array.isArray(e))throw new TypeError("Invalid argument: newPhrases must be an array.");e.forEach((e=>{if("object"!=typeof e||Array.isArray(e)||1!==Object.keys(e).length){if("object"!=typeof e||Array.isArray(e))throw new TypeError("Invalid argument: Each item must be an object with a single key-value pair.");Object.entries(e).forEach((([e,t])=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[e]=t}))}else{const t=Object.keys(e)[0],r=e[t];if("string"!=typeof t||"string"!=typeof r)throw new TypeError("Invalid argument: Each key-value pair must contain strings.");this.correctPhraseCasingList[t]=r}})),this.logWarning(`Log the this.correctPhraseCasingList: ${this.correctPhraseCasingList}`)}setStyle(e){if("string"!=typeof e)throw new TypeError("Invalid argument: style must be a string.");this.options.style=e}}},416:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.wordReplacementsList=t.titleCaseStylesList=t.titleCaseDefaultOptionsList=t.regionalAcronymPrecedingWords=t.regionalAcronymList=t.ignoredWordList=t.directFollowingIndicatorsRegionalAcronym=t.correctTitleCasingList=t.correctPhraseCasingList=t.commonShortWords=t.allowedTitleCaseStylesList=void 0;var i=d(r(223)),a=d(r(814)),s=d(r(661)),o=d(r(157)),n=d(r(321)),l=d(r(742)),c=d(r(501)),u=d(r(491)),p=d(r(16));function d(e){return e&&e.__esModule?e:{default:e}}const m=function(...e){const t=[];return e.forEach((e=>{Array.isArray(e)?e.forEach((e=>{Object.values(e).forEach((e=>{t.push(...e)}))})):"object"==typeof e&&Object.values(e).forEach((e=>{t.push(...e)}))})),[...new Set(t)]}(i.default,a.default,s.default,o.default,n.default,l.default,c.default,u.default,p.default),C=(t.correctTitleCasingList=m,t.commonShortWords=["the","in","to","within","towards","into","at","of","for","by","on","from","with","through","about","across","over","under","between"],t.wordReplacementsList=[{"a.k.a":"AKA"},{"a.s.a.p":"ASAP"},{"f.a.q":"FAQ"},{"f.a.q.s":"FAQs"},{FAQS:"FAQs"},{"f.y.i":"FYI"},{"d.i.y":"DIY"},{"t.b.d":"TBD"},{"back-end":"Backend"},{"front-end":"Frontend"},{"full-stack":"Fullstack"},{nodejs:"Node.js"},{nextjs:"Next.js"},{nuxtjs:"Nuxt.js"},{reactjs:"React"},{"react.js":"React"},{"cyber-security":"Cybersecurity"}],t.titleCaseStylesList=Object.freeze({AP:"ap",APA:"apa",BRITISH:"british",CHICAGO:"chicago",NYT:"nyt",WIKIPEDIA:"wikipedia"}));t.allowedTitleCaseStylesList=Object.values(C),t.titleCaseDefaultOptionsList=Object.freeze({ap:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},apa:{caseStyle:"title",shortConjunctionsList:["and","as","but","for","if","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","for","in","of","off","on","per","to","via"],neverCapitalizedList:[]},british:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},chicago:{caseStyle:"title",shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:["etc."]},nyt:{caseStyle:"title",shortConjunctionsList:["and","but","or","nor","yet","so","for"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]},wikipedia:{caseStyle:"sentence",shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["at","by","for","in","of","off","on","out","per","to","via"],neverCapitalizedList:[]}}),t.ignoredWordList=[],t.correctPhraseCasingList={"the cybersmile foundation":"The Cybersmile Foundation","co. by colgate":"CO. by Colgate","on & off":"On & Off","on and off":"On and Off"},t.regionalAcronymList=["usa","us","u.s.a","u.s.","u.s","u.s.a.","eu","e.u.","e.u","uk","u.k.","u.k"],t.regionalAcronymPrecedingWords=["the","via","among","across","beyond","outside","alongside","throughout","despite","unlike","upon"],t.directFollowingIndicatorsRegionalAcronym=["act","acts","administration","administrations","agency","agencies","agreement","agreements","airforce","airforces","aid","alliance","alliances","ambassador","ambassadors","authority","authorities","bill","bills","bloc","blocs","budget","budgets","bureau","bureaus","cabinet","cabinets","charter","charters","command","commands","commission","commissions","conference","conferences","congress","congresses","convention","conventions","council","councils","court","courts","defense","defences","defence","defenses","delegation","delegations","democracy","democracies","department","departments","development","developments","directive","directives","diplomacy","division","divisions","economy","economies","embassy","embassies","engagement","engagements","envoy","envoys","exports","federation","federations","finance","finances","forces","framework","frameworks","funding","government","governments","hearing","hearings","imports","initiative","initiatives","intel","intelligence","intervention","interventions","jurisdiction","jurisdictions","law","laws","leadership","leaders","legislation","liaison","liaisons","mandate","mandates","markets","marines","military","militaries","ministry","ministries","mission","missions","navy","navies","negotiations","office","offices","operations","oversight","parliament","parliaments","plan","plans","policies","policy","policy-makers","precedent","precedents","presence","program","programme","programmes","programs","project","projects","protocol","protocols","province","provinces","reform","reforms","regulation","regulations","regulator","regulators","relations","representation","representations","republic","republics","resolution","resolutions","ruling","rulings","sanctions","security","securities","senate","senates","service","services","state","states","statute","statutes","strategy","strategies","summit","summits","summitry","surveillance","talks","tariffs","territory","territories","trade","trades","treasury","treasuries","treaty","treaties","tribunal","tribunals","troops","union","unions","veterans","warships","zone","zones"]},491:e=>{e.exports=JSON.parse('{"timeRelated":["a.m.","p.m.","ca.","cc.","fig.","pl.","pt.","rev.","sr.","v.","vol.","et al.","pp.","p."],"academic":["adj.","adv.","cf.","cm.","co.","corp.","dept.","dist.","ed.","edn.","esp.","etc.","ex.","i.e.","e.g.","op. cit.","vs."]}')},501:e=>{e.exports=JSON.parse('{"terms":["API","APIs","ASCII","CI","CLI","DLL","DNS","EC2","FTP","HTTP","HTTPS","ICMP","IDE","IP","ISP","LPWAN","M2M","MQTT","OOP","REST","SSH","SSL","TCP","UDP","URL","WLAN","WYSIWYG","IMAP","RSS","IaaS","PaaS","SaaS","CaaS","FaaS","XaaS","RaaS","IoE","IoT","LoRa","NB-IoT","RFID","RF","RFI","RFQ","ECMAScript","IO","I/O","DevOps","SecOps","DDoS","VoIP","AI","AR","ML","VR","CI/CD","DevSecOps","UI/UX","UX/UI","UI","UX","MVC","ORM","3G","4G","5G","NumPy","VPN","PKI","WAN","NAT","GPU","SSD","HDD","RAM","Frontend","Backend","Fullstack"],"legal":["DMCA","GDPR","HIPAA","NDA","SOW","TOS"],"languages":["JavaScript","TypeScript","Java","PHP","SQL","CSS",".NET","ES5","ES6","NoSQL","DynamoDB","Terraform","CloudFormation","RDS","Python","Ruby","Go","Swift","Kotlin","Perl"],"formats":["JSON","XML","YAML","GraphQL","WebSocket","RESTful"],"secops":["RaaS","DevSecOps","SecOps","Cybersecurity","DDoS"],"technologies":["AWS","Azure","GCP","VMware","Docker","Ansible","Chef","Puppet","Git","Subversion","Jenkins","CircleCI","Hadoop","Spark","BigQuery","PowerBI","Tableau"],"os":["Android","macOS","Windows","Linux","iOS","Ubuntu","CentOS","Fedora","Debian","SUSE","HarmonyOS","FreeRTOS","BeOS","BSD","Cordova","Flutter"],"programming":["Angular","Bootstrap","CodeIgniter","jQuery","Laravel","Redux","Vue.js","VueX","SCSS","AJAX","GraphQL","HTML","HTML5","MySQL","MongoDB","PostgresQL","SQLite","ASP","ASPX","Elasticsearch","Nginx","OpenSSL","Webpack","Unity3D","Kubernetes","TensorFlow","NPM","cURL"]}')},661:e=>{e.exports=JSON.parse('{"eterms":["eBook","eBooks","eMarket","eMarketplace","eMarketplaces","eMarkets","eReader","eShop","eShops","eStore","eStores","E-commerce","E-com"]}')},742:e=>{e.exports=JSON.parse('{"miscellaneous":["w/","w/o","Open Source","Cybersecurity","Ecosystem","Biodiversity","LGBT","LGBTQ+","LGBTQIA+","2SLGBTQ+","BIPOC"]}')},814:e=>{e.exports=JSON.parse('{"commercial":["Ltd.","LLC","PLC","Co.","Inc.","St.","Ave.","Bldg.","No.","GmbH"],"titles":["CEO","CEOs","CFO","CFOs","CIO","CIOs","CMO","CMOs","COO","COOs","CPO","CPOs","CRO","CROs","CSO","CSOs","CTO","CTOs","EVP","EVPs","HR","HRs","SVP","SVPs","VP","VPs","CMTO","CDO"],"accounting":["AP","COGS","EBIT","EPS","FIFO","GAAP","LIFO","P&L","ROI","SOX","TCO","VAT","EBITDA","NPV","WACC","AR"],"finance":["CAGR","DCF","ETF","IPO","IRR","M&A","NAV","PE","PEG","PPE","ROE","S&P","TVM","VC","FOMC","FX","ETF"],"legal":["AFA","ADR","CCPA","CFAA","CISG","DMCA","EULA","GDPR","HIPAA","NDA","SOW","TOS","LLM","JD","Esq.","AG","SARL","KYC","AML","ph.d.","m.d.","d.d.s.","d.m.d.","d.o.","d.c.","d.v.m.","d.n.p.","d.p.m.","d.s.w.","d.s.n.","d.n.sc.","d.n.a.","d.n.t.","d.n.p.t.","d.n.o.","d.n.m.","d.n.e.","d.n.s.","d.n.p.s."]}')}},t={};function r(i){var a=t[i];if(void 0!==a)return a.exports;var s=t[i]={exports:{}};return e[i](s,s.exports,r),s.exports}var i={};(()=>{var e=i;Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"TitleCaser",{enumerable:!0,get:function(){return t.TitleCaser}}),e.default=void 0;var t=r(388);void 0===String.prototype.toTitleCase&&(String.prototype.toTitleCase=function(e){return new t.TitleCaser(e).toTitleCase(this)}),"undefined"!=typeof window&&window.document&&(window.TitleCaser=t.TitleCaser);e.default=t.TitleCaser})(),module.exports=i})();
package/index.d.ts CHANGED
@@ -1,25 +1,25 @@
1
- declare module '@danielhaim/titlecaser' {
2
- export interface TitleCaserOptions {
3
- style?: 'ap' | 'apa' | 'chicago' | 'wikipedia' | 'nyt';
4
- smartQuotes?: boolean;
5
- ignoreWords?: string[];
6
- acronyms?: string[];
7
- }
1
+ // declare module '@danielhaim/titlecaser' {
2
+ // export interface TitleCaserOptions {
3
+ // style?: 'ap' | 'apa' | 'chicago' | 'wikipedia' | 'nyt';
4
+ // smartQuotes?: boolean;
5
+ // ignoreWords?: string[];
6
+ // acronyms?: string[];
7
+ // }
8
8
 
9
- export class TitleCaser {
10
- constructor(options?: TitleCaserOptions);
11
- toTitleCase(text: string): string;
12
- setReplaceTerms(terms: Array<{ [key: string]: string }>): void;
13
- addReplaceTerm(term: string, replacement: string): void;
14
- removeReplaceTerm(term: string): void;
15
- addExactPhraseReplacements(phrases: Array<{ [key: string]: string }>): void;
16
- }
9
+ // export class TitleCaser {
10
+ // constructor(options?: TitleCaserOptions);
11
+ // toTitleCase(text: string): string;
12
+ // setReplaceTerms(terms: Array<{ [key: string]: string }>): void;
13
+ // addReplaceTerm(term: string, replacement: string): void;
14
+ // removeReplaceTerm(term: string): void;
15
+ // addExactPhraseReplacements(phrases: Array<{ [key: string]: string }>): void;
16
+ // }
17
17
 
18
- export = TitleCaser;
19
- }
18
+ // export = TitleCaser;
19
+ // }
20
20
 
21
- declare global {
22
- interface String {
23
- toTitleCase(options?: import('@danielhaim/titlecaser').TitleCaserOptions): string;
24
- }
25
- }
21
+ // declare global {
22
+ // interface String {
23
+ // toTitleCase(options?: import('@danielhaim/titlecaser').TitleCaserOptions): string;
24
+ // }
25
+ // }
package/index.js CHANGED
@@ -1,18 +1,17 @@
1
1
  import { TitleCaser } from './src/TitleCaser.js';
2
2
 
3
- if ( String.prototype.toTitleCase === undefined ) {
4
- String.prototype.toTitleCase = function ( options ) {
5
- const titleCaser = new TitleCaser ( options );
6
- return titleCaser.toTitleCase ( this );
7
- };
8
- }
9
-
10
- // Export for Node.js environment
11
- if ( typeof module === 'object' && module.exports ) {
12
- module.exports = { TitleCaser };
3
+ if (String.prototype.toTitleCase === undefined) {
4
+ String.prototype.toTitleCase = function (options) {
5
+ const titleCaser = new TitleCaser(options);
6
+ return titleCaser.toTitleCase(this);
7
+ };
13
8
  }
14
9
 
15
10
  // Export for web environment
16
- if ( typeof window !== 'undefined' && window.document ) {
17
- window.TitleCaser = TitleCaser;
11
+ if (typeof window !== 'undefined' && window.document) {
12
+ window.TitleCaser = TitleCaser;
18
13
  }
14
+
15
+ // ESM exports
16
+ export { TitleCaser };
17
+ export default TitleCaser;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danielhaim/titlecaser",
3
- "version": "1.7.9",
3
+ "version": "1.7.10",
4
4
  "description": "A powerful utility for transforming text to title case with support for multiple style guides and extensive customization options.",
5
5
  "keywords": [
6
6
  "title case",
@@ -35,10 +35,10 @@
35
35
  "url": "https://github.com/danielhaim1"
36
36
  },
37
37
  "main": "./index.js",
38
- "module": "./dist/index.esm.js",
38
+ "module": "./dist/titlecaser.esm.js",
39
39
  "exports": {
40
40
  ".": {
41
- "import": "./dist/index.esm.js",
41
+ "import": "./dist/titlecaser.esm.js",
42
42
  "require": "./index.js"
43
43
  }
44
44
  },