From 17acf5ec80a0c0b0acc44a6a8373e154c68d4748 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 24 Jun 2026 08:59:31 -0700 Subject: Split translations into per-language files, lazy-loaded Only English is bundled in index.html now; the other 19 languages are emitted as dist/locales/.json and fetched on demand when a visitor actually uses one (via auto-detect, the picker, or ?lang=xx). This drops index.html from ~511KB to ~318KB; a non-English visitor fetches just their one ~8-10KB locale, which the service worker then caches for offline use. t() falls back to English until a locale resolves. - i18n.js keeps only en + a loadLocale() fetcher; locale data moved to src/locales/*.json. - build.js emits dist/locales/; dev.js serves /locales/.json. - Deploy hook publishes the locales/ subdir. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/locales/ta.json | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 src/locales/ta.json (limited to 'src/locales/ta.json') diff --git a/src/locales/ta.json b/src/locales/ta.json new file mode 100644 index 0000000..b30ebb5 --- /dev/null +++ b/src/locales/ta.json @@ -0,0 +1,145 @@ +{ + "passphrase": "கடவுச்சொற்றொடர்", + "howItWorks": "இது எப்படி வேலை செய்கிறது", + "installApp": "செயலியை நிறுவு", + "hiwBasicsTitle": "அடிப்படைகள்", + "hiwBasics1": "நீங்கள் ஒரு வாலெட்டை உருவாக்கும்போது, பக்கம் பன்னிரண்டு சீரற்ற சொற்களை உருவாக்குகிறது. அந்தச் சொற்களே உங்கள் வாலெட்டின் சாவி. அவற்றை வைத்திருக்கும் எவரும் நாணயங்களைச் செலவழிக்க முடியும், எனவே அவற்றை காகிதத்தில் எழுதி உங்களால் மட்டுமே அணுக முடிந்த இடத்தில் வைத்துக்கொள்ளுங்கள்.", + "hiwBasics2": "பன்னிரண்டு சொற்களை இழந்து காப்புப்பிரதி இல்லையென்றால், நாணயங்கள் நிரந்தரமாக போய்விடும். மீட்டமைப்பு இணைப்பு எதுவும் இல்லை, அழைக்க யாரும் இல்லை, எனவே பணம் போடுவதற்கு முன் அவற்றை காப்புப்பிரதி எடுங்கள்.", + "hiwBasics3": "சேவையகம் இல்லை, கணக்கு இல்லை. முழு செயலியும் உங்கள் உலாவியில் இயங்கும் ஒரே ஒரு பக்கம், எனவே உங்கள் நாணயங்களை யாரும் வைத்திருப்பதில்லை, சேவையகத்தில் உள்ள எதுவும் உங்கள் சாவிகளைப் பார்ப்பதில்லை. உங்கள் இருப்பையும் வரலாற்றையும் காட்ட இது ஒரு பொது பிளாக் எக்ஸ்புளோரரிலிருந்து படிக்கிறது (இயல்பாக mempool.space, அல்லது அமைப்புகளில் அமைத்தால் உங்கள் சொந்த நோடு).", + "hiwBasics4": "இந்தப் பக்கத்தைச் சேமித்து, இணையம் இல்லாமலேயே உங்கள் கணினியிலிருந்து நேரடியாகத் திறக்கலாம். இது ஆஃப்லைனிலும் தொடர்ந்து வேலை செய்கிறது.", + "hiwBasics5": "இது வழக்கமான பிட்காயின் தரநிலைகளைப் பின்பற்றுகிறது (12-சொல் BIP39 சொற்றொடர் மற்றும் BIP84 நேட்டிவ் SegWit சாவிகள்), எனவே இந்த தளம் எப்போதாவது மறைந்தாலும் அதே சொற்றொடரை Sparrow, Electrum, அல்லது வேறு எந்த தரநிலை வாலெட்டிலும் மீட்டெடுக்கலாம், உங்கள் நாணயங்கள் அங்கேயே இருக்கும்.", + "hiwTribute": "Hal Wallet என்ற பெயர், புகழ்பெற்ற சைஃபர்பங்க் மற்றும் பிட்காயின் முன்னோடி Hal Finney (1956–2014) அவர்களுக்கான அஞ்சலி.", + "signExport": "கையொப்பமிட்டு (வேறு இடத்தில் ஒளிபரப்பு)", + "scanQr": "QR ஐ ஸ்கேன் செய்", + "scanHint": "கேமராவை ஒரு QR குறியீட்டை நோக்கிக் காட்டுங்கள்", + "scanNoCamera": "கேமராவை அணுக முடியவில்லை.", + "scanNoDecoder": "QR ஸ்கேனிங்கிற்கு முதல் முறை பயன்படுத்தும்போது இணைப்பு தேவை.", + "scanUnrecognized": "அந்த QR இலிருந்து பிட்காயின் முகவரியைப் படிக்க முடியவில்லை.", + "broadcastScanned": "பரிவர்த்தனையை ஒளிபரப்பவா?", + "broadcastNow": "ஒளிபரப்பு", + "scanOffline": "நீங்கள் ஆஃப்லைனில் உள்ளீர்கள் — இந்தப் பரிவர்த்தனையை ஒளிபரப்ப மீண்டும் இணையுங்கள்.", + "loadingHistory": "பரிவர்த்தனைகள் ஏற்றப்படுகின்றன…", + "explorer": "பிளாக் எக்ஸ்புளோரர்", + "explorerDesc": "இருப்புகளுக்கும் வரலாற்றுக்கும் இந்த வாலெட் வினவும் சேவையகம். அதிகபட்ச தனியுரிமைக்கு உங்கள் சொந்த நோடை நோக்கி அமைக்கவும்.", + "explorerUrl": "சேவையக URL", + "explorerUrlHint": "Esplora / electrs REST அடிப்படை, எ.கா. https://mempool.space/api", + "deviceSync": "சாதன ஒத்திசைவு", + "deviceSyncDesc": "Nostr ரிலேயில் மறையாக்கப்பட்ட நகலைச் சேமிப்பதன் மூலம் உங்கள் சாதனங்களில் இந்த வாலெட்டை ஒத்திசைவாக வைத்திருங்கள் — உங்கள் சீட் உள்ள சாதனம் மட்டுமே அதைப் படிக்க முடியும். எல்லாவற்றையும் இந்தச் சாதனத்தில் மட்டும் வைக்க அதை அணைக்கவும்.", + "syncAcross": "சாதனங்களில் ஒத்திசை", + "syncOn": "இயக்கு", + "syncOff": "அணை", + "relaysLabel": "ரிலேக்கள்", + "relaysHint": "ஒரு வரிக்கு ஒரு wss:// URL.", + "home": "முகப்பு", + "logout": "வெளியேறு", + "createNew": "புதிது உருவாக்கு", + "importExisting": "உள்ளதை இறக்கு", + "genIntro": "புதிய 12-சொல் சீட் சொற்றொடரை உருவாக்கவும். எழுதி வைக்கவும். இந்த வாலட்டை மீட்க இதுவே ஒரே வழி.", + "generateSeed": "சீட் சொற்றொடரை உருவாக்கு", + "writeDownWarn": "⚠ இந்த 12 சொற்களை வரிசையாக காகிதத்தில் எழுதவும். இவை உள்ளவர் உங்கள் நாணயங்களைச் செலவழிக்கலாம்.", + "copyPhrase": "சொற்றொடரை நகலெடு", + "regenerate": "மீண்டும் உருவாக்கு", + "verifyBackup": "காப்பை சரிபார்", + "skipVerification": "சரிபார்ப்பைத் தவிர்", + "confirmBackupIntro": "கேட்கப்பட்ட சொற்களை உள்ளிட்டு உங்கள் காப்பை உறுதிப்படுத்துங்கள்.", + "wordN": "சொல் #{n}", + "reenterPassphrase": "கடவுச்சொற்றொடரை மீண்டும் உள்ளிடு", + "back": "← பின்", + "openWallet": "வாலட்டைத் திற", + "wordsMismatch": "இந்த சொற்கள் உங்கள் சொற்றொடருடன் பொருந்தவில்லை. உங்கள் காப்பை சரிபார்க்கவும்.", + "passphraseMismatch": "இந்த கடவுச்சொற்றொடர் நீங்கள் உள்ளிட்டதுடன் பொருந்தவில்லை.", + "seedPhrase": "சீட் சொற்றொடர்", + "seedPlaceholder": "உங்கள் சொற்களை இடைவெளியால் பிரித்து உள்ளிடவும்", + "optionalPassphrase": "விருப்பக் கடவுச்சொற்றொடர்", + "leaveBlank": "பயன்படுத்தாவிட்டால் காலியாக விடவும்", + "show": "காட்டு", + "hide": "மறை", + "invalidSeed": "தவறான சீட் சொற்றொடர் — எழுத்துப்பிழை, வரிசையைச் சரிபார்க்கவும்.", + "keysNote": "விசைகள் உங்கள் உலாவியை விட்டு வெளியேறாது. முழுவதும் ஆஃப்லைனில் இயங்கும். இந்தப் பக்கத்தைச் சேமித்து உள்ளூரில் திறக்கவும்.", + "balance": "இருப்பு", + "pending": "நிலுவையில்", + "tabReceive": "பெறு", + "tabSend": "அனுப்பு", + "tabHistory": "வரலாறு", + "tabSettings": "அமைப்புகள்", + "copyAddress": "முகவரியை நகலெடு", + "paymentReceived": "பணம் பெறப்பட்டது!", + "tapToProceed": "தொடர எங்கேனும் தட்டவும்", + "recipient": "பெறுநர்", + "recipients": "பெறுநர்கள்", + "max": "அதிகபட்சம்", + "feeRate": "கட்டணம்", + "feeEconomy": "சிக்கனம்", + "feeNormal": "சாதாரண", + "feePriority": "முன்னுரிமை", + "feeCustom": "தனிப்பயன்", + "selectedRate": "தேர்ந்த கட்டணம்: {n} sat/vB", + "coinSelection": "நாணயத் தேர்வு", + "automatic": "தானியங்கி", + "manual": "கைமுறை", + "noCoins": "நாணயங்கள் எதுவும் இல்லை.", + "nSelected": "{n} தேர்ந்தது", + "addRecipient": "+ பெறுநரைச் சேர்", + "reviewTx": "பரிவர்த்தனையை மதிப்பாய்வு", + "remove": "அகற்று", + "enterRecipientAddr": "பெறுநர் முகவரியை உள்ளிடவும்.", + "enterAddrForN": "பெறுநர் {n}-இன் முகவரியை உள்ளிடவும்.", + "enterValidAmtForN": "பெறுநர் {n}-க்கு சரியான தொகையை உள்ளிடவும்.", + "selectCoin": "செலவழிக்க குறைந்தது ஒரு நாணயத்தைத் தேர்ந்தெடுக்கவும்.", + "networkFee": "நெட்வொர்க் கட்டணம்", + "offlineSignNote": "ஆஃப்லைன்: இப்போது கையொப்பமிடவும், பிறகு ஆன்லைன் சாதனத்திலிருந்து பரிவர்த்தனையை ஒளிபரப்பவும்.", + "signBroadcast": "கையொப்பம் & ஒளிபரப்பு", + "signTx": "பரிவர்த்தனையில் கையொப்பம்", + "broadcastFailed": "ஒளிபரப்பு தோல்வி: {msg}", + "signingFailed": "கையொப்பம் தோல்வி: {msg}", + "done": "முடிந்தது", + "txSignedNote": "✓ பரிவர்த்தனை கையொப்பமிடப்பட்டது. கீழுள்ள குறியீட்டை ஆன்லைன் சாதனத்திலிருந்து ஒளிபரப்பவும் (எ.கா. mempool.space → Broadcast).", + "transactionId": "பரிவர்த்தனை ID", + "signedTxRaw": "கையொப்பமிட்ட பரிவர்த்தனை (குறியீடு)", + "copyHex": "குறியீடு நகலெடு", + "downloadLabel": "பதிவிறக்கு", + "showQrAirgap": "QR காட்டு (ஆஃப்லைன் பரிமாற்றத்திற்கு)", + "txBroadcast": "✓ பரிவர்த்தனை ஒளிபரப்பப்பட்டது!", + "copyTxid": "பரிவர்த்தனை ID நகலெடு", + "viewOnMempool": "mempool.space இல் பார் ↗", + "noTxYet": "இன்னும் பரிவர்த்தனைகள் இல்லை.", + "received": "பெறப்பட்டது", + "sent": "அனுப்பப்பட்டது", + "pendingTag": "⏳ நிலுவையில்", + "awaitingConfirmation": "உறுதிப்படுத்தலுக்காகக் காத்திருக்கிறது", + "feeShort": "கட்டணம் {x}", + "historyOffline": "ஆஃப்லைனில் வரலாறு கிடைக்காது.", + "status": "நிலை", + "confirmed": "உறுதியானது", + "confirmedTag": "உறுதியானது", + "pendingInMempool": "நிலுவையில் (mempool இல்)", + "block": "பிளாக்", + "date": "தேதி", + "copyId": "ID நகலெடு", + "backToHistory": "← வரலாற்றுக்கு", + "recoveryPhrase": "மீட்பு சொற்றொடர்", + "recoveryWarn": "⚠ இந்த சொற்களைப் பார்க்கும் எவரும் உங்கள் பணத்தைத் திருடலாம். காட்டும் முன் யாரும் பார்க்கவில்லை என உறுதி செய்யவும்.", + "bip39Passphrase": "கடவுச்சொற்றொடர்", + "copyPassphrase": "கடவுச்சொற்றொடரை நகலெடு", + "revealRecovery": "மீட்பு சொற்றொடரைக் காட்டு", + "offlineTransfer": "ஆஃப்லைன் பரிமாற்றம்", + "offlineTransferDesc": "ஆன்லைன் சாதனத்தில் நாணயங்களை ஏற்றுமதி செய்து, ஆஃப்லைன் சாதனத்தில் (இந்த வாலட் மற்றும் சீடுடன்) கோப்பை இறக்கி இணையம் இல்லாமல் கையொப்பமிடவும்.", + "exportSnapshot": "⤓ ஸ்னாப்ஷாட் ஏற்று", + "importSnapshot": "ஸ்னாப்ஷாட் இறக்கு…", + "rescan": "மீண்டும் ஸ்கேன்", + "rescanDesc": "உங்கள் தற்போதைய முகவரி தானாகப் புதுப்பிக்கப்படும். பணம் பழைய (மறுபயன்பாட்டு) முகவரிக்கு வந்து தெரியவில்லை எனில் மட்டுமே மீண்டும் ஸ்கேன் செய்யவும்.", + "rescanWallet": "வாலட்டை மீண்டும் ஸ்கேன்", + "scanning": "ஸ்கேன் செய்கிறது…", + "language": "மொழி", + "offlineBanner": "நெட்வொர்க்கை அடைய முடியவில்லை — ஆஃப்லைனில் இயங்குகிறது. நாணயங்களை ஏற்ற அமைப்புகளில் ஸ்னாப்ஷாட்டை இறக்கவும்.", + "retry": "மீண்டும் முயல்", + "copied": "நகலெடுக்கப்பட்டது", + "snapshotExported": "ஸ்னாப்ஷாட் ஏற்றப்பட்டது", + "importedNCoins": "{n} நாணயங்கள் இறக்கப்பட்டன", + "unmatchedSuffix": " · {n} முகவரிகள் இந்த வாலட்டில் இல்லை", + "importFailed": "இறக்குமதி தோல்வி: {msg}", + "copy": "நகலெடு", + "switchUnit": "BTC / sats மாற்று", + "footerMadeBy": "உருவாக்கியவர்", + "footerSourceOn": "மூலம்" +} \ No newline at end of file -- cgit v1.2.3