Commit graph

63 commits

Author SHA1 Message Date
Natty
edd46a4a1b
Gracefully try host-meta if WebFinger fails 2023-10-31 18:46:33 +01:00
Natty
b0e30dbe72 Formatting, normalizing braces 2023-10-31 17:49:29 +01:00
Natty
2b78460f9a Fix the type of requestLimit in apiRequestPaged to strongly null-check 2023-10-31 17:47:38 +01:00
Natty
9c681cd4f2 Fix the return type in MastodonApiClient::getNextPage 2023-10-31 17:21:11 +01:00
Oneric
473be10607 Implement Mastodon request pagination
Now the same information depth can be processed on all client variants.
2023-10-20 17:12:10 +02:00
Oneric
79e358ccb1 Move API request limits into the generic ApiClient
Currently only affects MisskeyApiClient, as Mastodon-flavour API is
constraint by a server-side hard limit of 40 replies.
Prepares for implementing multi-part requests which will allow
Mastodon-flavour clients to also follow the same limits.
2023-10-20 17:12:10 +02:00
Oneric
30dc06657c Swap order of Pleroma/Fedibird emoji probing
Akkoma offers the emoji_reactions field both in
the toplevel and in the pleroma namespace, to
achieve compatibility with fedibird’s frontend.

The current probing order will treat Akkoma as
a Fedibird instance. However, the relevant endpoint
emoji_reactioned_by returning more user details along with
reactions is currently not implemented in Akkoma.
(Only the minimal API viable for the frontend was implemented,
 i.e. currently just the emoji_reations duplication
 and PUT `/api/v1/statuses/:id/emoji_reactions/:emoji`)

Thus this order broke evaluation of emoji reactions for Akkoma
and even if all Fedibird API was implemented, limiting Akkoma
to Fedibird API may give suboptimal results.

However, fortunately this probing is only ever relied upon if the
ApiClient was manually initialised as Mastodon. If (as by default)
autodetect is used, Akkoma gets correctly identified as a
Pleroma variant and the probing-based guess isn’t used.
In practice this issues was likely rarely ever encountered.
2023-10-20 17:09:35 +02:00
Oneric
83d13fb659 cosmetic: add terminating newline to create-cirle.js 2023-10-17 05:16:16 +02:00
Natty
ab7cbc7390
Fixed an off-by-one error (two of them actually) 2023-09-03 01:15:59 +02:00
Natty
14e469c139
JSDoc fixes 2023-09-01 19:41:29 +02:00
Natty
9b664cbffc
Merge branch 'add-fedibird-support' 2023-09-01 19:41:04 +02:00
Natty
a4a32cdabf
Mastodon flavor detection 2023-09-01 19:40:14 +02:00
Natty
53e0d1be62
Fixed JSDoc 2023-09-01 18:29:29 +02:00
Natty
618a256002
Merge branch 'main' into add-fedibird-support
# Conflicts:
#	index.html
2023-09-01 18:26:16 +02:00
Natty
7c0939c47c
Minor fixes 2023-09-01 18:10:34 +02:00
Natty
ea7a442b22
Minor fixes 2023-09-01 18:03:36 +02:00
Natty
c444f4be3d
Merged profile-page into the Handle logic 2023-09-01 17:48:52 +02:00
Natty
1823230b64
Merge branch 'feat/delegated-domains'
# Conflicts:
#	create-circle.js
#	image.js
2023-09-01 17:32:18 +02:00
Natty
e3aa14b8b1
Prettier profile output 2023-08-31 23:41:36 +02:00
Natty
4bb2385432
Made the CSS look pretty 2023-08-31 21:02:16 +02:00
Natty
d59b33158a
Different font style for the progress indicator 2023-08-31 20:53:10 +02:00
Natty
fa8bd5748e
Made it look good 2023-08-31 20:49:04 +02:00
Natty
6d80fa565b
Gracefully fall-back to the tag handle for accounts that do not pass the first lookup 2023-08-31 19:48:45 +02:00
Natty
ea3e389d01
Turned Handle into a class and implemented WebFinger with a fall-back 2023-08-31 19:35:47 +02:00
hazycora
d3299af352
handle inputs for non-delegated usernames as well 2023-08-31 12:07:23 -05:00
hazycora
5e1ef08548
Implement delegated domain check 2023-08-31 10:58:55 -05:00
Takeshi Umeda
3e8d268d52 Added Fedibird support 2023-08-31 10:24:40 +00:00
Natty
73bb66a3f1
Misskey instance host fixes 2023-07-31 11:34:11 +02:00
Natty
e4aab98452
Added a check for the lookup result 2023-07-30 22:05:08 +02:00
Natty
e08f58ad4c
Added a LICENSE 2023-07-30 21:59:51 +02:00
Natty
a70858fba0
Fixed mainline Misskey compat 2023-07-30 21:56:16 +02:00
Natty
54824287b5
Removed dead events 2023-07-22 20:36:19 +02:00
Natty
2cf6058d06
Merge pull request #1 from TheOneric/pleroma-emoji-reactions
Support Pleroma’s emoji reactions (+small Masto fix)
2023-07-22 17:09:56 +02:00
Oneric
f5c2fb7f2d Implement support for *oma’s emoji reactions
Like in *key, *oma users can react with arbitrary emojis.
Unlike in *key, a single user can add multiple emoji reactions
to a single post and favouriting still exists as a separate concept.

