Commit Graph

429 Commits

Author SHA1 Message Date
William Casarin
d108df86b4 tokens: add token serialization for AlgoTimeline
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
ed455f7ea4 add tokenator crate
also remove a lot of the "advanced" token parsing style
which was a bit too verbose for my tastes

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
29491cca05 tokens: initial Route token serializer
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
4e87ed7065 tokens: add TimelineRoute token serializer
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
70a39ca69c tokens: add PubkeySource and ListKinds token serializer
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
6b57401e14 tokens: add AccountsRoute token serializer
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
00ef3082f3 tokens: add a more advanced tokens parser
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
efa5b7e32f token_parser: simplify AddColumnRoute serialization
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
4f89d95aef token_serializer: introduce TokenWriter
This simplifies token serialization

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
61b3a92792 token_parser: unify parsing and serialization
This reduces the number of things we have to update in our token parser
and serializer. For payloads, we we have to handle the payload cases
different, but we now have a structure that can deal with that
efficiently.

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
005ecd740d Initial token parser combinator
In an attempt to make our deck serializer more localized,
comprehensible, and less error-prone, we introduce a new parser
combinator based around string tokens.

This replaces the Selection-based intermediary types so that we have a
more direct serialization style.
2025-02-04 08:08:08 -08:00
William Casarin
662755550f wip algo timelines
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-04 08:08:08 -08:00
William Casarin
9dd33d5c5b pfp: 4.0 stroke, add border_stroke method
This reduces code duplication, and makes the border a bit cleaner
so that it blends into the panel color

Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-03 20:24:51 -08:00
William Casarin
96481a47f3 pfp: remove border except for profile
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-03 19:45:32 -08:00
William Casarin
635c9770de Merge 'add border behind pfp' #597
Hello new contributor!

jglad (4):
      #597 add border behind pfp
      replace with full circle border
      make optional
      fix formatting
2025-02-03 19:34:10 -08:00
kernelkind
623b4617d2 move login help text below TextEdit
closes: https://github.com/damus-io/notedeck/issues/687

Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-03 15:30:32 -05:00
William Casarin
f8f3676450 clippy fixes
Signed-off-by: William Casarin <jb55@jb55.com>
2025-02-03 11:38:55 -08:00
kernelkind
2b7d66e7ae add deck icon hover tooltip with deck name
closes: https://github.com/damus-io/notedeck/issues/691

Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-02-03 14:32:39 -05:00
Derek Ross
baf1dc0d7e fix: change word verification to identification 2025-01-31 19:52:17 -05:00
Derek Ross
582a43e9f4 fix: updated NIP-05 verification to Nostr address 2025-01-31 19:47:59 -05:00
William Casarin
69b7581a53 Notedeck Alpha 2 Release - v0.3
Thanks again to kernel and ken, as well as some new contributors:
kieran, daniel saxton for our alpha 2 release!

Added
=====

- Clicking a mention now opens profile page (William Casarin)
- Note previews when hovering reply descriptions (William Casarin)
- Media uploads (kernelkind)
- Profile editing (kernelkind)
- Add hashtags to posts (Daniel Saxton)
- Enhanced command-line interface for user interactions (Ken Sedgwick)
- Various Android updates and compatibility improvements (Ken Sedgwick, William Casarin)
- Debug features for user relay-list and mute list synchronization (Ken Sedgwick)

Changed
=======

- Add confirmation when deleting columns (kernelkind)
- Enhance Android build and performance (Ken Sedgwick)
- Image cache handling using sha256 hash (kieran)
- Introduction of decks_cache and improvements (kernelkind)
- Migrated to egui v0.29.1 (William Casarin)
- Only show column delete button when not navigating (William Casarin)
- Show profile pictures in column headers (William Casarin)
- Show usernames in user columns (William Casarin)
- Switch to only notes & replies on some tabs (William Casarin)
- Tombstone muted notes (Ken)
- Pointer interactions enhancements in UI (William Casarin)
- Persistent theme setup across sessions (kernelkind)
- Increased ping intervals for network performance (William Casarin)
- Nostrdb update for async support (Ken Sedgwick)

Fixed
=====

- Fix GIT_COMMIT_HASH compilation issue (William Casarin)
- Fix avatar alignment in profile previews (William Casarin)
- Fix broken quote repost hitbox (William Casarin)
- Fix crash when navigating in debug mode (William Casarin)
- Fix long delays when reconnecting (William Casarin)
- Fix repost button size (William Casarin)
- Fixed since kind filters (kernelkind)
- Clippy warnings resolved (Dimitris Apostolou)

