Files
ReelShort/lib/l10n/app_en.arb
T

453 lines
15 KiB
Plaintext

{
"@@locale": "en",
"appName": "FruitShorts",
"demo": "DEMO",
"homeHeadline": "Watch now",
"homeSubtitle": "Free short drama preview.",
"mediaNotice": "User-provided local demo video · Free preview",
"featuredDemo": "FEATURED · TECHNICAL DEMO",
"demoTitle": "The Signal",
"demoSynopsis": "A short local video preview. More episodes can be added when media is available.",
"homeTab": "Home",
"openQuickMenu": "Open quick menu",
"quickAccess": "Quick access",
"currentSeries": "Current series",
"discoverTab": "Discover",
"searchDiscover": "Search dramas, actors, genres...",
"featured": "Featured",
"suspense": "Suspense",
"romance": "Romance",
"actionGenre": "Action",
"filter": "Filter",
"topCharts": "Top Charts",
"newReleases": "New Releases",
"trendingMicroDramas": "Trending Micro-Dramas",
"seeAll": "See All",
"artworkOnly": "Artwork",
"artworkOnlyNotice": "This is a visual catalog item. No video is available yet.",
"videoPending": "Video pending",
"watchNow": "Watch free",
"noSearchResults": "No matching dramas.",
"emptyHint": "New content will appear here.",
"demoCatalogNotice": "Three demo dramas share the same local video.",
"myTab": "My",
"localViewer": "Local Viewer",
"localDemoProfile": "Local demo profile",
"continueWatching": "Continue Watching",
"watchedPercent": "Watched {percent}%",
"@watchedPercent": {
"placeholders": {
"percent": {
"type": "int"
}
}
},
"resume": "Resume",
"history": "History",
"watchlist": "Watchlist",
"likedTab": "Liked",
"all": "All",
"inProgress": "In Progress",
"completed": "Completed",
"noSavedShows": "No shows here yet.",
"preferences": "Preferences",
"appLanguage": "App Language",
"followingTab": "Following",
"animatedTab": "Animated",
"recommendedTab": "Recommended",
"noCategoryDramas": "No dramas in this category yet.",
"allDramas": "All Dramas",
"trendingTab": "Trending",
"liveActionTab": "Live Action",
"search": "Search",
"free": "Free",
"mute": "Mute",
"unmute": "Unmute",
"like": "Like",
"save": "Save",
"comments": "Comments",
"share": "Share",
"noComments": "No comments yet.",
"writeComment": "Write a comment",
"postComment": "Post",
"loadMore": "Load more",
"commentsLoadFailed": "Comments could not be loaded.",
"commentPostFailed": "Could not post your comment.",
"delete": "Delete",
"deleteComment": "Delete comment",
"deleteCommentTitle": "Delete this comment?",
"deleteCommentMessage": "This removes your comment from the conversation.",
"commentDeleteFailed": "Could not delete this comment.",
"underReview": "Under review",
"reply": "Reply",
"replyingTo": "Replying to {name}",
"@replyingTo": {
"placeholders": {
"name": {}
}
},
"cancelReply": "Cancel reply",
"viewReplies": "View replies ({count})",
"@viewReplies": {
"placeholders": {
"count": {
"type": "int"
}
}
},
"hideReplies": "Hide replies",
"anonymousUser": "Viewer",
"more": "More",
"likeFailed": "Could not update like. Please retry.",
"reportComment": "Report comment",
"reportDrama": "Report drama",
"reportReason": "Reason",
"reportReasonSpam": "Spam",
"reportReasonAbuse": "Harassment",
"reportReasonPorn": "Sexual content",
"reportReasonAd": "Advertising",
"reportReasonOther": "Other",
"reportDescriptionHint": "Describe the issue (optional)",
"reportSubmit": "Submit report",
"reportSubmitted": "Report submitted. Thank you.",
"reportFailed": "Could not submit report.",
"shareFailed": "Could not open the share sheet.",
"nowPlaying": "Playing now",
"watchFullscreen": "Watch in landscape",
"exitFullscreen": "Exit fullscreen",
"pictureInPicture": "Picture in picture",
"pipUnavailable": "Picture in picture is unavailable on this device",
"originalTag": "Original",
"dramaTag": "Short drama",
"episodeLabel": "Episode {number}",
"@episodeLabel": {
"placeholders": {
"number": {
"type": "int"
}
}
},
"exploreSeries": "Explore series",
"episodeCount": "{count} EPISODES",
"@episodeCount": {
"placeholders": {
"count": {
"type": "int"
}
}
},
"technicalDemoCount": "FREE PREVIEW · {count} EPISODES",
"@technicalDemoCount": {
"placeholders": {
"count": {
"type": "int"
}
}
},
"episodes": "Episodes",
"watchEpisodeOne": "Watch episode 1",
"continueEpisode": "Continue episode {number}",
"@continueEpisode": {
"placeholders": {
"number": {
"type": "int"
}
}
},
"freeTestMedia": "Same demo clip · free",
"lockedStoreUnavailable": "Locked · store unavailable",
"freeTestClip": "Free test clip",
"locked": "Locked",
"freeSamplesNotice": "Two free samples · store setup pending",
"demoTestMedia": "FREE · SAME DEMO CLIP",
"episodeProgress": "EPISODE {number} / {total}",
"@episodeProgress": {
"placeholders": {
"number": {
"type": "int"
},
"total": {
"type": "int"
}
}
},
"testVideoNotice": "Self-generated technical test video",
"lockedTitle": "Episode {number} is locked",
"@lockedTitle": {
"placeholders": {
"number": {
"type": "int"
}
}
},
"lockedBody": "Unlocking will be available after store and verification setup. This demo does not process payments.",
"playbackError": "This clip could not be played.",
"catalogError": "The catalog could not be loaded.",
"categoriesError": "Categories could not be loaded.",
"detailError": "The episode list could not be loaded.",
"noMediaNotice": "This episode has no playable media yet.",
"noStories": "No stories available yet.",
"notices": "Notices",
"noNotices": "No notices yet.",
"noticesLoadFailed": "Notices could not be loaded.",
"noticeDetails": "Notice details",
"noticeAnnouncement": "Notice",
"close": "Close",
"carouselSemantics": "Banner {current} of {total}",
"@carouselSemantics": {
"placeholders": {
"current": {
"type": "int"
},
"total": {
"type": "int"
}
}
},
"retry": "Retry",
"backToSeries": "Back to series",
"nextEpisode": "Next episode",
"pause": "Pause",
"play": "Play",
"seekVideo": "Seek video",
"seekFailed": "Could not change playback position.",
"captions": "Captions",
"captionsOff": "Captions off",
"englishCaptions": "English captions",
"chineseCaptions": "Chinese captions",
"language": "Language",
"systemLanguage": "System",
"english": "English",
"simplifiedChinese": "简体中文",
"bahasaIndonesia": "Bahasa Indonesia",
"episodeOneTitle": "First Light",
"episodeTwoTitle": "A New Frequency",
"episodeThreeTitle": "Crossing Over",
"episodeFourTitle": "After the Echo",
"dramaSignalTitle": "The Signal",
"dramaSignalSynopsis": "A demo series for vertical playback. Every episode reuses one local clip.",
"dramaCityTitle": "City Lights & Velvet Nights",
"dramaCitySynopsis": "A demo romance series. The same local video is used to try switching and resume.",
"dramaVengeanceTitle": "Vengeance Rising",
"dramaVengeanceSynopsis": "A demo action series. The same local video is used to try switching and resume.",
"dramaEchoesTitle": "Echoes of Fate",
"genreSuspenseMystery": "Suspense · Mystery",
"genreUrbanRomance": "Urban Romance",
"genreActionThriller": "Action · Thriller",
"genreDramaMystery": "Drama · Mystery",
"continueWatchingHeading": "CONTINUE WATCHING",
"preferencesHeading": "PREFERENCES",
"brandMark": "FRUITSHORTS",
"shareFooter": "FruitShorts",
"shortsTab": "Shorts",
"myListTab": "My List",
"watchFull": "Watch Full",
"swipeForNext": "Swipe up for next",
"clearScreen": "Clear screen",
"exitClearScreen": "Exit clear screen",
"logIn": "Log in",
"logInHint": "Keep your coins and list",
"rewards": "Rewards",
"forYou": "For You",
"hot": "Hot",
"newest": "New",
"favorite": "Favorite",
"myAccount": "My account",
"coins": "Coins",
"topUpWallet": "Top Up Wallet",
"vipMembership": "VIP Membership",
"notActive": "Not Active",
"joinVip": "Join VIP",
"earnRewards": "Earn Rewards",
"freeBonus": "Get Free Bonus",
"watchHistory": "Watch History",
"settings": "Settings",
"serverAddress": "Server address",
"serverSettings": "Server settings",
"serverAddressHint": "http(s)://host:port",
"saveAddress": "Save address",
"restartToApply": "Restart the app to apply.",
"restoreDefault": "Restore default",
"invalidServerAddress": "Enter a valid http(s) server address.",
"signOut": "Sign Out",
"mockUserName": "Vicky sheng",
"mockUserId": "ID: M1CZWVYE",
"mockNotice": "Sample data only.",
"topBadge": "TOP 1",
"signIn": "Sign In",
"signUp": "Sign Up",
"authSignInTitle": "Welcome back",
"authSignUpTitle": "Create your account",
"authSubtitle": "Sign in with your email and password.",
"authSignUpSubtitle": "Create an account to keep your list, history, and progress.",
"authBrandTagline": "Short dramas made for Indonesia",
"authEmailLabel": "Email",
"authPasswordLabel": "Password",
"authPasswordHint": "At least 8 characters, letters and numbers",
"authEmailRequired": "Enter your email",
"authEmailInvalid": "That email doesn't look right",
"authPasswordRequired": "Enter your password",
"authPasswordLength": "Password must be 8-64 characters",
"authPasswordWeak": "Password needs both letters and numbers",
"authNetworkError": "Network error, please try again",
"authSwitchToSignUp": "New here? Create an account",
"authSwitchToSignIn": "Already have an account? Sign in",
"authGateTitle": "Sign in to continue",
"authGateMessage": "Watch history, favorites, comments and downloads need an account.",
"authGateAction": "Sign In",
"showPassword": "Show password",
"hidePassword": "Hide password",
"cancel": "Not now",
"noEpisodesYet": "No playable episodes yet.",
"networkError": "Network is unreachable. Please check your connection and retry.",
"progressError": "Your watch position could not be loaded.",
"favoritesError": "Your favorites could not be loaded.",
"favoriteToggleFailed": "Could not update favorites. Please retry.",
"myFavorites": "My favorites",
"noFavorites": "No favorites yet.",
"downloads": "Downloads",
"downloadsError": "Download settings could not be loaded.",
"noDownloads": "No download authorizations yet.",
"downloadedItems": "Download authorizations",
"downloadQuota": "{remaining} of {max} authorizations available",
"@downloadQuota": {
"placeholders": {
"remaining": {
"type": "int"
},
"max": {
"type": "int"
}
}
},
"downloadLicenseDays": "Authorization valid for {days} days",
"@downloadLicenseDays": {
"placeholders": {
"days": {
"type": "int"
}
}
},
"downloadWifiOnly": "Wi-Fi only",
"downloadQuality": "Maximum quality",
"downloadStatus": "Authorization: {status}",
"@downloadStatus": {
"placeholders": {
"status": {}
}
},
"downloadTaskStatus": "Task: {status}",
"@downloadTaskStatus": {
"placeholders": {
"status": {}
}
},
"downloadProgress": "{progress}%",
"@downloadProgress": {
"placeholders": {
"progress": {
"type": "int"
}
}
},
"downloadExpiresAt": "Expires {time}",
"@downloadExpiresAt": {
"placeholders": {
"time": {}
}
},
"clearDownloadsTitle": "Clear download authorizations?",
"clearDownloadsMessage": "This revokes every download authorization for this device.",
"downloadSettingsFailed": "Could not update download settings.",
"downloadDeleteFailed": "Could not remove this download authorization.",
"downloadClearFailed": "Could not clear download authorizations.",
"downloadGrantFailed": "Could not request this download.",
"downloadGranted": "Download authorization is ready.",
"noWatchRecords": "No watch history yet.",
"recordDeleteFailed": "Could not delete this record. Please retry.",
"recordClearFailed": "Could not clear watch history. Please retry.",
"clearAll": "Clear all",
"clearWatchHistoryTitle": "Clear watch history?",
"clearWatchHistoryMessage": "This removes the watch history from your account.",
"confirmClear": "Clear",
"detailLoadFailed": "Details failed to load",
"retryDetail": "Retry",
"episodeUnavailable": "Episode unavailable",
"updatedAtLabel": "Updated {time}",
"@updatedAtLabel": {
"placeholders": {
"time": {}
}
},
"remove": "Remove",
"unlockComingSoon": "Unlocking with coins is coming soon.",
"resumeProgress": "Resume at {position} / {total}",
"@resumeProgress": {
"placeholders": {
"position": {},
"total": {}
}
},
"accountCenter": "Account",
"accountProfile": "Profile",
"accountDevices": "Login devices",
"accountDataExport": "Data export",
"accountDeactivate": "Delete account",
"accountProfileLoadFailed": "Could not load your profile.",
"accountProfileSaveFailed": "Could not save your profile.",
"accountNickname": "Nickname",
"accountNicknameInvalid": "Enter 1 to 30 characters.",
"accountGender": "Gender",
"accountMale": "Male",
"accountFemale": "Female",
"accountUnknownGender": "Prefer not to say",
"accountSelectBirthday": "Set birthday",
"accountBirthdayHint": "Birthday can be set but not cleared in this version.",
"accountSaved": "Profile saved.",
"accountReadOnlyInfo": "Account information",
"accountUid": "UID",
"accountMaskedAccount": "Account",
"accountCountry": "Country",
"accountCurrency": "Currency",
"accountStatus": "Status",
"accountLanguage": "Language",
"accountTimezone": "Time zone",
"accountRegion": "Region",
"accountVipLevel": "VIP level",
"accountCreatedAt": "Registered",
"accountLastLogin": "Last login",
"accountDevicesEmpty": "No login devices found.",
"accountDevicesLoadFailed": "Could not load devices.",
"accountPlatform": "Platform",
"accountDeviceId": "Device ID",
"accountFirstSeen": "First seen",
"accountLastActive": "Last active",
"accountDeviceActive": "Active",
"accountDeviceInactive": "Inactive",
"accountExportLoadFailed": "Could not export account data.",
"accountCredentials": "Sign-in credentials",
"accountConsentRecords": "Consent records",
"accountDeviceCount": "Devices",
"accountCopyJson": "Copy full JSON",
"accountCopied": "Account data copied.",
"accountVerified": "Verified",
"accountUnverified": "Unverified",
"accountDeactivateWarning": "Requests enter a 15-day cooling-off period. All devices are signed out immediately.",
"accountDeactivateReason": "Reason (optional)",
"accountDeactivateReasonHint": "Tell us why you are leaving",
"accountRequestDeactivate": "Request account deletion",
"accountConfirmDeactivateTitle": "Request account deletion?",
"accountConfirmDeactivateMessage": "All devices will be signed out immediately. You can cancel during the 15-day cooling-off period after signing in again.",
"accountConfirmDeactivate": "Confirm",
"accountScheduledFor": "Deletion scheduled for {time}",
"@accountScheduledFor": {
"placeholders": {
"time": {}
}
},
"accountCancelDeactivation": "Cancel deletion request",
"accountCancelSucceeded": "Deletion request cancelled.",
"accountDeactivateFailed": "Could not request account deletion.",
"accountCancelFailed": "Could not cancel the deletion request."
}