Commit Graph

1345 Commits

Author SHA1 Message Date
Alex Gleason 590da75cf2
Merge remote-tracking branch 'origin/main' into feat-persist-user-preference 2024-05-20 14:02:38 -05:00
Alex Gleason a961eabb0e Merge branch 'lnurl-fix' into 'main'
Fix crash parsing Lightning URL

Closes #139

See merge request soapbox-pub/ditto!286
2024-05-20 17:54:13 +00:00
Alex Gleason 839c95f9a9 Merge branch 'refactor-test' into 'main'
Refactor EventsDB test to use eventFixture()

Closes #135

See merge request soapbox-pub/ditto!285
2024-05-20 17:51:52 +00:00
Alex Gleason 6861dc1d57
Fix crash parsing Lightning URL
Fixes https://gitlab.com/soapbox-pub/ditto/-/issues/139
2024-05-20 12:49:01 -05:00
P. Reis 98fd4babce test(EventsDB): use eventFixture() 2024-05-20 14:46:53 -03:00
Alex Gleason 7b099ee565
EventsDB: don't index the user's bio for kind 0 events 2024-05-20 11:39:44 -05:00
Alex Gleason 6f6e87525e
Remove DittoUploader interface in favor of NUploader 2024-05-19 15:57:04 -05:00
Alex Gleason 0541287f0e
Replace our NostrBuildUploader with the one from Nostrify 2024-05-19 15:43:46 -05:00
Alex Gleason f0b247130f
Add support for Blossom uploader 2024-05-19 15:42:45 -05:00
Siddharth Singh 29eb87dab3
format 2024-05-20 00:14:29 +05:30
Siddharth Singh 949697d80a
fix type error caused by trends refactor 2024-05-20 00:11:29 +05:30
Siddharth Singh f19629600d
rewrite trendsworker with kysely and deno cron, format changes 2024-05-20 00:05:03 +05:30
Alex Gleason 9754e29603
accountSearchController: respect the `limit` param 2024-05-19 11:45:42 -05:00
Alex Gleason 540bd058a2
Fix NIP-27 mentions 2024-05-19 11:33:59 -05:00
Alex Gleason 7f5179efca
renderAttachment: guess mime from url 2024-05-19 09:13:53 -05:00
Alex Gleason 5523c3fc0e
verifyCredentials: wait up to 5 seconds 2024-05-18 23:02:59 -05:00
Alex Gleason acef173ac4
Do things the boilerplatey way just for consistency 2024-05-18 22:15:33 -05:00
Alex Gleason 24659d8edb
IPFSUploader: make schema private 2024-05-18 22:11:54 -05:00
Alex Gleason 6542d6a777
Move uploader.ts to utils, make it kind of like api.ts 2024-05-18 22:04:43 -05:00
Alex Gleason 82c03dcb56
Rewrite all the uploaders 2024-05-18 22:00:24 -05:00
Alex Gleason 6090c4a6d9
Make Uploaders return NIP-94 tags 2024-05-18 18:23:04 -05:00
Alex Gleason e5595d34be
Strip imeta links from the end of the content 2024-05-18 17:15:27 -05:00
Alex Gleason 353111051a
Use dimensions from nostr.build 2024-05-18 16:53:17 -05:00
Alex Gleason ce49c500ae
renderStatus: fix duplicated attachments 2024-05-18 16:47:47 -05:00
Alex Gleason c89be75e5b
Add a nostr.build uploader 2024-05-18 16:22:24 -05:00
Alex Gleason cbf0bc3594
Fix note test 2024-05-18 15:46:28 -05:00
Alex Gleason c8b999a1f7
imeta: don't get attachment ID from a tag 2024-05-18 15:36:17 -05:00
Alex Gleason b1b341d3b8
Insert media URL into text 2024-05-18 15:29:12 -05:00
Alex Gleason 91ea4577f1
Filter out attachments with no url 2024-05-18 14:58:48 -05:00
Alex Gleason e7d350a0e3
Fix uploading by URL 2024-05-18 14:54:10 -05:00
Alex Gleason 611a94bdcf
Fix uploading (almost) 2024-05-18 14:32:50 -05:00
Alex Gleason 7d34b9401e
Support imeta tags 2024-05-18 13:22:20 -05:00
Alex Gleason c8f9483795
Add note.test.ts 2024-05-18 11:56:22 -05:00
Alex Gleason 942260aa54
note.ts -> utils/note.ts 2024-05-18 11:53:33 -05:00
Alex Gleason 5997ff0fff
Create utils/media.ts, move some code from note.ts there 2024-05-18 11:52:33 -05:00
Alex Gleason f97064afb4
Remove dependency on npm:mime, switch to @std/media-types 2024-05-18 11:35:29 -05:00
Alex Gleason 6ac4c072a6
Fix crash decoding url 2024-05-18 08:20:43 -05:00
Alex Gleason 3e93b42251
stats: add a debug call 2024-05-18 08:13:37 -05:00
Alex Gleason f9a0055e78
stats: add a Semaphore when refreshing author stats 2024-05-17 19:00:56 -05:00
Alex Gleason 23a366081f
stats: maybe refresh stats when updating 2024-05-17 18:42:45 -05:00
Alex Gleason bf479d0162
Move refreshAuthorStatsDebounced to stats.ts 2024-05-17 18:26:55 -05:00
Alex Gleason 5c2e3450a9
Refresh author stats: less naive way 2024-05-17 17:50:30 -05:00
Alex Gleason ae9516b445
refreshAuthorStats: return the stats 2024-05-17 16:23:38 -05:00
Alex Gleason a39910fa98
Add a function to recalculate author stats 2024-05-17 13:18:23 -05:00
Alex Gleason 1a32150f3d Merge branch 'nonzero-stats' into 'main'
Never let stats be less than 0

