Commit graph

77 commits

Author SHA1 Message Date
Thomas Mathews
add261dd01 web: save events on timer 2022-12-20 18:52:34 -08:00
Thomas Mathews
a5415906e9 web: added support for saving events 2022-12-20 18:47:33 -08:00
Thomas Mathews
ca7abdd0b6 web: performance!
Instead of actively updating the timeline we render all elements into a
map. When there are new events to render a button shows up at the top
allowing the user to manually view them.

This needs a fix to view more down the page (I set it to 50000 for view
switchign) and I need to fix the initial page view.
2022-12-20 16:55:25 -08:00
Thomas Mathews
6e3e72a65f web: fix sanitization that I broke 2022-12-20 11:06:21 -08:00
Thomas Mathews
29f3997313 web: replace console 2022-12-20 10:47:05 -08:00
Thomas Mathews
257fd09729 web: better log info 2022-12-20 10:39:30 -08:00
Thomas Mathews
7f1ea5cfed web: removed sanitize method, use html literal 2022-12-20 10:30:16 -08:00
Thomas Mathews
21604bd859 web: fix sanitization 2022-12-20 10:25:15 -08:00
Steven
7a3a4077e8 Use html template tags to escape user input
Merged safe html changes from Steven.
2022-12-20 09:49:17 -08:00
Thomas Mathews
7954c75841 web: sanitize content 2022-12-20 09:21:06 -08:00
Thomas Mathews
643add9177 web: save contacts works 2022-12-19 22:14:15 -08:00
Thomas Mathews
4db7250ccc web: bunch of fixes
Following works, but saving to storage does not. I need to
implement indexddb API to save event data.
2022-12-18 21:26:34 -08:00
Thomas Mathews
d02992c7e6 Almost got everythign working.
Issues left to resolve:

 * Removing a reaction doesn't properly remove it from UI, but the event
   is recorded correctly.
 * Since contacts are not being saved there will be issues with
   "following" users and you could overwrite your follower's list with
an empty list.
 * Caching is no longer working.
 * I skipped chat room implementation.
 * Rendering shared event's doesn't work and needs to be revised.
2022-12-18 15:04:39 -08:00
Thomas Mathews
e68a022952 web: break out damus.js into more files 2022-12-15 15:39:29 -08:00
Thomas Mathews
318cbe98ea web: Added media previewing 2022-12-15 10:00:20 -08:00
Thomas Mathews
ca3668eea7 web: only redraw profile pic once or on force 2022-12-14 19:21:23 -08:00
William Casarin
a393408e2d Merge remote-tracking branch 'thomas/main' 2022-12-14 16:50:20 -08:00
Thomas Mathews
34c626fcae web: added dark mode (my eyes\!) 2022-12-14 16:25:20 -08:00
William Casarin
ff1d5cb609 reduce redraw amounts 2022-11-20 20:44:44 -08:00
William Casarin
db97ee909b give up looking for unknowns quicker 2022-11-20 19:54:55 -08:00
William Casarin
86f4aa836f cache timelines 2022-11-20 19:49:43 -08:00
William Casarin
e7973a2d84 message cache 2022-11-20 19:20:09 -08:00
William Casarin
e6644043df cw: use ontoggle instead of event handlers 2022-11-20 14:07:10 -08:00
William Casarin
45b36a9945 Unknown event fetching
Damus will now try really hard to find unknown events. It will use the
event relay hints to connect to new relays and fetch any id that is
missing.
2022-11-20 13:35:44 -08:00
William Casarin
994305ccff switch to new share spec 2022-11-20 09:28:35 -08:00
William Casarin
4fd24c0414 80col ocd 2022-11-20 08:37:03 -08:00
William Casarin
85eae88724 web: per-view max depth 2022-11-19 12:32:35 -08:00
William Casarin
efb931163d web: remove complex logic from notifications
This is preventing likes from coming through
2022-11-19 12:24:23 -08:00
Thomas Mathews
175580b2ae web: moved utility methods to js/utils.js 2022-11-19 11:20:15 -08:00
Thomas Mathews
081a85de48 web: Added new loader graphic. 2022-11-19 11:20:15 -08:00
Thomas Mathews
fa9965b2a0 web: added open thread view 2022-11-19 11:20:15 -08:00
Thomas Mathews
52b5dfa3e6 web: styled read thread button 2022-11-19 11:20:15 -08:00
Thomas Mathews
70aab4a27c web: destory fa, because it's not awesome
Note the loss of some colors in icons. This is because I need to change
them at the SVG level. I will think about best way to do this later as
some animation transitions will need to be thought for.
2022-11-19 11:20:15 -08:00
Thomas Mathews
a28fad9ef2 web: Added nav icon state for desktop. 2022-11-19 11:20:15 -08:00
Thomas Mathews
9f2af26fa6 web: Add profile view.
Note that this is incomplete as I do not fetch the events for the user
and render them. I am also missing the state check for if you follow the
user.
2022-11-18 17:12:00 -08:00
William Casarin
b5a2b5ec2b web: fix more icon 2022-11-18 16:44:58 -08:00
William Casarin
c76bd72fde web: try not make make replies completely messed up 2022-11-18 14:36:35 -08:00
William Casarin
5e9a0f44ca Revert "web: don't do complicated hiding logic"
This reverts commit 8c4d87a993.
2022-11-18 14:00:07 -08:00
William Casarin
8c4d87a993 web: don't do complicated hiding logic 2022-11-18 13:51:42 -08:00
William Casarin
bd03976544 web: only expand thread one message at a time 2022-11-18 13:44:51 -08:00
Thomas Mathews
ef1c2ca525 web: Added interval checking for nos2x 2022-11-18 11:17:09 -08:00
William Casarin
72346522eb web: nip05 profile loading 2022-11-18 11:09:55 -08:00
William Casarin
9fb8be6afd nos2x: call handle_pubkey 2022-11-18 07:43:47 -08:00
William Casarin
c783b430bf debug alby again... sigh 2022-11-18 07:39:16 -08:00
William Casarin
bb27b1c339 web: don't copy tags when replying
otherwise this crazy stuff happens:

https://nostr.com/e/da28aefc824cc7880e79df547cbe7f1e9d21e2ab81a264e311280d11b427ce05
2022-11-17 16:43:50 -08:00
Thomas Mathews
f773ab49f6 web: message textareas auto expand based on content 2022-11-16 20:18:12 -08:00
William Casarin
a78858629e web/explore: if pow filtering is disabled, remove friends
Otherwise the explore timeline looks just like the home timeline
2022-11-15 15:27:16 -08:00
William Casarin
ae6102b4f6 web: don't render invalid share events 2022-11-15 15:13:12 -08:00
William Casarin
b8a24d9dd4 web: turn of pow filter by default
prefer a configurable + adaptive pow filter once that is done
2022-11-15 15:10:55 -08:00
William Casarin
804020806a web: render notification timeline
- hide ourselves from notification timeline
- add spam guard (fof + pow like on explore)
2022-11-15 09:20:45 -08:00