Commit graph

194 commits

Author SHA1 Message Date
silverpill
682cf09835 Store avatar and banner metadata as JSON objects 2023-01-07 12:22:33 +00:00
silverpill
f35e8d806f Refactor AccountUpdateData.into_profile_data() method 2023-01-07 13:18:58 +04:00
silverpill
7a4be5dd5a Remove save_validated_b64_file() function 2023-01-06 16:10:26 +00:00
silverpill
5c9aa0f148 Always put outgoing activities in a queue 2023-01-04 19:36:57 +00:00
silverpill
7ccd29abf2 Add /api/v1/accounts/lookup Mastodon API endpoint 2022-12-28 00:53:58 +00:00
silverpill
81c0f5e2bd Stop accepting pre-rendered bio/fields 2022-12-21 13:38:29 +00:00
silverpill
ee7a61833d Render markdown contained in bio and profile metadata values 2022-12-18 21:25:25 +00:00
silverpill
68f7b046a1 Support manuallyApprovesFollowers property on actor objects 2022-12-14 09:34:45 +00:00
silverpill
b0f9b3537e Add activity_id column to follow_request table 2022-12-13 00:13:55 +00:00
silverpill
212db48d75 Add find_aliases() helper function 2022-12-10 20:51:16 +00:00
silverpill
10cd778f40 Replace generic parameter in OutgoingActivity struct with Value type 2022-12-05 18:08:15 +00:00
silverpill
d1939b10d5 Move DatabaseError to database module 2022-12-03 22:57:09 +00:00
silverpill
4185cbefb0 Rename Pool type to DbPool 2022-12-03 21:30:24 +00:00
silverpill
a3ec1e7b58 Verify that actor alias exists before moving local followers 2022-11-27 22:04:53 +00:00
silverpill
4a42bcd369 Add API methods for creating user-signed Move() activities 2022-11-27 13:05:21 +00:00
silverpill
7511832fa0 Rename /signed_update API method to /send_activity 2022-11-26 21:13:37 +00:00
silverpill
a6032386da Use enum to represent activity parameters during the signing process 2022-11-26 20:46:46 +00:00
silverpill
fbcba1b99d Refactor send_signed_update view 2022-11-26 01:00:42 +00:00
silverpill
dd268634ef Move change_password API method to /api/v1/settings/change_password 2022-11-26 00:17:01 +00:00
silverpill
262b910638 Rename instance.host() to instance.hostname() 2022-11-24 13:27:10 +00:00
silverpill
301ade36a3 Use enum to define identity proof type 2022-11-23 01:04:55 +00:00
silverpill
49a55d888f Use multibase encoding for integrity proofs 2022-11-19 15:53:22 +00:00
silverpill
4a5bcba127 Change signature format in minisign integrity proofs 2022-11-19 15:52:20 +00:00
silverpill
a46ceeb575 Use base64 encoding for JcsEip191Signature2022 integrity proofs 2022-11-19 15:52:20 +00:00
silverpill
ec03476b58 Allow password login when token gate is disabled 2022-11-16 17:21:42 +00:00
silverpill
57c5ab3c4e Add API method for changing password 2022-11-15 22:43:49 +00:00
silverpill
c11daa21a0 Rename utils::crypto module to crypto_rsa 2022-11-13 21:31:04 +00:00
silverpill
4d85638d8c Move password utils to utils::passwords module 2022-11-13 21:30:59 +00:00
silverpill
8ad88f84b2 Support integrity proofs created with minisign 2022-11-11 00:53:23 +00:00
silverpill
64546ecabe Refactor signature verifiers 2022-11-11 00:53:23 +00:00
silverpill
db00ad1623 Move signature suites to identity::signatures module 2022-11-11 00:53:23 +00:00
silverpill
38bb3e38e9 Expose all identity proofs when building Account object 2022-11-11 00:53:23 +00:00
silverpill
cd93858488 Use canonicalized JSON for identity claims 2022-11-11 00:53:23 +00:00
silverpill
14a123ad7e Implement minisign identity proofs 2022-11-11 00:53:19 +00:00
silverpill
99f7b334d1 Change identity proof API to avoid key-to-DID converion at client side 2022-11-10 13:06:59 +00:00
silverpill
1bfb951df8 Move create_identity_claim to identity::claims module
Make it work with any DID type
2022-11-10 09:46:06 +00:00
silverpill
a5c9da78ef Add DidKey type 2022-11-09 18:53:52 +00:00
silverpill
dae6e9437b Use general Did type intsead of DidPkh in identity proofs 2022-11-09 18:15:50 +00:00
silverpill
4e53a5c4e4 Move DidPkh type to identity module 2022-11-08 22:45:59 +00:00
silverpill
75fe4df328 Implement EIP-191 integrity proofs 2022-11-02 16:08:34 +00:00
silverpill
1ec8cb4ddd Add views for signing Update(Person) activity 2022-11-02 16:08:34 +00:00
silverpill
65661698c7 Pass instance as ref to activity builders 2022-10-22 11:33:23 +00:00
silverpill
7cedc909d7 Set max page size to 200 2022-09-29 22:53:18 +00:00
silverpill
81c590559e Use u16 when working with page size 2022-09-29 21:47:35 +00:00
silverpill
02408ae57a Allow user to change subscription settings 2022-09-15 20:50:31 +00:00
silverpill
7600efccb5 Add subscribers_count field to Account object 2022-09-13 19:15:58 +00:00
silverpill
82ef4e054a Remove unnecessary assertion from create_account view 2022-09-09 10:28:24 +00:00
silverpill
8d78c6f38e Remove unused subscription_page_url property from Account object 2022-09-08 20:35:43 +00:00
silverpill
596c13c0bb Remove deprecated Subscription API methods 2022-09-08 09:58:57 +00:00
silverpill
982a8e8bc2 Add API method for searching profiles by username or acct 2022-09-06 19:08:50 +00:00
silverpill
05e295744d Add information about payment options to Account object 2022-09-06 18:08:28 +00:00
silverpill
64fb51e92a Update subscription state after processing invoice 2022-08-31 20:42:59 +00:00
silverpill
423eec0a2c Add MoneroSubscription payment option 2022-08-31 20:42:57 +00:00
silverpill
2ed8d44001 Add expires_at field to object returned by subscribers API endpoint 2022-08-31 20:42:56 +00:00
silverpill
260e62d51b Allow blockchain configuration to be defined using a list
Multi-chain configurations are still not allowed.
2022-08-31 20:42:55 +00:00
silverpill
c5c3911de6 Require chain ID field in payment options of ethereum type 2022-08-29 22:28:34 +00:00
silverpill
690a03946e Use Currency enum to refer to CAIP-2 namespaces instead of chain IDs 2022-08-29 15:12:18 +00:00
silverpill
ea4d15da48 Remove default_currency() method from config object
Preparing for multi-currency deployments.
2022-08-28 18:53:32 +00:00
silverpill
daaa0855a6 Use /api/v1/subscriptions prefix for subscription API methods 2022-08-25 19:16:46 +00:00
silverpill
742e731b95 Convert PaymentOption type into enum 2022-08-25 19:16:38 +00:00
silverpill
4dc94ed39b Return validation error if upload size exceeds limit 2022-08-18 22:39:53 +00:00
silverpill
3b56b29785 Refactor utils::files and move upload helpers to mastodon_api::uploads module 2022-08-18 21:26:24 +00:00
silverpill
e2f8408b1e Search for subscription recipient by DID instead of login address 2022-08-15 22:02:11 +00:00
silverpill
5f24af4dbf Allow users of password auth to create identity proofs 2022-08-15 20:16:34 +00:00
silverpill
a80c11b99c Allow users of password auth to use subscriptions 2022-08-15 20:16:03 +00:00
silverpill
7a48563593 Return error if EIP-4361 is used together with password 2022-08-15 11:46:21 +00:00
silverpill
dc7d533c42 Allow blockchain config to have sub-types 2022-08-10 11:57:35 +00:00
silverpill
1721eb4a88 Add API method for listing incoming subscriptions 2022-08-08 01:13:52 +00:00
silverpill
bdcdb06c51 Add pagination headers to followers/following API responses 2022-08-07 18:27:28 +00:00
silverpill
acb139b0ee Add API method for searching profiles by DID 2022-08-04 20:23:40 +00:00
silverpill
46526fd4be Add currency() method to DidPkh type 2022-08-04 15:44:48 +00:00
silverpill
3c8c0c7163 Move currencies module to utils 2022-08-04 12:34:31 +00:00
silverpill
1554780b35 Add API method for adding subscription as payment option 2022-07-25 21:38:58 +00:00
silverpill
e573ecb27b Add payment_options field to actor profile 2022-07-25 17:44:36 +00:00
silverpill
d29e27b114 Move Follow() builder function to builders::follow module 2022-07-14 08:14:04 +00:00
silverpill
2a22a0bedd Add exclude_replies query parameter to /accounts/:id/statuses API method 2022-07-07 14:56:01 +00:00
silverpill
f8aaeb01a7 Update contracts to v0.4.0
configureSubscription() method signature has changed.
2022-06-28 18:28:40 +00:00
silverpill
b618c5b31f Use shared ContractSet object when verifing user during registration
Server will not start if blockchain configuration is invalid.
2022-06-23 22:03:51 +00:00
silverpill
90d0a6870e Refactor unfollow_account view 2022-06-02 03:28:58 +00:00
silverpill
e82c6f31fb Move code for building Undo(Follow) activity to builders::undo_follow 2022-06-02 03:28:57 +00:00
silverpill
50986cd358 Move code for building Update(Person) activity to builders::update_person 2022-06-02 03:28:51 +00:00
silverpill
f9689807e3 Expose login address via API only if it's verified 2022-05-27 21:58:18 +00:00
silverpill
dc8a7bed2e Require verified wallet address when setting up subscription 2022-05-26 10:42:04 +00:00
silverpill
5e7d3ab434 Don't expose wallet address in /api/v1/accounts/{account_id} response 2022-05-19 23:01:12 +00:00
silverpill
e6e7e6f42a Refactor Status API views 2022-05-06 19:39:17 +00:00
silverpill
fac0172159 Generate RSA key for instance actor automatically on the first run 2022-04-30 20:03:21 +00:00
silverpill
303827ffc6 Include results based on identity proofs when searching profiles by wallet address 2022-04-27 22:19:50 +00:00
silverpill
7a47c28034 Federate identity proofs as actor attachments
https://codeberg.org/silverpill/mitra/issues/7
2022-04-27 10:31:59 +00:00
silverpill
8deea0c867 Save submitted identity proofs to database 2022-04-26 20:43:39 +00:00
silverpill
356592bc71 Add views for generating address ownership proof 2022-04-26 19:56:26 +00:00
silverpill
a9504de10d Add json_from_sql and json_to_sql macros 2022-04-21 23:10:24 +00:00
silverpill
56d1ebf9e5 Add include_reposts parameter to get_posts_by_author() func 2022-04-13 21:26:30 +00:00
silverpill
30bd3d6a37 Migrate to actix 4.0 and tokio 1 2022-04-10 19:14:45 +00:00
silverpill
ed68b728be Avoid deconstruction when using path extractor
Preparing for migration to actix 4.
2022-04-09 17:11:41 +00:00
silverpill
60b683b657 Allow to hide replies from given author from home timeline 2022-03-09 20:42:02 +00:00
silverpill
0727b739ed Move HTTP signature verification to receive_activity() function 2022-02-23 23:38:00 +00:00
silverpill
f14e762ee3 Allow to hide reposts made by given actor from home timeline 2022-02-23 16:55:25 +00:00
silverpill
0f47fa201d Move get_relationship function to mastodon_api module 2022-02-21 22:32:36 +00:00
silverpill
c4a1da5349 Move RelationshipQueryParams type to types module 2022-02-21 15:27:25 +00:00
silverpill
227e3d3729 Allow passwordless registration 2022-02-15 19:43:22 +00:00