See merge request soapbox-pub/ditto!272
2024-05-17 16:42:12 +00:00
Alex Gleason 251500fba1
Never let stats be less than 0 2024-05-17 11:39:21 -05:00
Alex Gleason 80e487817e Merge branch 'fix-followers-and-following-when-no-kind-0' into 'main'
Render followers & following list when the accounts do not have a kind 0

Closes #134

See merge request soapbox-pub/ditto!271
2024-05-17 14:28:50 +00:00
P. Reis 4cc1d13d44 fix: render followers & following list when no kind 0 2024-05-17 11:25:17 -03:00
P. Reis 2aee2e6bf6 fix(renderReblog): render account from pubkey if there is no kind 0 2024-05-17 09:45:19 -03:00
Siddharth Singh 83a7b1f231
create tags_usages kysely table 2024-05-17 14:46:20 +05:30
Alex Gleason 5aacbe7af5
Fix media uploads due to 'awaiting' a query builder instance 2024-05-16 18:53:04 -05:00
Alex Gleason 04980089b4 Merge branch 'pgfts' into 'main'
Upgrade Nostrify to v0.20.0, enable Postgres FTS

See merge request soapbox-pub/ditto!269
2024-05-16 22:24:21 +00:00
Alex Gleason baa6986880
EventsDB: enable fts conditionally based on DATABASE_URL 2024-05-16 15:48:22 -05:00
Alex Gleason 00d4bf2344
Upgrade Nostrify to v0.20.0, enable Postgres FTS 2024-05-16 15:42:32 -05:00
Alex Gleason cb2e8607fa Merge branch 'refactor-unreblog' into 'main'
Mastodon API (Unreblog) - Query with Storages.db()