By using only the Mastodon API for *oma, favourites still get
interpreted but emoji reactions aren’t taken into account at all.
Fix this by adding support for the relevant Pleroma APIs.
To avoid a bias towards fav+react or multiple reacts on a single post
and to be more similar to connection strengths in Mastodon and *key,
aggregate reacts and favs and count them only once per per user and
post.

It is not clear whether the existence of a non-empty
pleroma/emoji_reactions field in notes data already implies support for
the reactions API endpoint. It at least seems sensible and would allow
to skip the initial feature metadata check, but let’s stick to the safe
approach for now.

Fedibird also supports emoji reacts and (like Akkoma >= 3.2.0) provides
the emoji_reactions sections at the toplevel of notes with an array of
account IDs included for every reaction. At first glance Fedibird
doesn't seem to provide a /reactions API or similar with more detailed
user info directly included. Supporting Fedibird would thereofore
require additional user info lookups at the end.
This commit makes no attempt at supporting Fedibird or
taking advantage of the account_ids array for Akkoma.

Co-authored-by: Natty <natty.sh.git@gmail.com>
2023-07-22 16:56:35 +02:00
Oneric
fc16ce0640 mastodon: fix replies processing ancestors not descendants
Fixes a mix-up from 15579d7e78.
Since replies are omitted from the gathered notes, this effectively
removed reply evaluation from Mastodon API, but instead added the
author of quoted posts as well as replies to the quoted post to the
circle.
2023-07-20 16:30:59 +02:00
Natty
69fac1cc40
Disable autocomplete for the API radios 2023-07-20 02:03:49 +02:00
Natty
ba6a1cdcf6
Fixed an oopsie 2023-07-20 01:58:04 +02:00
Natty
83f56e7ab5
Instance software autodetection 2023-07-20 01:52:39 +02:00
Natty
d52bf65d07
Firefish detection 2023-07-20 01:29:50 +02:00
Natty
7a0dfed243
The funny 2023-07-20 01:20:51 +02:00
Natty
15579d7e78
Added Misskey support and labels 2023-07-20 01:16:22 +02:00
Andreas Grasser
8176d56441
final ich will nicht mehr 2022-11-28 20:51:10 +01:00
Andreas Grasser
ab5effc3a0
... 2022-11-28 20:46:19 +01:00
Andreas Grasser
444fca6a13
ich dreh durch 2022-11-28 20:43:16 +01:00
Andreas Grasser
8d9b8de959
oh gott bin ich blöd 2022-11-28 18:28:48 +01:00
Andreas Grasser
8ac873d481
Bugfix for Download Function 2022-11-28 18:19:11 +01:00
Andreas Grasser
bd469cbd11
Changed API call to get more results 2022-11-20 16:18:38 +01:00
Andreas Grasser
0ed0e15a54
Bugfixes 2022-11-20 15:17:18 +01:00
Andreas Grasser
e42fd11694
Added Username Export Function 2022-11-20 14:51:58 +01:00
Andreas Grasser
528a2f8b05 MIEKE KRÖGER 2022-11-20 13:03:18 +01:00