961 Commits

Author SHA1 Message Date
SatsAllDay
137e99cf7f
Add meta sub to rss popover in footer (#440)
move nostr sub up to top row for 3 and 3 instead of 2 and 4
2023-08-23 20:29:08 -05:00
SatsAllDay
3da395a792
multiple forwards on a post (#403)
* multiple forwards on a post

first phase of the multi-forward support

* update the graphql mutation for discussion posts to accept and validate multiple forwards

* update the discussion form to allow multiple forwards in the UI

* start working on db schema changes

* uncomment db schema, add migration to create the new model, and update create_item, update_item
stored procedures

* Propagate updates from discussion to poll, link, and bounty forms

Update the create, update poll sql functions for multi forward support

* Update gql, typedefs, and resolver to return forwarded users in items responses

* UI changes to show multiple forward recipients, and conditional upvote logic changes

* Update notification text to reflect multiple forwards upon vote action

* Disallow duplicate stacker entries

* reduce duplication in populating adv-post-form initial values

* Update item_act sql function to implement multi-way forwarding

* Update referral functions to scale referral bonuses for forwarded users

* Update notification text to reflect non-100% forwarded sats cases

* Update wallet history sql queries to accommodate multi-forward use cases

* Block zaps for posts you are forwarded zaps at the API layer, in addition
to in the UI

* Delete fwdUserId column from Item table as part of migration

* Fix how we calculate stacked sats after partial forwards in wallet history

* Exclude entries from wallet history that are 0 stacked sats from posts with 100% forwarded to other users

* Fix wallet history query for forwarded stacked sats to be scaled by the fwd pct

* Reduce duplication in adv post form, and do some style tweaks for better layout

* Use MAX_FORWARDS constants

* Address various PR feedback

* first enhancement pass

* enhancement pass too

---------

Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
Co-authored-by: Keyan <34140557+huumn@users.noreply.github.com>
2023-08-23 17:44:17 -05:00
ekzyis
0ea4f9bc27
Fix click to load in preview (#427)
* Rename confusing variable name

* Use nullish coalescing operator

* Fix click to load in preview

---------

Co-authored-by: ekzyis <ek@stacker.news>
2023-08-23 15:30:38 -05:00
ekzyis
427fc9aeec
Fix youtube player x-overflow (#426)
Co-authored-by: ekzyis <ek@stacker.news>
2023-08-23 15:29:09 -05:00
rleed
799ec987b4
Forward sats to user: text trimming and menu click-out UX improvements (#397)
Co-authored-by: rleed <rleed1@pm.me>
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-08-19 18:30:41 -05:00
SatsAllDay
b9a8ec84bb
Remove OP badge for comments by anon on posts by anon (#422)
Add a post to the seed file from anon, with a comment by anon for easier testing
2023-08-19 16:03:07 -05:00
keyan
df6575d701 remove slashtags completely 2023-08-17 13:40:21 -05:00
keyan
c6cc7510c7 remove sats info from ads 2023-08-16 17:58:43 -05:00
keyan
7235a4a54f restyle ad to be clearer 2023-08-16 17:53:51 -05:00
keyan
68f298fc21 add simple badge to ad 2023-08-16 14:39:01 -05:00
ekzyis
670c567bff
Configure imgproxy timeouts + add click to load on imgproxy errors (#404)
* Configure imgproxy timeouts

* Use click to load on imgproxy errors

* Add setting for click to load

---------

Co-authored-by: ekzyis <ek@stacker.news>
2023-08-15 12:55:16 -05:00
rleed
45bad1219e
Fix link to profile matching current URL, not profile (#395)
* break out profile menu and remove top-level href

* group the bio hint with the menu

* rebase/merge

---------

Co-authored-by: rleed <rleed1@pm.me>
2023-08-15 12:54:24 -05:00
keyan
e4831e65d5 show sources and history of rewards 2023-08-15 12:41:51 -05:00
keyan
679f766f07 add average comments per post to items analytics 2023-08-14 15:36:54 -05:00
keyan
03f0329984 fix image uploading/edit 2023-08-13 14:12:18 -05:00
ekzyis
f0bc1baed2 Save payment tokens in localStorage 2023-08-12 04:18:32 +02:00
ekzyis
4d725272e3 Fix cost not set after form reset 2023-08-12 03:12:03 +02:00
keyan
5b821906cf use builtin copy input label 2023-08-11 18:43:45 -05:00
keyan
705e21a72c add comma to anon info 2023-08-11 18:19:35 -05:00
keyan
86239a235d make invoice expiration times have saner defaults 2023-08-11 18:10:46 -05:00
keyan
abb9ca5524 anon info typo 2023-08-11 17:54:26 -05:00
keyan
a5eb7b5443 invoice check backoff 2023-08-11 17:54:26 -05:00
ekzyis
9e4f9aa558 Catch invoice errors in fund error modal 2023-08-12 00:35:24 +02:00
keyan
39db6e096d restyle fund error modal 2023-08-11 17:05:21 -05:00
keyan
63dd5d4d09 fix qr layout shift 2023-08-11 17:05:21 -05:00
ekzyis
73aa0d2d44 Fix localStorage cleared because error were swallowed 2023-08-11 23:36:53 +02:00
keyan
38fddcf283 concat hash and hmac and call it a token 2023-08-11 14:22:18 -05:00
keyan
b2508b738a make anon hat appear on profile 2023-08-11 14:12:18 -05:00
keyan
9c6ecf9526 correct overlay zap text for anon 2023-08-11 12:43:18 -05:00
keyan
e4c2d113ef remove redundant meTotalSats 2023-08-11 12:41:02 -05:00
ekzyis
41f46cf41e Fix empty invoice creation attempts
I stumbled across this while checking if anons can edit their items.

I monkey patched the code to make it possible (so they can see the 'edit' button) and tried to edit an item but I got this error:

  Variable "$amount" of required type "Int!" was not provided.

I fixed this even though this function should never be called without an amount anyway. It will return a sane error in that case now.
2023-08-11 05:30:22 +02:00
ekzyis
28b4588a12 Fix [object Object] as error message
Any errors thrown here are already objects of shape { message: string }
2023-08-11 05:30:06 +02:00
keyan
d92701c56f don't abbreviate 2023-08-10 19:58:33 -05:00
keyan
ea9c405dfa add sat amounts to invoices 2023-08-10 18:33:57 -05:00
keyan
53a6c9489f fix forgotten find and replace 2023-08-10 17:40:50 -05:00
keyan
26762efcea add generic date pivot helper 2023-08-10 17:36:49 -05:00
keyan
46274fba4f give anon an icon 2023-08-10 17:36:49 -05:00
ekzyis
2fbf1e4cc3 Keep track of modal stack 2023-08-11 00:35:43 +02:00
ekzyis
49736e8d3c Always show repeat and contacts on action error 2023-08-10 23:04:06 +02:00
keyan
081c5fef0b make anon posting less hidden, add anon info button explainer 2023-08-10 14:41:56 -05:00
Keyan
cbfd6998a6
Merge branch 'master' into 266-zaps-without-account 2023-08-10 12:40:30 -05:00
ekzyis
bb2212d51e Add invoice HMAC
This prevents entities which know the invoice hash (like all LN nodes on the payment path) from using the invoice hash on SN.

Only the user which created the invoice knows the HMAC and thus can use the invoice hash.
2023-08-10 07:10:07 +02:00
ekzyis
4fe1d416de Fix onConfirmation called at every render 2023-08-10 04:13:09 +02:00
ekzyis
318088179a Rename to useInvoiceable 2023-08-10 03:34:38 +02:00
ekzyis
38dbbd5a4f Fix comment copy-paste error 2023-08-10 03:34:38 +02:00
ekzyis
118f591d04 Merge branch 'master' into 266-zaps-without-account 2023-08-10 03:34:38 +02:00
SatsAllDay
d5f7855adf
Debounce API requests on edit nym by 500ms (#387)
Support an optional debounce prop on Input component

If provided, the debounce is applied to the validation of the containing form,
imperatively invoking form validation after debounce is finalized

Also required introducing the `validateOnChange` prop on `Form` which gets passed to `Formik`, and defaults to true, just as it does in `Formik`.

Imperatively invoking form validation seemed to be the only way to debounce the validation call through formik.
2023-08-09 17:06:22 -05:00
keyan
b92f63ca88 fix remaining misuses of plural units 2023-08-08 17:15:30 -05:00
keyan
da78d244ef handle when navigator controller isn't present 2023-08-08 16:55:53 -05:00
keyan
3cfeede46a handle all singular units appropriately 2023-08-08 16:47:27 -05:00