See merge request soapbox-pub/ditto!266
2024-05-16 20:17:38 +00:00
Alex Gleason 031a3eac04
EventsDB.test: import order 2024-05-16 10:30:54 -05:00
Alex Gleason 4df2c7ba9c
Improve EventsDB error handling 2024-05-16 10:29:14 -05:00
Alex Gleason 2ede439005
Upgrade Nostrify to v0.19.1, fix phantom deletions 2024-05-16 09:29:53 -05:00
P. Reis e61cbecb3e refactor(unreblog): update error messages and query with Storages.db() 2024-05-16 10:38:30 -03:00
Alex Gleason 4b07f2a12a
Actually, set default LOCAL_DOMAIN based on PORT 2024-05-16 08:10:13 -05:00
Alex Gleason 0acde23c46
Port 8000 -> 4036 in all the places 2024-05-16 08:08:36 -05:00
Alex Gleason f14b64b003
Remove useless policy dir 2024-05-15 20:35:35 -05:00
Alex Gleason 0b6b62f3b3
policyWorker: import deno-safe-fetch 2024-05-15 20:27:54 -05:00
Alex Gleason 9e9ab40886
Run the custom policy in a worker for security 2024-05-15 20:19:49 -05:00
Alex Gleason 6a1b8b0943
policy: improve error handling 2024-05-15 19:30:20 -05:00
Alex Gleason 8a672c93ec
Debug custom policies with ditto:policy 2024-05-15 18:59:51 -05:00
Alex Gleason 8e68d13ff1
Let custom policy be configured with DITTO_POLICY 2024-05-15 18:49:55 -05:00
Alex Gleason 417bd64f4c
Use port 4036 by default 2024-05-15 17:09:12 -05:00
Alex Gleason 4d3a9c6e23
stats: fix kysely screaming that we're awaiting a builder instance 2024-05-15 10:09:31 -05:00
Alex Gleason 406baf8a1d
events-db -> EventsDB 2024-05-15 08:18:31 -05:00
Alex Gleason 7021b0d4fd
'null' -> null 2024-05-15 08:13:19 -05:00
Alex Gleason 171350a34d
Drop deleted_at column 2024-05-15 08:08:30 -05:00
Alex Gleason 137bd0dae0
adminAccountsController: fix type error with DittoEvent 2024-05-14 22:19:33 -05:00
Alex Gleason ae0ec7be7e
EventsDB: remove DittoEvent dependency 2024-05-14 21:29:04 -05:00
Alex Gleason 221c41fdfa
EventsDB: make it a simple wrapper around NDatabase 2024-05-14 21:23:25 -05:00
Alex Gleason 69108c0375
UnattachedMedia: point to new EventsDB tables 2024-05-14 20:58:29 -05:00
Alex Gleason b3985e740b
EventsDB: migrate tables to match NDatabase 2024-05-14 20:54:09 -05:00
Alex Gleason af9fb6aaa3
Sort imports of streaming.ts 2024-05-14 20:05:38 -05:00
P. Reis a1326dedcc fix(streaming): async storage 2024-05-14 21:53:50 -03:00
P. Reis 9e34838de8 Merge branch 'main' into fix-blocked-users-in-streaming
(((updating local branch)))
2024-05-14 21:51:53 -03:00
P. Reis 0383726663 fix(streaming): use policy instead of hand coding 2024-05-14 21:44:19 -03:00
Alex Gleason f163af55d8
Remove deps-test.ts 2024-05-14 19:19:57 -05:00
P. Reis 4d342dff4a fix(streaming): move get muted users logic before upgrading connection to web socket 2024-05-14 21:14:00 -03:00
Alex Gleason 2fd50261f9
streaming: actually hydrate with optimizer 2024-05-14 19:11:38 -05:00
Alex Gleason 477ee8b124
Fix hydrateEvents in streaming 2024-05-14 19:09:25 -05:00
Alex Gleason d3a7f0849f
deno lint 2024-05-14 19:02:15 -05:00
Alex Gleason b4d48218b8
Add missing nostr-relaypool import 2024-05-14 18:46:55 -05:00
Alex Gleason a4226a963f
Rework Kysely db to be async 2024-05-14 18:44:42 -05:00
Alex Gleason 68b5887ed0
Don't let your memes be dreams 2024-05-14 18:24:34 -05:00
Alex Gleason 08c9ee0670
Refactor client and firehose 2024-05-14 16:25:24 -05:00
Alex Gleason 3c706dc81b
Storages: make all methods async (total chaos and destruction) 2024-05-14 16:10:50 -05:00
Alex Gleason 7feecab723
stats: fix ambiguous column name error in Postgres? 2024-05-14 15:25:56 -05:00
Alex Gleason eef349f1e9
Update stats before storing event 2024-05-14 15:05:59 -05:00
Alex Gleason efa1c92044
Merge remote-tracking branch 'origin/main' into signer-middleware 2024-05-14 14:48:47 -05:00
Alex Gleason e53ea22274
Remove unused import 2024-05-14 14:48:37 -05:00
Alex Gleason f12bb4b643 Merge branch 'block-globally-muted-user-to-post' into 'main'
Do not allow deactivated accounts to post

