refactor(orbit): switch share link to psysonic2- magic string format

Aligns orbit invites with the existing magic-string family (psysonic1- for
server invites, psysonic2- for library shares) by folding orbit into the
psysonic2- payload as a new k:'orbit' variant. The JSON body is
intentionally extendable so future layers (passwords, permissions,
invite expiry) can be added without a format migration.

- SharePayloadV1 split into EntitySharePayloadV1 + OrbitSharePayloadV1
- decodeSharePayloadFromText filters orbit out; orbit has its own decoder
- applySharePastePayload param narrowed to EntitySharePayloadV1
- buildOrbitShareLink / parseOrbitShareLink kept as thin wrappers
- slug parameter dropped (magic string is opaque, so the slug was
  cosmetic-only in the old URL form); slugifyOrbitName removed as dead code
- joinModalLinkPlaceholder updated in all 8 locales

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Psychotoxical
2026-04-24 23:59:37 +02:00
parent 682fe99bba
commit 0d18d5dfa9
12 changed files with 84 additions and 79 deletions
+1 -1
View File
@@ -1501,7 +1501,7 @@ export const deTranslation = {
joinModalTitle: 'Einer Orbit-Session beitreten',
joinModalSub: 'Füge den Einladungslink ein, den dir der Host geschickt hat.',
joinModalLinkLabel: 'Einladungslink',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Akzeptiert jeden gültigen Orbit-Link. Der Link muss zu dem Server gehören, auf dem du gerade angemeldet bist.',
joinModalPasteTooltip: 'Aus Zwischenablage einfügen',
joinModalSubmit: 'Beitreten',
+1 -1
View File
@@ -1505,7 +1505,7 @@ export const enTranslation = {
joinModalTitle: 'Join an Orbit session',
joinModalSub: 'Paste the invite link your host sent you.',
joinModalLinkLabel: 'Invite link',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Works with any valid Orbit link. Must point to the server you\'re currently signed into.',
joinModalPasteTooltip: 'Paste from clipboard',
joinModalSubmit: 'Join',
+1 -1
View File
@@ -1488,7 +1488,7 @@ export const esTranslation = {
joinModalTitle: 'Unirse a una sesión Orbit',
joinModalSub: 'Pega el enlace de invitación que te envió tu anfitrión.',
joinModalLinkLabel: 'Enlace de invitación',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Funciona con cualquier enlace Orbit válido. Debe apuntar al servidor al que estás conectado actualmente.',
joinModalPasteTooltip: 'Pegar desde el portapapeles',
joinModalSubmit: 'Unirse',
+1 -1
View File
@@ -1483,7 +1483,7 @@ export const frTranslation = {
joinModalTitle: 'Rejoindre une session Orbit',
joinModalSub: 'Colle le lien d\'invitation que ton hôte t\'a envoyé.',
joinModalLinkLabel: 'Lien d\'invitation',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Fonctionne avec tout lien Orbit valide. Doit pointer vers le serveur auquel tu es actuellement connecté.',
joinModalPasteTooltip: 'Coller depuis le presse-papiers',
joinModalSubmit: 'Rejoindre',
+1 -1
View File
@@ -1482,7 +1482,7 @@ export const nbTranslation = {
joinModalTitle: 'Bli med i en Orbit-økt',
joinModalSub: 'Lim inn invitasjonslenken verten sendte deg.',
joinModalLinkLabel: 'Invitasjonslenke',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Fungerer med enhver gyldig Orbit-lenke. Må peke til serveren du er innlogget på.',
joinModalPasteTooltip: 'Lim inn fra utklippstavlen',
joinModalSubmit: 'Bli med',
+1 -1
View File
@@ -1482,7 +1482,7 @@ export const nlTranslation = {
joinModalTitle: 'Deelnemen aan een Orbit-sessie',
joinModalSub: 'Plak de uitnodigingslink die je host je gestuurd heeft.',
joinModalLinkLabel: 'Uitnodigingslink',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Werkt met elke geldige Orbit-link. Moet verwijzen naar de server waarop je nu bent aangemeld.',
joinModalPasteTooltip: 'Plakken vanaf klembord',
joinModalSubmit: 'Deelnemen',
+1 -1
View File
@@ -1562,7 +1562,7 @@ export const ruTranslation = {
joinModalTitle: 'Присоединиться к сессии Orbit',
joinModalSub: 'Вставь ссылку-приглашение от хоста.',
joinModalLinkLabel: 'Ссылка-приглашение',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: 'Работает с любой действительной ссылкой Orbit. Должна указывать на сервер, на котором ты сейчас авторизован.',
joinModalPasteTooltip: 'Вставить из буфера обмена',
joinModalSubmit: 'Присоединиться',
+1 -1
View File
@@ -1475,7 +1475,7 @@ export const zhTranslation = {
joinModalTitle: '加入 Orbit 会话',
joinModalSub: '粘贴主持人发给你的邀请链接。',
joinModalLinkLabel: '邀请链接',
joinModalLinkPlaceholder: 'psysonic2://orbit/…',
joinModalLinkPlaceholder: 'psysonic2-…',
joinModalLinkHelper: '适用于任何有效的 Orbit 链接。必须指向你当前登录的服务器。',
joinModalPasteTooltip: '从剪贴板粘贴',
joinModalSubmit: '加入',