* automatic toc generation in markdown
* don't open hash links in new tab
* only process toc for top level items
---------
Co-authored-by: ekzyis <ek@stacker.news>
* enhance: toggle live comments on posts, default status set by user settings
* wip: toggle via mutation, footer placement
* chat icon on footer, consistent naming, perf tweaks
* update all tabs on toggle by dispatching events, correct icon, cleanup
cleanup:
- remove useless window checks
- use skip instead of conditional options
- correct naming
* update localstorage on user setting change
* revert disableLiveComments user setting
* avoid redundant setState and usage of maybe stale state
---------
Co-authored-by: Keyan <34140557+huumn@users.noreply.github.com>
* Wallet flow
* Prepopulate fields of complementary protocol
* Remove TODO about one mutation for save
We need to save protocols in separate mutations so we can use the wallet id returned by the first protocol save for the following protocol saves and save them all to the same wallet.
* Fix badges not updated on wallet delete
* Fix useProtocol call
* Fix lightning address save via prompt
* Don't pass share as attribute to DOM
* Fix useCallback dependency
* Progress numbers as SVGs
* Fix progress line margins
* Remove unused saveWallet arguments
* Update cache with settings response
* Fix line does not connect with number 1
* Don't reuse page nav arrows in form nav
* Fix missing SVG hover style
* Fix missing space in wallet save log message
* Reuse CSS from nav.module.css
* align buttons and their icons/text
* center form progress line
* increase top padding of form on smaller screens
* provide margin above button bar on settings form
---------
Co-authored-by: k00b <k00b@stacker.news>
* remove free comments
* working on logic with bios and fees
* Revert "working on logic with bios and fees"
This reverts commit 0de31cbaaddd6733d8a2e8c099d0108d9f634512.
---------
Co-authored-by: pory-gone <pory-gone@users.noreply.github.com>
* live comments: stable navigator for new outlined comments
* favicons: FaviconProvider, handle new comments favicon via navigator
* navigator keyboard shortcuts: arrow right/escape key
* enhance: responsive fixed positioning; cleanup
enhance:
- two types of padding for desktop and mobile via CSS
cleanup:
- use appropriate <aside> for navigator
- reorder CSS
* Comments Navigator Context, new comments dot UI, refs autosorting, auto-untrack children
- Navigator Context for item pages
UI/UX
- WIP: compact comments dot UI on navbars
- long press to clear tracked refs
- auto-untrack node's children on scroll
Logic
- auto-sort comment refs via createdAt
- remove outline on untrack if called by scroll
* stable navigator dot UI positioning
* cleanup: better naming, clear structure
* re-instate favicon state updates on navigator
* CSS visibility tweaks
* scroll to start position of ref
* fix undefined navigator on other comment calls
* add explanation for early favicon clear
---------
Co-authored-by: Keyan <34140557+huumn@users.noreply.github.com>
* live comments: stable navigator for new outlined comments
* navigator keyboard shortcuts: arrow right/escape key
* enhance: responsive fixed positioning; cleanup
enhance:
- two types of padding for desktop and mobile via CSS
cleanup:
- use appropriate <aside> for navigator
- reorder CSS
* Comments Navigator Context, new comments dot UI, refs autosorting, auto-untrack children
- Navigator Context for item pages
UI/UX
- WIP: compact comments dot UI on navbars
- long press to clear tracked refs
- auto-untrack node's children on scroll
Logic
- auto-sort comment refs via createdAt
- remove outline on untrack if called by scroll
* stable navigator dot UI positioning
* cleanup: better naming, clear structure
* CSS visibility tweaks
* scroll to start position of ref
* fix undefined navigator on other comment calls
* remove pulse animation
* carousel sort in deterministic order
* imgIndex 0 for ItemEmbed
* fix order for item-full
* fix indexing in ItemEmbed
* Revert "fix indexing in ItemEmbed"
This reverts commit f7863af30a1a02b189bfc79237606851c4da1abf.
* Revert "fix order for item-full"
This reverts commit 489e25ea82056bd83a818e581eb2bbfcf947e401.
* Revert "imgIndex 0 for ItemEmbed"
This reverts commit cd5fff1bae151e44db717f2a2173f673793bc6d0.
* carousel preserves ordering rendered on screen
* reorder carousel when sort changes
* fix cursor detected bugs
* register media to carousel before image load, confirm afterwards
* Remove unnecessary ref from dependencies
* Add missing dependencies
* Add missing dependencies
* Check if src was found in Carousel
---------
Co-authored-by: ekzyis <ek@stacker.news>
* include subs in grace status in suggestions
* make myself a contributor
* Refactor subSuggestions with Prisma.sql
---------
Co-authored-by: ekzyis <ek@stacker.news>
* Use SSR for wallet forms
* Fix back/forward navigation with useData hook
* Fix protocol fallback not working with shallow routing
* Fix wallet refetch
* Replace useEffect for default selection with smart link
* Remove unused useWalletQuery
* Move server2client wallet transform into single function
* Add comment about graphql-tag fragment warning
* Check if wallet not found
* Handle wallet is sometimes null on back or forward navigation
* enhance: FaviconProvider, keep track of new comment IDs to change favicon, remove new comment IDs per outline removal
* don't track oneself comments
* enhance: auto-show new comments, idempotency by ignoring already injected comments, preserveScroll utility
* fadeIn animation on comment injection; cleanup: remove unused counts and thread handling; non-critical fix: always give rootLastCommentAt a value
* reliably preserve scroll position by tracking a reference found at the center of the viewport; cleanup: add more comments, add cleanup function
* mitigate fractional scrolling subtle layout shifts by rounding the new reference element position
* enhanced outlining system, favicon context keeps track of new comments presence
- de-outlining now happens only for outlined comments
- enhanced outlining: add outline only if isNewComment
- de-outlining will remove the new comments favicon
- on unmount remove the new comments favicon
* remove the new comments favicon on new comments injection
* track only deduplicated new comments
* fix typo
* clearer unsetOutline conditions, fix typo in live comments hook
* backport: remove the injectedComment class from injected comments after animation ends
* set the new comments favicon on any new outlined comment
* enhance: directly inject new comments; cleanup: dismantle ShowNewComments, remove newComments field
* tweaks: slower injection animation, clear favicon on Comment section unmount
* change nDirectComments bug strategy to avoiding updates on comment edit
* cleanup: better naming, re-instate injected comments outline
* injection: major cache utilities refactor, don't preserve scroll if no comments have been injected
- don't preserve scroll if after deduplication we don't inject any comments
- use manual read/write cache updates to control the flow
-- allows to check if we are really injecting or not
- reduce polling to 5 seconds instead of 10
- light cleanup
-- removed update cache functions
-- added 'injected' to typeDefs (gql consistency)
* cleanup: detailed comments, refactor, remove clutter
Refactor:
+ clearer variables
+ depth calculation utility function
+ use destructured Apollo cache
+ extract item object from item query
+ skip ignored comment instead of ending the loop
CSS:
+ from-to fadeIn animation keyframes
- floatingComments unused class
Favicon:
+ provider exported by default
* fix wrong merge
* split: remove favicon context
* split: remove favicon pngs
* regression: revert to updateQuery for multiple comment fragments handling
* reverse multiple reads for deduplication on comment injection
* fix regression on apollo manipulations via fn; cleanup: remove wrong deps from outlining