Closes #118

See merge request soapbox-pub/ditto!245
2024-05-14 19:46:36 +00:00
Alex Gleason 46b5bbf841
Uppercase CustomPolicy 2024-05-14 14:39:48 -05:00
Alex Gleason ecfea827e1
Move RelayError into its own file, add helper methods 2024-05-14 14:38:38 -05:00
Alex Gleason 45b766af4d
Remove 'user' from AppContext 2024-05-14 14:24:48 -05:00
Alex Gleason a061c248bd
signerMiddleware: add debug log 2024-05-14 14:18:44 -05:00
Alex Gleason e5392f4d9e
Merge remote-tracking branch 'origin/main' into signer-middleware 2024-05-14 14:16:38 -05:00
Alex Gleason 2f938ae42e Merge branch 'hydrate-test-kind-1984' into 'main'
Hydrate test: code coverage in kind 1984 & refactor to import fixtures in a dynamic way

Closes #125

See merge request soapbox-pub/ditto!249
2024-05-14 17:49:19 +00:00
P. Reis b626d75262 fix(streaming): posts from blocked users does not show up in global tab 2024-05-14 14:22:37 -03:00
Alex Gleason cd2a35d951
ConnectSigner: make getPublicKey used the stored value instead of actually hitting the relay 2024-05-14 12:20:36 -05:00
Alex Gleason 03182f8a5a
ConnectSigner: implement getRelays, support nprofile auth again 2024-05-14 12:14:27 -05:00
Alex Gleason 084143c5c8
Rename all middleware to thingMiddleware 2024-05-14 12:07:54 -05:00
Alex Gleason 1accae2222
Add a ConnectSigner to wrap our default opts to NConnectSigner, add c.set('signer') calls to nip98 middleware 2024-05-14 12:04:31 -05:00
Alex Gleason c715827c81
c.get('pubkey') -> await c.get('signer')?.getPublicKey() 2024-05-14 11:57:03 -05:00
Alex Gleason c5fbe69b80
requirePubkey -> requireSigner 2024-05-14 11:42:53 -05:00
Alex Gleason 5a2b1b7de7
Destroy everything 2024-05-14 11:40:20 -05:00
Alex Gleason ee7864da8c
Add a signerMiddleware 2024-05-14 11:31:20 -05:00
P. Reis caaa7016f0 test(hydrate): refactor to import fixtures with 'eventFixture' function 2024-05-13 21:56:29 -03:00
Alex Gleason cc9d2efef9
Fix mentions 2024-05-13 18:50:20 -05:00
P. Reis 78137f373f test(hydrate): kind 1984 2024-05-13 20:22:27 -03:00
P. Reis 4029971407 fix(pipeline): load custom policy if available 2024-05-13 17:44:33 -03:00
Alex Gleason 6105e00c80
pipeline: add a placeholder for custom policy 2024-05-13 12:43:01 -05:00
Alex Gleason 9bff7a5086
Fix some issues in pipeline and utils/api.ts 2024-05-13 12:30:56 -05:00
Alex Gleason 2140b3fbb2
lookupPubkey: check the bech32 first 2024-05-13 11:21:17 -05:00
Alex Gleason dc8010a78e
getClientConnectUri: fix description value 2024-05-12 13:33:22 -05:00
Alex Gleason 3b0739f187
Add a getClientConnectUri function, add "Nostr Connect" link in the OAuth form 2024-05-12 13:12:46 -05:00
Alex Gleason bdfa6f8826
Add a getInstanceMetadata function to DRY a few controllers 2024-05-12 12:32:40 -05:00
Alex Gleason 928ae4ec22
oauthController: calculate the script hash on the fly so we can edit it 2024-05-12 10:56:27 -05:00
Alex Gleason 65034a4aae
Support Explicit Addressing 2024-05-11 14:34:02 -05:00
P. Reis 04968fefaa test(MuteListPolicy): update error msg 2024-05-11 14:02:24 -03:00
P. Reis fe66937bba feat: do not allow deactivated accounts to post 2024-05-11 12:04:44 -03:00
P. Reis 801e68c6c4 fix: add error prefix according to NIP-01 2024-05-11 12:03:41 -03:00
Alex Gleason d278fc980a Merge branch 'fix-reports-no-kind-0' into 'main'
renderAdminAccount - Get account from pubkey if there is no kind 0 in the database

