diff options
| author | Adam Soltys <[email protected]> | 2026-08-02 13:40:54 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-08-02 13:40:54 -0700 |
| commit | 95263c02a13a825a8d02dbe760f2a74de8f93f77 (patch) | |
| tree | 1383d4ca48ec24eedb26fd7740f13e1295d55bdf /src/i18n.js | |
| parent | 6416bd5dd79c3bdde5dfa7e7ec95fc811fbcdb28 (diff) | |
| download | coinosv3-95263c02a13a825a8d02dbe760f2a74de8f93f77.tar.gz coinosv3-95263c02a13a825a8d02dbe760f2a74de8f93f77.zip | |
Chat v2: DMs, invites, and multi-community — coinos is the default, not the only
- NIP-17 private DMs (src/dm.js): kind-14 rumors in sender-signed seals under
ephemeral wraps; interops with other nostr DM clients. Login signers gained
encryptTo/decryptFrom so extensions and bunkers can seal to a peer; the
inbox listens for both the login npub and the wallet key and publishes a
kind-10050 DM-relay list for the wallet key when none exists.
- Concord invites (CORD-05): mint shareable links (33301 bundle on relays,
keys only in the URL fragment), join by pasting a link or opening
v3.coinos.io/invite/…, and direct invites giftwrapped to an npub with the
k-tag index hint. Bundles self-certify the founder before anything joins.
- Multi-community: home view lists DM threads and communities; found your own
community in-app (owner-signed genesis). coinos stays baked in as default.
- Welcome DM: the names registrar DMs every first-time registrant from Adam's
npub on claim (config: welcome{sk,message}; deduped in registrar state).
Every new wallet auto-claims a payment address, so every new user gets one.
- relay.coinos.io write policy now allows 33301/13302/13303.
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Wvj4aoeMZwA7VUGdJP9Swi
Diffstat (limited to 'src/i18n.js')
| -rw-r--r-- | src/i18n.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/i18n.js b/src/i18n.js index 0837f48..e87a49d 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -167,6 +167,35 @@ const STR = { msgDelete: 'Delete message', msgNoIdentity: 'No nostr identity available to sign with', msgSendFailed: 'No relay accepted the message', + msgDmsTitle: 'Messages', + msgCommunitiesTitle: 'Communities', + msgNewDm: 'New message', + msgNoDms: 'No conversations yet.', + msgNoDmsYet: 'No messages yet — say hi!', + msgDmPlaceholder: 'Message', + msgDmEncrypted: 'Private message · end-to-end encrypted', + msgYouPrefix: 'You:', + msgOpen: 'Open', + msgNpubPlaceholder: 'npub…', + msgBadNpub: 'Not a valid npub', + msgSignerNoDm: 'This signer cannot encrypt DMs — log in again', + msgJoin: 'Join', + msgCreate: 'Create', + msgInvitePlaceholder: 'Paste an invite link', + msgNamePlaceholder: 'Community name', + msgBadInvite: 'Not a valid invite link', + msgInviteLoading: 'Fetching invite…', + msgInviteNotFound: 'Invite not found on its relays', + msgInviteRevoked: 'This invite has been revoked', + msgInviteExpired: 'This invite has expired', + msgInviteTo: 'You are invited to {name}', + msgInviteFounder: 'Founded by {npub}', + msgDirectInvite: '{from} invited you to {name}', + msgDismiss: 'Dismiss', + msgInviteTitle: 'Invite people', + msgCopyInvite: 'Copy invite link', + msgLinkCopied: 'Invite link copied', + msgInviteSent: 'Invite sent', copyAddress: 'Copy address', paymentReceived: 'Payment received!', tapToProceed: 'Tap anywhere to proceed', |