Refactoring & Improvements
==========================

- Numerous internal structural improvements and modularization (William Casarin, Ken Sedgwick)

Signed-off-by: William Casarin <jb55@jb55.com>
2025-01-31 10:31:07 -08:00
jglad
cd72cc36e8 fix formatting 2025-01-31 08:41:25 +01:00
jglad
803f427f77 make optional 2025-01-30 19:14:02 +01:00
jglad
a0f2521bdd replace with full circle border 2025-01-29 18:19:42 +01:00
jglad
a70817743a #597 add border behind pfp 2025-01-28 18:10:21 +01:00
William Casarin
478603e16e contacts: disable hashtag follows for now
People are spamming hashtags with AI CP. Let's disable this until we
at least have image blurring.

Alternatively we could only show the link for people you don't follow.

Signed-off-by: William Casarin <jb55@jb55.com>
2025-01-27 12:30:22 -08:00
William Casarin
6dd0e5207e Merge image uploading from kernel
kernelkind (8):
      upload media button
      get file binary
      import base64
      notedeck_columns: use sha2 & base64
      use rfd for desktop file selection
      add utils for uploading media
      draft fields for media upload feat
      ui: user can upload images
2025-01-25 16:17:11 -08:00
William Casarin
0c3db9a31e Merge additional account relay list improvements from Ken
Ken Sedgwick (1):
      additional account relay list improvements
2025-01-25 16:16:03 -08:00
William Casarin
8ad9ad20ba Merge clippy fixes from Dimitris
Dimitris Apostolou (1):
      Fix clippy warnings
2025-01-25 16:15:13 -08:00
William Casarin
8a87791594 morenotes: show pointer on hover
all clickable things should show pointers

Cc: kernel
2025-01-25 16:06:32 -08:00
kernelkind
5b0068e6cb add more notes indicator
closes: https://github.com/damus-io/notedeck/issues/72

Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-25 17:48:34 -05:00
kernelkind
7abf1c9c15 ui: user can upload images
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
1091bd0cdf draft fields for media upload feat
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
b1aaeecdc2 add utils for uploading media
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
5aa1c982cd use rfd for desktop file selection
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
b5a782a06e notedeck_columns: use sha2 & base64
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
d96be829cd get file binary
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
kernelkind
1a0e232176 upload media button
Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-24 15:43:48 -05:00
Dimitris Apostolou
2c8f6298b8 Fix clippy warnings
Signed-off-by: Dimitris Apostolou <dimitris.apostolou@icloud.com>
2025-01-24 19:32:24 +02:00
Ken Sedgwick
1e0801f54b additional account relay list improvements
- Use the current selected account only to determine desired
  relays. Previously the desired relay list was determined from the
  union of all accounts.
- Update the relay configuration immediately when the user switches accounts.
- Delete relays from the account (instead of the relay pool
  directly). This results in the relay being removed in the pool as
  well, but is persisted correctly.
2025-01-23 16:07:49 -08:00
William Casarin
2cbae68a7f Merge remote-tracking branches 'github/pr/657' and 'github/pr/658' 2025-01-22 16:04:45 -08:00
Ken Sedgwick
94a1d78114 publish NIP-65 relay lists 2025-01-22 15:16:08 -08:00
Ken Sedgwick
fe3e2dad14 add Accounts::add_advertised_relay 2025-01-21 16:03:44 -08:00
Ken Sedgwick
e436be400e add add relay GUI 2025-01-21 12:21:13 -08:00
kieran
0249b5ab04 Always update accounts 2025-01-21 10:29:22 +00:00
William Casarin
43637f52bb Merge a few fixes from kernel #652,#649
kernelkind (2):
      log nip05 error
      fix persist deck author profile bug
2025-01-20 10:44:30 -08:00
greenart7c3
2901ba8227 Fix side panel color when using light theme 2025-01-20 15:11:03 -03:00
William Casarin
4b542c0a74 switch to TimelineCache
Signed-off-by: William Casarin <jb55@jb55.com>
2025-01-19 14:18:59 -08:00
William Casarin
e52ba5937f debug: log when adding notes to start
Signed-off-by: William Casarin <jb55@jb55.com>
2025-01-19 12:58:21 -08:00
kernelkind
a585704fb6 fix persist deck author profile bug
closes: https://github.com/damus-io/notedeck/issues/651

Signed-off-by: kernelkind <kernelkind@gmail.com>
2025-01-18 16:01:46 -05:00