Closes #122

See merge request soapbox-pub/ditto!243
2024-05-10 22:20:23 +00:00
Alex Gleason c017770760 ! -> ?. 2024-05-10 22:17:44 +00:00
P. Reis 323e425e8b fix(renderAdminReport): make sure reportedPubkey is not undefined 2024-05-10 19:05:15 -03:00
Alex Gleason d142ce618d Merge branch 'feat-create-mute-policy' into 'main'
Create MuteListPolicy

See merge request soapbox-pub/ditto!242
2024-05-10 21:35:13 +00:00
P. Reis 732cb45b1e test(UserStore): update with 100.00% code coverage 2024-05-10 18:20:00 -03:00
P. Reis 4fdf15761c refactor(UserStore): remove isMuted function 2024-05-10 18:18:55 -03:00
P. Reis 3970bb81f7 refactor(MuteListPolicy): simplify condition 2024-05-10 18:03:35 -03:00
P. Reis d3b7668a1e fix: create renderAdminAccountFromPubkey and use it if reported account doesn't have a kind 0 2024-05-10 16:51:07 -03:00
Alex Gleason 282612b53c
Add an eventFixture function to import fixtures in tests 2024-05-10 14:10:19 -05:00
P. Reis 4069ddc02c refactor(MuteListPolicy): human lint preference 2024-05-10 14:37:02 -03:00
P. Reis 86518dbac5 refactor(MuteListPolicy): shorthand private constructor 2024-05-10 14:34:48 -03:00
P. Reis ebeec2ccba test: MuteListPolicy with 100.00% code coverage 2024-05-10 11:26:15 -03:00
P. Reis 26dd4606ed test: UserStore with 100.00% code coverage 2024-05-10 10:35:04 -03:00
P. Reis 0c0465f131 refactor(UserStore): move mute logic to separate function & create isMuted() function 2024-05-10 10:31:34 -03:00
P. Reis c85f31f63f feat: create MuteListPolicy class 2024-05-10 10:19:15 -03:00
Alex Gleason afcf28b506 Merge branch 'admin-accounts-perform-action' into 'main'
Implement Mastodon API - perform action against an account

Closes #114

See merge request soapbox-pub/ditto!240
2024-05-09 16:46:54 +00:00
P. Reis 4fa6b96d15 refactor(admin action): mute account even if it doesn't have a kind 0 2024-05-09 13:44:05 -03:00
P. Reis 9e2225873d feat: implement action against an account
- Action of deactivating an account by muting it in the entire server
2024-05-08 20:12:55 -03:00
P. Reis e4952f0c21 feat: create updateListAdminEvent() & updateAdminEvent() 2024-05-08 20:12:20 -03:00
Alex Gleason e29fb28d78 Merge branch 'report-nits' into 'main'
Small reportController refactoring

See merge request soapbox-pub/ditto!238
2024-05-08 22:29:41 +00:00
Alex Gleason 64e49bca9d
EventsDB: fix postgres crash when there are no local users 2024-05-08 17:11:48 -05:00
Alex Gleason c7e8beebc6
renderReport: whoops, event.author -> event.reported_account 2024-05-08 15:06:33 -05:00
Alex Gleason 8530749192
reportController: hydrate the report itself to get the author 2024-05-08 15:03:58 -05:00
Alex Gleason f99958c40e
reportsController -> reportController 2024-05-08 14:59:30 -05:00
Alex Gleason a82af47c67
quote_repost -> quote 2024-05-08 14:53:33 -05:00
Alex Gleason b16d5b749e
Add a created_at, kind index for the global feed 2024-05-08 14:34:22 -05:00
Alex Gleason 6bc051c06b
EventsDB: avoid ORDER BY when querying replaceable events by author 2024-05-08 13:56:37 -05:00
Alex Gleason 43e8f2a698
Use a Kysely logger to log SQL regardless of the adapter used 2024-05-08 12:56:42 -05:00
Alex Gleason 5e1cfad5cc
Add PG_POOL_SIZE environment variable 2024-05-08 11:46:27 -05:00
Alex Gleason b6dd49e2ef Merge branch 'relationships-mute' into 'main'
Relationships: fix blocks and mutes being switched

