Commit Graph

9577 Commits

Author SHA1 Message Date
Vitor Pamplona 7c22c4e6c5 Migrates to collections 1.6, which deprecates iOS Intel targets. 2026-03-16 13:45:01 -04:00
Vitor Pamplona ea6116cd5c Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
  Fix swipe-back triggering unwanted draft deletion signing
  fix: revert ReactionsSettingsScreen to upstream version
  fix(nav): preserve screen state across overlay navigation
  feat(search): collapsible section headers + sorting + search improvements
  fix(ui): remove duplicate back button from SinglePaneLayout
  refactor(search): extract thread-safe EventDeduplicator, unify dedup
  fix(search): loading indicator, result delivery, and history race
  fix(search): cleanup review findings — dead code, FQN refs, naming
  refactor(search): extract shared code to commons, remove dead code
  feat(search): add keyboard shortcuts, search history UI, and operator hints
  feat(search): add SearchHistoryStore with recent queries and saved searches
  feat(search): add advanced search UI with panel, results list, and SearchScreen rewrite
  feat(search): add AdvancedSearchBarState with bidirectional sync
  feat(search): add SearchFilterFactory and SearchResultFilter
  feat(search): add query engine — SearchQuery, QueryParser, QuerySerializer, KindRegistry
2026-03-16 13:02:52 -04:00
Vitor Pamplona 81ecaa82ff Migrates to vico charts 3.0 2026-03-16 12:53:54 -04:00
Vitor Pamplona 714afdc2a8 Update dependencies 2026-03-16 09:35:41 -04:00
Vitor Pamplona 7f6219c846 Merge pull request #1859 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-16 08:19:13 -04:00
Crowdin Bot be09535cd6 New Crowdin translations by GitHub Action 2026-03-16 12:17:53 +00:00
Vitor Pamplona 2acf02945b Merge pull request #1840 from nrobi144/feat/desktop-advanced-search
feat(desktop): advanced search with NIP-50, collapsible sections, and nav state preservation
2026-03-16 08:14:18 -04:00
Vitor Pamplona f5d4d967eb Merge pull request #1858 from dadofsambonzuki/fix/dm-swipe-back-signing
Fix swipe-back triggering unwanted draft deletion signing
2026-03-16 08:12:56 -04:00
Nathan Day 1c663cb26b Fix swipe-back triggering unwanted draft deletion signing
When swiping back on a DM screen with an empty message, the BackHandler
was calling sendDraftSync() which checks if the message is blank and then
calls deleteDraftIgnoreErrors(). This creates and signs a NIP-09 DeletionEvent,
prompting the external signer to sign a deletion event.

The fix adds a check to only call sendDraftSync() when there's actual
content in the message, avoiding the unnecessary signing prompt.
2026-03-16 10:32:18 +00:00
nrobi144 e4b4606ab9 fix: revert ReactionsSettingsScreen to upstream version
Spotless reformatted this file during merge. Restoring upstream's
version to avoid unintended changes to the mobile app.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 07:35:09 +02:00
Vitor Pamplona 78ffd5ec6b Moves nip06 tests to the right package. 2026-03-15 21:32:02 -04:00
Vitor Pamplona d426dbd4ff adds icons for desktop releases 2026-03-15 21:10:59 -04:00
Vitor Pamplona 04b4429809 removes another deprecation 2026-03-15 20:57:46 -04:00
Vitor Pamplona d10b43c098 Migrates old Preview annotation 2026-03-15 20:55:55 -04:00
Vitor Pamplona 8b4a45cb5b Removing deprecated library addresses and deprecated apis 2026-03-15 20:52:01 -04:00
Vitor Pamplona bda7e48a84 removes more warnings 2026-03-15 20:33:31 -04:00
Vitor Pamplona e87ac7468d Removing Locale deprecations 2026-03-15 20:29:05 -04:00
Vitor Pamplona 49f5d9518e Fixes warnings 2026-03-15 20:26:31 -04:00
Vitor Pamplona 19ca7afcb8 fixes warnings 2026-03-15 20:06:20 -04:00
Vitor Pamplona 1cdd061b06 removing warnings 2026-03-15 20:03:39 -04:00
Vitor Pamplona 929b5d6175 Merge pull request #1853 from vitorpamplona/claude/add-relay-event-counters-c7stK
Add NIP-45 COUNT query support to relay management UI
2026-03-15 19:58:19 -04:00
Vitor Pamplona 45b947ec68 Merge branch 'main' into claude/add-relay-event-counters-c7stK 2026-03-15 19:58:12 -04:00
Vitor Pamplona 88565d02ad Merge pull request #1856 from vitorpamplona/claude/cross-platform-github-actions-xeNlt
Refactor CI/CD workflows for multi-platform builds
2026-03-15 19:57:59 -04:00
Vitor Pamplona 0e476c8988 Adds test and some refinements. 2026-03-15 19:51:39 -04:00
Claude d996911cda feat: add cross-platform CI for Linux, macOS, and Windows
- Split build.yml into lint, test (matrix: 3 OS), build-android, and
  build-desktop (matrix: 3 OS with native packaging) jobs
- Tests now run on ubuntu, macos, and windows to validate cross-platform
  compatibility
- Desktop distributions (DEB, DMG, MSI) built on their native OS and
  uploaded as artifacts
- Split create-release.yml into create-release, deploy-android, and
  deploy-desktop jobs so desktop distributions are included in releases
- Android APK/AAB builds and Quartz publishing remain on Linux

