* Delete NWC plaintext credentials that allow payments
* Fix row in Wallet and WalletProtocol not deleted
* Fix wallet delete because CTE evaluated too late iiuc
* Mention badges
* Fix missing semicolon
* albyhub guide
* add more shortcuts, fix systemd code block
* add link to macOS guide for service installation
* add some formatting and better separation of concerns
* fix headings
* add references to SN
* correct order, new screenshots, in-depth steps
* Link to guide if exists
* Add LNbits guide
* Update id to LNbits guide
also update guide and add id to ADMIN_ITEMS for perpetual edits
* Use button instead of link
This fixes following console warning:
> Warning: validateDOMNesting(...): <a> cannot appear as a descendant of <a>.
* Fix alignment
* Fix wrong mention of super user requirement
* Move guideUrl to wallets.json
* Fix duplicate comment on pessimistic creation
- comment creation checks for comment's ID existence in cache
- invoice.confirmedAt included in useCanEdit deps for anons live comments
* switch to some as sets are not worth it
* only check for duplicates if a pessimistic payment method has been used
* default to empty array
* add comment about side-effects
* record ownership of an item to avoid injecting it via live comments
* trigger check only if the incoming comment is ours, cleanup
* correct conditions, correct comments, light cleanup
* fix: add defensive condition to ownership recorder, better name
* refactor: unified comment injection logic with deduplication, useCommentsView hook; revert sessionStorage-based fix
* adjust live comments naming around the codebase
* listen for hmac presence for anon edits
* always return the injected comment createdAt to bump live comments
* refactor: improve live comments hook readability
- latest comment createdAt persistence helper
- preserveScroll returns the returning value of the callback
- compact conditional logic
- refresh code comments
- refresh naming
- group constants
- reorder imports
* flat comment injection, fetch flat comments instead of the entire subtree that would've been deduplicated anyway, cleanup
* always align new comment fragment to the comments query structure
* generic useCommentsView hook
* update comment counts if live injecting into fragments without comments field
* fix: pass parentId, if a comment has a top level parent it always has the comments field
* fix: update CommentsViewAt only if we actually injected a comment into cache
* correct injectComment result usage
* pass markViewedAt to further centralize side effects, remove live from Item server typedefs
* fix: don't update counts for ancestors that are already up to date, update commentsViewedAt per batch not per comment
* port: fix coalesce, useCommentsView hook and outline changes
* update hmac field in cache on paid invoice, hmac as useCanEdit effect dependency
* comments and light cleanup, update useCommentsView
* efficient hasComments logic for live comments, establish a gql fragment
* fix: typo on topLevel evaluation
* limit extra evaluations to live comments scenarios
* update comments
* support live comments ncomments increments for anon view tracking
* backport useCommentsView from comments refactor
* adapt live comments and creation to useCommentsView; better outline conditions
* better deps usage, remove unused props
* safer usage of root and item
* light cleanup
* cleanup: remove unused useRoot on live comments
* light cleanup and affirm purpose of each function
* fallback to createdAt if no lastCommentAt only if we actually visit the item, not by default
* fix: don't track comments, remove unused useRoot, fix signature
Before, we would get this error when trying to use cURL from the host machine:
```
$ curl https://localhost:9092/v1/list-methods --cacert docker/cln/ca.pem
curl: (60) SSL: certificate subject name 'cln' does not match target hostname 'localhost'
More details here: https://curl.se/docs/sslcerts.html
curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the webpage mentioned above.
```
This commit fixes it by including localhost in the alternative subject names of the TLS certificate.
I followed the instructions at https://docs.corelightning.org/docs/grpc#generating-custom-certificates-optional.
* server-side comments view tracking, model structure, mutation
* full commentsViewedAt refactor, adjust comment creation and injection, adjust item navigation
* update server-side tracking only if there's a change, light cleanup
* coalesce meCommentsViewedAt to the item's createdAt, wip PoC comment outlining
* don't update cache on item visit, use useRoot hook for outlining
* add meCommentsViewedAt to root, better naming, light cleanup
* better timestamp logic and comparisons, add lastCommentAt to root item object, added TODOs
* fix: track commentsViewedAt only for root item, use topLevelId to fetch live comments only for the current item
* only track commentsViewedAt for root item, light cleanup
* light cleanup, correct live comments timestamp deps
* worker: on midnight, untrack items that were never viewed and had no comments in the last 21 days
* fix#2443: add parseYoutubeStart() to convert start times
* handle null parameter
* add spaces for lint
* switch to regex, handles more cases, simply don't touch unexpected input
* force braces for lint