Commit Graph

1098 Commits

Author SHA1 Message Date
nrobi144 8d098cf86d feat(chess): focused polling, promotion fix, and game end celebration
- Add focused game mode to ChessPollingDelegate: when viewing a game,
  only that game is polled instead of all active games
- Fix pawn promotion by parsing promotion suffix in publishMove
  (e.g., "e8q" -> "e8" + QUEEN)
- Add game end overlay with victory/defeat/draw celebration
- Remove all debug println statements for production readiness

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 12:14:34 +02:00
nrobi144 42b33ca04c feat(chess): add platform adapters and enhance lobby state (steps 5-6)
- Add ChessLobbyState with completedGames, replaceGameState(), moveToCompleted()
- Add challengerAvatarUrl to ChessChallenge
- Add CompletedGame data class for game history

Platform Adapters:
- AndroidChessAdapter: AndroidChessPublisher, AndroidRelayFetcher, AndroidMetadataProvider
- DesktopChessAdapter: DesktopChessPublisher, DesktopRelayFetcher, DesktopMetadataProvider

Shared Infrastructure:
- ChessRelayFetchHelper for one-shot relay queries
- IUserMetadataProvider interface for platform-specific metadata
- ChessFilterBuilder with simple filter methods for fetchers
- ChessSubscriptionController interface for subscription management