See merge request soapbox-pub/ditto!232
2024-05-08 16:13:34 +00:00
Alex Gleason 7ad0e4d9e9
Relationships: fix blocks and mutes being switched 2024-05-08 10:41:05 -05:00
P. Reis e8b690e262 fix(admin resolve): create admin event instead of create normal event 2024-05-08 10:32:10 -03:00
P. Reis 57495dbd7a feat: implement report resolve 2024-05-07 20:49:42 -03:00
P. Reis 53a8871a54 refactor: change 'singleAdminReportsController' to 'adminReportController' 2024-05-07 11:29:49 -03:00
P. Reis 17706d3b20 feat: implement view single report 2024-05-07 10:19:08 -03:00
Alex Gleason 120003c5c8 Merge branch 'admin-reports-api' into 'main'
Return from renderReport() in case pubkey is undefined

See merge request soapbox-pub/ditto!224
2024-05-06 18:06:53 +00:00
P. Reis 8d7621fbaf fix: return in case pubkey is undefined 2024-05-06 14:40:56 -03:00
Alex Gleason a3e54fdff4
DittoPostgres: use pool size for number of CPU cores 2024-05-06 11:44:33 -05:00
P. Reis 24068d12d0 refactor(reports): rename variables and remove type assertion 2024-05-06 11:47:05 -03:00
P. Reis 394599734f fix(reports): put notes in tag & only let comment in event.content 2024-05-05 15:45:24 -03:00
P. Reis 7890504add refactor: view info about all reports 2024-05-05 14:20:13 -03:00
P. Reis d903a2d0fb Merge branch 'main' into admin-reports-api
Update local branch & solve conflicts in hydrate.ts
2024-05-04 20:23:16 -03:00
P. Reis 14802dd38a feat(hydrate): create gatherTargetAccounts() & gatherReportedStatuses() 2024-05-04 20:18:36 -03:00
P. Reis 4d5d4868ce feat: create renderAdminReport() func 2024-05-04 20:14:39 -03:00
P. Reis 8a7f0892d7 fix: check if event is not undefined in renderAdminAccount 2024-05-04 20:12:34 -03:00
P. Reis b8df95408b feat: add target_account & reported_statuses to DittoEvent type 2024-05-04 20:11:29 -03:00
P. Reis af7b83cf8a feat: create /api/v1/admin/reports endpoint & controller 2024-05-04 20:10:18 -03:00
P. Reis b57188943f feat: renderAdminAccount() supports both kind 0 & kind 30361 2024-05-04 16:29:31 -03:00
Alex Gleason 3770d8a0dd
UnattachedMedia: return early when querying nothing 2024-05-04 13:14:03 -05:00
P. Reis f08211e2a1 refactor(admin-accounts): resolve import specifier via the active import map 2024-05-04 10:29:08 -03:00
Alex Gleason 0a3be0da58
Notifications: fix Favourites and EmojiReacts not being displayed 2024-05-03 21:22:53 -05:00
Alex Gleason e25372313b
suggestions: fix profile lookup, limit to 20 items for now 2024-05-03 18:32:35 -05:00
Alex Gleason 4ee4266843
instance: add 'v2_suggestions' to features 2024-05-03 18:28:07 -05:00
Alex Gleason cfb0d3f04c Merge branch 'suggestions' into 'main'
Start suggestions API

