Commit graph

135 commits

Author SHA1 Message Date
Jesse Wierzbinski b8b822e553
feat(config): Add support for HTTP proxies on outgoing requests 2024-06-25 17:13:40 -10:00
Jesse Wierzbinski 70cd00cfa8
refactor(federation): ⬆️ Use @lysand-org/federation v2.0.0 2024-06-19 13:21:02 -10:00
Jesse Wierzbinski d33a61e713
fix(api): 🐛 Properly disable challenges when config option is set 2024-06-15 20:27:31 -10:00
Jesse Wierzbinski c764cc044d
fix: 🚑 Sleep process instead of exiting it on error
Avoids Docker's auto-restart policy from causing infinite reboots and hanging the system
2024-06-13 23:44:46 -10:00
Jesse Wierzbinski edbe6e45b2
fix: 🐛 Fix incorrect docs, make exit code 0 instead of 1 2024-06-13 23:26:20 -10:00
Jesse Wierzbinski 8f9472b221
feat(api): Implement Challenges API 2024-06-13 22:03:51 -10:00
Jesse Wierzbinski 924ff9b2d4
refactor(api): 🚚 Change ApiRouteMetadata structure to be more consistent 2024-06-13 18:03:17 -10:00
Jesse Wierzbinski c3271ba264
docs: 📝 More work on JSDoc 2024-06-12 22:52:03 -10:00
Jesse Wierzbinski 83275be536
refactor: ⚰️ Remove dead code and useless files 2024-06-12 20:34:17 -10:00
Jesse Wierzbinski d301d4da09
refactor(api): 🎨 Don't use node:crypto for random strings 2024-06-12 19:38:26 -10:00
Jesse Wierzbinski c61f519a34
refactor(api): 🎨 Refactor complex functions into smaller ones 2024-06-12 18:16:59 -10:00
Jesse Wierzbinski a1e02d0d78
refactor: 🚨 Turn every linter rule on and fix issues (there were a LOT :3) 2024-06-12 16:26:43 -10:00
Jesse Wierzbinski 5565bf00de
refactor(database): 🎨 Improve database handlers to have more consistent naming and methods 2024-06-12 14:45:07 -10:00
Jesse Wierzbinski ffcf01e3cd
feat(api): Add TOS and Privacy Policy support 2024-06-11 09:55:40 -10:00
Jesse Wierzbinski 4902f078a8
feat(api): Add permissions to every route and permission config 2024-06-07 18:57:29 -10:00
Jesse Wierzbinski 19823d8eca
feat(api): Add Roles API 2024-06-07 17:31:17 -10:00
Jesse Wierzbinski f87bcbd0da
chore: ⚰️ Remove dead code and unused imports 2024-05-28 15:14:24 -10:00
Jesse Wierzbinski 0706541546
refactor: 🚚 Add slash to typescript path shortcuts 2024-05-28 14:59:49 -10:00
Jesse Wierzbinski fd38161769
fix(federation): 🐛 Fix debug logger not correctly outputting 2024-05-21 15:23:48 -10:00
Jesse Wierzbinski eab61b38f1
feat(federation): Add bridge tokens, federation request debugging 2024-05-21 14:59:03 -10:00
Jesse Wierzbinski b1216a43f2
refactor(api): ♻️ Change route names, improve API endpoints to be more consistent with Mastodon API 2024-05-16 15:49:59 -10:00
Jesse Wierzbinski 2b5b82b465
fix: 🐛 Fix all TypeScript issues 2024-05-15 17:07:34 -10:00
Jesse Wierzbinski fb31375b74
refactor(config): 🔥 Replace config validation with Zod 2024-05-15 16:37:25 -10:00
Jesse Wierzbinski 5fd6a4e43d
feat(federation): Replace old types and federation validators with @lysand-org/federation 2024-05-14 14:35:13 -10:00
Jesse Wierzbinski b83d76abf6
fix(api): 🐛 Fix only one emoji being parsed per post 2024-05-12 19:14:37 -10:00
Jesse Wierzbinski 4f070c9b65
fix(api): 🔒 Replace bad webfinger regex with good one 2024-05-12 16:27:40 -10:00
Jesse Wierzbinski 8e5d68144c
fix(api): 🐛 Fix regression in emoji parsing caused by incorrectly changed regex 2024-05-12 15:07:55 -10:00
Jesse Wierzbinski ff14e5a5d3
fix(api): 🐛 Fix auth could not error when token was wrong and authorization required on a route 2024-05-12 13:53:49 -10:00
Jesse Wierzbinski 4713d0f93f
fix(api): 🐛 Add JSON support to every form that doesn't have a file parameter 2024-05-11 15:51:01 -10:00
Jesse Wierzbinski 8fedd1a07d
feat(api): Add new admin emoji API 2024-05-11 15:27:28 -10:00
Jesse Wierzbinski b979daa39a
feat(api): Allow more HTML tags in Markdown 2024-05-11 15:27:19 -10:00
Jesse Wierzbinski e48f57a3d8
perf(database): Improve performance when fetching timelines by fetching all data in a single SQL query 2024-05-08 13:19:53 -10:00
Jesse Wierzbinski a9629b825b
fix(api): 🎨 Do wizardry on qs middleware to also work on multipart formData 2024-05-08 01:16:16 -10:00
Jesse Wierzbinski fc06b35c09
feat(cli): Add new CLI commands, move to project root 2024-05-08 00:10:14 +00:00
Jesse Wierzbinski 06c30b8af2
feat(cli): ♻️ Begin new CLI rewrite with oclif 2024-05-07 07:41:02 +00:00
Jesse Wierzbinski 7b05a34cce
refactor: 🔥 Remove dead code 2024-05-07 03:13:37 +00:00
Jesse Wierzbinski 8557867ad8
fix(api): 🐛 Fix incorrect proxy behaviour 2024-05-06 17:31:12 +00:00
Jesse Wierzbinski 516bfb72e7
fix(build): 🐛 Add bodyOrJson middleware to server/api/v1/apps 2024-05-06 08:31:12 +00:00
Jesse Wierzbinski 959dd27ad6
refactor(api): 🎨 Finish Hono refactor 2024-05-06 08:19:42 +00:00
Jesse Wierzbinski 826a260e90
refactor(api): ♻️ Move to Hono for HTTP 2024-05-06 07:16:33 +00:00
Jesse Wierzbinski 5f785c391d
refactor(api): 🎨 Switch to base64url for proxy url encoding instead of plaintext 2024-05-04 21:02:25 -10:00
Jesse Wierzbinski ead34b818f
feat(api): 🔒 Make all media be proxied through an internal proxy 2024-05-04 19:13:23 -10:00
Jesse Wierzbinski 154f17ab12
refactor(api): 📦 Change sanitizer from DOMPurify to xss 2024-05-02 17:20:24 -10:00
Jesse Wierzbinski a430db5c30
fix(build): 🐛 Fix happy-dom 2024-05-02 15:29:36 -10:00
Jesse Wierzbinski 5ef7564ee8
fix(build): 🐛 aaa 2024-05-02 14:44:49 -10:00
Jesse Wierzbinski 74873fe924
fix(api): 🚑 Replace isomorphic-dompurify with plain jsdom and dompurify 2024-05-02 14:21:09 -10:00
Jesse Wierzbinski a339b7fa94
fix(frontend): 🐛 Add unsafe-inline to CSP for frontend 2024-05-02 14:05:14 -10:00
Jesse Wierzbinski 74b9083551
fix(api): 🚑 Fix incorrect Content-Security-Policy on frontend 2024-05-02 13:57:36 -10:00
Jesse Wierzbinski 7a90abeaec
fix: 🎨 Switch from happy-dom to jsdom for HTML sanitization 2024-05-02 13:53:10 -10:00
Jesse Wierzbinski febddc2a8b
feat(api): Reimplement HTML sanitization 2024-05-02 13:25:32 -10:00