Fix ChessSubscription.kt to remove broken dataSources().chess reference
(subscriptions now managed by ChessLobbyLogic)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-10 12:14:34 +02:00
nrobi144 e0d0e33408 refactor impl 2026-02-10 12:14:05 +02:00
nrobi144 06accf5831 full chess implementation 2026-02-10 11:58:00 +02:00
nrobi144 18c8156ab2 integrate chess events 2026-02-10 11:56:43 +02:00
nrobi144 19c36c2979 initial nip64 implementation 2026-02-10 11:54:36 +02:00
Vitor Pamplona eb66182211 - Updates several libraries
- Reformats code to the newest Klint
- Fixes isEmpty bug on Filters
2026-02-09 14:06:07 -05:00
Vitor Pamplona 710f15f790 - Fixes copyright using KDoc patterns instead of simpler comments
- Moves spotless and git-hooks to hidden folders
2026-02-09 13:06:41 -05:00
Vitor Pamplona 6125394354 Migrates to AGP 9 2026-02-08 16:33:39 -05:00
Vitor Pamplona 913b694f78 Clean up on unnecessary methods on Note 2026-02-08 11:35:26 -05:00
Vitor Pamplona 2e85d1356e Fixes Addressable vs Replaceable bases 2026-02-07 17:48:37 -05:00
Vitor Pamplona 03e8316db4 Moves lud06 to lud16 mapping to Quartz 2026-02-07 12:29:13 -05:00
Vitor Pamplona ec629ff081 Migrates contact list management to addressable notes
Creates new observable flows for LocalCache.
2026-02-06 16:12:11 -05:00
Vitor Pamplona e97a30fcb1 Migrates to use "title" instead of "name" tags for NIP-51 lists. 2026-02-05 18:20:04 -05:00
Vitor Pamplona d2f77ed521 Merge branch 'main' of https://github.com/vitorpamplona/amethyst
* 'main' of https://github.com/vitorpamplona/amethyst: (48 commits)
  Use accountViewModel.viewModelScope instead of rememberCoroutineScope() to allow download/share to finish even when controls auto-close.
  Add content parameter to allow sharing of video from video player
  New Crowdin translations by GitHub Action
  - use a valid hex key - check the value of the tags
  Fixed NullPointerException when filter contain tags
  Fix assertEquals order
  fix Jackson deserialization for empty Filters and add regression test
  New Crowdin translations by GitHub Action
  Consume File.delete() return values Extract duplicated "https://" literal into a private const val HTTPS_PREFIX
  New Crowdin translations by GitHub Action
  New Crowdin translations by GitHub Action
  New Crowdin translations by GitHub Action
  Load and save payment targets
  refactor(commons): migrate from Moko to Compose Multiplatform Resources
  feat(broadcast): Enhance retry, multi-broadcast UI, and post tracking (#1682)
  wip: Add BroadcastTracker to AccountViewModel (#1682)
  feat(broadcast): Add transparent event broadcasting feedback (#1682)
  Enabled the reactions expand control for zapraisers even when there are no zaps
  New Crowdin translations by GitHub Action
  refactor to reduce complexity encodePcmToAac
  ...

# Conflicts:
#	amethyst/src/main/java/com/vitorpamplona/amethyst/ui/screen/loggedIn/notifications/CardFeedState.kt
2026-02-04 14:35:35 -05:00
Vitor Pamplona 7bc7265757 Refactors the old NIP-05 code on Quartz
New Caching system for User metadata
New Caching system for NIP-05 verifications
2026-02-04 14:31:30 -05:00
greenart7c3 577b4c0e0a - use a valid hex key
- check the value of the tags
2026-01-30 09:38:09 -03:00
greenart7c3 f2d7b115d9 Fixed NullPointerException when filter contain tags 2026-01-30 09:00:52 -03:00
greenart7c3 8bfd670f8b Fix assertEquals order 2026-01-30 08:50:09 -03:00
greenart7c3 247e30beed fix Jackson deserialization for empty Filters and add regression test 2026-01-30 07:31:38 -03:00
greenart7c3 058cdc782a Load and save payment targets 2026-01-26 11:18:48 -03:00
davotoula 505a6583ee remove unused imports 2026-01-15 14:20:05 +01:00
Vitor Pamplona 92d4654b20 Removes the memory counter methods because they are not the best way to measure the size in memory of these objects, since we intern strings all the time. 2026-01-14 16:49:11 -05:00
Vitor Pamplona 3d0b0c01b9 Finishes editing quartz event store readme 2026-01-14 15:36:32 -05:00
Vitor Pamplona adb2f48fb5 Updates event store readme 2026-01-14 15:29:13 -05:00
Vitor Pamplona 6097a0b5b7 Removes the need for an extra object for the tag array in the custom emoji nip 2026-01-13 17:32:38 -05:00
Vitor Pamplona 7c1053df2d Moves reports to common
Adds support for additional information
2026-01-13 14:37:32 -05:00
Vitor Pamplona d24fe03bdd Avoids crashing when the k tag is a text 2026-01-10 18:34:01 -05:00
Vitor Pamplona 1ead2983ac Moves to a fork model via interfaces to start creating specific screens for each event type 2026-01-10 11:36:11 -05:00
Vitor Pamplona 1c26ccecc0 Adds support for NipTexts on Amethyst 2026-01-10 11:15:03 -05:00
Vitor Pamplona 54c1605de7 v1.05.1 2026-01-08 19:01:01 -05:00
Vitor Pamplona 466ae37b85 Fixes bug of mixing DMs between the logged in users. 2026-01-08 17:30:46 -05:00
Vitor Pamplona bb01918120 v1.05.0 2026-01-08 16:21:30 -05:00
Vitor Pamplona dd259bab33 Separates currentFilters from lastSeenFilters to correctly close subscriptions with relays when ending them on NostrClient. 2026-01-08 10:00:42 -05:00
Vitor Pamplona 92f07c5615 Remove deprecated field 2026-01-07 14:33:56 -05:00
Vitor Pamplona dceabbb51e delete duplicated file 2026-01-07 14:33:45 -05:00
Vitor Pamplona dd9d7ac0c8 Merge remote-tracking branch 'origin/nrobi144/desktop-phase1'
* origin/nrobi144/desktop-phase1:
  Fixes FilledFilter test
  moves keystore to commons to avoid unnecessary dependencies on Quartz
  Fixes missing tagsAll
2026-01-07 11:41:30 -05:00
Vitor Pamplona ce01e8f70c moves keystore to commons to avoid unnecessary dependencies on Quartz 2026-01-07 11:09:45 -05:00
Vitor Pamplona 9232da7421 Merge branch 'main' into nrobi144/desktop-phase1 2026-01-07 10:43:15 -05:00
Vitor Pamplona dcbe7df007 Fixes test 2026-01-07 10:07:26 -05:00
Vitor Pamplona 41cb143e0d Merge branch 'main' into nrobi144/desktop-phase1 2026-01-07 09:23:57 -05:00
Vitor Pamplona b65546487d Adjusts tests to be more flexible when reading NIPs from NIP-11 2026-01-06 18:57:56 -05:00
Vitor Pamplona 93b139da62 Fixes test case 2026-01-06 18:39:51 -05:00
Vitor Pamplona e26fb94933 Improvements on NIP-11
- Support for self, privacy_policy, terms_of_service, grasps
- New UI for the Relay Information Screen
- Improvements to the Debug Message
- Compose-stable objects
- Clickable elements for NIPs, external links, grasps, etc
2026-01-06 17:38:47 -05:00
nrobi144 fd83560852 key storage implementation 2026-01-06 17:08:28 +02:00
nrobi144 df9d648988 key storage spotless 2026-01-06 06:50:31 +02:00
nrobi144 4339247815 key storage 2026-01-06 06:49:59 +02:00
Vitor Pamplona 40f9622722 Checks kind size before throwing 2026-01-05 19:41:23 -05:00
Vitor Pamplona 8a5e05c0ac Simple check to make sure events are valid. 2026-01-05 19:26:24 -05:00
Vitor Pamplona 69c53aca06 Improving error logs 2026-01-05 19:26:00 -05:00