https://claude.ai/code/session_016dxFUErY4P6WRir4xxhCEr
2026-03-15 21:34:18 +00:00
Vitor Pamplona 61089fa866 Merge branch 'main' into claude/add-relay-event-counters-c7stK 2026-03-15 17:30:23 -04:00
Vitor Pamplona 91a9dcb9a1 Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  Rename build step for Benchmark APK in workflow
  compilation error fix: Changed map to mapNotNull
  spotlessApply
2026-03-15 17:16:00 -04:00
Vitor Pamplona 3624d584db Merge pull request #1855 from vitorpamplona/davotoula-patch-1
Rename build step for Benchmark APK in workflow
2026-03-15 17:15:39 -04:00
Vitor Pamplona 2fd29ab365 uses quiet mode to avoid lots of warnings in the commit screen 2026-03-15 17:15:16 -04:00
Vitor Pamplona cef8f5acde Fixes test case 2026-03-15 17:14:57 -04:00
David Kaspar 76c6f50fa8 Rename build step for Benchmark APK in workflow 2026-03-15 20:57:02 +00:00
Vitor Pamplona 6216f7a618 no casts needed 2026-03-15 16:55:00 -04:00
Vitor Pamplona 0c939bd447 converted from Java arraylist to kotlin arraylist 2026-03-15 16:50:34 -04:00
davotoula 3cfa9e1619 compilation error fix: Changed map to mapNotNull 2026-03-15 21:37:21 +01:00
davotoula cd9d345a0e spotlessApply 2026-03-15 21:35:23 +01:00
Vitor Pamplona 30b76347c5 Spotless 2026-03-15 16:15:44 -04:00
Vitor Pamplona 04d04ebe69 Merge pull request #1854 from vitorpamplona/claude/kotlin-serialization-mapper-4WYOP
Add Kotlin Serialization support for Nostr protocol types
2026-03-15 16:04:21 -04:00
Vitor Pamplona ea48c2a5ec Merge branch 'main' into claude/kotlin-serialization-mapper-4WYOP 2026-03-15 16:03:55 -04:00
Vitor Pamplona badc681511 Merge pull request #1851 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-15 16:01:44 -04:00
Claude d10687d6fe feat: Implement iOS OptimizedJsonMapper using KotlinSerializationMapper
Replace all TODO stubs in the iOS actual implementation with delegation
to KotlinSerializationMapper. Wraps SerializationException into
IllegalArgumentException to match the jvmAndroid error handling pattern.

https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 19:58:40 +00:00
Claude 3bea2f795c refactor: Move KSerializers to their respective NIP packages
- Bunker serializers → nip46RemoteSigner/kotlinSerialization/
- NIP-47 serializers → nip47WalletConnect/kotlinSerialization/
- Rumor serializer → nip59Giftwrap/rumors/kotlinSerialization/

Mirrors the existing Jackson serializer directory structure which uses
a jackson/ subpackage within each NIP package.

https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 19:55:19 +00:00
Claude ffac682238 feat: Add kotlinx.serialization KSerializers mirroring all Jackson custom serializers
Add 15 KSerializer implementations in commonMain that replicate the exact
behavior of all 21 Jackson serializer/deserializer registrations:

- EventKSerializer, TagArrayKSerializer, FilterKSerializer
- EventTemplateKSerializer, RumorKSerializer, CountResultKSerializer
- MessageKSerializer (8 message types), CommandKSerializer (5 command types)
- BunkerRequest/Response/MessageKSerializer (NIP-46)
- Nip47Request/Response/NotificationKSerializer (NIP-47)
- KotlinSerializationMapper as the main entry point

Uses JsonElement-based approach for performance. All serializers produce
identical JSON output to Jackson. Includes comprehensive test suite (35+
tests) verifying exact output parity and cross-deserialization between
Jackson and kotlinx.serialization.

https://claude.ai/code/session_01QBc4Pb7a6m4TfLZSJKVdjw
2026-03-15 16:37:22 +00:00
Claude 22945b7faa feat: add queryCountSuspend utility to Quartz and simplify ViewModels
Add INostrClient.queryCountSuspend() extension functions in Quartz that
wrap NIP-45 COUNT queries as suspend functions, managing subscription
lifecycle internally. Two overloads: single-relay and multi-relay.

Simplify BasicRelaySetupInfoModel and Nip65RelayListViewModel to use the
new utility — removes IRelayClientListener implementation, subId tracking
maps, onIncomingMessage handlers, and cleanup logic from both ViewModels.

https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 16:14:24 +00:00
Crowdin Bot d8de0a9b84 New Crowdin translations by GitHub Action 2026-03-15 15:47:20 +00:00
Claude 17c3611f50 feat: redesign RelayEventCountRow with pill chip style
Replace the plain icon+text count display with rounded pill chips that
have a subtle green border and tinted background. Each count entry gets
its own pill with an icon and bold text, making the event counts more
visually distinct and scannable.

https://claude.ai/code/session_016158D5mq5BygS1uBbLNbsA
2026-03-15 15:46:56 +00:00
Vitor Pamplona 3bd6ef5f6c changes from damus to nos.lol for more stable relay behavior in tests 2026-03-15 11:44:20 -04:00
Vitor Pamplona 2b157cc383 Fixes throw vs null test cases and nsec hallucinations 2026-03-15 11:18:39 -04:00
Vitor Pamplona a793ff149b Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
2026-03-15 11:18:10 -04:00
Vitor Pamplona c0a81ef9a2 Merge pull request #1850 from vitorpamplona/l10n_crowdin_translations
New Crowdin Translations
2026-03-15 11:07:30 -04:00
Crowdin Bot 68f58c3b8d New Crowdin translations by GitHub Action 2026-03-15 15:06:39 +00:00