Commit Graph

9528 Commits

Author SHA1 Message Date
David Kaspar ce3f9bec5c Merge pull request #1838 from davotoula/update-translations
update cz, pt, de, sv
2026-03-14 05:04:49 +00:00
davotoula 3f1e826a10 update cz, pt, de, sv 2026-03-14 06:00:21 +01:00
Claude 580678eed8 feat: add server-side event builders and NIP-47 README for quartz
Adds missing server-side capabilities to the NIP-47 quartz module:

- LnZapPaymentResponseEvent.createResponse(): builds encrypted response
  events (kind 23195) for wallet services to reply to client requests
- NwcNotificationEvent.createNotification(): builds encrypted notification
  events (kind 23197) for wallet services to push payment notifications

Creates comprehensive README.md documenting the full NIP-47 API with
code examples for both wallet client and wallet service implementations,
covering URI parsing, request/response building, encryption, notifications,
error handling, transaction states, and caching.

https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 04:25:27 +00:00
Claude 4b76c70c29 feat: add NIP-47 wallet interface with balance, send, receive, and transactions
Adds an Alby Go-inspired wallet interface accessible from the left drawer menu.
Uses existing NWC connection from zap settings to communicate with the wallet
via NIP-47 methods (get_balance, get_info, pay_invoice, make_invoice, list_transactions).

New files:
- WalletViewModel: manages wallet state and NWC requests
- WalletScreen: balance display with send/receive action buttons
- WalletSendScreen: paste BOLT-11 invoice and pay
- WalletReceiveScreen: create invoice with QR code display
- WalletTransactionsScreen: scrollable transaction history

Also adds generic sendNwcRequest() to NwcSignerState and Account for
sending arbitrary NIP-47 requests beyond just pay_invoice.

https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:52:41 +00:00
Claude 83a6feeca4 feat: add Alby JS SDK client interop improvements
- Add NwcBudgetRenewal constants (daily/weekly/monthly/yearly/never)
- Add case-insensitive NwcTransactionState helpers (isSettled, isPending,
  isFailed, isAccepted) for JS SDK lowercase state interop
- Add URI test using Alby JS SDK test vector (69effe7b... pubkey)
- Add JS SDK interop tests: lowercase transaction states in responses,
  notifications, and list_transactions; empty get_budget response;
  all budget renewal periods; structured transaction metadata;
  full 13-method get_info response

https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:28:17 +00:00
Claude 4ee937ff0c test: add Alby Hub real test vectors to interop tests
Add tests using exact JSON payloads from Alby Hub's test suite:
- Real bolt11 invoice strings from Alby's mock data
- pay_keysend with TLV records and preimage
- make_invoice with nested metadata objects
- make_hold_invoice with 64-char payment hash
- settle_hold_invoice with preimage
- list_transactions with unpaid_outgoing filter
- create_connection with isolated=true

https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 03:00:56 +00:00
Claude 9e4cb446ef feat: add NIP-47 get_budget, sign_message, create_connection methods and Alby Hub interop
- Add get_budget, sign_message, create_connection request/response types
- Add NwcTransactionType (incoming/outgoing) and NwcTransactionState
  (PENDING/SETTLED/FAILED/ACCEPTED) constants
- Add missing error codes: BAD_REQUEST, NOT_FOUND, EXPIRED
- Add settle_deadline field to NwcTransaction
- Add total_count to ListTransactionsResult
- Add metadata and lud16 to GetInfoResult
- Add unpaid_outgoing and unpaid_incoming to ListTransactionsParams
- Update Jackson deserializers for new method types
- Add AlbyInteropTest with 25+ tests verifying compatibility with
  Alby Hub's JSON formats for all request/response types
- Update existing tests for new constants and error codes

https://claude.ai/code/session_01JFogiwyR4CPVP8cRznqahJ
2026-03-14 02:58:40 +00:00
Vitor Pamplona da38555035 Merge pull request #1835 from vitorpamplona/claude/add-swipe-delete-cancel-QjI5b
Add cancel button to swipe-to-delete confirmation UI
2026-03-13 20:42:43 -04:00
Claude bcb5be76c7 feat: Add cancel button to swipe-to-delete confirmation
After swiping a draft to delete, the red confirmation background now
shows both a "Delete" button (left) and a "Cancel" button (right).
Tapping Cancel resets the swipe state, allowing users to dismiss
the delete action without deleting the draft.

https://claude.ai/code/session_01ULVR1fKwka5TgfgSucPE4r
2026-03-13 23:19:47 +00:00
Vitor Pamplona 64118058f2 Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  feat: replace dialog with swipe-to-reveal delete button for drafts
  feat: add confirmation dialog when swiping to delete a draft
2026-03-13 19:11:25 -04:00
Vitor Pamplona 474a875167 Fixes padding of the expiration date on NoteCompose 2026-03-13 19:11:10 -04:00
Vitor Pamplona ae0ab0c153 Merge pull request #1826 from vitorpamplona/claude/draft-delete-confirmation-y28xT
Add confirmation dialog to draft deletion via swipe gesture
2026-03-13 18:48:05 -04:00
Vitor Pamplona 1b5d7fdc13 Merge pull request #1834 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-13 18:14:40 -04:00
Claude b3adc56adf feat: replace dialog with swipe-to-reveal delete button for drafts
Instead of showing a confirmation dialog, the swipe now stays open
revealing a red background with a clickable "Request Deletion" button.
Supports swiping from both left-to-right and right-to-left directions.
The user taps the revealed button to confirm deletion.