See merge request soapbox-pub/ditto!218
2024-05-03 23:24:53 +00:00
Alex Gleason 0f3fbbcb28
Start suggestions API 2024-05-03 18:21:40 -05:00
Alex Gleason 5001567b00
Streaming: temporarily remove UserStore (allow blocked posts through) 2024-05-03 17:20:35 -05:00
Alex Gleason 7efd5c1822
Clean up "not implemented" endpoints 2024-05-03 17:09:20 -05:00
Alex Gleason a2c5b5e61d
Markers: only allow 'home' and 'notifications' markers 2024-05-03 16:20:07 -05:00
Alex Gleason 8e178338b7
Implement Markers API 2024-05-03 16:17:36 -05:00
Alex Gleason 2b2499849f
pipeline: fix reqmeister crash, probably 2024-05-03 13:52:11 -05:00
Alex Gleason e9c5ef89ff
Reqmeister: improve API and fetching logic (untested) 2024-05-03 13:33:50 -05:00
Alex Gleason 6b20104327
filter: use getFilterLimit from nostr-tools 2024-05-03 13:26:26 -05:00
Alex Gleason 091392088f
PoolStore: simplify req 2024-05-03 13:25:18 -05:00
Alex Gleason 705e8e7c31
PoolStore: implement NRelay 2024-05-03 13:23:00 -05:00
Alex Gleason 2ee668d562 Merge branch 'feat-create-reports' into 'main'
Create user reports through kind 1984

Closes #97

See merge request soapbox-pub/ditto!210
2024-05-03 14:25:22 +00:00
P. Reis f2f0aa8741 fix(accountLookup): fix user not found by using 'accountFromPubkey' 2024-05-03 09:52:25 -03:00
P. Reis ca5433bcc7 refactor(reports): update code according to code review in MR 210 2024-05-02 20:21:58 -03:00
Alex Gleason 09c596c9e4
Add back block controllers, but 422 them 2024-05-02 15:34:17 -05:00
Alex Gleason 4c71dec6ce
Rename blocks to mutes in the API 2024-05-02 15:26:46 -05:00
Alex Gleason b219a21a2a Merge branch 'notifications-167' into 'main'
Notifications: render notifications for kinds 1, 6, and 7 events

