Commit graph

284 commits

Author SHA1 Message Date
Jesse Wierzbinski 372a209d32
Prevent getting notifications from yourself 2024-04-14 03:05:55 -10:00
Jesse Wierzbinski 325ecbfc53
Make status creation API more permissive 2024-04-14 03:01:56 -10:00
Jesse Wierzbinski 8939d17b8a
Disable minification for debugging 2024-04-14 01:37:32 -10:00
Jesse Wierzbinski e67dc07473
Fix errors flagged by Biome 2024-04-14 01:22:47 -10:00
Jesse Wierzbinski ab6fe6988c
Refactor debugging and logging more 2024-04-14 01:20:55 -10:00
Jesse Wierzbinski 82c6dc17a8
Update Mastodon API types 2024-04-14 00:53:21 -10:00
Jesse Wierzbinski 0b1c1ba128
Switch all routes to use Zod for strict validation 2024-04-14 00:36:25 -10:00
Jesse Wierzbinski 53fa9ca545
Code cleanup, refresh lockfile 2024-04-13 22:16:03 -10:00
Jesse Wierzbinski 354493133c
Reorganize FE 2024-04-13 19:26:29 -10:00
Jesse Wierzbinski bc296194b6
Replaces regexes with magic-regexp, simplify code 2024-04-13 17:49:32 -10:00
Jesse Wierzbinski 0ca77e9dcc
Clean up database with new schema 2024-04-13 15:21:38 -10:00
Jesse Wierzbinski a65249b79d
Remove Prisma once and for all 2024-04-13 14:46:33 -10:00
Jesse Wierzbinski 90d522eaa3
Convert remaining routes to Drizzle 2024-04-13 14:07:05 -10:00
Jesse Wierzbinski 05e45ff5aa
More conversions to Drizzle 2024-04-13 02:24:57 -10:00
Jesse Wierzbinski ad0bf1a350
More work on converting old Prisma calls to Drizzle 2024-04-13 02:20:12 -10:00
Jesse Wierzbinski ed58b7e67f
Remove wrong test 2024-04-11 13:13:46 -10:00
Jesse Wierzbinski 3ccff003f5
Add more tests, fix roiutes 2024-04-11 13:12:23 -10:00
Jesse Wierzbinski 6b3c604c33
Add new tests to server routes 2024-04-11 03:52:44 -10:00
Jesse Wierzbinski 6263c667e8
Wrong database names and columns used 2024-04-11 02:18:46 -10:00
Jesse Wierzbinski df939a6a7a
Fix not working routes 2024-04-11 02:12:16 -10:00
Jesse Wierzbinski f7abe06a60
Begin moving project to use Drizzle instead of prisma 2024-04-11 01:39:07 -10:00
Jesse Wierzbinski 1c8847ac6d
Few bugfixes 2024-04-09 23:33:21 -10:00
Jesse Wierzbinski f490cfce78
Add more metadata to instance endpoint 2024-04-09 22:54:36 -10:00
Jesse Wierzbinski 38a6f9a809
Add resolving of threads, mentions and quote posts 2024-04-09 22:37:58 -10:00
Jesse Wierzbinski cf295a596a
Add ability to accept and reject remote follows if account is locked 2024-04-09 22:07:03 -10:00
Jesse Wierzbinski dbb96027b8
going hogwild with the logging 2024-04-09 21:45:20 -10:00
Jesse Wierzbinski fc492c827b
More logging enabling 2024-04-09 21:36:28 -10:00
Jesse Wierzbinski 820d05c997
Add FollowAccept handling 2024-04-09 21:24:23 -10:00
Jesse Wierzbinski b92d8256a4
Logging 2024-04-09 21:04:46 -10:00
Jesse Wierzbinski 985190c683
Fix to unfollow route 2024-04-09 20:42:07 -10:00
Jesse Wierzbinski cb85b4a1de
Only mark as followed in database if federation works 2024-04-09 20:22:36 -10:00
Jesse Wierzbinski 5aeb50b7d5
Fix promises not being awaited 2024-04-09 20:14:33 -10:00
Jesse Wierzbinski b1d7073217
Make lookup also work on local users 2024-04-09 20:13:17 -10:00
Jesse Wierzbinski 59cd8c9bd1
Add lookup Mastodon API route 2024-04-09 20:09:57 -10:00
Jesse Wierzbinski 06f98c36bb
Resolve user if not found when verifying signing 2024-04-09 19:59:36 -10:00
Jesse Wierzbinski 8ef8054351
Add more logging 2024-04-09 19:56:46 -10:00
Jesse Wierzbinski f56e4f623a
Add following 2024-04-09 19:51:00 -10:00
Jesse Wierzbinski 7da7febd00
Add status federation 2024-04-09 19:24:07 -10:00
Jesse Wierzbinski 4acc04cd93
Make WebFinger resolve work 2024-04-09 19:13:13 -10:00
Jesse Wierzbinski fcf952e1f3
Add Lysand well-known route 2024-04-09 18:33:35 -10:00
Jesse Wierzbinski d5817e985d
Modify WebFinger behaviour, add user searching 2024-04-09 18:22:57 -10:00
Jesse Wierzbinski ae9698c647
Add WebFinger endpoints 2024-04-09 17:45:19 -10:00
Jesse Wierzbinski dc2fb029f5
Fix various file upload issues across server 2024-04-09 16:54:33 -10:00
Jesse Wierzbinski a58c81c8e9
Implement federation of statuses 2024-04-09 16:05:02 -10:00
Jesse Wierzbinski 8ecdc6261e
Make all media be uploaded with a unique hash 2024-04-09 03:51:22 -10:00
Jesse Wierzbinski be6b692a7b
Update Blurhash algorithm 2024-04-09 03:18:04 -10:00
Jesse Wierzbinski b91eb110cc
Check for width and height before making blurhash 2024-04-09 03:08:48 -10:00
Jesse Wierzbinski b5f31fc4e4
Prevent incorrect username registration 2024-04-08 22:40:57 -10:00
Jesse Wierzbinski db37510370
Add interface to view post and user JSON data 2024-04-08 18:33:59 -10:00
Jesse Wierzbinski 342a8011f1
Fix for follower/following timelines being wrong 2024-04-08 16:40:35 -10:00
Jesse Wierzbinski 8bda61e099
Fixes for wrong follows 2024-04-08 16:26:48 -10:00
Jesse Wierzbinski 6c60191ab2
Add follow notifications and follow request 2024-04-08 16:12:54 -10:00
Jesse Wierzbinski 5afa0c334a
Remove unnecessary undefined 2024-04-08 15:49:54 -10:00
Jesse Wierzbinski ba19eda09d
Fix for notifications showing up to the wrong users 2024-04-08 15:49:33 -10:00
Jesse Wierzbinski 58613c958c
Typo 2024-04-07 17:30:11 -10:00
Jesse Wierzbinski e26d604a54
Refactors, bugfixing 2024-04-07 17:28:18 -10:00
Jesse Wierzbinski e0335c33a9
Timeline refactors 2024-04-07 16:24:18 -10:00
Jesse Wierzbinski 69ffd5fafc
fixes 2024-04-07 12:36:26 -10:00
Jesse Wierzbinski 391da7f799
More Link header shenanigans 2024-04-07 12:33:53 -10:00
Jesse Wierzbinski 564b47c21a
Fix Link header on account statuses 2024-04-07 12:29:31 -10:00
Jesse Wierzbinski 48ff510889
relax notification limit 2024-04-07 12:13:05 -10:00
Jesse Wierzbinski 2c704bd57c
Update ID validation to use UUIDv7 format 2024-04-07 12:08:14 -10:00
Jesse Wierzbinski 02c63c4c6f
Fixes for UUID errors 2024-04-07 12:03:38 -10:00
Jesse Wierzbinski 61723305e5
Fix for misbehaving clients 2024-04-07 11:44:36 -10:00
Jesse Wierzbinski e72a4e76d6
temporarily disable sanitization 2024-04-07 04:05:06 -10:00
Jesse Wierzbinski 885ec12780
Build errors 2024-04-07 03:05:46 -10:00
Jesse Wierzbinski 0c720956a1
More bugfixes 2024-04-07 03:03:33 -10:00
Jesse Wierzbinski a6bec1efa7
Disable Pleroma fields on instance 2024-04-07 02:50:02 -10:00
Jesse Wierzbinski e71c2ef5c9
Fix wrong again in token date format 2024-04-07 02:47:19 -10:00
Jesse Wierzbinski 25d7a798ae
Update dates to ISO 2024-04-07 02:44:29 -10:00
Jesse Wierzbinski ba712a33f3
Absolute URI fixes 2024-04-07 02:33:55 -10:00
Jesse Wierzbinski 26596bb987
Bugfixes 2024-04-07 02:26:19 -10:00
Jesse Wierzbinski af0d627f19
Replace eslint and prettier with Biome 2024-04-06 19:30:49 -10:00
Jesse Wierzbinski 6a54c5b805
Replace config manager with unjs/c12 2024-04-06 18:16:54 -10:00
Jesse Wierzbinski d6f1cd1347
Fix build errors and testing errors 2024-03-13 17:39:32 -10:00
Jesse Wierzbinski f02344fa0d
Add more OAuth scopes to current routes 2024-03-13 17:03:05 -10:00
Jesse Wierzbinski 9ec3d96f9d
Add new OAuth verification page 2024-03-13 17:02:50 -10:00
Jesse Wierzbinski 480fcb363f
Add bait mode, fix bugs 2024-03-12 22:10:32 -10:00
Jesse Wierzbinski c98f788fec
Handle routes that dont exist 2024-03-10 17:29:25 -10:00
Jesse Wierzbinski 0541776d3d
Finish full rewrite of server and testing systems 2024-03-10 16:04:14 -10:00
Jesse Wierzbinski 0e4d6b401c
Fix media code, clean up old types 2024-03-10 13:57:26 -10:00
Jesse Wierzbinski 852efaea50
Rewrite every route to use the new framework 2024-03-10 13:25:44 -10:00
Jesse Wierzbinski 05140f0d6f
Begin work on refactoring every single route to use new subsystems 2024-03-10 12:48:14 -10:00
Jesse Wierzbinski 78f216092b
refactor: Rewrite functions into packages 2024-03-07 19:34:50 -10:00
Jesse Wierzbinski 64629754ca
Update all packages, fix critical bugs 2024-03-03 17:29:44 -10:00
Jesse Wierzbinski 2bc9ff51ea
Slight refactoring, begin work on major moderation overhaul 2024-03-03 15:27:08 -10:00
Jesse Wierzbinski 1d77d80db9
feat: Block user registration endpoint is registrations are disabled 2023-12-08 18:47:59 -10:00
Jesse Wierzbinski d79e718e15
feat: Add user registration via Web UI 2023-12-08 18:45:36 -10:00
Jesse Wierzbinski c8ffca37b1
Fixes to editing of profiles 2023-12-06 13:46:46 -10:00
Jesse Wierzbinski 22ebf72b6b
Improve OpenID login flow security 2023-12-06 13:34:56 -10:00
Jesse Wierzbinski 947c1f4991
Add full OpenID connect provider support 2023-12-06 12:10:22 -10:00
Jesse Wierzbinski 01d20153e6
fix: Fix broken user source 2023-12-02 22:56:23 -10:00
Jesse Wierzbinski 34faf28088
feat: Add error when searching without Meilisearch 2023-12-02 18:46:13 -10:00
Jesse Wierzbinski 553b558c1a
feat: Add Search endpoint 2023-12-02 18:40:10 -10:00
Jesse Wierzbinski aa0813fef8
feat: Add Meilisearch integration, begin work on search endpoint 2023-12-02 18:11:30 -10:00
Jesse Wierzbinski 45a8a2678e
feat: Add following and followers endpoints 2023-12-01 13:44:48 -10:00
Jesse Wierzbinski fdf32c0b6c
fix: Fix crash on serving local media 2023-11-29 10:29:29 -10:00
Jesse Wierzbinski e01e92c9ce
Fix various missing things and bugs 2023-11-28 17:57:35 -10:00
Jesse Wierzbinski b099e40c60
Enable serving files using local uploads 2023-11-28 14:34:09 -10:00
Jesse Wierzbinski 818fcf8666
Make media uploads work with s3 backend 2023-11-28 13:54:39 -10:00
Jesse Wierzbinski 9064590292
Fix reblogs 2023-11-28 13:16:22 -10:00
Jesse Wierzbinski 440e994576
Fix timeline rendering 2023-11-28 12:57:48 -10:00
Jesse Wierzbinski b27d4219f9
Add favourites endpoint 2023-11-26 15:01:07 -10:00
Jesse Wierzbinski f51476e810
Add status pinning and unpinning, fix bugs 2023-11-26 14:56:16 -10:00
Jesse Wierzbinski 0a74bbfe93
Fix timelines 2023-11-26 12:46:15 -10:00
Jesse Wierzbinski 8c870cdad3
Fix timeline order 2023-11-26 12:04:38 -10:00
Jesse Wierzbinski 1db82202e0
Add more federation support with Undo objects 2023-11-23 08:55:33 -10:00
Jesse Wierzbinski ae41139ad8
Add incoming Like federation 2023-11-23 08:43:56 -10:00
Jesse Wierzbinski 17bd81cf46
Add Link header to notifications endpoint 2023-11-23 08:36:44 -10:00
Jesse Wierzbinski 82162fccf4
Add reblog and reply notifications 2023-11-23 08:35:43 -10:00
Jesse Wierzbinski be9b2e3376
Enable verbatim module syntax + more API routes 2023-11-22 18:10:37 -10:00
Jesse Wierzbinski 991a2cba84
Allow quoting in UI 2023-11-22 13:48:16 -10:00
Jesse Wierzbinski 28a16e95a4
Add media attachment functionality to posts 2023-11-22 13:40:31 -10:00
Jesse Wierzbinski 930b84826b
Add more routes for media upload 2023-11-21 17:00:14 -10:00
Jesse Wierzbinski 4afd939b18
Add TODO comment for processing media 2023-11-21 16:44:10 -10:00
Jesse Wierzbinski 580958a181
Begin work on media attachments 2023-11-21 14:56:58 -10:00
Jesse Wierzbinski b9efd093a6 Remove useless async from functions 2023-11-19 16:42:40 -10:00
Jesse Wierzbinski ca94c35bc4
Add reblog and unreblog endpoints 2023-11-11 22:28:06 -10:00
Jesse Wierzbinski 3884763235
Complete migration to Prisma, all tests passing 2023-11-11 20:39:59 -10:00
Jesse Wierzbinski dc0ec47543
Finish rewrite of everything with Prisma 2023-11-11 15:37:14 -10:00
Jesse Wierzbinski 5eed8374cd
HUGE rewrite to use Prisma instead of TypeORM (not finished yet) 2023-11-10 16:36:06 -10:00
Jesse Wierzbinski a1c0164e9d
More Lysand protocol work, refactor keys, small refactoring overall 2023-11-04 13:59:55 -10:00
Jesse Wierzbinski 77a675afe6
More work on converting to the Lysand protocol 2023-11-03 17:34:31 -10:00
Jesse Wierzbinski 02b56f8fde
Purge ActivityPub from project to start implementing Lysand 2023-10-30 10:23:29 -10:00
Jesse Wierzbinski 25b3fe202f
Add likes, new endpoints 2023-10-28 10:21:04 -10:00
Jesse Wierzbinski 2e7ab312e0
Add tests for status context 2023-10-24 12:23:22 -10:00
Jesse Wierzbinski 80a3e4c92d
Clean up more ActivityPub code, refactoring 2023-10-22 19:39:42 -10:00
Jesse Wierzbinski d05b077df1
More API tests, fixes 2023-10-22 15:47:04 -10:00
Jesse Wierzbinski 932fc3e4f5
Clean up timeline code, add new Context API endpoint 2023-10-22 15:32:01 -10:00
Jesse Wierzbinski 35f54d108f
Add more contribution help 2023-10-22 14:23:15 -10:00
Jesse Wierzbinski 460b68c381
Media upload for avatars and banners, more work, fix tests 2023-10-19 09:53:59 -10:00
Jesse Wierzbinski f677737fdd Add sanitization to HTML 2023-10-16 12:03:29 -10:00
Jesse Wierzbinski 3c289dd3de Tweaks to test 2023-10-16 08:50:10 -10:00
Jesse Wierzbinski 7f2e89ab20 Add more API route definitions 2023-10-16 07:39:41 -10:00
Jesse Wierzbinski a8d8b70239 Make authorized fetch configurable 2023-10-15 20:07:39 -10:00
Jesse Wierzbinski c0ff46559b Refactor configs and activitypub parts 2023-10-15 20:04:03 -10:00
Jesse Wierzbinski ca7d325cb1 New API route format to make code cleaner 2023-10-15 17:51:29 -10:00
Jesse Wierzbinski 65ff53e90c Fix existing bugs in tests, refactor users 2023-10-08 10:20:42 -10:00
Jesse Wierzbinski b7587f8d3f Add public timeline 2023-10-01 14:07:29 -10:00
Jesse Wierzbinski bff170d2e2 Add new API endpoint (instance endpoint) 2023-09-30 17:24:58 -10:00
Jesse Wierzbinski 4b82655e33 Fix bugs introduced by last commit 2023-09-30 16:35:37 -10:00
Jesse Wierzbinski 1fb4600445 Add new API endpoints 2023-09-27 08:45:07 -10:00
Jesse Wierzbinski 95b46ba2e4 More refactoring, API route fixes 2023-09-26 13:08:05 -10:00
Jesse Wierzbinski 3b452d66aa Small refactors 2023-09-26 12:33:43 -10:00
Jesse Wierzbinski 2cadb68a56 guh 2023-09-26 12:19:10 -10:00
Jesse Wierzbinski d0c07d804b Add new familiar followers endpoint 2023-09-22 17:16:24 -10:00
Jesse Wierzbinski 50ab0155a5 Implement account relationship endpoints 2023-09-22 16:28:00 -10:00
Jesse Wierzbinski ee3d4a386f Add new user note API endpoint 2023-09-22 15:31:41 -10:00
Jesse Wierzbinski d2d2e576a9 Add pin and unpin endpoints for account 2023-09-22 12:25:10 -10:00
Jesse Wierzbinski 012f4b6f5b Add 2 more endpoints (mute and unmute) 2023-09-22 11:41:05 -10:00