https://claude.ai/code/session_01JWJxejv2EKrPj2KGEfPPxU
2026-03-13 22:11:54 +00:00
Crowdin Bot bb88228019 New Crowdin translations by GitHub Action 2026-03-13 22:10:50 +00:00
Vitor Pamplona 1468a41737 Adds expirations to change log 2026-03-13 18:07:33 -04:00
Vitor Pamplona c4c73a2bb7 Adds expirations in all new post screens.
Adds expirations in the feed and chats.
2026-03-13 18:05:59 -04:00
Vitor Pamplona 42fdedf23b fixes spotless 2026-03-13 17:03:24 -04:00
Vitor Pamplona 9cd779b60c Merge pull request #1817 from vitorpamplona/claude/add-post-expiration-date-Nmedg
Add NIP-40 expiration date support to note creation
2026-03-13 17:01:27 -04:00
Vitor Pamplona d81609165e Small refactoring of the relay list screen 2026-03-13 16:28:50 -04:00
Vitor Pamplona d281c2366c Removes the need to pass context down to a composable 2026-03-13 16:04:46 -04:00
Vitor Pamplona 4a5ffb3169 Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  feat: add ZIP/JSON relay export and format picker dropdown
  refactor: extract relay export logic into RelayExporter class
  feat: add export button to relay settings screen
2026-03-13 15:31:22 -04:00
Vitor Pamplona e51967923b adds today's work to change log 2026-03-13 15:20:11 -04:00
Vitor Pamplona 8339413262 Fixes copilot recommendation 2026-03-13 15:20:01 -04:00
Vitor Pamplona b3bfa8950d Merge pull request #1823 from vitorpamplona/claude/export-relay-settings-v8uQg
Add relay settings export functionality
2026-03-13 15:09:25 -04:00
Vitor Pamplona 9b58a1be11 Fixing IO Dispatchers and scopes of choice. 2026-03-13 15:06:03 -04:00
Claude 0ad63bbfc1 feat: add ZIP/JSON relay export and format picker dropdown
- Create RelayListCollection to bundle all relay lists with section metadata
- Create RelayZipExporter that exports each relay category as a separate
  JSON file (array of relay URL strings) inside a zip archive, shared
  via FileProvider
- Refactor RelayExporter to use RelayListCollection
- Replace single export button with a dropdown menu letting users pick
  between text export and ZIP (JSON) export

https://claude.ai/code/session_013PhuahpBFh6djVHzSsmNKM
2026-03-13 18:24:05 +00:00
Vitor Pamplona f3eb609eee Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
2026-03-13 13:45:44 -04:00
Vitor Pamplona 00f2d46b53 Refines user status flow and isExpired running 2026-03-13 13:45:22 -04:00
David Kaspar b9f6017590 Merge pull request #1832 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-13 17:41:23 +00:00
Crowdin Bot 9ec8dc167c New Crowdin translations by GitHub Action 2026-03-13 17:36:41 +00:00
Vitor Pamplona 99eaa37d4c Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  feat: complete NIP-38 implementation with p tag, emoji, and expiration support
2026-03-13 13:33:11 -04:00
Vitor Pamplona 6f57652455 Merge pull request #1827 from vitorpamplona/claude/implement-nip-38-q8DOF
Enhance user status display with emoji support and metadata tags
2026-03-13 13:32:41 -04:00
Vitor Pamplona 1966cc2034 Bitcoin first then namecoin 2026-03-13 13:29:55 -04:00
Claude e83ec94461 refactor: extract relay export logic into RelayExporter class
Moves the text formatting and share intent logic from AllRelayListScreen
into a dedicated RelayExporter class in the common package.

https://claude.ai/code/session_013PhuahpBFh6djVHzSsmNKM
2026-03-13 17:28:39 +00:00
Vitor Pamplona 8bc14b52b2 Spotless update 2026-03-13 13:25:23 -04:00
Vitor Pamplona 34f3692d9a Merge pull request #1815 from vitorpamplona/claude/add-explorer-settings-page-zXosk
feat: add blockchain explorer settings page for OTS verification
2026-03-13 13:22:57 -04:00
Vitor Pamplona f4d6e3cb3e Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-13 13:22:44 -04:00
Vitor Pamplona bcdc8386a0 Merge pull request #1830 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-13 13:18:50 -04:00
Crowdin Bot 178e47ebf5 New Crowdin translations by GitHub Action 2026-03-13 13:28:43 +00:00
Vitor Pamplona 4bf7f982ba Makes the new translation settings work 2026-03-13 09:24:12 -04:00
Vitor Pamplona 3e0b8a5f8f Fixes gradle build on MacOS and adds a Clibsodium.def file 2026-03-13 08:40:51 -04:00
Vitor Pamplona c778c9f109 Adds a hook to get claude web to compile and check android code 2026-03-13 08:40:28 -04:00
Vitor Pamplona ae41a956ac Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
2026-03-13 08:22:28 -04:00
Vitor Pamplona e8a031251a Merge pull request #1829 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-13 08:22:12 -04:00
Vitor Pamplona 9ca79acbe4 lint 2026-03-13 08:21:55 -04:00
Crowdin Bot c0bd88278c New Crowdin translations by GitHub Action 2026-03-13 12:20:55 +00:00
Vitor Pamplona c33ba239d0 Merge pull request #1824 from vitorpamplona/claude/improve-translation-settings-dDwmL
Redesign language settings UI with searchable language pickers
2026-03-13 08:16:58 -04:00
Vitor Pamplona 3a6d199962 Merge pull request #1821 from KotlinGeekDev/kmp-completeness
Kmp completeness, Part 2 - Libsodium
2026-03-13 08:01:33 -04:00
KotlinGeekDev 10f5799014 Merge branch 'vitorpamplona:main' into kmp-completeness 2026-03-13 09:20:58 +01:00