···11+export * from "./types";
22+export * from "./atproto-client";
33+export * from "./storage";
44+export {
55+ createInboundMigrationFlow,
66+ createOutboundMigrationFlow,
77+ type InboundMigrationFlow,
88+ type OutboundMigrationFlow,
99+} from "./flow.svelte";
···7171 "infoNextDesc": "After creating your account, you'll verify your contact method and then you're ready to use any ATProto app with your new identity.",
7272 "migrateTitle": "Already have a Bluesky account?",
7373 "migrateDescription": "You can migrate your existing account to this PDS instead of creating a new one. Your followers, posts, and identity will come with you.",
7474- "migrateLink": "Migrate with PDS Moover",
7474+ "migrateLink": "Migrate your account",
7575 "handle": "Handle",
7676 "handlePlaceholder": "yourname",
7777 "handleHint": "Your full handle will be: @{handle}",
···991991 "codeLabel": "Verification Code",
992992 "codeHelp": "Copy the entire code from your message, including dashes.",
993993 "verifyButton": "Verify"
994994+ },
995995+ "migration": {
996996+ "title": "Account Migration",
997997+ "subtitle": "Move your AT Protocol identity between servers",
998998+ "navTitle": "Migration",
999999+ "navDesc": "Move your account to or from another PDS",
10001000+ "migrateHere": "Migrate Here",
10011001+ "migrateHereDesc": "Move your existing AT Protocol account to this PDS from another server.",
10021002+ "migrateAway": "Migrate Away",
10031003+ "migrateAwayDesc": "Move your account from this PDS to another server.",
10041004+ "loginRequired": "Login required",
10051005+ "bringDid": "Bring your DID and identity",
10061006+ "transferData": "Transfer all your data",
10071007+ "keepFollowers": "Keep your followers",
10081008+ "exportRepo": "Export your repository",
10091009+ "transferToPds": "Transfer to new PDS",
10101010+ "updateIdentity": "Update your identity",
10111011+ "whatIsMigration": "What is account migration?",
10121012+ "whatIsMigrationDesc": "Account migration allows you to move your AT Protocol identity between Personal Data Servers (PDSes). Your DID (decentralized identifier) stays the same, so your followers and social connections are preserved.",
10131013+ "beforeMigrate": "Before you migrate",
10141014+ "beforeMigrate1": "You will need your current account credentials",
10151015+ "beforeMigrate2": "Migration requires email verification for security",
10161016+ "beforeMigrate3": "Large accounts with many images may take several minutes",
10171017+ "beforeMigrate4": "Your old PDS will be notified to deactivate your account",
10181018+ "importantWarning": "Account migration is a significant action. Make sure you trust the destination PDS and understand that your data will be moved. If something goes wrong, recovery may require manual intervention.",
10191019+ "learnMore": "Learn more about migration risks",
10201020+ "resume": {
10211021+ "title": "Resume Migration?",
10221022+ "incomplete": "You have an incomplete migration in progress:",
10231023+ "direction": "Direction",
10241024+ "migratingHere": "Migrating here",
10251025+ "migratingAway": "Migrating away",
10261026+ "from": "From",
10271027+ "to": "To",
10281028+ "progress": "Progress",
10291029+ "reenterCredentials": "You will need to re-enter your credentials to continue.",
10301030+ "startOver": "Start Over",
10311031+ "resumeButton": "Resume"
10321032+ },
10331033+ "inbound": {
10341034+ "welcome": {
10351035+ "title": "Migrate to This PDS",
10361036+ "desc": "Move your existing AT Protocol account to this server.",
10371037+ "understand": "I understand the risks and want to proceed"
10381038+ },
10391039+ "sourceLogin": {
10401040+ "title": "Sign In to Your Current PDS",
10411041+ "desc": "Enter your credentials for the account you want to migrate.",
10421042+ "handle": "Handle",
10431043+ "handlePlaceholder": "you.bsky.social",
10441044+ "password": "Password",
10451045+ "twoFactorCode": "Two-Factor Code",
10461046+ "twoFactorRequired": "Two-factor authentication required",
10471047+ "signIn": "Sign In & Continue"
10481048+ },
10491049+ "chooseHandle": {
10501050+ "title": "Choose Your New Handle",
10511051+ "desc": "Select a handle for your account on this PDS.",
10521052+ "handleHint": "Your full handle will be: @{handle}"
10531053+ },
10541054+ "review": {
10551055+ "title": "Review Migration",
10561056+ "desc": "Please review and confirm your migration details.",
10571057+ "currentHandle": "Current Handle",
10581058+ "newHandle": "New Handle",
10591059+ "sourcePds": "Source PDS",
10601060+ "targetPds": "This PDS",
10611061+ "email": "Email",
10621062+ "inviteCode": "Invite Code",
10631063+ "confirm": "I confirm I want to migrate my account",
10641064+ "startMigration": "Start Migration"
10651065+ },
10661066+ "migrating": {
10671067+ "title": "Migrating Your Account",
10681068+ "desc": "Please wait while we transfer your data...",
10691069+ "gettingServiceAuth": "Getting service authorization...",
10701070+ "creatingAccount": "Creating account on new PDS...",
10711071+ "exportingRepo": "Exporting repository...",
10721072+ "importingRepo": "Importing repository...",
10731073+ "countingBlobs": "Counting blobs...",
10741074+ "migratingBlobs": "Migrating blobs ({current}/{total})...",
10751075+ "migratingPrefs": "Migrating preferences...",
10761076+ "requestingPlc": "Requesting PLC operation..."
10771077+ },
10781078+ "emailVerify": {
10791079+ "title": "Verify Your Email",
10801080+ "desc": "A verification code has been sent to {email}.",
10811081+ "hint": "Enter the code below, or click the link in the email to continue automatically.",
10821082+ "tokenLabel": "Verification Code",
10831083+ "tokenPlaceholder": "Enter code from email",
10841084+ "resend": "Resend Code",
10851085+ "verify": "Verify Email",
10861086+ "verifying": "Verifying..."
10871087+ },
10881088+ "plcToken": {
10891089+ "title": "Verify Your Identity",
10901090+ "desc": "A verification code has been sent to your email on your current PDS.",
10911091+ "tokenLabel": "Verification Token",
10921092+ "tokenPlaceholder": "Enter the token from your email",
10931093+ "resend": "Resend Token",
10941094+ "resending": "Resending..."
10951095+ },
10961096+ "finalizing": {
10971097+ "title": "Finalizing Migration",
10981098+ "desc": "Please wait while we complete the migration...",
10991099+ "signingPlc": "Sign identity update",
11001100+ "activating": "Activate account on new PDS",
11011101+ "deactivating": "Deactivate account on old PDS"
11021102+ },
11031103+ "success": {
11041104+ "title": "Migration Complete!",
11051105+ "desc": "Your account has been successfully migrated to this PDS.",
11061106+ "newHandle": "New Handle",
11071107+ "did": "DID",
11081108+ "goToDashboard": "Go to Dashboard"
11091109+ }
11101110+ },
11111111+ "outbound": {
11121112+ "welcome": {
11131113+ "title": "Migrate Away from This PDS",
11141114+ "desc": "Move your account to another Personal Data Server.",
11151115+ "warning": "After migration, your account here will be deactivated.",
11161116+ "didWebNotice": "did:web Migration Notice",
11171117+ "didWebNoticeDesc": "Your account uses a did:web identifier ({did}). After migrating, this PDS will continue to serve your DID document pointing to the new PDS. Your identity will remain functional as long as this server is online.",
11181118+ "understand": "I understand the risks and want to proceed"
11191119+ },
11201120+ "targetPds": {
11211121+ "title": "Choose Target PDS",
11221122+ "desc": "Enter the URL of the PDS you want to migrate to.",
11231123+ "url": "PDS URL",
11241124+ "urlPlaceholder": "https://pds.example.com",
11251125+ "validate": "Validate & Continue",
11261126+ "validating": "Validating...",
11271127+ "connected": "Connected to {name}",
11281128+ "inviteRequired": "Invite code required",
11291129+ "privacyPolicy": "Privacy Policy",
11301130+ "termsOfService": "Terms of Service"
11311131+ },
11321132+ "newAccount": {
11331133+ "title": "New Account Details",
11341134+ "desc": "Set up your account on the new PDS.",
11351135+ "handle": "Handle",
11361136+ "availableDomains": "Available domains",
11371137+ "email": "Email",
11381138+ "password": "Password",
11391139+ "confirmPassword": "Confirm Password",
11401140+ "inviteCode": "Invite Code"
11411141+ },
11421142+ "review": {
11431143+ "title": "Review Migration",
11441144+ "desc": "Please review and confirm your migration details.",
11451145+ "currentHandle": "Current Handle",
11461146+ "newHandle": "New Handle",
11471147+ "sourcePds": "This PDS",
11481148+ "targetPds": "Target PDS",
11491149+ "confirm": "I confirm I want to migrate my account",
11501150+ "startMigration": "Start Migration"
11511151+ },
11521152+ "migrating": {
11531153+ "title": "Migrating Your Account",
11541154+ "desc": "Please wait while we transfer your data..."
11551155+ },
11561156+ "plcToken": {
11571157+ "title": "Verify Your Identity",
11581158+ "desc": "A verification code has been sent to your email."
11591159+ },
11601160+ "finalizing": {
11611161+ "title": "Finalizing Migration",
11621162+ "desc": "Please wait while we complete the migration...",
11631163+ "updatingForwarding": "Updating DID document forwarding..."
11641164+ },
11651165+ "success": {
11661166+ "title": "Migration Complete!",
11671167+ "desc": "Your account has been successfully migrated to your new PDS.",
11681168+ "newHandle": "New Handle",
11691169+ "newPds": "New PDS",
11701170+ "nextSteps": "Next Steps",
11711171+ "nextSteps1": "Sign in to your new PDS",
11721172+ "nextSteps2": "Update any apps with your new credentials",
11731173+ "nextSteps3": "Your followers will automatically see your new location",
11741174+ "loggingOut": "Logging you out in {seconds} seconds..."
11751175+ }
11761176+ },
11771177+ "progress": {
11781178+ "repoExported": "Repository exported",
11791179+ "repoImported": "Repository imported",
11801180+ "blobsMigrated": "{count} blobs migrated",
11811181+ "prefsMigrated": "Preferences migrated",
11821182+ "plcSigned": "Identity updated",
11831183+ "activated": "Account activated",
11841184+ "deactivated": "Old account deactivated"
11851185+ },
11861186+ "errors": {
11871187+ "connectionFailed": "Could not connect to PDS",
11881188+ "invalidCredentials": "Invalid credentials",
11891189+ "twoFactorRequired": "Two-factor authentication required",
11901190+ "accountExists": "Account already exists on target PDS",
11911191+ "plcFailed": "PLC operation failed",
11921192+ "blobFailed": "Failed to migrate blob: {cid}",
11931193+ "networkError": "Network error. Please try again."
11941194+ }
9941195 }
9951196}
+201
frontend/src/locales/fi.json
···10071007 "permissionsLimitedDesc": "Todelliset oikeutesi rajoitetaan {level}-käyttöoikeustasoosi riippumatta siitä, mitä sovellus pyytää.",
10081008 "viewerLimitedDesc": "Katselijana sinulla on vain lukuoikeus. Tämä sovellus ei voi luoda, muokata tai poistaa sisältöä tällä tilillä.",
10091009 "editorLimitedDesc": "Muokkaajana voit luoda ja muokata sisältöä, mutta et voi hallita tilin asetuksia tai tietoturvaa."
10101010+ },
10111011+ "migration": {
10121012+ "title": "Tilin siirto",
10131013+ "subtitle": "Siirrä AT Protocol -identiteettisi palvelimien välillä",
10141014+ "navTitle": "Siirto",
10151015+ "navDesc": "Siirrä tilisi toiseen tai toisesta PDS:stä",
10161016+ "migrateHere": "Siirrä tänne",
10171017+ "migrateHereDesc": "Siirrä olemassa oleva AT Protocol -tilisi tähän PDS:ään toiselta palvelimelta.",
10181018+ "migrateAway": "Siirrä pois",
10191019+ "migrateAwayDesc": "Siirrä tilisi tästä PDS:stä toiselle palvelimelle.",
10201020+ "loginRequired": "Kirjautuminen vaaditaan",
10211021+ "bringDid": "Tuo DID ja identiteettisi",
10221022+ "transferData": "Siirrä kaikki tietosi",
10231023+ "keepFollowers": "Säilytä seuraajasi",
10241024+ "exportRepo": "Vie tietovarastosi",
10251025+ "transferToPds": "Siirrä uuteen PDS:ään",
10261026+ "updateIdentity": "Päivitä identiteettisi",
10271027+ "whatIsMigration": "Mikä on tilin siirto?",
10281028+ "whatIsMigrationDesc": "Tilin siirto mahdollistaa AT Protocol -identiteettisi siirtämisen henkilökohtaisten datapalvelimien (PDS) välillä. DID (hajautettu tunniste) pysyy samana, joten seuraajasi ja sosiaaliset yhteytesi säilyvät.",
10291029+ "beforeMigrate": "Ennen siirtoa",
10301030+ "beforeMigrate1": "Tarvitset nykyisen tilisi tunnukset",
10311031+ "beforeMigrate2": "Siirto vaatii sähköpostivahvistuksen turvallisuussyistä",
10321032+ "beforeMigrate3": "Suuret tilit, joissa on paljon kuvia, voivat kestää useita minuutteja",
10331033+ "beforeMigrate4": "Vanhalle PDS:llesi ilmoitetaan tilisi deaktivoinnista",
10341034+ "importantWarning": "Tilin siirto on merkittävä toimenpide. Varmista, että luotat kohde-PDS:ään ja ymmärrät, että tietosi siirretään. Jos jokin menee pieleen, palautus voi vaatia manuaalista toimenpidettä.",
10351035+ "learnMore": "Lue lisää siirron riskeistä",
10361036+ "resume": {
10371037+ "title": "Jatka siirtoa?",
10381038+ "incomplete": "Sinulla on keskeneräinen siirto:",
10391039+ "direction": "Suunta",
10401040+ "migratingHere": "Siirretään tänne",
10411041+ "migratingAway": "Siirretään pois",
10421042+ "from": "Mistä",
10431043+ "to": "Minne",
10441044+ "progress": "Edistyminen",
10451045+ "reenterCredentials": "Sinun täytyy syöttää tunnuksesi uudelleen jatkaaksesi.",
10461046+ "startOver": "Aloita alusta",
10471047+ "resumeButton": "Jatka"
10481048+ },
10491049+ "inbound": {
10501050+ "welcome": {
10511051+ "title": "Siirrä tähän PDS:ään",
10521052+ "desc": "Siirrä olemassa oleva AT Protocol -tilisi tälle palvelimelle.",
10531053+ "understand": "Ymmärrän riskit ja haluan jatkaa"
10541054+ },
10551055+ "sourceLogin": {
10561056+ "title": "Kirjaudu nykyiseen PDS:ääsi",
10571057+ "desc": "Syötä siirrettävän tilin tunnukset.",
10581058+ "handle": "Käyttäjätunnus",
10591059+ "handlePlaceholder": "sinä.bsky.social",
10601060+ "password": "Salasana",
10611061+ "twoFactorCode": "Kaksivaiheinen koodi",
10621062+ "twoFactorRequired": "Kaksivaiheinen tunnistautuminen vaaditaan",
10631063+ "signIn": "Kirjaudu ja jatka"
10641064+ },
10651065+ "chooseHandle": {
10661066+ "title": "Valitse uusi käyttäjätunnuksesi",
10671067+ "desc": "Valitse käyttäjätunnus tilillesi tässä PDS:ssä.",
10681068+ "handleHint": "Täydellinen käyttäjätunnuksesi on: @{handle}"
10691069+ },
10701070+ "review": {
10711071+ "title": "Tarkista siirto",
10721072+ "desc": "Tarkista ja vahvista siirtotietosi.",
10731073+ "currentHandle": "Nykyinen käyttäjätunnus",
10741074+ "newHandle": "Uusi käyttäjätunnus",
10751075+ "sourcePds": "Lähde-PDS",
10761076+ "targetPds": "Tämä PDS",
10771077+ "email": "Sähköposti",
10781078+ "inviteCode": "Kutsukoodi",
10791079+ "confirm": "Vahvistan haluavani siirtää tilini",
10801080+ "startMigration": "Aloita siirto"
10811081+ },
10821082+ "migrating": {
10831083+ "title": "Siirretään tiliäsi",
10841084+ "desc": "Odota, kun siirrämme tietojasi...",
10851085+ "gettingServiceAuth": "Haetaan palveluvaltuutusta...",
10861086+ "creatingAccount": "Luodaan tiliä uuteen PDS:ään...",
10871087+ "exportingRepo": "Viedään tietovarastoa...",
10881088+ "importingRepo": "Tuodaan tietovarastoa...",
10891089+ "countingBlobs": "Lasketaan blob-tiedostoja...",
10901090+ "migratingBlobs": "Siirretään blob-tiedostoja ({current}/{total})...",
10911091+ "migratingPrefs": "Siirretään asetuksia...",
10921092+ "requestingPlc": "Pyydetään PLC-toimintoa..."
10931093+ },
10941094+ "emailVerify": {
10951095+ "title": "Vahvista sähköpostisi",
10961096+ "desc": "Vahvistuskoodi on lähetetty osoitteeseen {email}.",
10971097+ "hint": "Syötä koodi alle tai klikkaa sähköpostissa olevaa linkkiä jatkaaksesi automaattisesti.",
10981098+ "tokenLabel": "Vahvistuskoodi",
10991099+ "tokenPlaceholder": "Syötä sähköpostista saatu koodi",
11001100+ "resend": "Lähetä koodi uudelleen",
11011101+ "verify": "Vahvista sähköposti",
11021102+ "verifying": "Vahvistetaan..."
11031103+ },
11041104+ "plcToken": {
11051105+ "title": "Vahvista henkilöllisyytesi",
11061106+ "desc": "Vahvistuskoodi on lähetetty sähköpostiisi nykyisessä PDS:ssäsi.",
11071107+ "tokenLabel": "Vahvistuskoodi",
11081108+ "tokenPlaceholder": "Syötä sähköpostista saatu koodi",
11091109+ "resend": "Lähetä uudelleen",
11101110+ "resending": "Lähetetään..."
11111111+ },
11121112+ "finalizing": {
11131113+ "title": "Viimeistellään siirtoa",
11141114+ "desc": "Odota, kun viimeistelemme siirtoa...",
11151115+ "signingPlc": "Allekirjoita identiteettipäivitys",
11161116+ "activating": "Aktivoi tili uudessa PDS:ssä",
11171117+ "deactivating": "Deaktivoi tili vanhassa PDS:ssä"
11181118+ },
11191119+ "success": {
11201120+ "title": "Siirto valmis!",
11211121+ "desc": "Tilisi on siirretty onnistuneesti tähän PDS:ään.",
11221122+ "newHandle": "Uusi käyttäjätunnus",
11231123+ "did": "DID",
11241124+ "goToDashboard": "Siirry hallintapaneeliin"
11251125+ }
11261126+ },
11271127+ "outbound": {
11281128+ "welcome": {
11291129+ "title": "Siirrä pois tästä PDS:stä",
11301130+ "desc": "Siirrä tilisi toiseen henkilökohtaiseen datapalvelimeen.",
11311131+ "warning": "Siirron jälkeen tilisi täällä deaktivoidaan.",
11321132+ "didWebNotice": "did:web-siirtoilmoitus",
11331133+ "didWebNoticeDesc": "Tilisi käyttää did:web-tunnistetta ({did}). Siirron jälkeen tämä PDS jatkaa DID-dokumenttisi tarjoamista osoittaen uuteen PDS:ään. Identiteettisi toimii niin kauan kuin tämä palvelin on päällä.",
11341134+ "understand": "Ymmärrän riskit ja haluan jatkaa"
11351135+ },
11361136+ "targetPds": {
11371137+ "title": "Valitse kohde-PDS",
11381138+ "desc": "Syötä sen PDS:n URL, johon haluat siirtyä.",
11391139+ "url": "PDS URL",
11401140+ "urlPlaceholder": "https://pds.example.com",
11411141+ "validate": "Vahvista ja jatka",
11421142+ "validating": "Vahvistetaan...",
11431143+ "connected": "Yhdistetty: {name}",
11441144+ "inviteRequired": "Kutsukoodi vaaditaan",
11451145+ "privacyPolicy": "Tietosuojakäytäntö",
11461146+ "termsOfService": "Käyttöehdot"
11471147+ },
11481148+ "newAccount": {
11491149+ "title": "Uuden tilin tiedot",
11501150+ "desc": "Määritä tilisi uudessa PDS:ssä.",
11511151+ "handle": "Käyttäjätunnus",
11521152+ "availableDomains": "Käytettävissä olevat verkkotunnukset",
11531153+ "email": "Sähköposti",
11541154+ "password": "Salasana",
11551155+ "confirmPassword": "Vahvista salasana",
11561156+ "inviteCode": "Kutsukoodi"
11571157+ },
11581158+ "review": {
11591159+ "title": "Tarkista siirto",
11601160+ "desc": "Tarkista ja vahvista siirtotietosi.",
11611161+ "currentHandle": "Nykyinen käyttäjätunnus",
11621162+ "newHandle": "Uusi käyttäjätunnus",
11631163+ "sourcePds": "Tämä PDS",
11641164+ "targetPds": "Kohde-PDS",
11651165+ "confirm": "Vahvistan haluavani siirtää tilini",
11661166+ "startMigration": "Aloita siirto"
11671167+ },
11681168+ "migrating": {
11691169+ "title": "Siirretään tiliäsi",
11701170+ "desc": "Odota, kun siirrämme tietojasi..."
11711171+ },
11721172+ "plcToken": {
11731173+ "title": "Vahvista henkilöllisyytesi",
11741174+ "desc": "Vahvistuskoodi on lähetetty sähköpostiisi."
11751175+ },
11761176+ "finalizing": {
11771177+ "title": "Viimeistellään siirtoa",
11781178+ "desc": "Odota, kun viimeistelemme siirtoa...",
11791179+ "updatingForwarding": "Päivitetään DID-dokumentin uudelleenohjausta..."
11801180+ },
11811181+ "success": {
11821182+ "title": "Siirto valmis!",
11831183+ "desc": "Tilisi on siirretty onnistuneesti uuteen PDS:ääsi.",
11841184+ "newHandle": "Uusi käyttäjätunnus",
11851185+ "newPds": "Uusi PDS",
11861186+ "nextSteps": "Seuraavat vaiheet",
11871187+ "nextSteps1": "Kirjaudu uuteen PDS:ääsi",
11881188+ "nextSteps2": "Päivitä sovellukset uusilla tunnuksillasi",
11891189+ "nextSteps3": "Seuraajasi näkevät automaattisesti uuden sijaintisi",
11901190+ "loggingOut": "Kirjaudutaan ulos {seconds} sekunnin kuluttua..."
11911191+ }
11921192+ },
11931193+ "progress": {
11941194+ "repoExported": "Tietovarasto viety",
11951195+ "repoImported": "Tietovarasto tuotu",
11961196+ "blobsMigrated": "{count} blob-tiedostoa siirretty",
11971197+ "prefsMigrated": "Asetukset siirretty",
11981198+ "plcSigned": "Identiteetti päivitetty",
11991199+ "activated": "Tili aktivoitu",
12001200+ "deactivated": "Vanha tili deaktivoitu"
12011201+ },
12021202+ "errors": {
12031203+ "connectionFailed": "Yhteys PDS:ään epäonnistui",
12041204+ "invalidCredentials": "Virheelliset tunnukset",
12051205+ "twoFactorRequired": "Kaksivaiheinen tunnistautuminen vaaditaan",
12061206+ "accountExists": "Tili on jo olemassa kohde-PDS:ssä",
12071207+ "plcFailed": "PLC-toiminto epäonnistui",
12081208+ "blobFailed": "Blob-tiedoston siirto epäonnistui: {cid}",
12091209+ "networkError": "Verkkovirhe. Yritä uudelleen."
12101210+ }
10101211 }
10111212}
···10291029 "permissionsLimitedDesc": "앱이 무엇을 요청하든 실제 권한은 {level} 액세스 수준으로 제한됩니다.",
10301030 "viewerLimitedDesc": "뷰어로서 읽기 전용 액세스 권한만 있습니다. 이 앱은 이 계정에서 콘텐츠를 생성, 수정 또는 삭제할 수 없습니다.",
10311031 "editorLimitedDesc": "편집자로서 콘텐츠를 생성하고 편집할 수 있지만 계정 설정이나 보안을 관리할 수 없습니다."
10321032+ },
10331033+ "migration": {
10341034+ "title": "계정 마이그레이션",
10351035+ "subtitle": "AT Protocol 아이덴티티를 서버 간에 이동",
10361036+ "navTitle": "마이그레이션",
10371037+ "navDesc": "다른 PDS로 또는 다른 PDS에서 계정 이동",
10381038+ "migrateHere": "여기로 마이그레이션",
10391039+ "migrateHereDesc": "기존 AT Protocol 계정을 다른 서버에서 이 PDS로 이동합니다.",
10401040+ "migrateAway": "다른 곳으로 마이그레이션",
10411041+ "migrateAwayDesc": "이 PDS에서 다른 서버로 계정을 이동합니다.",
10421042+ "loginRequired": "로그인 필요",
10431043+ "bringDid": "DID와 아이덴티티 가져오기",
10441044+ "transferData": "모든 데이터 전송",
10451045+ "keepFollowers": "팔로워 유지",
10461046+ "exportRepo": "저장소 내보내기",
10471047+ "transferToPds": "새 PDS로 전송",
10481048+ "updateIdentity": "아이덴티티 업데이트",
10491049+ "whatIsMigration": "계정 마이그레이션이란?",
10501050+ "whatIsMigrationDesc": "계정 마이그레이션을 통해 AT Protocol 아이덴티티를 개인 데이터 서버(PDS) 간에 이동할 수 있습니다. DID(분산 식별자)는 동일하게 유지되므로 팔로워와 소셜 연결이 보존됩니다.",
10511051+ "beforeMigrate": "마이그레이션 전 확인사항",
10521052+ "beforeMigrate1": "현재 계정 인증 정보가 필요합니다",
10531053+ "beforeMigrate2": "보안을 위해 이메일 인증이 필요합니다",
10541054+ "beforeMigrate3": "이미지가 많은 대용량 계정은 몇 분이 걸릴 수 있습니다",
10551055+ "beforeMigrate4": "이전 PDS에 계정 비활성화가 통보됩니다",
10561056+ "importantWarning": "계정 마이그레이션은 중요한 작업입니다. 대상 PDS를 신뢰하고 데이터가 이동된다는 것을 이해하세요. 문제가 발생하면 수동 복구가 필요할 수 있습니다.",
10571057+ "learnMore": "마이그레이션 위험에 대해 자세히 알아보기",
10581058+ "resume": {
10591059+ "title": "마이그레이션을 재개하시겠습니까?",
10601060+ "incomplete": "완료되지 않은 마이그레이션이 있습니다:",
10611061+ "direction": "방향",
10621062+ "migratingHere": "여기로 마이그레이션 중",
10631063+ "migratingAway": "다른 곳으로 마이그레이션 중",
10641064+ "from": "출발지",
10651065+ "to": "목적지",
10661066+ "progress": "진행 상황",
10671067+ "reenterCredentials": "계속하려면 인증 정보를 다시 입력해야 합니다.",
10681068+ "startOver": "처음부터 다시 시작",
10691069+ "resumeButton": "재개"
10701070+ },
10711071+ "inbound": {
10721072+ "welcome": {
10731073+ "title": "이 PDS로 마이그레이션",
10741074+ "desc": "기존 AT Protocol 계정을 이 서버로 이동합니다.",
10751075+ "understand": "위험을 이해하고 계속 진행합니다"
10761076+ },
10771077+ "sourceLogin": {
10781078+ "title": "현재 PDS에 로그인",
10791079+ "desc": "마이그레이션할 계정의 인증 정보를 입력하세요.",
10801080+ "handle": "핸들",
10811081+ "handlePlaceholder": "you.bsky.social",
10821082+ "password": "비밀번호",
10831083+ "twoFactorCode": "2단계 인증 코드",
10841084+ "twoFactorRequired": "2단계 인증이 필요합니다",
10851085+ "signIn": "로그인 및 계속"
10861086+ },
10871087+ "chooseHandle": {
10881088+ "title": "새 핸들 선택",
10891089+ "desc": "이 PDS에서 사용할 계정 핸들을 선택하세요.",
10901090+ "handleHint": "전체 핸들: @{handle}"
10911091+ },
10921092+ "review": {
10931093+ "title": "마이그레이션 검토",
10941094+ "desc": "마이그레이션 세부 정보를 검토하고 확인하세요.",
10951095+ "currentHandle": "현재 핸들",
10961096+ "newHandle": "새 핸들",
10971097+ "sourcePds": "소스 PDS",
10981098+ "targetPds": "이 PDS",
10991099+ "email": "이메일",
11001100+ "inviteCode": "초대 코드",
11011101+ "confirm": "계정 마이그레이션을 확인합니다",
11021102+ "startMigration": "마이그레이션 시작"
11031103+ },
11041104+ "migrating": {
11051105+ "title": "계정 마이그레이션 중",
11061106+ "desc": "데이터를 전송하는 중입니다...",
11071107+ "gettingServiceAuth": "서비스 인증 획득 중...",
11081108+ "creatingAccount": "새 PDS에 계정 생성 중...",
11091109+ "exportingRepo": "저장소 내보내기 중...",
11101110+ "importingRepo": "저장소 가져오기 중...",
11111111+ "countingBlobs": "blob 개수 세는 중...",
11121112+ "migratingBlobs": "blob 마이그레이션 중 ({current}/{total})...",
11131113+ "migratingPrefs": "환경설정 마이그레이션 중...",
11141114+ "requestingPlc": "PLC 작업 요청 중..."
11151115+ },
11161116+ "emailVerify": {
11171117+ "title": "이메일 인증",
11181118+ "desc": "인증 코드가 {email}(으)로 전송되었습니다.",
11191119+ "hint": "아래에 코드를 입력하거나, 이메일의 링크를 클릭하여 자동으로 계속할 수 있습니다.",
11201120+ "tokenLabel": "인증 코드",
11211121+ "tokenPlaceholder": "이메일에서 받은 코드 입력",
11221122+ "resend": "코드 재전송",
11231123+ "verify": "이메일 인증",
11241124+ "verifying": "인증 중..."
11251125+ },
11261126+ "plcToken": {
11271127+ "title": "신원 확인",
11281128+ "desc": "현재 PDS에 등록된 이메일로 인증 코드가 전송되었습니다.",
11291129+ "tokenLabel": "인증 토큰",
11301130+ "tokenPlaceholder": "이메일에서 받은 토큰 입력",
11311131+ "resend": "재전송",
11321132+ "resending": "전송 중..."
11331133+ },
11341134+ "finalizing": {
11351135+ "title": "마이그레이션 완료 중",
11361136+ "desc": "마이그레이션을 완료하는 중입니다...",
11371137+ "signingPlc": "아이덴티티 업데이트 서명",
11381138+ "activating": "새 PDS에서 계정 활성화",
11391139+ "deactivating": "이전 PDS에서 계정 비활성화"
11401140+ },
11411141+ "success": {
11421142+ "title": "마이그레이션 완료!",
11431143+ "desc": "계정이 이 PDS로 성공적으로 마이그레이션되었습니다.",
11441144+ "newHandle": "새 핸들",
11451145+ "did": "DID",
11461146+ "goToDashboard": "대시보드로 이동"
11471147+ }
11481148+ },
11491149+ "outbound": {
11501150+ "welcome": {
11511151+ "title": "이 PDS에서 마이그레이션",
11521152+ "desc": "계정을 다른 개인 데이터 서버로 이동합니다.",
11531153+ "warning": "마이그레이션 후 이 PDS에서 계정이 비활성화됩니다.",
11541154+ "didWebNotice": "did:web 마이그레이션 알림",
11551155+ "didWebNoticeDesc": "귀하의 계정은 did:web 식별자({did})를 사용합니다. 마이그레이션 후 이 PDS는 새 PDS를 가리키는 DID 문서를 계속 제공합니다. 이 서버가 온라인인 한 아이덴티티는 계속 작동합니다.",
11561156+ "understand": "위험을 이해하고 계속 진행합니다"
11571157+ },
11581158+ "targetPds": {
11591159+ "title": "대상 PDS 선택",
11601160+ "desc": "마이그레이션할 PDS의 URL을 입력하세요.",
11611161+ "url": "PDS URL",
11621162+ "urlPlaceholder": "https://pds.example.com",
11631163+ "validate": "확인 및 계속",
11641164+ "validating": "확인 중...",
11651165+ "connected": "{name}에 연결됨",
11661166+ "inviteRequired": "초대 코드 필요",
11671167+ "privacyPolicy": "개인정보 처리방침",
11681168+ "termsOfService": "서비스 약관"
11691169+ },
11701170+ "newAccount": {
11711171+ "title": "새 계정 세부 정보",
11721172+ "desc": "새 PDS에서 계정을 설정합니다.",
11731173+ "handle": "핸들",
11741174+ "availableDomains": "사용 가능한 도메인",
11751175+ "email": "이메일",
11761176+ "password": "비밀번호",
11771177+ "confirmPassword": "비밀번호 확인",
11781178+ "inviteCode": "초대 코드"
11791179+ },
11801180+ "review": {
11811181+ "title": "마이그레이션 검토",
11821182+ "desc": "마이그레이션 세부 정보를 검토하고 확인하세요.",
11831183+ "currentHandle": "현재 핸들",
11841184+ "newHandle": "새 핸들",
11851185+ "sourcePds": "이 PDS",
11861186+ "targetPds": "대상 PDS",
11871187+ "confirm": "계정 마이그레이션을 확인합니다",
11881188+ "startMigration": "마이그레이션 시작"
11891189+ },
11901190+ "migrating": {
11911191+ "title": "계정 마이그레이션 중",
11921192+ "desc": "데이터를 전송하는 중입니다..."
11931193+ },
11941194+ "plcToken": {
11951195+ "title": "신원 확인",
11961196+ "desc": "이메일로 인증 코드가 전송되었습니다."
11971197+ },
11981198+ "finalizing": {
11991199+ "title": "마이그레이션 완료 중",
12001200+ "desc": "마이그레이션을 완료하는 중입니다...",
12011201+ "updatingForwarding": "DID 문서 포워딩 업데이트 중..."
12021202+ },
12031203+ "success": {
12041204+ "title": "마이그레이션 완료!",
12051205+ "desc": "계정이 새 PDS로 성공적으로 마이그레이션되었습니다.",
12061206+ "newHandle": "새 핸들",
12071207+ "newPds": "새 PDS",
12081208+ "nextSteps": "다음 단계",
12091209+ "nextSteps1": "새 PDS에 로그인",
12101210+ "nextSteps2": "새 인증 정보로 앱 업데이트",
12111211+ "nextSteps3": "팔로워가 자동으로 새 위치를 확인할 수 있습니다",
12121212+ "loggingOut": "{seconds}초 후 로그아웃됩니다..."
12131213+ }
12141214+ },
12151215+ "progress": {
12161216+ "repoExported": "저장소 내보내기 완료",
12171217+ "repoImported": "저장소 가져오기 완료",
12181218+ "blobsMigrated": "{count}개 blob 마이그레이션됨",
12191219+ "prefsMigrated": "환경설정 마이그레이션됨",
12201220+ "plcSigned": "아이덴티티 업데이트됨",
12211221+ "activated": "계정 활성화됨",
12221222+ "deactivated": "이전 계정 비활성화됨"
12231223+ },
12241224+ "errors": {
12251225+ "connectionFailed": "PDS에 연결할 수 없습니다",
12261226+ "invalidCredentials": "잘못된 인증 정보",
12271227+ "twoFactorRequired": "2단계 인증이 필요합니다",
12281228+ "accountExists": "대상 PDS에 계정이 이미 존재합니다",
12291229+ "plcFailed": "PLC 작업 실패",
12301230+ "blobFailed": "blob 마이그레이션 실패: {cid}",
12311231+ "networkError": "네트워크 오류. 다시 시도하세요."
12321232+ }
10321233 }
10331234}
+201
frontend/src/locales/sv.json
···10291029 "permissionsLimitedDesc": "Dina faktiska behörigheter begränsas till din {level}-åtkomstnivå, oavsett vad appen begär.",
10301030 "viewerLimitedDesc": "Som visare har du endast läsåtkomst. Denna app kommer inte att kunna skapa, uppdatera eller ta bort innehåll på detta konto.",
10311031 "editorLimitedDesc": "Som redigerare kan du skapa och redigera innehåll men kan inte hantera kontoinställningar eller säkerhet."
10321032+ },
10331033+ "migration": {
10341034+ "title": "Kontoflyttning",
10351035+ "subtitle": "Flytta din AT Protocol-identitet mellan servrar",
10361036+ "navTitle": "Flytta",
10371037+ "navDesc": "Flytta ditt konto till eller från en annan PDS",
10381038+ "migrateHere": "Flytta hit",
10391039+ "migrateHereDesc": "Flytta ditt befintliga AT Protocol-konto till denna PDS från en annan server.",
10401040+ "migrateAway": "Flytta bort",
10411041+ "migrateAwayDesc": "Flytta ditt konto från denna PDS till en annan server.",
10421042+ "loginRequired": "Inloggning krävs",
10431043+ "bringDid": "Ta med din DID och identitet",
10441044+ "transferData": "Överför all din data",
10451045+ "keepFollowers": "Behåll dina följare",
10461046+ "exportRepo": "Exportera ditt arkiv",
10471047+ "transferToPds": "Överför till ny PDS",
10481048+ "updateIdentity": "Uppdatera din identitet",
10491049+ "whatIsMigration": "Vad är kontoflyttning?",
10501050+ "whatIsMigrationDesc": "Kontoflyttning låter dig flytta din AT Protocol-identitet mellan personliga dataservrar (PDS). Din DID (decentraliserad identifierare) förblir densamma, så dina följare och sociala kopplingar bevaras.",
10511051+ "beforeMigrate": "Innan du flyttar",
10521052+ "beforeMigrate1": "Du behöver dina nuvarande kontouppgifter",
10531053+ "beforeMigrate2": "Flytt kräver e-postverifiering för säkerhet",
10541054+ "beforeMigrate3": "Stora konton med många bilder kan ta flera minuter",
10551055+ "beforeMigrate4": "Din gamla PDS kommer att meddelas om kontoinaktivering",
10561056+ "importantWarning": "Kontoflyttning är en betydande åtgärd. Se till att du litar på mål-PDS och förstår att din data kommer att flyttas. Om något går fel kan manuell återställning krävas.",
10571057+ "learnMore": "Läs mer om flyttningsrisker",
10581058+ "resume": {
10591059+ "title": "Återuppta flytt?",
10601060+ "incomplete": "Du har en ofullständig flytt pågående:",
10611061+ "direction": "Riktning",
10621062+ "migratingHere": "Flyttar hit",
10631063+ "migratingAway": "Flyttar bort",
10641064+ "from": "Från",
10651065+ "to": "Till",
10661066+ "progress": "Framsteg",
10671067+ "reenterCredentials": "Du måste ange dina uppgifter igen för att fortsätta.",
10681068+ "startOver": "Börja om",
10691069+ "resumeButton": "Återuppta"
10701070+ },
10711071+ "inbound": {
10721072+ "welcome": {
10731073+ "title": "Flytta till denna PDS",
10741074+ "desc": "Flytta ditt befintliga AT Protocol-konto till denna server.",
10751075+ "understand": "Jag förstår riskerna och vill fortsätta"
10761076+ },
10771077+ "sourceLogin": {
10781078+ "title": "Logga in på din nuvarande PDS",
10791079+ "desc": "Ange uppgifterna för kontot du vill flytta.",
10801080+ "handle": "Användarnamn",
10811081+ "handlePlaceholder": "du.bsky.social",
10821082+ "password": "Lösenord",
10831083+ "twoFactorCode": "Tvåfaktorkod",
10841084+ "twoFactorRequired": "Tvåfaktorautentisering krävs",
10851085+ "signIn": "Logga in och fortsätt"
10861086+ },
10871087+ "chooseHandle": {
10881088+ "title": "Välj ditt nya användarnamn",
10891089+ "desc": "Välj ett användarnamn för ditt konto på denna PDS.",
10901090+ "handleHint": "Ditt fullständiga användarnamn blir: @{handle}"
10911091+ },
10921092+ "review": {
10931093+ "title": "Granska flytt",
10941094+ "desc": "Granska och bekräfta dina flyttdetaljer.",
10951095+ "currentHandle": "Nuvarande användarnamn",
10961096+ "newHandle": "Nytt användarnamn",
10971097+ "sourcePds": "Käll-PDS",
10981098+ "targetPds": "Denna PDS",
10991099+ "email": "E-post",
11001100+ "inviteCode": "Inbjudningskod",
11011101+ "confirm": "Jag bekräftar att jag vill flytta mitt konto",
11021102+ "startMigration": "Starta flytt"
11031103+ },
11041104+ "migrating": {
11051105+ "title": "Flyttar ditt konto",
11061106+ "desc": "Vänta medan vi överför din data...",
11071107+ "gettingServiceAuth": "Hämtar tjänstauktorisering...",
11081108+ "creatingAccount": "Skapar konto på ny PDS...",
11091109+ "exportingRepo": "Exporterar arkiv...",
11101110+ "importingRepo": "Importerar arkiv...",
11111111+ "countingBlobs": "Räknar blobbar...",
11121112+ "migratingBlobs": "Flyttar blobbar ({current}/{total})...",
11131113+ "migratingPrefs": "Flyttar inställningar...",
11141114+ "requestingPlc": "Begär PLC-operation..."
11151115+ },
11161116+ "emailVerify": {
11171117+ "title": "Verifiera din e-post",
11181118+ "desc": "En verifieringskod har skickats till {email}.",
11191119+ "hint": "Ange koden nedan eller klicka på länken i e-postmeddelandet för att fortsätta automatiskt.",
11201120+ "tokenLabel": "Verifieringskod",
11211121+ "tokenPlaceholder": "Ange kod från e-post",
11221122+ "resend": "Skicka kod igen",
11231123+ "verify": "Verifiera e-post",
11241124+ "verifying": "Verifierar..."
11251125+ },
11261126+ "plcToken": {
11271127+ "title": "Verifiera din identitet",
11281128+ "desc": "En verifieringskod har skickats till din e-post på din nuvarande PDS.",
11291129+ "tokenLabel": "Verifieringstoken",
11301130+ "tokenPlaceholder": "Ange token från din e-post",
11311131+ "resend": "Skicka igen",
11321132+ "resending": "Skickar..."
11331133+ },
11341134+ "finalizing": {
11351135+ "title": "Slutför flytt",
11361136+ "desc": "Vänta medan vi slutför flytten...",
11371137+ "signingPlc": "Signera identitetsuppdatering",
11381138+ "activating": "Aktivera konto på ny PDS",
11391139+ "deactivating": "Inaktivera konto på gammal PDS"
11401140+ },
11411141+ "success": {
11421142+ "title": "Flytt klar!",
11431143+ "desc": "Ditt konto har framgångsrikt flyttats till denna PDS.",
11441144+ "newHandle": "Nytt användarnamn",
11451145+ "did": "DID",
11461146+ "goToDashboard": "Gå till instrumentpanel"
11471147+ }
11481148+ },
11491149+ "outbound": {
11501150+ "welcome": {
11511151+ "title": "Flytta från denna PDS",
11521152+ "desc": "Flytta ditt konto till en annan personlig dataserver.",
11531153+ "warning": "Efter flytten kommer ditt konto här att inaktiveras.",
11541154+ "didWebNotice": "did:web-flyttmeddelande",
11551155+ "didWebNoticeDesc": "Ditt konto använder en did:web-identifierare ({did}). Efter flytten kommer denna PDS att fortsätta servera ditt DID-dokument som pekar till den nya PDS. Din identitet kommer att fungera så länge denna server är online.",
11561156+ "understand": "Jag förstår riskerna och vill fortsätta"
11571157+ },
11581158+ "targetPds": {
11591159+ "title": "Välj mål-PDS",
11601160+ "desc": "Ange URL:en för PDS du vill flytta till.",
11611161+ "url": "PDS URL",
11621162+ "urlPlaceholder": "https://pds.example.com",
11631163+ "validate": "Validera och fortsätt",
11641164+ "validating": "Validerar...",
11651165+ "connected": "Ansluten till {name}",
11661166+ "inviteRequired": "Inbjudningskod krävs",
11671167+ "privacyPolicy": "Integritetspolicy",
11681168+ "termsOfService": "Användarvillkor"
11691169+ },
11701170+ "newAccount": {
11711171+ "title": "Nya kontouppgifter",
11721172+ "desc": "Konfigurera ditt konto på den nya PDS.",
11731173+ "handle": "Användarnamn",
11741174+ "availableDomains": "Tillgängliga domäner",
11751175+ "email": "E-post",
11761176+ "password": "Lösenord",
11771177+ "confirmPassword": "Bekräfta lösenord",
11781178+ "inviteCode": "Inbjudningskod"
11791179+ },
11801180+ "review": {
11811181+ "title": "Granska flytt",
11821182+ "desc": "Granska och bekräfta dina flyttdetaljer.",
11831183+ "currentHandle": "Nuvarande användarnamn",
11841184+ "newHandle": "Nytt användarnamn",
11851185+ "sourcePds": "Denna PDS",
11861186+ "targetPds": "Mål-PDS",
11871187+ "confirm": "Jag bekräftar att jag vill flytta mitt konto",
11881188+ "startMigration": "Starta flytt"
11891189+ },
11901190+ "migrating": {
11911191+ "title": "Flyttar ditt konto",
11921192+ "desc": "Vänta medan vi överför din data..."
11931193+ },
11941194+ "plcToken": {
11951195+ "title": "Verifiera din identitet",
11961196+ "desc": "En verifieringskod har skickats till din e-post."
11971197+ },
11981198+ "finalizing": {
11991199+ "title": "Slutför flytt",
12001200+ "desc": "Vänta medan vi slutför flytten...",
12011201+ "updatingForwarding": "Uppdaterar DID-dokumentvidarebefordran..."
12021202+ },
12031203+ "success": {
12041204+ "title": "Flytt klar!",
12051205+ "desc": "Ditt konto har framgångsrikt flyttats till din nya PDS.",
12061206+ "newHandle": "Nytt användarnamn",
12071207+ "newPds": "Ny PDS",
12081208+ "nextSteps": "Nästa steg",
12091209+ "nextSteps1": "Logga in på din nya PDS",
12101210+ "nextSteps2": "Uppdatera dina appar med nya uppgifter",
12111211+ "nextSteps3": "Dina följare kommer automatiskt se din nya plats",
12121212+ "loggingOut": "Loggar ut om {seconds} sekunder..."
12131213+ }
12141214+ },
12151215+ "progress": {
12161216+ "repoExported": "Arkiv exporterat",
12171217+ "repoImported": "Arkiv importerat",
12181218+ "blobsMigrated": "{count} blobbar flyttade",
12191219+ "prefsMigrated": "Inställningar flyttade",
12201220+ "plcSigned": "Identitet uppdaterad",
12211221+ "activated": "Konto aktiverat",
12221222+ "deactivated": "Gammalt konto inaktiverat"
12231223+ },
12241224+ "errors": {
12251225+ "connectionFailed": "Kunde inte ansluta till PDS",
12261226+ "invalidCredentials": "Ogiltiga uppgifter",
12271227+ "twoFactorRequired": "Tvåfaktorautentisering krävs",
12281228+ "accountExists": "Konto finns redan på mål-PDS",
12291229+ "plcFailed": "PLC-operation misslyckades",
12301230+ "blobFailed": "Kunde inte flytta blob: {cid}",
12311231+ "networkError": "Nätverksfel. Försök igen."
12321232+ }
10321233 }
10331234}
···44pub mod invite;
55pub mod logo;
66pub mod meta;
77+pub mod migration;
78pub mod passkey_account;
89pub mod passkeys;
910pub mod password;
···5556pub use trusted_devices::{
5657 extend_device_trust, is_device_trusted, list_trusted_devices, revoke_trusted_device,
5758 trust_device, update_trusted_device,
5959+};
6060+pub use migration::{
6161+ clear_migration_forwarding, get_migration_status, update_migration_forwarding,
5862};
5963pub use verify_email::{resend_migration_verification, verify_migration_email};
6064pub use verify_token::{VerifyTokenInput, VerifyTokenOutput, verify_token, verify_token_internal};