@itd-api/cache / CachePlugin
Interface: CachePlugin
Defined in: packages/cache/src/plugin.ts:41
Плагин и управление созданным им хранилищем.
Extends
ItdPlugin
Properties
after?
optional after?: readonly string[];Defined in: src/core/plugins.ts:110
Имена плагинов, внутри которых должна стоять эта обёртка.
Inherited from
ItdPlugin.afterbefore?
optional before?: readonly string[];Defined in: src/core/plugins.ts:108
Имена плагинов, снаружи которых должна стоять эта обёртка.
Inherited from
ItdPlugin.beforeconflicts?
optional conflicts?: readonly string[];Defined in: src/core/plugins.ts:106
Несовместимые плагины. Достаточно объявить конфликт с одной стороны.
Inherited from
ItdPlugin.conflictsname
name: string;Defined in: src/core/plugins.ts:84
Имя плагина. Должно быть уникальным: повторное подключение — ошибка.
Inherited from
ItdPlugin.nameoptionKeys?
optional optionKeys?: readonly string[];Defined in: src/core/plugins.ts:102
Имена опций запроса, которые плагин читает у методов ресурсов.
Библиотека этих опций не понимает и ничего с ними не делает — только доносит от вызова метода до обёртки нетронутыми. Без такого списка чужие поля отсеиваются, чтобы случайная опечатка в параметрах не уезжала на сервер.
Имена полей самого запроса (path, body, headers, signal и прочие из RawRequestOptions) заявить нельзя: подключение такого плагина завершится ошибкой.
Типы для них плагин объявляет сам, дополняя RequestOptions:
declare module 'itd-api' {
interface RequestOptions { encrypt?: string | undefined }
}Inherited from
ItdPlugin.optionKeysrequires?
optional requires?: readonly string[];Defined in: src/core/plugins.ts:104
Плагины, которые обязаны быть подключены раньше этого.
Inherited from
ItdPlugin.requiressize
readonly size: number;Defined in: packages/cache/src/plugin.ts:43
Количество готовых ответов во всех разделах кэша.
Methods
attachRealtime()
attachRealtime(stream): Unsubscribe;Defined in: packages/cache/src/plugin.ts:53
Очищает список и счётчик уведомлений по событиям realtime.
Сразу удаляет прежние значения и возвращает функцию отписки.
Parameters
stream
ItdRealtime
Returns
Unsubscribe
clear()
clear(): void;Defined in: packages/cache/src/plugin.ts:45
Удаляет все ответы и не даёт выполняющимся запросам вернуть устаревший результат.
Returns
void
install()
install(context): unknown;Defined in: src/core/plugins.ts:117
Устанавливает плагин.
Может вернуть функцию освобождения ресурсов. Она вызывается при unuse() или окончательном dispose() клиента и может быть асинхронной.
Parameters
context
PluginContext
Returns
unknown
Inherited from
ItdPlugin.installinvalidate()
invalidate(...routes): void;Defined in: packages/cache/src/plugin.ts:47
Удаляет все варианты названных маршрутов во всех подключённых клиентах.
Parameters
routes
...( | "auth.sessions" | "users.me" | "users.checkUsername" | "users.search" | "users.whoToFollow" | "users.topClans" | "users.followers" | "users.following" | "users.blocked" | "users.getPrivacy" | "users.pins" | "users.followStatus" | "users.get" | "posts.list" | "posts.likedByUser" | "posts.byUser" | "posts.comments" | "posts.stats" | "posts.get" | "comments.replies" | "notifications.list" | "notifications.count" | "notifications.getSettings" | "hashtags.search" | "hashtags.trending" | "hashtags.posts" | "search.all" | "files.get" | "subscription.status" | "subscription.methods" | "verification.status" | "platform.changelog" | "platform.announcements" | "platform.portal" | "platform.status")[]
Returns
void