@danielhaim/titlecaser
Version:
Converts a string to title case with multiple style options, ability to ignore certain words, and handle acronyms
5 lines • 48.1 kB
JavaScript
/*!
* @danielhaim/titlecaser - v1.7.1 - 2025-04-05
* https://github.com/danielhaim1/titlecaser.git
* Copyright (c) 2025 Daniel Haim, Licensed Apache-2.0
*/(()=>{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,o,a,s=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.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&&(a=r.return(),Object(a)!==a))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 o(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 a(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?a(Object(r),!0).forEach((function(t){d(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 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 o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}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 o,a=l(e.wordReplacementsList);try{for(a.s();!(o=a.n()).done;)if("string"!=typeof o.value)throw new TypeError("Invalid option: ".concat(i," must contain only strings"))}catch(e){a.e(e)}finally{a.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]:[],a=JSON.stringify({options:t,lowercaseWords:n});if(e.titleCaseOptionsCache.has(a))return e.titleCaseOptionsCache.get(a);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(o((l.replaceTerms||[]).map((function(e){var t=i(e,2),r=t[0],n=t[1];return[r.toLowerCase(),n]}))),o(r.wordReplacementsList)),f={articlesList:u,shortConjunctionsList:c,shortPrepositionsList:p,neverCapitalizedList:o(l.neverCapitalizedList),replaceTerms:d,smartQuotes:l.smartQuotes};return e.titleCaseOptionsCache.set(a,f),f}},{key:"capitalizeFirstLetter",value:function(e){return e.charAt(0).toUpperCase()+e.slice(1)}},{key:"isShortConjunction",value:function(t,r){var n=o(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,""),o=t.toLowerCase().replace(/[^\w\s]/g,"");return!!(n&&r.regionalAcronymList.includes(i)&&["the"].includes(n.toLowerCase()))||r.regionalAcronymList.includes(i)&&r.directFollowingIndicatorsRegionalAcronym.includes(o)}},{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,""),o=t.toLowerCase().replace(/[^\w]/g,""),a="string"==typeof n?n.toLowerCase().replace(/[^\w]/g,""):null;return!!(r.regionalAcronymList.includes(i)&&(r.regionalAcronymPrecedingWords.includes(o)||"the"===o&&a&&r.regionalAcronymPrecedingWords.includes(a)))}},{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],a=i.shortConjunctionsList,s=i.articlesList,l=i.shortPrepositionsList,u=i.neverCapitalizedList;return!![].concat(o(a),o(s),o(l),o(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/&|&/.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"&";case"<":return"<";case">":return">";case'"':return""";case"'":return"'";default:return e}}))}},{key:"unescapeSpecialCharacters",value:function(e){return e.replace(/&|<|>|"|'/g,(function(e){switch(e){case"&":return"&";case"<":return"<";case">":return">";case""":return'"';case"'":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],o=t[i];if(o){var a=e[n-1],s=e[n+1],l=a&&" "!==a&&"\n"!==a?o[1]:o[0];r+=l,l===o[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 o=t.value;if(n.startsWith(o))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(),o=l(r);try{for(o.s();!(t=o.n()).done;){var a=t.value;if(i.startsWith(a)){var s=a.length,u=n.slice(s);return a.charAt(0).toUpperCase()+a.slice(1)+(u.length>0?u.charAt(0).toUpperCase()+u.slice(1):"")}}}catch(e){o.e(e)}finally{o.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 o=r.charAt(0).toUpperCase()+r.slice(1);return"".concat(o,"'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,o=function(){var e=n[a].toLowerCase(),r=t.findIndex((function(t){return t.toLowerCase()===e}));n[a]=r>=0?t[r]:n[a].charAt(0).toUpperCase()+n[a].slice(1).toLowerCase()},a=0;a<i;a++)o();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("-"),o=function(e){return e.charAt(0).toUpperCase()+e.slice(1)},a=function(e){return e.charAt(0)+e.slice(1).toLowerCase()},s={ap:function(e,t){return 0===t?o(e):a(e)},chicago:o,apa:function(t,r,i){return e.isShortWord(t,n)&&r>0&&r<i-1?t.toLowerCase():o(t)},nyt:function(e,t){return 0===t?o(e):a(e)},wikipedia:function(e,t){return 0===t?o(e):a(e)}},l=s[n]||a,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 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(e))return e.toUpperCase();if(e.includes("'")){var a=e.split("'");return a.every((function(e){return o.test(e)}))?n=a.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("-")}}],(a=null)&&p(t.prototype,a),u&&p(t,u),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,a,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 o(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,o,a,s=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.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&&(a=r.return(),Object(a)!==a))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 a(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{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 i=this.options,s=i.style,l=void 0===s?"ap":s,c=i.neverCapitalize,p=void 0===c?[]:c,d=i.replaceTermList,f=void 0===d?this.wordReplacementsList:d,y=i.smartQuotes,m=void 0!==y&&y,g=["nl2br"].concat(a(p)),h=n.TitleCaserUtils.getTitleCaseOptions(this.options,r.commonShortWords,r.wordReplacementsList),C=(h.articlesList,h.shortConjunctionsList,h.shortPrepositionsList,h.neverCapitalizedList,h.replaceTerms,h.smartQuotes,f.map((function(e){return Object.keys(e)[0].toLowerCase()}))),v=Object.fromEntries(f.map((function(e){return[Object.keys(e)[0].toLowerCase(),Object.values(e)[0]]})));this.logWarning("replaceTermsArray: ".concat(C)),this.logWarning("this.wordReplacementsList: ".concat(this.wordReplacementsList));var b=e.trim();b=(b=b.replace(/<\s*br\s*\/?\s*>/gi," nl2br ")).replace(/ {2,}/g,(function(e){return e.slice(0,1)})),n.TitleCaserUtils.isEntirelyUppercase(b.replace(/[^a-zA-Z]/g,""))&&(this.logWarning("Input string is entirely uppercase, normalizing to lowercase first"),b=b.toLowerCase());var S=b.split(" "),w=S.map((function(e,i){switch(!0){case n.TitleCaserUtils.isWordAmpersand(e):case n.TitleCaserUtils.hasHtmlBreak(e):case n.TitleCaserUtils.isWordIgnored(e,g):return e;case C.includes(e.toLowerCase()):return v[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 o=e.replace(/[\W_]+$/,""),a=e.slice(o.length),s=o.split("-"),u=s.map((function(e){var t=e.toLowerCase();return C.includes(t)?v[t]:e})),c=u.every((function(e,t){return e===s[t]}))?n.TitleCaserUtils.correctTermHyphenated(e,l):u.join("-");return c.endsWith(a)?c:c+a;case n.TitleCaserUtils.hasSuffix(e,l):return n.TitleCaserUtils.correctSuffix(e,r.correctTitleCasingList);case n.TitleCaserUtils.hasUppercaseIntentional(e):return e;case n.TitleCaserUtils.isShortWord(e,l)&&0!==i:return i>0&&n.TitleCaserUtils.endsWithSymbol(S[i-1],[":","?","!","."])?e.charAt(0).toUpperCase()+e.slice(1):n.TitleCaserUtils.normalizeCasingForWordByStyle(e,l);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(C.includes(e)){var o=v[e];return t.logWarning("Word is in replaceTermsArray, replacement: ".concat(o)),o}var a=e.charAt(0).toUpperCase()+e.slice(1).toLowerCase();return t.logWarning("Applying title casing to word: ".concat(a)),a}));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()}}));b=(b=w.join(" ")).replace(/nl2br/gi,"<br>"),m&&(b=n.TitleCaserUtils.convertQuotesToCurly(b));for(var A=b.split(" "),T=A[0],L=A[1]||null,O=(A[A.length-1],0);O<A.length;O++){O>0&&A[O-1];var P=A[O],I=O<A.length-1?A[O+1]:null,F=P.match(/[.,!?;:]+$/),k="";F&&(k=F[0],P=P.replace(/[.,!?;:]+$/,"")),n.TitleCaserUtils.isRegionalAcronym(P)&&(P=n.TitleCaserUtils.normalizeRegionalAcronym(P)),n.TitleCaserUtils.isRegionalAcronymNoDot(P,I)&&(P=n.TitleCaserUtils.normalizeRegionalAcronym(P)),""!==k&&(P+=k)}for(var E=(b=A.join(" ")).split(" "),R=1;R<E.length-1;R++){var M=E[R];E[R-1],E[R+1],M===M.toUpperCase()||n.TitleCaserUtils.hasUppercaseIntentional(M)||n.TitleCaserUtils.isWordInArray(M,r.commonShortWords)&&(E[R]=M.length<=3?M.toLowerCase():M)}for(var U=(b=E.join(" ")).split(" "),B=0;B<U.length;B++){var N=U[B],D=U[B+1],j=U[B-1];null!==D&&n.TitleCaserUtils.isRegionalAcronymNoDot(N,D,j)&&(U[B]=N.toUpperCase())}var W=U[U.length-1],x=U[U.length-2],G=U[U.length-3];n.TitleCaserUtils.isRegionalAcronym(T)&&(console.log("firstWord is a regional acronym, proof: ",T),U[0]=T.toUpperCase()),n.TitleCaserUtils.isRegionalAcronymNoDot(T,L)&&(U[0]=T.toUpperCase()),n.TitleCaserUtils.isFinalWordRegionalAcronym(W,x,G)&&(U[U.length-1]=W.toUpperCase()),b=U.join(" ");for(var z=0,H=Object.entries(this.correctPhraseCasingList);z<H.length;z++){var V=o(H[z],2),K=V[0],Q=V[1],J=new RegExp(K.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"gi");b=b.replace(J,Q)}return b}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=o(Object.entries(e)[0],2),n=r[0],a=r[1],s=t.wordReplacementsList.findIndex((function(e){return e.hasOwnProperty(n)}));-1!==s?t.wordReplacementsList[s][n]=a:t.wordReplacementsList.push(i({},n,a))}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=o(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,o,a,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["@"])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),o=p(o),a=p(a),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,o.default,a.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:{shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","in","into","of","off","on","onto","out","over","to","up","via","with","from","under","upon","among"],neverCapitalizedList:[]},apa:{shortConjunctionsList:["and","but","by","for","in","nor","of","on","or","so","to","yet"],articlesList:["a","an","the"],shortPrepositionsList:["about","above","across","after","against","along","among","around","as","at","before","behind","below","beneath","beside","between","beyond","by","despite","down","during","except","for","from","in","inside","into","like","near","of","off","on","onto","out","outside","over","past","since","through","throughout","till","to","toward","under","underneath","until","up","upon","via","with","within","without"],neverCapitalizedList:[]},british:{shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","in","into","of","off","on","onto","out","over","to","up","via","with","from","under","upon"],neverCapitalizedList:[]},chicago:{shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","in","into","of","off","on","onto","out","over","to","up","via","with","from","under","upon"],neverCapitalizedList:["etc."]},nyt:{shortConjunctionsList:["and","but","or","for","nor","yet","so"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","in","into","of","off","on","onto","out","over","to","up","via","with","from","under","upon"],neverCapitalizedList:[]},wikipedia:{shortConjunctionsList:["and","as","but","for","nor","or","so","yet"],articlesList:["a","an","the"],shortPrepositionsList:["as","at","by","in","into","of","off","on","onto","out","over","to","up","via","with","from","under","upon"],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 o=t[n]={id:n,loaded:!1,exports:{}};return e[n](o,o.exports,r),o.loaded=!0,o.exports}r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);r(987)})();