Merge branch 'develop' into dependabot/npm_and_yarn/packages/pl-api/eslint-plugin-promise-7.2.1

This commit is contained in:
mkljczk
2024-12-06 17:18:14 +01:00
213 changed files with 2649 additions and 5747 deletions

View File

@@ -256,7 +256,7 @@ interface PlApiClientConstructorOpts {
/**
* @category Clients
*
*
* Mastodon API client.
*/
class PlApiClient {
@@ -2214,11 +2214,8 @@ class PlApiClient {
* Requires features{@link Features['statusDislikes']}.
* @see {@link https://github.com/friendica/friendica/blob/2024.06-rc/doc/API-Friendica.md#get-apifriendicastatusesiddisliked_by}
*/
getDislikedBy: async (statusId: string) => {
const response = await this.request(`/api/friendica/statuses/${statusId}/disliked_by`);
return v.parse(filteredArray(accountSchema), response.json);
},
getDislikedBy: async (statusId: string) =>
this.#paginatedGet(`/api/v1/statuses/${statusId}/disliked_by`, {}, accountSchema),
/**
* Marks the given status as disliked by this user

View File

@@ -8,7 +8,7 @@ import { datetimeSchema, mimeSchema } from './utils';
*/
const backupSchema = v.object({
id: v.pipe(v.unknown(), v.transform(String)),
contentType: mimeSchema,
content_type: mimeSchema,
file_size: v.fallback(v.number(), 0),
inserted_at: datetimeSchema,
processed: v.fallback(v.boolean(), false),

View File

@@ -257,6 +257,7 @@ const getFeatures = (instance: Instance) => {
announcements: any([
v.software === FIREFISH,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
v.software === TAKAHE && gte(v.version, '0.7.0'),
@@ -283,6 +284,7 @@ const getFeatures = (instance: Instance) => {
* see POST /api/v1/bite
*/
bites: any([
v.software === ICESHRIMP_NET,
v.software === TOKI,
instance.api_versions['bites.pleroma.pl-api'] >= 1,
]),
@@ -309,6 +311,7 @@ const getFeatures = (instance: Instance) => {
v.software === FIREFISH,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === FRIENDICA,
v.software === MASTODON,
v.software === MITRA && gte(v.version, '3.3.0'),
@@ -325,6 +328,7 @@ const getFeatures = (instance: Instance) => {
bots: any([
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
]),
@@ -359,6 +363,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL && gte(v.version, '0.17.0'),
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PIXELFED,
v.software === PLEROMA,
@@ -439,6 +444,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === MITRA,
v.software === PIXELFED,
@@ -455,6 +461,7 @@ const getFeatures = (instance: Instance) => {
v.software === FIREFISH,
v.software === FRIENDICA && gte(v.version, '2022.12.0'),
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === MITRA,
v.software === TAKAHE && gte(v.version, '0.8.0'),
@@ -527,6 +534,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === TAKAHE && gte(v.version, '0.6.1'),
v.software === TOKI,
@@ -563,6 +571,7 @@ const getFeatures = (instance: Instance) => {
*/
filtersV2: any([
v.software === GOTOSOCIAL && gte(v.version, '0.16.0'),
v.software === ICESHRIMP_NET,
v.software === MASTODON,
]),
@@ -624,6 +633,7 @@ const getFeatures = (instance: Instance) => {
*/
frontendConfigurations: any([
v.software === DITTO,
v.software === ICESHRIMP_NET,
v.software === PLEROMA,
]),
@@ -750,6 +760,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
]),
@@ -820,6 +831,7 @@ const getFeatures = (instance: Instance) => {
mediaV2: any([
v.software === FIREFISH,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === MITRA,
v.software === PLEROMA,
@@ -850,6 +862,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL && gte(v.version, '0.16.0'),
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === MITRA,
v.software === PIXELFED,
@@ -865,6 +878,7 @@ const getFeatures = (instance: Instance) => {
v.software === FIREFISH,
v.software === GOTOSOCIAL && gte(v.version, '0.16.0'),
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
v.software === TAKAHE,
@@ -903,6 +917,7 @@ const getFeatures = (instance: Instance) => {
notificationsIncludeTypes: any([
v.software === FIREFISH,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA && gte(v.version, '2.5.0'),
v.software === TAKAHE && gte(v.version, '0.6.2'),
@@ -965,6 +980,7 @@ const getFeatures = (instance: Instance) => {
polls: any([
v.software === FIREFISH,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === TAKAHE && gte(v.version, '0.8.0'),
v.software === GOTOSOCIAL,
@@ -1014,6 +1030,7 @@ const getFeatures = (instance: Instance) => {
v.software === DITTO,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === MITRA,
v.software === PLEROMA,
@@ -1037,6 +1054,7 @@ const getFeatures = (instance: Instance) => {
v.software === FRIENDICA,
v.software === GOTOSOCIAL,
v.software === ICESHRIMP,
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
v.software === TAKAHE,
@@ -1048,6 +1066,7 @@ const getFeatures = (instance: Instance) => {
* @see POST /api/v1/statuses
*/
quotePosts: any([
v.software === ICESHRIMP_NET,
v.software === FRIENDICA && gte(v.version, '2023.3.0'),
v.software === PLEROMA && [REBASED, AKKOMA].includes(v.build!) && gte(v.version, '2.5.0'),
instance.api_versions['quote_posting.pleroma.pl-api'] >= 1,
@@ -1059,6 +1078,7 @@ const getFeatures = (instance: Instance) => {
* @see POST /api/v1/statuses/:id/reblog
*/
reblogVisibility: any([
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA,
]),
@@ -1074,6 +1094,7 @@ const getFeatures = (instance: Instance) => {
* @see POST /api/v1/accounts/:id/remove_from_followers
*/
removeFromFollowers: any([
v.software === ICESHRIMP_NET,
v.software === MASTODON,
v.software === PLEROMA && gte(v.version, '2.5.0'),
v.software === PLEROMA && v.build === AKKOMA,

View File

@@ -1,6 +1,6 @@
{
"name": "pl-api",
"version": "1.0.0-rc.1",
"version": "1.0.0-rc.4",
"type": "module",
"homepage": "https://github.com/mkljczk/pl-fe/tree/develop/packages/pl-api",
"repository": {