, then Save t-to Fiwes <-.",
+ "shortTitle": "Downwoad / iOS",
+ "title": "Downwoadipng on iOS"
+ },
+ "onPc": {
+ "1": "On PC, UwU cwick ^w^ the x3 downwoad button ;;w;; then, on the x3 nyew page, wight cwick ^w^ the v-v-video and sewect Save v-v-video as *huggles tightly*",
+ "shortTitle": "Downwoad / PC",
+ "title": "Downwoading on PC"
+ },
+ "title": "Downwoad OwO"
+ },
+ "episodes": {
+ "button": "Episodes",
+ "emptyState": "Thewe awe nyo episodes in this season, ^-^ check back watew (sowwy)?!?1",
+ "episodeBadge": "E{{episode}}",
+ "loadingError": "Ewwow w-w-woading season",
+ "loadingList": "Loading...",
+ "loadingTitle": "Loading...",
+ "unairedEpisodes": "OO-Onye ow (・`ω´・) mowe episodes in this season have been disabwed."
+ },
+ "playback": {
+ "speedLabel": "Pwayback speed",
+ "title": "Pwayback settings"
+ },
+ "quality": {
+ "automaticLabel": "Automatic quawity",
+ "hint": "You c-can twy <0>switching souwce0> t-to get diffewent quawity options.",
+ "iosNoQuality": "Due t-to Appwe-definyed (-(common IOS L) wimitations, quawity sewection is nyot avaiwabwe on iOS fow this souwce. You c-can twy <0>switching t-to anyothewsouwce0> t-to get diffewent quawity options.",
+ "title": "Quality"
+ },
+ "settings": {
+ "downloadItem": "Downwoad",
+ "enableSubtitles": "Enyabwe Subtitwes ;;w;;",
+ "experienceSection": "Viewing expewience",
+ "playbackItem": "Pwayback settings",
+ "audioItem": "Audio",
+ "qualityItem": "Quawity",
+ "sourceItem": "video souwces",
+ "subtitleItem": "Subtitwe settings",
+ "videoSection": "Video settings"
+ },
+ "sources": {
+ "failed": {
+ "text": "Thewe was an ewwow whiwe t-twying t-to find any v-videos... Twy a diffewent souwce!?",
+ "title": "Faiwed t-to scwape"
+ },
+ "noEmbeds": {
+ "text": "We wewe unyabwe ;;w;; t-to find any OwO embeds, pwease twy a diffewent souwce.",
+ "title": "Nyo embeds found"
+ },
+ "noStream": {
+ "text": "This souwce has nyo stweams fow this movie ow (・`ω´・) show. /ᐠ - ˕ ---マ Ⳋ",
+ "title": "No stweam :("
+ },
+ "title": "Souwces",
+ "unknownOption": "Unknyown"
+ },
+ "subtitles": {
+ "customChoice": "Dwop ow upwoad fiwe",
+ "customizeLabel": "Customize",
+ "offChoice": "Off",
+ "settings": {
+ "backlink": "Custom subtitwes",
+ "delay": "Subtitwe deway",
+ "fixCapitals": "Fix capitawization"
+ },
+ "title": "Subtitwes",
+ "unknownLanguage": "Unknyown",
+ "dropSubtitleFile": "Dwop subtitwe fiwe h-h-hewe"
+ }
+ },
+ "metadata": {
+ "api": {
+ "text": "Couwd nyot woad API metadata, pwease check youw intewnyet connyection.",
+ "title": "Faiwed t-to woad API metadata"
+ },
+ "dmca": {
+ "badge": "Wemuvd",
+ "text": "This media is nyo wongew avaiwabwe due t-to a takedown nyotice ow (・`ω´・) copywight UwU cwaim. *huggles tightly*",
+ "title": "Media has been wemuvd"
+ },
+ "extensionPermission": {
+ "badge": "Pewmission M-Missing",
+ "button": "Use extension",
+ "text": "You have the bwowsew extension, but we *notices buldge* nyeed youw pewmission t-to get stawted u-using the e-extension. (¬_¬)",
+ "title": "Configuwe the extension"
+ },
+ "failed": {
+ "badge": "Faiwed",
+ "homeButton": "Go home",
+ "text": "Couwd nyot woad the media's metadata fwom TMDB. Pwease check whethew TMDB is d-d-down ow (・`ω´・) bwocked on youw intewnyet connyection.",
+ "title": "Faiwed t-to woad metadata"
+ },
+ "notFound": {
+ "badge": "Nyot found",
+ "homeButton": "Back to home",
+ "text": "We couwdn't find the media you wequested. Eithew it's been wemuvd ow (・`ω´・) you tampewed with the UWW (-(nyaughty).",
+ "title": "Couwdn't find that media."
+ }
+ },
+ "nextEpisode": {
+ "replay": "Wepway",
+ "next": "Nyext episode",
+ "nextSeason": "Nyext season"
+ },
+ "playbackError": {
+ "badge": "Pwayback ewwow",
+ "errors": {
+ "errorAborted": "The fetching of the media was a-abowted by the usew's wequest.",
+ "errorDecode": "Despite having pweviouswy been detewminyed t-to be usabwe, an ewwow occuwwed whiwe t-twying t-to decode the x3 media wesouwce, wesuwting in an ewwow.",
+ "errorGenericMedia": "Unknyown media ewwow occuwwed.",
+ "errorNetwork": "Some kind of nyetwowk ewwow occuwwed which pwevented the media fwom b-being successfuwwy fetched, despite having pweviouswy been avaiwabwe.",
+ "errorNotSupported": "The media ow media p-pwovidew object is nyot suppowted. ^-^"
+ },
+ "homeButton": "Go home",
+ "text": "Thewe was an ewwow t-twying t-to pway the media 😖. Pwease twy again.",
+ "title": "Faiwed t-to pway video?!?1"
+ },
+ "scraping": {
+ "items": {
+ "failure": "Ewwow occuwwed",
+ "notFound": "Doesn't have the v-v-video (╥﹏╥)",
+ "pending": "Checking fow videos..."
+ },
+ "notFound": {
+ "badge": "Nyot found",
+ "detailsButton": "Show detaiws",
+ "homeButton": "Go home",
+ "discoverButton": "Discuvw mowe",
+ "text": "We have seawched thwough ouw p-pwovidews and cannyot ^w^ find the x3 media you awe wooking fow?!?! We do nyot host the media and have nyo contwow uvw what is avaiwabwe. Pwease cwick ^w^ 'Show d-detaiws' bewow fow mowe detaiws.",
+ "title": "We couwdn't find that"
+ },
+ "extensionFailure": {
+ "badge": "Extension disabwed",
+ "homeButton": "Go home",
+ "enableExtension": "Enyabwe extension",
+ "title": "Pwease enyabwe the extension",
+ "text": "You've instawwed the m-movie-web e-extension. To stawt u-using it, you nyeed t-to enyabwe the extension fow this site."
+ }
+ },
+ "time": {
+ "regular": "{{timeWatched}} / {{duration}}",
+ "remaining": "{{timeLeft}} left • Finish at {{timeFinished, datetime}}",
+ "shortRegular": "{{timeWatched}}",
+ "shortRemaining": "-{{timeLeft}}"
+ },
+ "turnstile": {
+ "description": "Pwease pwuv youw humanyity by compweting the Captcha on the wight. This is t-to k-k-keep uwu-flix safe!?",
+ "error": "Faiwed t-to vewify youw humanyity?!! Pwease twy again.",
+ "title": "Awe You a Wobot 🤖?",
+ "verifyingHumanity": "Vewifying youw humanyity... (^▽^)👍"
+ }
+ },
+ "support": {
+ "title": "Suppowt",
+ "text": "uwu-flix is designyed t-to be as usew-fwiendwy as possibwe. Howevew, peopwe stiww have questions and issues. This page is h-h-hewe t-to hewp wesowve these showtcomings",
+ "q1": {
+ "body": "weww, :3 you c-can join the officiaw <0>movie-web discowd0> and ask questions thewe ow (・`ω´・) you c-can emaiw the onye pwovided at the bottom of this page.",
+ "title": "Where can I get help?"
+ },
+ "q2": {
+ "body": "We have a <0>GitHub0> whewe you c-can cweate a detaiwed issue in ouw wepositowy. Additionyawwy, if you wish, you c-can cweate a puww wequest t-to fix the issue youwsewf.",
+ "title": "H-How c-can I wepowt a bug ow issue!!11 (・`ω´・)"
+ }
+ },
+ "screens": {
+ "dmca": {
+ "text": "Wewcome t-to uwu-flix's DMCA contact page *runs away*. If you b-bewieve youw copywighted wowk (・`ω´・) has been impwopewwy used on ouw pwatfowm (😢), pwease send a detaiwed DMCA nyotice to: dmca@example.com bewow. Pwease incwude a descwiption of the copywighted matewiaw, youw contact detaiws, and a statement of good f-faith bewief. We'we committed t-to w-wesowving these mattews pwomptwy *boops your nose* and appweciate youw coopewation.",
+ "title": "DMCA (っ◞‸◟ c)"
+ },
+ "loadingApp": "W-Woading appwication",
+ "loadingUser": "W-Woading youw pwofiwe",
+ "loadingUserError": {
+ "logout": "Wogout",
+ "reset": "Weset custom sewvew",
+ "text": "Faiwed t-to woad youw pwofiwe",
+ "reload": "Wewoad",
+ "textWithReset": "Faiwed t-to woad youw pwofiwe fwom youw custom sewvew, w-want t-to weset back t-to the defauwt sewvew?!!"
+ },
+ "migration": {
+ "failed": "Faiwed t-to migwate youw data. 😿",
+ "inProgress": "Pwease howd, we awe migwating youw data. This shouwdn't take wong..."
+ }
+ },
+ "settings": {
+ "account": {
+ "accountDetails": {
+ "deviceNameLabel": "Device nyame",
+ "deviceNamePlaceholder": "Pewsonyaw phonye",
+ "editProfile": "Edit",
+ "logoutButton": "Wog out"
+ },
+ "admin": {
+ "title": "Admin panyew",
+ "text": "Utiwize toows made fow testing uwu-flix's condition.",
+ "button": "Check i-it out"
+ },
+ "actions": {
+ "delete": {
+ "button": "Dewete account",
+ "confirmButton": "Dewete account",
+ "confirmDescription": "Awe you suwe you w-want t-to dewete youw account!!11 Aww >w< youw data wiww be wost?!! ૮₍˶Ó﹏Ò ⑅-⑅₎ა",
+ "confirmTitle": "Awe you suwe?!?!",
+ "text": "This action is iwwevewsibwe. aww >w< data wiww be deweted and nyothing *runs away* c-can be wecuvwed.",
+ "title": "Dewete account"
+ },
+ "title": "Actions :3"
+ },
+ "devices": {
+ "deviceNameLabel": "Device nyame",
+ "failed": "Faiwed t-to woad sessions",
+ "removeDevice": "Wemuv",
+ "title": "D-Devices"
+ },
+ "profile": {
+ "finish": "Finyish editing",
+ "firstColor": "P-Pwofiwe c-cowow onye",
+ "secondColor": "P-Pwofiwe c-cowow two",
+ "title": "Edit pwofiwe pictuwe",
+ "userIcon": "Usew icon"
+ },
+ "register": {
+ "cta": "Get stawted",
+ "text": "Shawe youw watch pwogwess between devices and k-k-keep them synced. ( ̧⸝⸝⍢⸝⸝)ෆ",
+ "title": "Sync t-to the cwoud"
+ },
+ "title": "Account"
+ },
+ "appearance": {
+ "activeTheme": "Active",
+ "themes": {
+ "blue": "Blue",
+ "default": "Default",
+ "gray": "Gray",
+ "red": "Red",
+ "teal": "Teal"
+ },
+ "title": "Appeawance"
+ },
+ "connections": {
+ "server": {
+ "description": "If you w-wouwd wike t-to connyect t-to a custom backend t-to stowe youw d-d-data, enyabwe this and pwovide the x3 UWW. <0>Instwuctions.0>",
+ "label": "Custom sewvew",
+ "urlLabel": "Custom sewvew URL"
+ },
+ "setup": {
+ "doSetup": "Do setup",
+ "errorStatus": {
+ "description": "It seems that onye ow (・`ω´・) mowe items in this setup nyeed youw attention.",
+ "title": "Something nyeeds youw attention 😱"
+ },
+ "itemError": "Thewe is something wwong with this setting. Go thwough setup again t-to fix it. >w< (ᴗ_ ᴗ。)",
+ "items": {
+ "default": "Defauwt setup",
+ "extension": "Extension",
+ "proxy": "Custom pwoxy"
+ },
+ "redoSetup": "Wedo setup",
+ "successStatus": {
+ "description": "Aww >w< things awe in pwace fow you t-to stawt watching youw favowite media. (๑>◡<๑)",
+ "title": "Evewything is set up?!?1"
+ },
+ "unsetStatus": {
+ "description": "Pwease cwick ^w^ the button ;;w;; t-to the x3 wight t-to stawt the setup pwocess.",
+ "title": "You haven't gonye thwough setup"
+ }
+ },
+ "title": "Connyections",
+ "workers": {
+ "addButton": "Add nyew w-w-wowkew",
+ "description": "To make the x3 appwication function, ;;w;; aww twaffic is wouted thwough pwoxies. Enyabwe this if you w-want t-to b-bwing youw own wowkews. <0>Instwuctions.0>",
+ "emptyState": "Nyo wowkews yet >w<, add onye bewow",
+ "label": "Use custom pwoxy wowkews",
+ "urlLabel": "Wowkew URLs",
+ "urlPlaceholder": "https://"
+ }
+ },
+ "preferences": {
+ "language": "Appwication wanguage",
+ "languageDescription": "Wanguage appwied t-to the entiwe a-appwication, onwy Engwish has siwwy stuff 🙁.",
+ "thumbnail": "Genyewate thumbnyaiws",
+ "thumbnailDescription": "Most of the x3 time, videos ^w^ don't have thumbnyaiws. You c-can enyabwe this setting t-to genyewate them on the fwy but they c-can make youw v-v-video swowew.",
+ "thumbnailLabel": "Genyewate thumbnyaiws",
+ "autoplay": "Autopway",
+ "autoplayDescription": "Automaticawwy pway *notices buldge* the nyext episode in a sewies a-a-aftew weaching :3 the end. Can be enyabwed by usews with the x3 bwowsew extension, a custom pwoxy, ow (・`ω´・) with the x3 defauwt setup if awwowed by the host.",
+ "autoplayLabel": "Autopway",
+ "title": "Pwefewences"
+ },
+ "reset": "Weset",
+ "save": "Save",
+ "sidebar": {
+ "info": {
+ "appVersion": "App vewsion",
+ "backendUrl": "Backend URL",
+ "backendVersion": "Backend version",
+ "hostname": "Hostnyame",
+ "insecure": "Insecuwe",
+ "notLoggedIn": "You awe nyot wogged in",
+ "secure": "Secuwe",
+ "title": "App stats",
+ "unknownVersion": "Unknyown",
+ "userId": "Usew ID"
+ }
+ },
+ "subtitles": {
+ "backgroundLabel": "Backgwound opacity",
+ "backgroundBlurLabel": "Background bwuw",
+ "colorLabel": "Cowow",
+ "previewQuote": "A wizard is never late, Frodo Baggins. Nor is he early. He arrives precisely when he means to.",
+ "textSizeLabel": "Text size",
+ "title": "Subtitwes"
+ },
+ "unsaved": "You have unsaved changes... ฅ^•ﻌ•^ฅ"
+ }
+}
diff --git a/src/components/FlagIcon.tsx b/src/components/FlagIcon.tsx
index 19ad7967..ec9ea5a9 100644
--- a/src/components/FlagIcon.tsx
+++ b/src/components/FlagIcon.tsx
@@ -33,6 +33,13 @@ export function FlagIcon(props: FlagIconProps) {
);
+ if (props.langCode === "uwu")
+ return (
+
+
+
+ );
+
if (props.langCode === "minion")
return (
diff --git a/src/utils/language.ts b/src/utils/language.ts
index 054d1600..9889d1c5 100644
--- a/src/utils/language.ts
+++ b/src/utils/language.ts
@@ -68,6 +68,11 @@ const extraLanguages: Record = {
name: "Cat",
nativeName: "Kitty Speak",
},
+ uwu: {
+ code: "uwu",
+ name: "Cutsie OwO",
+ nativeName: "UwU",
+ },
minion: {
code: "minion",
name: "Minion",