See merge request soapbox-pub/ditto!211
2024-05-02 20:21:35 +00:00
Alex Gleason ec7b3f8350
followController: manually set `following: true` in the response 2024-05-02 15:02:05 -05:00
Alex Gleason 220f16feb8
Notifications: render notifications for kinds 1, 6, and 7 events 2024-05-02 14:36:28 -05:00
P. Reis 226c356646 feat: create mastodon response for reports 2024-05-02 16:03:59 -03:00
P. Reis 23f8377231 feat: create reports controller 2024-05-02 16:03:15 -03:00
Alex Gleason b016f931ff
EventsDB: always index the first P-tag of events 2024-05-02 09:54:24 -05:00
P. Reis 3e6600b5f5 Merge branch 'main' into feat-create-reports
((( Updating local branch )))
2024-05-02 09:33:59 -03:00
Alex Gleason 4045a6bdfc
Catch metadata when parsing 2024-05-01 19:55:58 -05:00
Alex Gleason fc7ed8bf24
Remove zod schemas that we can get from NSchema 2024-05-01 19:51:12 -05:00
Alex Gleason 76f30f5cc7
utils: remove unused import of zod 2024-05-01 19:19:52 -05:00
Alex Gleason 439dfca311
Fix kysely imports in migrations 2024-05-01 19:16:12 -05:00
Alex Gleason 87264eeef1
Remove `relays` table from the database, track them with a NIP-65 admin event 2024-05-01 19:15:20 -05:00
P. Reis 9553fce25d Merge branch 'main' into feat-create-reports
(((Updating local branch)))
2024-05-01 20:56:18 -03:00
Alex Gleason 444a6efd7d
Upgrade kysely-deno-sqlite, fix the type 2024-05-01 18:40:04 -05:00
P. Reis e8088c9eed feat: define reports endpoint 2024-05-01 20:38:30 -03:00
Alex Gleason 258e81df51
Admin relays: use "marker" property in the API, fix PUT controller 2024-05-01 18:29:32 -05:00
Alex Gleason 984695391a
unfurl -> unfurl.js 2024-05-01 16:59:15 -05:00
Alex Gleason 8959f85afb
Fix imports of uuid62 and fast-stringify-stable 2024-05-01 16:42:07 -05:00
Alex Gleason 7de5cdc18d
@db/sqlite, scoped_performance aliases 2024-05-01 16:40:58 -05:00
Alex Gleason 08ed52a57b
formdata-helper alias 2024-05-01 16:37:01 -05:00
Alex Gleason d1f643d7ad
secp256k1 alias 2024-05-01 16:35:39 -05:00
Alex Gleason 5a7a409981
Alias unfurl, linkifyjs etc 2024-05-01 16:34:16 -05:00
Alex Gleason e5c8030960
Move more deps to aliases 2024-05-01 16:29:21 -05:00
Alex Gleason ea665eed12
std/dotenv alias 2024-05-01 16:22:55 -05:00
Alex Gleason c4d8ad2368
uuid62 alias 2024-05-01 16:21:18 -05:00
Alex Gleason 8738aeb820
tldts alias 2024-05-01 16:19:53 -05:00
Alex Gleason c7b34ed31b
iso-639-1 alias 2024-05-01 16:18:28 -05:00
Alex Gleason 973791cde1
type-fest alias 2024-05-01 16:16:19 -05:00
Alex Gleason 3513206de1
stickynotes alias 2024-05-01 16:14:50 -05:00
Alex Gleason 9d0be2de0d
nostr-relaypool alias 2024-05-01 15:57:28 -05:00
Alex Gleason 58ed1b111f
Comlink alias 2024-05-01 15:55:56 -05:00
Alex Gleason c190d2c8ce
Refactor Storages to get lazy-loaded only when they are used 2024-05-01 14:56:47 -05:00
Alex Gleason 621a632893
Update kysely imports in migrations 2024-05-01 09:36:36 -05:00
Alex Gleason 4291691aa7
Make @soapbox/kysely-deno-sqlite an import alias 2024-05-01 09:27:19 -05:00
Alex Gleason 23e00b0042
Make Kysely an import alias 2024-05-01 09:26:17 -05:00
Alex Gleason caa9e47161
Remove cron.ts 2024-05-01 09:08:36 -05:00
Alex Gleason 6cc44c468e
Don't await cleanupMedia on startup 2024-04-30 20:38:21 -05:00
P. Reis de08aeac10 fix: allow to query kind 0 of blocked users 2024-04-30 21:28:45 -03:00
P. Reis 2b605d2ac3 Merge branch 'main' into fix-block-not-working-in-streaming
(((Updating local branch)))
2024-04-30 21:23:44 -03:00
P. Reis f0c66c1e92 fix(streaming): don't show posts from blocked users 2024-04-30 21:23:25 -03:00
P. Reis e8e45360d3 refactor(store middleware): get adminStore through function 2024-04-30 21:21:32 -03:00
P. Reis ba6d33c115 feat: create getAdminStore() func 2024-04-30 21:20:19 -03:00
Alex Gleason 0bb4ccf5c9
Move nostr-tools to an import alias 2024-04-30 18:43:53 -05:00
Alex Gleason 35ab012276
hashtagTimelineController: toLowerCase 2024-04-30 14:58:00 -05:00
Alex Gleason d22c606960
storeMiddleware: pass through admin UserStore 2024-04-30 13:27:30 -05:00
Alex Gleason f2b36f75f0
Remove hono/sentry middleware, upgrade @sentry/deno 2024-04-30 13:01:43 -05:00
Alex Gleason e722e754cd
deno lint 2024-04-30 12:55:39 -05:00
Alex Gleason f651bf416a
sentry: skip "no pubkey provided" error 2024-04-30 12:52:20 -05:00
Alex Gleason 9ecf5db1b1
hono: catch HTTPException 2024-04-30 12:46:29 -05:00
Alex Gleason 0e6b4e8b45
sentryMiddleware: ignore HTTPException errors 2024-04-30 12:37:27 -05:00
P. Reis d99fd753ee refactor(queries): convert getDescendants to async function 2024-04-30 11:18:20 -03:00
Alex Gleason 303b0fe098
Add localUploader 2024-04-29 16:28:54 -05:00
Alex Gleason 7ada849a6a
s3: support pathStyle 2024-04-29 16:05:36 -05:00
Alex Gleason c786e1bc55
Uploader: make second argument an options object 2024-04-29 15:32:18 -05:00
Alex Gleason 25db277a9f
storeMiddleware: remove `as string` 2024-04-29 15:10:08 -05:00