Settings takes a persona's whole archive away and brings one back

Data import/export gains the persona's archive (PrivaPub's /clientapi/persona/{id}/archive): made on PrivaPub in
Mastodon's account-archive layout and downloaded through a link; and an archive, its own or Mastodon's, uploaded in
pieces straight from the picked file (js/transfer.js) and imported into the persona, the parts chosen (likes, located
and scheduled posts only when ticked), with progress, a report of what came and what was left out, and Stop. Imported
posts are delivered to no one.

e2e: a town persona's archive downloaded and imported into another, whose profile then shows the posts; the copies are
taken away after.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
This commit is contained in:
thepraandClaude Opus 5.5 committed 2026-10-07 12:49:51 +02:00
1 parent dc2190e271
commit 48df316256
10 files changed
+882 -2

No files matched your search

+165
View File
@@ -2081,4 +2081,169 @@
<data name="unreadable" xml:space="preserve">
<value>unreadable</value>
</data>
<data name="An archive made here, or by Mastodon. Its posts arrive on this persona&#x27;s profile without being sent to anyone; follows are asked again." xml:space="preserve">
<value>An archive made here, or by Mastodon. Its posts arrive on this persona's profile without being sent to anyone; follows are asked again.</value>
</data>
<data name="Blocks" xml:space="preserve">
<value>Blocks</value>
</data>
<data name="Everything the persona posted, with its pictures, what it follows, blocks and mutes, its lists, bookmarks and filters, in the archive Mastodon makes. Nothing of your login or your other personas." xml:space="preserve">
<value>Everything the persona posted, with its pictures, what it follows, blocks and mutes, its lists, bookmarks and filters, in the archive Mastodon makes. Nothing of your login or your other personas.</value>
</data>
<data name="Follows, asked again" xml:space="preserve">
<value>Follows, asked again</value>
</data>
<data name="From this persona&#x27;s own archive." xml:space="preserve">
<value>From this persona's own archive.</value>
</data>
<data name="From {0}." xml:space="preserve">
<value>From {0}.</value>
</data>
<data name="Imported." xml:space="preserve">
<value>Imported.</value>
</data>
<data name="Importing: {0} of {1} read." xml:space="preserve">
<value>Importing: {0} of {1} read.</value>
</data>
<data name="Likes, given again" xml:space="preserve">
<value>Likes, given again</value>
</data>
<data name="Liking again tells each post&#x27;s author; located and scheduled posts come from PrivaPub&#x27;s archives only." xml:space="preserve">
<value>Liking again tells each post's author; located and scheduled posts come from PrivaPub's archives only.</value>
</data>
<data name="Located posts" xml:space="preserve">
<value>Located posts</value>
</data>
<data name="Made {0}; kept until {1}." xml:space="preserve">
<value>Made {0}; kept until {1}.</value>
</data>
<data name="Make the archive" xml:space="preserve">
<value>Make the archive</value>
</data>
<data name="Mutes" xml:space="preserve">
<value>Mutes</value>
</data>
<data name="Notification policy" xml:space="preserve">
<value>Notification policy</value>
</data>
<data name="Pinned posts" xml:space="preserve">
<value>Pinned posts</value>
</data>
<data name="Posts and their pictures" xml:space="preserve">
<value>Posts and their pictures</value>
</data>
<data name="Profile: name, words, fields, pictures" xml:space="preserve">
<value>Profile: name, words, fields, pictures</value>
</data>
<data name="Restore an archive into this persona" xml:space="preserve">
<value>Restore an archive into this persona</value>
</data>
<data name="Sending {0} of {1}" xml:space="preserve">
<value>Sending {0} of {1}</value>
</data>
<data name="Stopped." xml:space="preserve">
<value>Stopped.</value>
</data>
<data name="The archive could not be made: {0}" xml:space="preserve">
<value>The archive could not be made: {0}</value>
</data>
<data name="The import failed: {0}" xml:space="preserve">
<value>The import failed: {0}</value>
</data>
<data name="This persona&#x27;s archive" xml:space="preserve">
<value>This persona's archive</value>
</data>
<data name="Waiting to start." xml:space="preserve">
<value>Waiting to start.</value>
</data>
<data name="accounts blocked" xml:space="preserve">
<value>accounts blocked</value>
</data>
<data name="accounts muted" xml:space="preserve">
<value>accounts muted</value>
</data>
<data name="already there: {0}" xml:space="preserve">
<value>already there: {0}</value>
</data>
<data name="bookmarks imported" xml:space="preserve">
<value>bookmarks imported</value>
</data>
<data name="boosts left out" xml:space="preserve">
<value>boosts left out</value>
</data>
<data name="filters imported" xml:space="preserve">
<value>filters imported</value>
</data>
<data name="follows asked" xml:space="preserve">
<value>follows asked</value>
</data>
<data name="hashtags followed" xml:space="preserve">
<value>hashtags followed</value>
</data>
<data name="likes given" xml:space="preserve">
<value>likes given</value>
</data>
<data name="list members added" xml:space="preserve">
<value>list members added</value>
</data>
<data name="list members not followed" xml:space="preserve">
<value>list members not followed</value>
</data>
<data name="lists made" xml:space="preserve">
<value>lists made</value>
</data>
<data name="located posts already here" xml:space="preserve">
<value>located posts already here</value>
</data>
<data name="located posts imported" xml:space="preserve">
<value>located posts imported</value>
</data>
<data name="not found: {0}" xml:space="preserve">
<value>not found: {0}</value>
</data>
<data name="notification policy set" xml:space="preserve">
<value>notification policy set</value>
</data>
<data name="other items left out" xml:space="preserve">
<value>other items left out</value>
</data>
<data name="pictures and files imported" xml:space="preserve">
<value>pictures and files imported</value>
</data>
<data name="pictures not in the archive" xml:space="preserve">
<value>pictures not in the archive</value>
</data>
<data name="pictures refused" xml:space="preserve">
<value>pictures refused</value>
</data>
<data name="posts already here" xml:space="preserve">
<value>posts already here</value>
</data>
<data name="posts by others left out" xml:space="preserve">
<value>posts by others left out</value>
</data>
<data name="posts deleted here, left deleted" xml:space="preserve">
<value>posts deleted here, left deleted</value>
</data>
<data name="posts imported" xml:space="preserve">
<value>posts imported</value>
</data>
<data name="posts pinned" xml:space="preserve">
<value>posts pinned</value>
</data>
<data name="private posts left out" xml:space="preserve">
<value>private posts left out</value>
</data>
<data name="profile updated" xml:space="preserve">
<value>profile updated</value>
</data>
<data name="scheduled posts imported" xml:space="preserve">
<value>scheduled posts imported</value>
</data>
<data name="scheduled posts past or refused" xml:space="preserve">
<value>scheduled posts past or refused</value>
</data>
<data name="servers blocked" xml:space="preserve">
<value>servers blocked</value>
</data>
</root>