pl-api: reimport TypeObject, need to eep

Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
This commit is contained in:
nicole mikołajczyk
2026-02-27 02:32:38 +01:00
parent f78393d92b
commit a4dd5e0358
41 changed files with 174 additions and 175 deletions

View File

@ -11,12 +11,13 @@ import {
reportSchema,
scrobbleSchema,
statusSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { ICESHRIMP_NET, PIXELFED, PLEROMA } from '../features';
import { type RequestMeta } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateScrobbleParams,
FollowAccountParams,
@ -31,9 +32,8 @@ import type {
GetScrobblesParams,
ReportAccountParams,
SearchAccountParams,
} from '../params/accounts';
type EmptyObject = Record<string, never>;
} from '@/params/accounts';
import type { EmptyObject } from '@/utils/types';
const accounts = (client: PlApiBaseClient) => ({
/**

View File

@ -22,11 +22,13 @@ import {
statusSchema,
statusSourceSchema,
trendsLinkSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { GOTOSOCIAL, MITRA, PLEROMA } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { PaginatedResponse } from '../responses';
import type { PlApiBaseClient } from '@/client-base';
import type {
AdminAccount,
AdminAnnouncement,
@ -34,7 +36,7 @@ import type {
AdminReport,
PleromaConfig,
Status,
} from '../entities';
} from '@/entities';
import type {
AdminAccountAction,
AdminCreateAccountParams,
@ -66,11 +68,9 @@ import type {
AdminUpdateReportParams,
AdminUpdateRuleParams,
AdminUpdateStatusParams,
} from '../params/admin';
import type { EditStatusParams } from '../params/statuses';
import type { PaginatedResponse } from '../responses';
type EmptyObject = Record<string, never>;
} from '@/params/admin';
import type { EditStatusParams } from '@/params/statuses';
import type { EmptyObject } from '@/utils/types';
const paginatedPleromaAccounts = async (
client: PlApiBaseClient,

View File

@ -1,11 +1,10 @@
import * as v from 'valibot';
import { announcementSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { announcementSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { EmptyObject } from '@/utils/types';
const announcements = (client: PlApiBaseClient) => ({
/**

View File

@ -1,12 +1,11 @@
import * as v from 'valibot';
import { accountSchema, antennaSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { accountSchema, antennaSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { CreateAntennaParams, UpdateAntennaParams } from '../params/antennas';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { CreateAntennaParams, UpdateAntennaParams } from '@/params/antennas';
import type { EmptyObject } from '@/utils/types';
const antennas = (client: PlApiBaseClient) => ({
/**

View File

@ -1,9 +1,9 @@
import * as v from 'valibot';
import { applicationSchema, credentialApplicationSchema } from '../entities';
import { applicationSchema, credentialApplicationSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { CreateApplicationParams } from '../params/apps';
import type { PlApiBaseClient } from '@/client-base';
import type { CreateApplicationParams } from '@/params/apps';
/** Register client applications that can be used to obtain OAuth tokens. */
const apps = (client: PlApiBaseClient) => ({

View File

@ -1,8 +1,8 @@
import * as v from 'valibot';
import { asyncRefreshSchema } from '../entities';
import { asyncRefreshSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
/** Experimental async refreshes API methods */
const asyncRefreshes = (client: PlApiBaseClient) => ({

View File

@ -1,13 +1,13 @@
import * as v from 'valibot';
import { chatMessageSchema, chatSchema } from '../entities';
import { chatMessageSchema, chatSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateChatMessageParams,
GetChatMessagesParams,
GetChatsParams,
} from '../params/chats';
} from '@/params/chats';
/** @see {@link https://docs.pleroma.social/backend/development/API/chats} */
const chats = (client: PlApiBaseClient) => ({

View File

@ -1,12 +1,11 @@
import * as v from 'valibot';
import { accountSchema, circleSchema, statusSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { accountSchema, circleSchema, statusSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { GetCircleAccountsParams, GetCircleStatusesParams } from '../params/circles';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { GetCircleAccountsParams, GetCircleStatusesParams } from '@/params/circles';
import type { EmptyObject } from '@/utils/types';
const circles = (client: PlApiBaseClient) => ({
/**

View File

@ -1,11 +1,10 @@
import * as v from 'valibot';
import { driveFileSchema, driveFolderSchema, driveStatusSchema } from '../entities';
import { driveFileSchema, driveFolderSchema, driveStatusSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { UpdateFileParams } from '../params/drive';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { UpdateFileParams } from '@/params/drive';
import type { EmptyObject } from '@/utils/types';
const drive = (client: PlApiBaseClient) => ({
getDrive: async () => {

View File

@ -1,6 +1,5 @@
import type { PlApiBaseClient } from '../client-base';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { EmptyObject } from '@/utils/types';
const emails = (client: PlApiBaseClient) => ({
resendConfirmationEmail: async (email: string) => {

View File

@ -1,15 +1,15 @@
import * as v from 'valibot';
import { accountSchema, statusSchema } from '../entities';
import { accountSchema, statusSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateEventParams,
EditEventParams,
GetEventParticipationRequestsParams,
GetEventParticipationsParams,
GetJoinedEventsParams,
} from '../params/events';
} from '@/params/events';
const events = (client: PlApiBaseClient) => ({
/**

View File

@ -6,22 +6,22 @@ import {
groupRelationshipSchema,
groupSchema,
statusSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { PIXELFED } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { GroupRole } from '../entities';
import type { AdminGetGroupsParams } from '../params/admin';
import type { PlApiBaseClient } from '@/client-base';
import type { GroupRole } from '@/entities';
import type { AdminGetGroupsParams } from '@/params/admin';
import type {
CreateGroupParams,
GetGroupBlocksParams,
GetGroupMembershipRequestsParams,
GetGroupMembershipsParams,
UpdateGroupParams,
} from '../params/groups';
type EmptyObject = Record<string, never>;
} from '@/params/groups';
import type { EmptyObject } from '@/utils/types';
/** Routes that are not part of any stable release */
const experimental = (client: PlApiBaseClient) => {

View File

@ -7,10 +7,10 @@ import {
filterStatusSchema,
mutedAccountSchema,
relationshipSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
BlockAccountParams,
CreateFilterParams,
@ -19,9 +19,8 @@ import type {
GetMutesParams,
MuteAccountParams,
UpdateFilterParams,
} from '../params/filtering';
type EmptyObject = Record<string, never>;
} from '@/params/filtering';
import type { EmptyObject } from '@/utils/types';
const filtering = (client: PlApiBaseClient) => ({
/**

View File

@ -1,26 +1,26 @@
import * as v from 'valibot';
import { accountSchema, groupedNotificationsResultsSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { accountSchema, groupedNotificationsResultsSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import { type RequestMeta } from '../request';
import { pick, omit } from '../utils';
import type { PlApiBaseClient } from '../client-base';
import type { PaginatedResponse } from '../responses';
import type { notifications } from './notifications';
import type { PlApiBaseClient } from '@/client-base';
import type {
Account,
GroupedNotificationsResults,
Notification,
NotificationGroup,
Status,
} from '../entities';
} from '@/entities';
import type {
GetGroupedNotificationsParams,
GetUnreadNotificationGroupCountParams,
} from '../params/grouped-notifications';
import type { PaginatedResponse } from '../responses';
import type { notifications } from './notifications';
type EmptyObject = Record<string, never>;
} from '@/params/grouped-notifications';
import type { EmptyObject } from '@/utils/types';
const GROUPED_TYPES = [
'favourite',

View File

@ -9,12 +9,13 @@ import {
privacyPolicySchema,
ruleSchema,
termsOfServiceSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { AKKOMA, MITRA } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { ProfileDirectoryParams } from '../params/instance';
import type { PlApiBaseClient } from '@/client-base';
import type { ProfileDirectoryParams } from '@/params/instance';
const instance = (client: PlApiBaseClient) => ({
/**

View File

@ -1,9 +1,9 @@
import * as v from 'valibot';
import { interactionRequestSchema } from '../entities';
import { interactionRequestSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { GetInteractionRequestsParams } from '../params/interaction-requests';
import type { PlApiBaseClient } from '@/client-base';
import type { GetInteractionRequestsParams } from '@/params/interaction-requests';
const interactionRequests = (client: PlApiBaseClient) => ({
/**

View File

@ -1,12 +1,11 @@
import * as v from 'valibot';
import { accountSchema, listSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { accountSchema, listSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { CreateListParams, GetListAccountsParams, UpdateListParams } from '../params/lists';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { CreateListParams, GetListAccountsParams, UpdateListParams } from '@/params/lists';
import type { EmptyObject } from '@/utils/types';
const lists = (client: PlApiBaseClient) => ({
/**

View File

@ -1,12 +1,12 @@
import * as v from 'valibot';
import { mediaAttachmentSchema } from '../entities';
import { mediaAttachmentSchema } from '@/entities';
import { type RequestMeta } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { UpdateMediaParams, UploadMediaParams } from '../params/media';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { UpdateMediaParams, UploadMediaParams } from '@/params/media';
import type { EmptyObject } from '@/utils/types';
const media = (client: PlApiBaseClient) => ({
/**

View File

@ -8,13 +8,16 @@ import {
statusSchema,
suggestionSchema,
tagSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { GOTOSOCIAL, ICESHRIMP_NET, PIXELFED, PLEROMA } from '../features';
import { getNextLink, getPrevLink } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { Account } from '../entities';
import type { PaginatedResponse } from '../responses';
import type { accounts } from './accounts';
import type { PlApiBaseClient } from '@/client-base';
import type { Account } from '@/entities';
import type {
CreateBookmarkFolderParams,
GetBookmarksParams,
@ -23,11 +26,8 @@ import type {
GetFollowRequestsParams,
GetFollowedTagsParams,
UpdateBookmarkFolderParams,
} from '../params/my-account';
import type { PaginatedResponse } from '../responses';
import type { accounts } from './accounts';
type EmptyObject = Record<string, never>;
} from '@/params/my-account';
import type { EmptyObject } from '@/utils/types';
const paginatedIceshrimpAccountsList = async <T>(
client: PlApiBaseClient & { accounts: ReturnType<typeof accounts> },

View File

@ -4,18 +4,18 @@ import {
notificationPolicySchema,
notificationRequestSchema,
notificationSchema,
} from '../entities';
} from '@/entities';
import { type RequestMeta } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
GetNotificationParams,
GetNotificationRequestsParams,
GetUnreadNotificationCountParams,
UpdateNotificationPolicyRequest,
} from '../params/notifications';
type EmptyObject = Record<string, never>;
} from '@/params/notifications';
import type { EmptyObject } from '@/utils/types';
const notifications = (client: PlApiBaseClient) => ({
/**

View File

@ -1,17 +1,17 @@
import * as v from 'valibot';
import { authorizationServerMetadataSchema, tokenSchema, userInfoSchema } from '../entities';
import { authorizationServerMetadataSchema, tokenSchema, userInfoSchema } from '@/entities';
import { ICESHRIMP_NET } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
GetTokenParams,
MfaChallengeParams,
OauthAuthorizeParams,
RevokeTokenParams,
} from '../params/oauth';
type EmptyObject = Record<string, never>;
} from '@/params/oauth';
import type { EmptyObject } from '@/utils/types';
const oauth = (client: PlApiBaseClient) => ({
/**

View File

@ -1,6 +1,6 @@
import * as v from 'valibot';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
const oembed = (client: PlApiBaseClient) => ({
/**

View File

@ -1,8 +1,8 @@
import * as v from 'valibot';
import { pollSchema } from '../entities';
import { pollSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
const polls = (client: PlApiBaseClient) => ({
/**

View File

@ -1,14 +1,13 @@
import * as v from 'valibot';
import { webPushSubscriptionSchema } from '../entities';
import { webPushSubscriptionSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreatePushNotificationsSubscriptionParams,
UpdatePushNotificationsSubscriptionParams,
} from '../params/push-notifications';
type EmptyObject = Record<string, never>;
} from '@/params/push-notifications';
import type { EmptyObject } from '@/utils/types';
const pushNotifications = (client: PlApiBaseClient) => ({
/**

View File

@ -1,11 +1,10 @@
import * as v from 'valibot';
import { rssFeedSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { rssFeedSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { EmptyObject } from '@/utils/types';
const rssFeedSubscriptions = (client: PlApiBaseClient) => ({
/**

View File

@ -1,11 +1,10 @@
import * as v from 'valibot';
import { scheduledStatusSchema } from '../entities';
import { scheduledStatusSchema } from '@/entities';
import type { PlApiBaseClient } from '../client-base';
import type { GetScheduledStatusesParams } from '../params/scheduled-statuses';
type EmptyObject = Record<string, never>;
import type { PlApiBaseClient } from '@/client-base';
import type { GetScheduledStatusesParams } from '@/params/scheduled-statuses';
import type { EmptyObject } from '@/utils/types';
const scheduledStatuses = (client: PlApiBaseClient) => ({
/**

View File

@ -1,11 +1,12 @@
import * as v from 'valibot';
import { locationSchema, searchSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { locationSchema, searchSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import { type RequestMeta } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { SearchParams } from '../params/search';
import type { PlApiBaseClient } from '@/client-base';
import type { SearchParams } from '@/params/search';
const search = (client: PlApiBaseClient) => ({
/**

View File

@ -6,19 +6,19 @@ import {
interactionPoliciesSchema,
oauthTokenSchema,
tokenSchema,
} from '../entities';
import { coerceObject, filteredArray } from '../entities/utils';
} from '@/entities';
import { coerceObject, filteredArray } from '@/entities/utils';
import { GOTOSOCIAL, ICESHRIMP_NET, MITRA, PIXELFED } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateAccountParams,
UpdateCredentialsParams,
UpdateInteractionPoliciesParams,
UpdateNotificationSettingsParams,
} from '../params/settings';
type EmptyObject = Record<string, never>;
} from '@/params/settings';
import type { EmptyObject } from '@/utils/types';
const settings = (client: PlApiBaseClient) => ({
/**

View File

@ -1,12 +1,13 @@
import { WebSocket } from 'isows';
import * as v from 'valibot';
import { shoutMessageSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { shoutMessageSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import { buildFullPath } from '../utils/url';
import type { PlApiBaseClient } from '../client-base';
import type { ShoutMessage } from '../entities';
import type { PlApiBaseClient } from '@/client-base';
import type { ShoutMessage } from '@/entities';
const shoutbox = (client: PlApiBaseClient) => ({
connect: (

View File

@ -11,12 +11,13 @@ import {
statusSchema,
statusSourceSchema,
translationSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import { AKKOMA, ICESHRIMP_NET, MITRA, PLEROMA } from '../features';
import { getAsyncRefreshHeader } from '../request';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateStatusParams,
EditInteractionPolicyParams,
@ -29,9 +30,8 @@ import type {
GetStatusQuotesParams,
GetStatusReferencesParams,
GetStatusesParams,
} from '../params/statuses';
type EmptyObject = Record<string, never>;
} from '@/params/statuses';
import type { EmptyObject } from '@/utils/types';
const statuses = (client: PlApiBaseClient) => {
const category = {

View File

@ -5,18 +5,17 @@ import {
storyCarouselItemSchema,
storyMediaSchema,
storyProfileSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
CreateStoryParams,
CreateStoryPollParams,
CropStoryPhotoParams,
StoryReportType,
} from '../params/stories';
type EmptyObject = Record<string, never>;
} from '@/params/stories';
import type { EmptyObject } from '@/utils/types';
const stories = (client: PlApiBaseClient) => ({
getRecentStories: async () => {

View File

@ -1,11 +1,12 @@
import { WebSocket } from 'isows';
import * as v from 'valibot';
import { streamingEventSchema } from '../entities';
import { streamingEventSchema } from '@/entities';
import { buildFullPath } from '../utils/url';
import type { PlApiBaseClient } from '../client-base';
import type { StreamingEvent } from '../entities';
import type { PlApiBaseClient } from '@/client-base';
import type { StreamingEvent } from '@/entities';
const streaming = (client: PlApiBaseClient) => ({
/**

View File

@ -5,10 +5,10 @@ import {
subscriptionDetailsSchema,
subscriptionInvoiceSchema,
subscriptionOptionSchema,
} from '../entities';
import { filteredArray } from '../entities/utils';
} from '@/entities';
import { filteredArray } from '@/entities/utils';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
const subscriptions = (client: PlApiBaseClient) => ({
/**

View File

@ -1,9 +1,10 @@
import * as v from 'valibot';
import { conversationSchema, markersSchema, statusSchema } from '../entities';
import { conversationSchema, markersSchema, statusSchema } from '@/entities';
import { PIXELFED } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
import type {
AntennaTimelineParams,
BubbleTimelineParams,
@ -16,9 +17,8 @@ import type {
PublicTimelineParams,
SaveMarkersParams,
WrenchedTimelineParams,
} from '../params/timelines';
type EmptyObject = Record<string, never>;
} from '@/params/timelines';
import type { EmptyObject } from '@/utils/types';
const timelines = (client: PlApiBaseClient) => ({
/**

View File

@ -1,11 +1,12 @@
import * as v from 'valibot';
import { statusSchema, tagSchema, trendsLinkSchema } from '../entities';
import { filteredArray } from '../entities/utils';
import { statusSchema, tagSchema, trendsLinkSchema } from '@/entities';
import { filteredArray } from '@/entities/utils';
import { PIXELFED } from '../features';
import type { PlApiBaseClient } from '../client-base';
import type { GetTrendingLinks, GetTrendingStatuses, GetTrendingTags } from '../params/trends';
import type { PlApiBaseClient } from '@/client-base';
import type { GetTrendingLinks, GetTrendingStatuses, GetTrendingTags } from '@/params/trends';
const trends = (client: PlApiBaseClient) => ({
/**

View File

@ -1,4 +1,4 @@
import type { PlApiBaseClient } from '../client-base';
import type { PlApiBaseClient } from '@/client-base';
const utils = (client: PlApiBaseClient) => ({
paginatedGet: client.paginatedGet.bind(client),

View File

@ -1,6 +1,7 @@
import * as v from 'valibot';
import { pick } from '../../utils';
import { pick } from '@/utils';
import { announcementSchema } from '../announcement';
/**

View File

@ -1,6 +1,7 @@
import * as v from 'valibot';
import { pick } from '../../utils';
import { pick } from '@/utils';
import { ruleSchema } from '../rule';
import { statusWithoutAccountSchema } from '../status';
import { datetimeSchema, filteredArray } from '../utils';

View File

@ -1,4 +1,4 @@
import type { Account } from '../entities';
import type { Account } from '@/entities';
const getDomainFromURL = (account: Pick<Account, 'url'>): string => {
try {

View File

@ -0,0 +1,3 @@
type EmptyObject = Record<string, never>;
export type { EmptyObject };

View File

@ -6,7 +6,7 @@
"lib": ["ES2020", "DOM", "DOM.Iterable"],
"skipLibCheck": true,
"paths": {
"@/*": ["./src/*"]
"@/*": ["./lib/*"]
},
/* Bundler mode */