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
SatsAllDay
9941bc6519
render "reply" or "replies", "comment" or "comments" depending on the count (singular or plural) ( #382 )
...
Co-authored-by: Keyan <34140557+huumn@users.noreply.github.com>
2023-08-08 16:07:00 -05:00
SatsAllDay
6e05cd38f9
Singular/Plural "Sats" labels ( #380 )
...
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-08-08 16:04:06 -05:00
ekzyis
67a0de3ea5
Notifications with nostr info ( #368 )
...
* Show zap message and pubkey in notifications
+ show zap request event in invoice view
* enhance ui
---------
Co-authored-by: ekzyis <ek@stacker.news>
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-08-08 13:19:31 -05:00
Keyan
76b4156ccb
Merge branch 'master' into 266-zaps-without-account
2023-08-08 09:42:21 -05:00
ekzyis
e3c60d1ef8
Sync push subscriptions on every page load ( #370 )
...
Most browsers don't support the pushsubscriptionchange event.
We workaround this by saving the current push subscription in IndexedDB so we can check during every page load if the push subscription changed.
If that is the case, we manually sync the push subscription with the server.
However, this solution is not perfect as mentioned in https://medium.com/@madridserginho/how-to-handle-webpush-api-pushsubscriptionchange-event-in-modern-browsers-6e47840d756f which was used for reference:
> This solution is not perfect, the user could lose some push notifications if he doesn’t open the webapp for a long time.
Co-authored-by: ekzyis <ek@stacker.news>
2023-08-07 20:03:34 -05:00
ekzyis
7369bd819d
Add nostr login ( #367 )
...
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-08-07 19:50:01 -05:00
keyan
a0974e4d6c
Merge branch 'master' into 266-zaps-without-account
2023-08-07 16:48:52 -05:00
keyan
a3b668587d
fix top cowboys
2023-08-07 16:26:15 -05:00
Keyan
3d0bb4b32c
Merge branch 'master' into 266-zaps-without-account
2023-08-07 15:10:20 -05:00
keyan
0867f3ff1c
only outline eldest new comment ... unset on touch
2023-08-07 09:29:47 -05:00
keyan
d661c70f16
more noticable new comment indicator
2023-08-06 14:31:24 -05:00
keyan
1efc17fcc2
subtle highlight of new comments
2023-08-06 14:18:40 -05:00
keyan
ea1e31c6ee
prevent horizontal layout shift on new comments
2023-08-06 13:21:38 -05:00
keyan
ebfff4677f
fix top header/stat order on back/forward nav
2023-08-06 13:13:32 -05:00
keyan
90f4d41fc8
remove list jitter by initially preferring ssr
2023-08-06 13:04:25 -05:00
keyan
eeaf6e10e5
reduce rerenders in notifications
2023-08-06 10:47:58 -05:00
keyan
b9fdbde520
fix back button render jitter
2023-08-05 12:56:03 -05:00
keyan
d9dd4bc05b
prevent scroll to comment on rerender
2023-08-05 12:13:15 -05:00
keyan
aea8948c45
dark-mode needs to block block
2023-08-04 20:45:12 -05:00
keyan
8d8e2859dd
fix dark mode
2023-08-04 19:21:51 -05:00
keyan
23257d8c63
fix notifications glitchiness
2023-08-04 12:08:16 -05:00
keyan
42234eae9b
highlight notification on back button
2023-08-03 19:14:04 -05:00
keyan
4e41f67e87
fix notification url replacement
2023-08-03 18:04:43 -05:00
keyan
94e975033c
fix fee button receipt background color
2023-08-03 15:13:07 -05:00
keyan
0ab9119739
improve notifications UX: highlight reply and distinguish new notifications
2023-08-03 14:56:59 -05:00
keyan
7596b0302a
improve click to context behavior and add ssrForceFetchDelay to apollo
2023-08-03 13:13:49 -05:00
keyan
b1b8f9de56
implement our own nprogress bar
2023-08-01 21:06:15 -05:00
keyan
e1c51075a2
fix conditional nextFetchPolicy overriding cache-only on SSR and suppress time hydration warnings
2023-07-31 14:54:30 -05:00
keyan
f91be5d70f
fix form skeleton
2023-07-31 12:35:58 -05:00
keyan
b42a934207
fix invites signup via lightning/slashtags
2023-07-31 09:19:53 -05:00
keyan
bc5a19c6ee
suppress hydration warnings when relative time is rendered
2023-07-31 09:12:56 -05:00
keyan
d2216e80da
conform to linter
2023-07-31 08:39:10 -05:00
ekzyis
ba04e6522d
Also strike on payment after short press
2023-07-30 23:45:08 +02:00
ekzyis
d186e869e1
Allow pay per invoice for bounty and job posts
2023-07-30 23:45:08 +02:00
ekzyis
f2f09b22c4
Fix invoice amount for comments
2023-07-30 23:45:08 +02:00
ekzyis
1cd9750be5
Fix insufficient funds error detection
2023-07-30 23:45:08 +02:00
ekzyis
773f658e00
Remove duplicate insufficient funds handling
2023-07-30 23:45:08 +02:00
ekzyis
6b4b5023f6
Keep invoice modal open if focus is lost
2023-07-30 23:45:07 +02:00
ekzyis
853a389b65
Allow pay per invoice for stackers
...
The modal which pops up if the stacker does not have enough sats now has two options: "fund wallet" and "pay invoice"
2023-07-30 23:45:07 +02:00
ekzyis
fd8510d59f
Use payment hash instead of invoice id as proof of payment
...
Our invoice IDs can be enumerated.
So there is a - even though very rare - chance that an attacker could find a paid invoice which is not used yet and use it for himself.
Random payment hashes prevent this.
Also, since we delete invoices after use, using database IDs as proof of payments are not suitable.
If a user tells us an invoice ID after we deleted it, we can no longer tell if the invoice was paid or not since the LN node only knows about payment hashes but nothing about the database IDs.
2023-07-30 23:45:07 +02:00
ekzyis
74893b09dd
Add anon comments and posts (link, discussion, poll)
2023-07-30 23:45:07 +02:00
ekzyis
5415c6b0f6
Add anon zaps
2023-07-30 23:45:07 +02:00
keyan
42bdd40f91
show errors on settings during auth linking
2023-07-30 15:39:18 -05:00
keyan
5232b59625
upgrade to next-auth 4 (bonus: improve error pages)
2023-07-29 14:38:20 -05:00
keyan
7490e5c249
fix syntax highlighting warnings
2023-07-27 12:10:05 -05:00
keyan
7542dd6cc4
upgrade to prisma 4
2023-07-26 19:18:42 -05:00
keyan
5a4f63b1d5
fix pinned discussion spacing
2023-07-26 08:48:46 -05:00
keyan
8ea9938cb0
fix broken image text
2023-07-25 20:02:43 -05:00
keyan
8ab018af88
fix nested comment sorting
2023-07-25 19:45:35 -05:00
keyan
19835aef5f
fix undefined sub on post pre-form
2023-07-25 15:41:46 -05:00
keyan
4c1ef62386
fix edit bio button location
2023-07-25 15:32:49 -05:00
keyan
98552c853c
fix back button behavior on select navigation
2023-07-25 15:29:45 -05:00
keyan
4bfd021342
enhance styling
2023-07-25 13:32:48 -05:00
keyan
ab2046ab0b
fix issues with new linting
2023-07-25 09:14:45 -05:00
keyan
dae9c64e96
more package updates
2023-07-24 19:50:55 -05:00
keyan
e87610c45b
update packages and reduce bundle size
2023-07-24 17:50:12 -05:00
keyan
356f7e072c
50% reduction in bundle size by being careful with big imports
2023-07-24 16:06:26 -05:00
keyan
6407455def
upgrade react-bootstrap
2023-07-24 13:53:53 -05:00
keyan
59f7b6ff26
Revert "Revert "shield your eyes; massive, squashed refactor; nextjs/react/react-dom/apollo upgrades""
...
This reverts commit 18910fa2ed
.
2023-07-23 10:08:43 -05:00
keyan
18910fa2ed
Revert "shield your eyes; massive, squashed refactor; nextjs/react/react-dom/apollo upgrades"
...
This reverts commit d0314ab73c
.
2023-07-23 09:16:12 -05:00
keyan
d0314ab73c
shield your eyes; massive, squashed refactor; nextjs/react/react-dom/apollo upgrades
2023-07-21 17:33:11 -05:00
keyan
253d75b438
fix item icon fix
2023-07-15 11:35:10 -05:00
keyan
3c3de2eb24
fix item icon styling
2023-07-14 11:07:03 -05:00
keyan
7a4ba715e0
memoize table of contents
2023-07-13 15:56:57 -05:00
keyan
3c711b6083
enhance image detection and proxy
2023-07-13 15:18:04 -05:00
ekzyis
0d3328e509
Show longest cowboy streak in profile ( #353 )
...
* Show longest cowboy streak in profile
* Fix image offset
* Initialize maxStreak for every user
* Use resolver instead of denormalization for maxStreak
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-12 19:10:29 -05:00
Jo Wo
bf4b8714fe
Render images without markdown and use image proxy ( #245 )
...
* Parse image links during markdown rendering
* Use imgproxy to replace links
* Add healthcheck
See https://docs.imgproxy.net/healthcheck
* Enable WebP and animation support
* Only replace image URLs
* Replace all occurrences
* Fix creating posts with no text
* Embed image on link posts where link is image
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-12 19:10:01 -05:00
keyan
bc9081eaab
fix race condition caused by race condition fix
2023-07-11 13:33:13 -05:00
keyan
efa3172f15
top stackers sorted stat to front
2023-07-10 12:59:21 -05:00
keyan
34ba823bd4
account for no funds on zap debounce
2023-07-09 13:08:56 -05:00
keyan
e8aa0a4dae
users? => stackers?
2023-07-09 12:53:50 -05:00
keyan
4e9138dfdc
show more info on where zap rewards came from
2023-07-09 12:21:11 -05:00
keyan
f33534dd36
fix rapid voting ui race condition ( #213 )
2023-07-09 11:15:46 -05:00
keyan
e0d89a289b
fix lightning animation z-index
2023-07-06 18:07:30 -05:00
keyan
ec9a424bf4
reward countdown in footer
2023-07-06 12:43:51 -05:00
ekzyis
37e70f9791
Scroll to items on push notification click ( #345 )
...
* Scroll from root item in reach on notification click
Instead of going directly to the item of the notification, we now scroll from the root item which is still in reach to the comment.
This should provide more context to the user in most cases.
* Also scroll from root item in reach in /notifications
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-06 10:00:38 -05:00
ekzyis
57f3ad1c75
Fix darkmode in walkthrough popover ( #343 )
...
* Fix darkmode in walkthrough popover
* Fix invalid DOM property `class`
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-05 15:07:18 -05:00
keyan
09d7e960cc
back to lightning animation
2023-07-05 09:47:44 -05:00
keyan
dc62751df4
dont show push notifications in nonsupporting browsers
2023-07-04 18:44:03 -05:00
keyan
19c743f70d
fix safari notifications error
2023-07-04 18:02:22 -05:00
keyan
a17b4d1f1a
refine push notification ui and catch promises
2023-07-04 17:19:59 -05:00
keyan
3068252adf
merge github master
2023-07-04 15:35:04 -05:00
ekzyis
30cc42109f
Fix different font between write and preview ( #338 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-04 14:36:55 -05:00
ekzyis
40ef4f47c8
Remove unused var ( #330 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-04 14:36:38 -05:00
ekzyis
388e00dd04
Service worker rework, Web Target Share API & Web Push API ( #324 )
...
* npm uninstall next-pwa
next-pwa was last updated in August 2022.
There is also an issue which mentions that next-pwa is abandoned (?): https://github.com/shadowwalker/next-pwa/issues/482
But the main reason for me uninstalling it is that it adds a lot of preconfigured stuff which is not necessary for us.
It even lead to a bug since pages were cached without our knowledge.
So I will go with a different PWA approach. This different approach should do the following:
- make it more transparent what the service worker is doing
- gives us more control to configure the service worker and thus making it easier
* Use workbox-webpack-plugin
Every other plugin (`next-offline`, `next-workbox-webpack-plugin`, `next-with-workbox`, ...) added unnecessary configuration which felt contrary to how PWAs should be built.
(PWAs should progressivly enhance the website in small steps, see https://web.dev/learn/pwa/getting-started/#focus-on-a-feature )
These default configurations even lead to worse UX since they made invalid assumptions about stacker.news:
We _do not_ want to cache our start url and we _do not_ want to cache anything unless explicitly told to.
Almost every page on SN should be fresh for the best UX.
To achieve this, by default, the service worker falls back to the network (as if the service worker wasn't there).
Therefore, this should be the simplest configuration with a valid precache and cache busting support.
In the future, we can try to use prefetching to improve performance of navigation requests.
* Add support for Web Share Target API
See https://developer.chrome.com/articles/web-share-target/
* Use Web Push API for push notifications
I followed this (very good!) guide: https://web.dev/notifications/
* Refactor code related to Web Push
* Send push notification to users on events
* Merge notifications
* Send notification to author of every parent recursively
* Remove unused userId param in savePushSubscription
As it should be, the user id is retrieved from the authenticated user in the backend.
* Resubscribe user if push subscription changed
* Update old subscription if oldEndpoint was given
* Allow users to unsubscribe
* Use LTREE operator instead of recursive query
* Always show checkbox for push notifications
* Justify checkbox to end
* Update title of first push notification
* Fix warning from uncontrolled to controlled
* Add comment about Notification.requestPermission
* Fix timestamp
* Catch error on push subscription toggle
* Wrap function bodies in try/catch
* Use Promise.allSettled
* Filter subscriptions by user notification settings
* Fix user notification filter
* Use skipWaiting
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-07-04 14:36:07 -05:00
keyan
3d093d45f3
small fireworks changes
2023-07-03 19:04:07 -05:00
keyan
b6628eb159
july 4th festivities
2023-07-03 14:46:54 -05:00
ekzyis
eac73e7169
Fix double submit ( #328 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-23 10:21:29 -05:00
ekzyis
fa32e22cde
Fix double slash ( #325 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-21 13:09:04 -05:00
keyan
431947eeee
different freebie rules
2023-06-20 12:55:45 -05:00
keyan
03e0646560
~meta sub
2023-06-20 11:27:41 -05:00
keyan
747371a4e4
snl live banner
2023-06-20 09:57:06 -05:00
keyan
3e4161ae8c
tip -> zap
2023-06-19 13:21:55 -05:00
keyan
f8724f75e7
add tab shortcut and better resulting selection ranges
2023-06-19 13:07:06 -05:00
ekzyis
b427c921d1
Add SimpleX group invite to footer ( #320 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-16 18:04:56 -05:00
keyan
02ec14549f
prevent markdown input cursor from moving
2023-06-13 09:19:50 -05:00
keyan
73bb4a0141
change more post types copy
2023-06-12 19:43:08 -05:00
keyan
f0f51438c4
add top posts/comments to subs
2023-06-12 19:40:18 -05:00
keyan
6ed2c87c49
fix ssr and client side rendering difference warnings
2023-06-12 17:59:53 -05:00
keyan
ef533d41a6
move markdown related code to proper component
2023-06-12 17:39:20 -05:00
keyan
6a49f37c68
only honor selection range in textarea
2023-06-12 17:21:13 -05:00
keyan
5958875f1e
wait for comments to collapse before scrolling
2023-06-12 16:03:32 -05:00
keyan
ab3b24a072
refine pwa back button
2023-06-12 15:49:48 -05:00
keyan
ed938527fd
simply respect notification alert message
2023-06-12 15:37:12 -05:00
keyan
d78c98e701
improve rss footer
2023-06-12 14:48:35 -05:00
keyan
342a165ced
refine cancel button
2023-06-12 14:39:27 -05:00
keyan
79df6b2be2
prevent default on all markdown shortcuts
2023-06-12 13:49:58 -05:00
ekzyis
069417d130
Enable push notifications in settings ( #301 )
...
* Enable push notifications in settings
* Fix checkbox still checked after user denied permission
The error was related to me thinking that the value prop does anything. It didn't.
The value of the checkbox is handled by formik.
So the solution was to hook into formik and use the handler which actually changes the value.
* Add double opt-in to /notifications
* Better styling of alert in /notifications
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-12 13:03:44 -05:00
ekzyis
b890215b98
Tech sub ( #311 )
...
* Add tech sub
* Fix line break in RSS popover
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-12 12:41:22 -05:00
ekzyis
e243c1c224
Add cancel button for editing all post types + bio ( #310 )
...
* Add cancel button when editing any post type
* Add cancel button when editing bio
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-12 12:35:28 -05:00
ekzyis
393d4c7603
Add Markdown formatting hotkeys: CTRL+K, CTRL+I, CTRL+B ( #305 )
...
* Fix usage of deprecated event.keyCode
* Add CTRL+K to insert markdown link formatting
* Also add CTRL+B and CTRL+I
* Fix undo not working after using setValue
Undo doesn't work if inputs are changed using javascript code like helpers.setValue().
The solution is to also use `document.execCommand()`.
See https://stackoverflow.com/questions/27027833/is-it-possible-to-edit-a-text-input-with-javascript-and-add-to-the-undo-stack
However, `document.execCommand()` is deprecated but there seems to be no alternative, see:
- https://stackoverflow.com/questions/60581285/execcommand-is-now-obsolete-whats-the-alternative
- https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand#browser_compatibility
- https://github.com/codex-team/editor.js/discussions/2214
And so far, every browser still seems to support it: https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand#browser_compatibility
---------
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-12 12:29:50 -05:00
keyan
369bd82a84
make freebie comments visible case by case
2023-06-03 20:01:50 -05:00
keyan
56f08e0144
allow ctrl-click of post button
2023-06-03 17:49:04 -05:00
keyan
d815cae715
add 'stacking since' to profile
2023-06-02 19:55:45 -05:00
keyan
d4988694c8
make room in header to pwa back button
2023-06-01 19:34:26 -05:00
keyan
56314bac4e
fix window navigation error on firefox
2023-06-01 15:29:20 -05:00
keyan
c4b96b998f
only request notification permissions on the notifications page
2023-06-01 14:41:20 -05:00
keyan
f4b81b0ff0
fix notification clicking after refactor
2023-06-01 13:22:39 -05:00
keyan
3de8df5ab5
enhancements for footer version with prod support
2023-06-01 12:57:31 -05:00
ekzyis
61e0a100c0
Show version in footer ( #294 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-06-01 12:19:45 -05:00
keyan
15850f0dbb
move free posts message about sub select
2023-05-31 19:54:35 -05:00
ekzyis
40b7fde621
refactor: create component per notification type ( #298 )
...
Co-authored-by: ekzyis <ek@stacker.news>
2023-05-31 19:51:30 -05:00
ekzyis
0c251ca376
Add thread subscriptions ( #293 )
...
* Add thread subscriptions
* remove dead code: reply only notifications
* break out thread subscription queries to reduce search space
* one db dip for item lists/threads re:meSubscription
---------
Co-authored-by: ekzyis <ek@stacker.news>
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-05-31 19:44:06 -05:00
ekzyis
e97509eea7
Use PWA with display: standalone ( #292 )
...
* Use next-pwa
* Use standalone + back button
* Use Notification API
* Use custom service worker
* Use url_handlers
* Add offline page
* Use smaller icon in notification
* Only prompt for notifications if logged in
* small enhancements to standalone pwa
* remove unused back arrow
---------
Co-authored-by: ekzyis <ek@stacker.news>
Co-authored-by: keyan <keyan.kousha+huumn@gmail.com>
2023-05-31 17:28:33 -05:00
ekzyis
5c55afc97c
Fix no dupes check after link unshortening
2023-05-21 12:50:14 -05:00
ekzyis
4af445d242
Fix fetched data not shown if last action was title clear
...
There are two flows when clearing both inputs:
1. First clear title, then clear URL, then enter new URL
In this case, new data will be fetched when the URL is cleared since the title is empty. Due to the fetch with empty variables, the fetched data is essentially reset.
Entering a new URL thus triggers a new fetch (since title is still empty) and the fetched data is shown since it is different compared to the previous render.
2. First clear URL, then clear title, then enter new URL
In this case, new data will not be fetched when the URL is cleared since the title is not empty.
When entering a new URL, new data is fetched but will not be shown since the fetched data was never reset and thus did not change compared to the previous render.
This is fixed by always either a) resetting the fetched data or b) fetching new data if the URL changed.
2023-05-21 12:27:01 -05:00
keyan
87e86526f8
fix submit button not being disabled
2023-05-18 13:02:19 -05:00
keyan
9d31d56ec0
fix missing advanced options in bounty/discussion form
2023-05-16 13:30:19 -05:00
ekzyis
0effc065c6
Mix default and custom tips during sort
2023-05-14 19:41:36 -05:00
ekzyis
c05a76d664
Fix duplicate tips
2023-05-14 19:41:36 -05:00
ekzyis
342b2b76ca
Use numeric input
2023-05-14 19:41:36 -05:00
ekzyis
8d35cd0194
Save custom tips
2023-05-14 19:41:36 -05:00
keyan
6d8780373a
form enhancements
2023-05-11 14:34:42 -05:00
keyan
5bb6b5f2e7
placeholder when there aren't comments
2023-05-10 19:41:17 -05:00
keyan
df1f1a483a
require sub selection, allow editting
2023-05-10 19:30:51 -05:00
keyan
95420fe39b
update footer
2023-05-09 17:52:24 -05:00
keyan
01d29e013e
fix job editting bug
2023-05-08 14:14:32 -05:00
keyan
e2aceee234
higher tip defaults
2023-05-06 18:29:20 -05:00
keyan
347a6a54d2
improve comment performance
2023-05-06 16:51:17 -05:00
keyan
1a5d8880dd
decapitalize all caps titles
2023-05-06 10:54:04 -05:00
keyan
aef1163ea0
add amboss link in footer
2023-05-05 16:22:22 -05:00
keyan
b406f0c340
avoid db dip for sub
2023-05-05 12:39:57 -05:00
keyan
7e0103bce3
add separate podcast link
2023-05-05 11:54:28 -05:00
keyan
83a4568ec4
add social media to footer
2023-05-04 18:15:08 -05:00
keyan
833b31980e
add jobs rss and style footer popovers consistently
2023-05-04 16:41:56 -05:00
ekzyis
d98421d9cd
Add RSS feeds for ~bitcoin and ~nostr
2023-05-04 13:43:40 -05:00
keyan
236ee552c6
navbar fixes
2023-05-02 19:22:38 -05:00
keyan
4e817a232d
sub related enchancements
2023-05-02 11:55:10 -05:00
keyan
4be5286122
hide cowboy hat setting
2023-05-01 16:52:02 -05:00
keyan
a241d683d8
nostr sub
2023-05-01 15:58:30 -05:00
keyan
d6c92fec62
prevent layout shift when loading dupes
2023-04-26 13:02:42 -05:00
ekzyis
f2f205dc80
Disable post button for 3 seconds max
2023-04-26 13:02:42 -05:00
ekzyis
259b5b7a36
Don't run dupes query empty
2023-04-26 13:02:42 -05:00
ekzyis
29bee1c740
Show dupes loading
2023-04-26 13:02:42 -05:00
ekzyis
d43c7cc222
Disable post button while dupes are loading
2023-04-26 13:02:42 -05:00
keyan
e4a3095cb4
give pinned item recent sort by default
2023-03-19 10:43:33 -05:00
keyan
ff34bd0124
don't show price on error
2023-03-04 12:16:50 -06:00
keyan
183201a1b8
don't autofocus top-level reply
2023-02-24 10:08:15 -06:00
ekzyis
5d572c2fe3
Autofocus reply inputs ( #242 )
2023-02-24 09:52:09 -06:00
keyan
8278966948
move item dropdown for clarity
2023-02-16 17:14:14 -06:00
keyan
16bf7007cc
put opentimestamps link in item dropdown
2023-02-16 17:07:20 -06:00
ekzyis
7b838cdeb2
Implement bookmarking of posts and comments ( #235 )
2023-02-16 16:23:59 -06:00
keyan
97f74da0fd
top cowboys
2023-02-09 12:41:28 -06:00
keyan
a5b2de64d3
remove bolt on posts forwarding to self
2023-02-08 18:11:28 -06:00
keyan
74df0db035
client side error boundary
2023-02-08 17:59:14 -06:00
keyan
4cae1ae230
reuse validation on server
2023-02-08 13:39:53 -06:00
keyan
c1080ec4d7
fixes for top
2023-02-03 13:10:18 -06:00
keyan
b3f7f24cff
trigger streak when eligible
2023-02-02 13:47:09 -06:00
keyan
072e60c954
streaks
2023-02-01 17:40:49 -06:00
keyan
816361bd96
remove semicolons from last merge
2023-01-27 18:08:58 -06:00
ekzyis
4ab66a67ae
Add proxy with cache for coinbase API requests ( #226 )
2023-01-27 17:20:33 -06:00
keyan
670f071177
fix item spacing generically
2023-01-27 15:10:38 -06:00
keyan
82502e724f
fix spacing on item text
2023-01-27 11:43:48 -06:00
keyan
f53c5ff2eb
fix undefined reference
2023-01-26 17:51:50 -06:00
keyan
291fe24363
denormalize bountyPaidTo
2023-01-26 17:28:10 -06:00
keyan
5306b11157
improve bounty performance
2023-01-26 13:09:57 -06:00
Austin Kelsay
e13e37744e
stackernews bounties ( #227 )
...
bounties
2023-01-26 10:11:55 -06:00
keyan
9644a9f867
slashtags auth
2023-01-18 12:49:20 -06:00
keyan
48448ea1ef
get time from youtube links
2023-01-13 18:09:05 -06:00
keyan
0f4d44cfa6
don't show flag on deleted posts
2023-01-13 17:49:53 -06:00
keyan
9c0ead308b
remove debug logging
2023-01-13 13:19:42 -06:00
keyan
10ff3fa1c3
delete
2023-01-13 11:52:18 -06:00
keyan
ed153b5199
add similar section to posts
2023-01-12 14:30:17 -06:00
keyan
9823969418
unshorten links
2023-01-12 12:05:47 -06:00
Keyan
7c91f279c5
Merge branch 'master' into master
2023-01-11 12:26:57 -06:00
keyan
00fdbe753c
fix typo in lnurl-auth copy
2023-01-10 17:55:11 -06:00
keyan
ae5c6c457f
global modal + small fixes/enhancements
2023-01-10 17:13:37 -06:00
keyan
e2d7506ebf
lightning login copy
2023-01-10 12:55:17 -06:00
keyan
d1a08eda36
make sure useEffect doesn't update state on every render
2023-01-10 09:40:56 -06:00
keyan
c2685a659e
sign up buttons
2023-01-09 18:33:44 -06:00
keyan
2d012ba7fe
allow nip05 for users
2023-01-06 18:53:29 -06:00
keyan
7a4a24c6df
make notification icon change on hover
2023-01-05 19:15:48 -06:00
keyan
76b5b7743e
fix blockquote spacing
2023-01-05 19:06:31 -06:00
keyan
2080cb896d
lexical beta test url
2023-01-05 13:24:09 -06:00
kerooke
f35002dbbf
Update login.js
2022-12-29 11:40:45 -05:00
kerooke
335125f57b
Merge branch 'stackernews:master' into master
2022-12-29 11:38:53 -05:00
keyan
a92172ab9b
style share link on mobile
2022-12-19 17:37:31 -06:00
keyan
b96f014906
refine link sharing on jobs/comments
2022-12-19 17:21:47 -06:00
keyan
ee17518abf
add referrer stats to top
2022-12-19 17:00:53 -06:00
keyan
41226245c5
referrals
2022-12-19 16:27:52 -06:00
kerooke
24263120f3
Update notifications.js
2022-12-11 13:31:44 -05:00
keyan
bf02ee35b9
custom tipping with buttons
2022-12-09 14:13:31 -06:00
keyan
7b7ed0047c
turbo tipping
2022-12-09 13:25:38 -06:00
keyan
e1bdb9c769
donations to rewards
2022-12-07 18:04:02 -06:00
keyan
2a4e5a0617
add more filters to recent
2022-12-01 16:42:49 -06:00
keyan
a2db3e18b4
better user analytics mostly
2022-12-01 15:31:04 -06:00
keyan
7df375e752
improvements to jobs
2022-11-29 11:29:43 -06:00
keyan
1bf747c7c0
sats to msats
2022-11-16 10:57:03 -06:00
keyan
8de00c741d
poll for notifications less, don't retry gql
2022-11-16 10:57:03 -06:00
keyan
525cab2573
upgrade deps
2022-11-06 11:28:58 -06:00
keyan
a1690ed511
improve freebie wrt boost, get off free earlier
2022-11-01 14:32:56 -05:00
keyan
760b6b6e10
related items
2022-10-27 15:25:42 -05:00
keyan
9c5937b9be
strike once for lurkers
2022-10-26 11:45:16 -05:00
keyan
46edb3e10c
Merge branch 'master' of github.com:stackernews/stacker.news
2022-10-25 16:45:36 -05:00
Keyan
b085058795
Merge pull request #207 from ekzyis/103-add-ZAR
...
Add ZAR currency
2022-10-25 16:44:28 -05:00
keyan
a398784f26
improved top
2022-10-25 16:35:32 -05:00
keyan
30b1ee33aa
user search
2022-10-25 12:13:06 -05:00
keyan
79af550168
add guide to footer
2022-10-23 10:43:39 -05:00
ekzyis
51db3b0142
Add ZAR currency
2022-10-21 16:28:49 +02:00
keyan
e4d150413b
search filters
2022-10-20 17:44:44 -05:00
keyan
1bcfb787a6
add changelog to footer
2022-10-10 16:58:50 -05:00
keyan
73033dc015
fix job form price bug
2022-10-04 18:14:36 -05:00
keyan
dbf66b4dd7
allow lightning animation to be disabled
2022-10-04 17:34:28 -05:00
keyan
729bcead69
select instead of dropdown for currency
2022-10-04 16:21:42 -05:00
Keyan
0ff9bbc92d
Merge pull request #192 from ekzyis/103-add-other-currencies
...
Support other currencies
2022-10-04 14:54:57 -05:00
keyan
5af0920035
fix copy heading/hash
2022-10-04 13:26:33 -05:00
Keyan
1c45f651eb
Merge branch 'master' into master
2022-10-04 12:30:54 -05:00
keyan
515f997147
link to privacy
2022-10-04 12:19:15 -05:00
ekzyis
2dd4b1ce98
Merge branch 'master' into 103-add-other-currencies
2022-10-04 01:01:43 +02:00
Keyan
f6c5644311
Merge pull request #197 from ekzyis/no-issue-fix-brace-expected
...
Fix '{' expected
2022-10-03 16:09:49 -05:00
keyan
46ea2f661c
make jobs great again
2022-09-29 15:42:33 -05:00
keyan
401efbd550
add ln icon to login
2022-09-27 16:27:29 -05:00
keyan
d9d426e5c3
add freebies
2022-09-27 16:19:15 -05:00
keyan
9c4d74888f
add borderland
2022-09-22 15:42:04 -05:00
keyan
2c7c237fc7
show when items are outlawed
2022-09-22 13:44:50 -05:00
keyan
4b00661ad0
change dont like this to flag
2022-09-22 10:43:17 -05:00
keyan
3dc86189be
fix search icon
2022-09-22 10:26:02 -05:00
keyan
7faae425b3
wild west mode
2022-09-21 14:57:36 -05:00
ekzyis
94346d252b
Fix '{' expected
2022-09-18 05:21:52 +02:00
ekzyis
464281c0e1
Add AUD, CAD, GBP, NZD
2022-09-18 03:54:13 +02:00
ekzyis
c184faf017
Use dropdown for fiat selection in settings
2022-09-18 03:45:21 +02:00
ekzyis
22e07a4318
Fix errors if me null
2022-09-18 03:07:14 +02:00
keyan
08893d020c
improved earning: more detail, longer top tail
2022-09-14 17:01:30 -05:00
ekzyis
6f632ccc0d
Implement dynamic coinbase endpoint
2022-09-13 02:03:26 +02:00
keyan
b7132cc962
use correct callbackUrl for login with tor
2022-09-06 16:10:13 -05:00
keyan
69b5aed85d
fix 'me' on refresh
2022-09-06 10:08:53 -05:00
keyan
b468c033ca
better handling of comment sort loading state
2022-09-06 09:48:37 -05:00
keyan
7efc86427d
maintage pagination and other state on back button
2022-09-06 08:32:00 -05:00
keyan
58eb840adb
prevent default on privacy invoice info click
2022-09-02 11:58:16 -05:00
keyan
297270f34d
inform user when there are new comments
2022-09-02 11:53:44 -05:00
keyan
0f5fc31803
show comment sats on hover
2022-09-02 08:19:25 -05:00
keyan
04d7e9c0ee
update cache of ancestors on comment and upvote
2022-09-01 16:53:39 -05:00
keyan
f65f6c1b28
remove meComments and clean up sats title
2022-09-01 16:20:20 -05:00
keyan
4be5cfa5c7
display earned sats in comments
2022-09-01 16:06:11 -05:00
keyan
20a6a51492
dull title when visited, more distinct visited links
2022-08-31 15:22:25 -05:00
keyan
a5d1d8dc0f
user suggestions on forward
2022-08-31 14:09:49 -05:00
keyan
016e357ebd
clear inputs
2022-08-30 17:02:45 -05:00
keyan
fba0187b2c
add link to recent/comments
2022-08-23 17:34:51 -05:00
keyan
db953bd41b
link to weekly stats rather than forever
2022-08-18 16:23:12 -05:00
keyan
a714a13029
fix nested anchor in navbar error
2022-08-18 16:19:37 -05:00
keyan
4d444d1286
fix notification spacing
2022-08-18 14:19:01 -05:00
keyan
388c7d0240
full powered editing
2022-08-18 13:15:24 -05:00
keyan
9b8b6078d6
fix image distortion on certain browsers
2022-08-12 15:14:36 -05:00
keyan
ddb4a30c4b
spam fees
2022-08-11 15:38:10 -05:00
keyan
12fad3c45a
fix genesis typo
2022-08-01 15:48:28 -05:00