itd-api 0.7.1 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/index.cjs +81 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +22 -4
- package/dist/index.d.ts +22 -4
- package/dist/index.js +81 -8
- package/dist/index.js.map +1 -1
- package/dist/realtime/index.cjs +3 -3
- package/dist/realtime/index.d.cts +2 -2
- package/dist/realtime/index.d.ts +2 -2
- package/dist/realtime/index.js +3 -3
- package/dist/rest/index.cjs +70 -6
- package/dist/rest/index.cjs.map +1 -1
- package/dist/rest/index.d.cts +11 -3
- package/dist/rest/index.d.ts +11 -3
- package/dist/rest/index.js +70 -6
- package/dist/rest/index.js.map +1 -1
- package/dist/shared/{auth-provider-CTJkKfgy.cjs → auth-provider-CG8oCQ9F.cjs} +2 -2
- package/dist/shared/{auth-provider-CTJkKfgy.cjs.map → auth-provider-CG8oCQ9F.cjs.map} +1 -1
- package/dist/shared/{auth-provider-BfogACAb.js → auth-provider-mYqxsSVa.js} +2 -2
- package/dist/shared/{auth-provider-BfogACAb.js.map → auth-provider-mYqxsSVa.js.map} +1 -1
- package/dist/shared/{render-vtLixIiU.js → render-C6HRPs10.js} +353 -56
- package/dist/shared/render-C6HRPs10.js.map +1 -0
- package/dist/shared/{render-DZrxhC5_.d.ts → render-CgwKdOzu.d.ts} +101 -40
- package/dist/shared/{render-DMp_3Nzk.d.cts → render-DO0F5YSm.d.cts} +101 -40
- package/dist/shared/{render-DyeHJNBw.cjs → render-mcuELiYi.cjs} +369 -54
- package/dist/shared/render-mcuELiYi.cjs.map +1 -0
- package/dist/shared/{url-yjl2c8Ie.cjs → url-BaMCQpYH.cjs} +76 -24
- package/dist/shared/url-BaMCQpYH.cjs.map +1 -0
- package/dist/shared/{url-B6-bXHKt.d.ts → url-DTfZ2toq.d.cts} +6 -8
- package/dist/shared/{url-B6-bXHKt.d.cts → url-DTfZ2toq.d.ts} +6 -8
- package/dist/shared/{url-CYXgxqGx.js → url-IU0xN9wX.js} +65 -25
- package/dist/shared/url-IU0xN9wX.js.map +1 -0
- package/dist/shared/{websocket-CbzB1Leq.js → websocket-BLR8eVJV.js} +2 -2
- package/dist/shared/{websocket-CbzB1Leq.js.map → websocket-BLR8eVJV.js.map} +1 -1
- package/dist/shared/{websocket-sYlynrr0.cjs → websocket-C_eI4H2o.cjs} +2 -2
- package/dist/shared/{websocket-sYlynrr0.cjs.map → websocket-C_eI4H2o.cjs.map} +1 -1
- package/dist/shared/{websocket-D1p32SB2.d.cts → websocket-DF7XIMiX.d.cts} +2 -2
- package/dist/shared/{websocket-BMtihD56.d.ts → websocket-DYKBr8HF.d.ts} +2 -2
- package/package.json +1 -1
- package/dist/shared/render-DyeHJNBw.cjs.map +0 -1
- package/dist/shared/render-vtLixIiU.js.map +0 -1
- package/dist/shared/url-CYXgxqGx.js.map +0 -1
- package/dist/shared/url-yjl2c8Ie.cjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as UserSummary, B as Notification, Ct as ReportReason, Dt as ViewReason, Ft as Logger, G as FollowResult, It as OperationRequestOptions, J as PinsResult, K as MyProfile, Lt as PaginationOptions, Mt as Unsubscribe, Ot as ViewSource, Tt as ServiceState, V as NotificationSettings, W as Author, Wt as RequestOptions, X as Profile, Xt as QueryParams, Y as PrivacySettings, Z as PublicProfile, _t as InteractionType, bt as Loose, ct as IsoDate, dt as UserRef, et as AuthIdentity, gn as
|
|
1
|
+
import { $ as UserSummary, B as Notification, Ct as ReportReason, Dt as ViewReason, Ft as Logger, G as FollowResult, It as OperationRequestOptions, J as PinsResult, K as MyProfile, Lt as PaginationOptions, Mt as Unsubscribe, Ot as ViewSource, Qt as ServiceDefinition, Tt as ServiceState, V as NotificationSettings, Vt as RawRequestOptions, W as Author, Wt as RequestOptions, X as Profile, Xt as QueryParams, Y as PrivacySettings, Z as PublicProfile, _n as RetrySafety, _t as InteractionType, bt as Loose, ct as IsoDate, dt as UserRef, et as AuthIdentity, gn as OperationMethod, gt as IncidentKind, ht as FeedTab, lt as Span, mt as CommentSort, pt as AttachmentType, rn as BuiltInOperationId, sn as OperationId, tn as ItdClock, ut as UserId, wt as ReportTargetType, zt as RateLimitBucketOverride } from "./url-DTfZ2toq.js";
|
|
2
2
|
import { c as LazyFile, d as UrlFileOptions, i as FileStreamContent, l as StreamFile, n as FileContext, o as FileTransferMode, r as FileInput, s as FromStreamOptions } from "./contracts-BoT7msmq.js";
|
|
3
3
|
//#region src/core/catalog.d.ts
|
|
4
4
|
/**
|
|
@@ -77,6 +77,93 @@ type PipelineRequestInput = Omit<PipelineRequest, 'operationId'> & {
|
|
|
77
77
|
/** Обработчик запроса. Самый внутренний в цепочке — транспорт. */
|
|
78
78
|
type RequestHandler = (request: PipelineRequest) => Promise<unknown>;
|
|
79
79
|
//#endregion
|
|
80
|
+
//#region src/core/execution/http.d.ts
|
|
81
|
+
/** Что нужно фасаду для работы. */
|
|
82
|
+
interface HttpClientDeps {
|
|
83
|
+
/** Готовый обработчик — вся цепочка слоёв поверх транспорта. */
|
|
84
|
+
handler: RequestHandler;
|
|
85
|
+
baseUrl: string;
|
|
86
|
+
/** Каталог, из которого берётся HTTP-метод семантической операции. */
|
|
87
|
+
catalog: OperationCatalog;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Точка входа ресурсов в конвейер запросов.
|
|
91
|
+
*
|
|
92
|
+
* Принимает готовый обработчик — цепочку слоёв поверх транспорта, собранную
|
|
93
|
+
* во внутреннем runtime клиента, — и отдаёт ресурсам методы `request`/`operation`.
|
|
94
|
+
* О слоях и их порядке ресурсы не знают.
|
|
95
|
+
*/
|
|
96
|
+
declare class HttpClient {
|
|
97
|
+
#private;
|
|
98
|
+
constructor(deps: HttpClientDeps);
|
|
99
|
+
/** Базовый URL, к которому обращается клиент. */
|
|
100
|
+
get baseUrl(): string;
|
|
101
|
+
/**
|
|
102
|
+
* Выполняет запрос к API через собранный конвейер.
|
|
103
|
+
*
|
|
104
|
+
* @typeParam T ожидаемая форма ответа после снятия обёртки `{ data: … }`
|
|
105
|
+
* @throws {ItdApiError} если сервер ответил статусом ≥ 400
|
|
106
|
+
* @throws {ItdTimeoutError} если истёк таймаут
|
|
107
|
+
* @throws {ItdAbortError} если запрос отменён через `signal`
|
|
108
|
+
* @throws {ItdNetworkError} если запрос не дошёл до сервера
|
|
109
|
+
*/
|
|
110
|
+
request<T = unknown>(options: PipelineRequestInput): Promise<T>;
|
|
111
|
+
/** Выполняет встроенную семантическую операцию, подставляя её HTTP-метод из каталога. */
|
|
112
|
+
operation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
113
|
+
/** Выполняет внутреннюю операцию финализации после начала `ItdClient.dispose()`. @internal */
|
|
114
|
+
cleanupOperation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
115
|
+
}
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region src/core/features.d.ts
|
|
118
|
+
/** Параметры запроса feature: маршрут задаёт ресурс, transport metadata — manifest. */
|
|
119
|
+
type FeatureRequestOptions = Omit<RawRequestOptions, 'operationId' | 'method' | 'service' | 'baseUrl' | 'retrySafety' | 'rateLimitBucket'>;
|
|
120
|
+
/** Операция одного feature. Локальный ключ используется в {@link FeatureContext.request}. */
|
|
121
|
+
interface FeatureOperationDefinition {
|
|
122
|
+
readonly method: OperationMethod;
|
|
123
|
+
readonly retrySafety: RetrySafety;
|
|
124
|
+
/** Имя сервиса из {@link ClientFeature.services}; без него используется основной API. */
|
|
125
|
+
readonly service?: string | undefined;
|
|
126
|
+
/** Локальное имя бакета из {@link ClientFeature.buckets}. */
|
|
127
|
+
readonly bucket?: string | undefined;
|
|
128
|
+
}
|
|
129
|
+
/** Начальные ограничения нового серверного счётчика feature. */
|
|
130
|
+
interface FeatureBucketDefinition extends RateLimitBucketOverride {}
|
|
131
|
+
/** Результат синхронной сборки API feature. */
|
|
132
|
+
interface FeatureInstallation<TApi> {
|
|
133
|
+
readonly api: TApi;
|
|
134
|
+
/** Не терминальная остановка фоновых ресурсов при `client.close()`. */
|
|
135
|
+
readonly close?: (() => void | Promise<void>) | undefined;
|
|
136
|
+
/** Терминальное освобождение ресурсов при `client.dispose()`. */
|
|
137
|
+
readonly dispose?: (() => void | Promise<void>) | undefined;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Подключаемый предметный модуль клиента.
|
|
141
|
+
*
|
|
142
|
+
* Manifest регистрируется атомарно до `setup()`. `setup()` не должен ходить в сеть: он создаёт
|
|
143
|
+
* только типизированный facade, а запросы выполняются лениво его методами.
|
|
144
|
+
*/
|
|
145
|
+
interface ClientFeature<TApi> {
|
|
146
|
+
/** Пространство имён модуля; глобальные ID операций начинаются с `<name>.`. */
|
|
147
|
+
readonly name: string;
|
|
148
|
+
readonly services?: readonly ServiceDefinition[] | undefined;
|
|
149
|
+
/** Операции по локальным именам; глобальный ID каждой строит реестр. */
|
|
150
|
+
readonly operations: Readonly<Record<string, FeatureOperationDefinition>>;
|
|
151
|
+
readonly buckets?: Readonly<Record<string, FeatureBucketDefinition>> | undefined;
|
|
152
|
+
setup(context: FeatureContext): FeatureInstallation<TApi>;
|
|
153
|
+
}
|
|
154
|
+
/** Ограниченный доступ feature к общему runtime клиента. */
|
|
155
|
+
interface FeatureContext {
|
|
156
|
+
readonly featureName: string;
|
|
157
|
+
readonly baseUrl: string;
|
|
158
|
+
readonly signal: AbortSignal;
|
|
159
|
+
readonly clock: ItdClock;
|
|
160
|
+
readonly logger: Logger | undefined;
|
|
161
|
+
/** Выполняет объявленную операцию через общие auth, plugins, retry и очереди клиента. */
|
|
162
|
+
request<T = unknown>(operation: string, options: FeatureRequestOptions): Promise<T>;
|
|
163
|
+
/** Возвращает фактический URL объявленного сервиса с учётом настроек клиента. */
|
|
164
|
+
serviceBaseUrl(name: string): string;
|
|
165
|
+
}
|
|
166
|
+
//#endregion
|
|
80
167
|
//#region src/core/plugins/contracts.d.ts
|
|
81
168
|
/**
|
|
82
169
|
* Обёртка одной логической операции.
|
|
@@ -254,43 +341,6 @@ interface RateLimitBucketState {
|
|
|
254
341
|
pending: number;
|
|
255
342
|
}
|
|
256
343
|
//#endregion
|
|
257
|
-
//#region src/core/execution/http.d.ts
|
|
258
|
-
/** Что нужно фасаду для работы. */
|
|
259
|
-
interface HttpClientDeps {
|
|
260
|
-
/** Готовый обработчик — вся цепочка слоёв поверх транспорта. */
|
|
261
|
-
handler: RequestHandler;
|
|
262
|
-
baseUrl: string;
|
|
263
|
-
/** Каталог, из которого берётся HTTP-метод семантической операции. */
|
|
264
|
-
catalog: OperationCatalog;
|
|
265
|
-
}
|
|
266
|
-
/**
|
|
267
|
-
* Точка входа ресурсов в конвейер запросов.
|
|
268
|
-
*
|
|
269
|
-
* Принимает готовый обработчик — цепочку слоёв поверх транспорта, собранную
|
|
270
|
-
* во внутреннем runtime клиента, — и отдаёт ресурсам методы `request`/`operation`.
|
|
271
|
-
* О слоях и их порядке ресурсы не знают.
|
|
272
|
-
*/
|
|
273
|
-
declare class HttpClient {
|
|
274
|
-
#private;
|
|
275
|
-
constructor(deps: HttpClientDeps);
|
|
276
|
-
/** Базовый URL, к которому обращается клиент. */
|
|
277
|
-
get baseUrl(): string;
|
|
278
|
-
/**
|
|
279
|
-
* Выполняет запрос к API через собранный конвейер.
|
|
280
|
-
*
|
|
281
|
-
* @typeParam T ожидаемая форма ответа после снятия обёртки `{ data: … }`
|
|
282
|
-
* @throws {ItdApiError} если сервер ответил статусом ≥ 400
|
|
283
|
-
* @throws {ItdTimeoutError} если истёк таймаут
|
|
284
|
-
* @throws {ItdAbortError} если запрос отменён через `signal`
|
|
285
|
-
* @throws {ItdNetworkError} если запрос не дошёл до сервера
|
|
286
|
-
*/
|
|
287
|
-
request<T = unknown>(options: PipelineRequestInput): Promise<T>;
|
|
288
|
-
/** Выполняет встроенную семантическую операцию, подставляя её HTTP-метод из каталога. */
|
|
289
|
-
operation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
290
|
-
/** Выполняет внутреннюю операцию финализации после начала `ItdClient.dispose()`. @internal */
|
|
291
|
-
cleanupOperation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
292
|
-
}
|
|
293
|
-
//#endregion
|
|
294
344
|
//#region src/models/account.d.ts
|
|
295
345
|
/** Активная сессия входа. */
|
|
296
346
|
interface Session {
|
|
@@ -1160,6 +1210,14 @@ interface PlatformStatus {
|
|
|
1160
1210
|
services: ServiceStatus[];
|
|
1161
1211
|
}
|
|
1162
1212
|
//#endregion
|
|
1213
|
+
//#region src/resources/status.d.ts
|
|
1214
|
+
/** API встроенного status feature. @internal */
|
|
1215
|
+
declare class StatusResource {
|
|
1216
|
+
#private;
|
|
1217
|
+
constructor(context: FeatureContext);
|
|
1218
|
+
get(options?: RequestOptions): Promise<PlatformStatus>;
|
|
1219
|
+
}
|
|
1220
|
+
//#endregion
|
|
1163
1221
|
//#region src/resources/platform.d.ts
|
|
1164
1222
|
/** Требования к версии одного приложения платформы. */
|
|
1165
1223
|
interface PlatformClientVersion {
|
|
@@ -1182,6 +1240,9 @@ interface PlatformVersions {
|
|
|
1182
1240
|
* Доступна как `itd.platform`.
|
|
1183
1241
|
*/
|
|
1184
1242
|
declare class PlatformResource extends BaseResource {
|
|
1243
|
+
#private;
|
|
1244
|
+
/** @internal */
|
|
1245
|
+
constructor(http: ConstructorParameters<typeof BaseResource>[0], status: StatusResource);
|
|
1185
1246
|
/**
|
|
1186
1247
|
* Загружает минимальные и актуальные версии клиентских приложений.
|
|
1187
1248
|
*
|
|
@@ -2246,5 +2307,5 @@ interface RenderSpansOptions {
|
|
|
2246
2307
|
*/
|
|
2247
2308
|
declare function renderSpans(content: string, spans?: readonly Span[] | null | undefined, options?: RenderSpansOptions): string;
|
|
2248
2309
|
//#endregion
|
|
2249
|
-
export { poll as $, CreatePostData as $t, TelemetryResource as A, FilesResource as At, ReportInput as B, PinPostResult as Bt, DwellEntry as C,
|
|
2250
|
-
//# sourceMappingURL=render-
|
|
2310
|
+
export { poll as $, CreatePostData as $t, TelemetryResource as A, FilesResource as At, ReportInput as B, PinPostResult as Bt, DwellEntry as C, FeatureBucketDefinition as Cn, Report as Ct, TelemetryBatchOptions as D, FeatureRequestOptions as Dn, UpdateNotificationSettingsInput as Dt, TelemetryBatch as E, FeatureOperationDefinition as En, NotificationsResource as Et, SubscriptionResource as F, Attachment as Ft, UserPostsParams as G, CommentBuilder as Gt, CommentsParams as H, PollOption as Ht, SearchResource as I, Comment as It, PostInput as J, BuilderInput as Jt, CreatePostInput as K, CommentInput as Kt, SearchResult as L, CommentReplyTo as Lt, ViewTracker as M, UploadedFile as Mt, ViewTrackerInput as N, CommentsResource as Nt, TelemetryClock as O, HttpClient as On, HashtagPostsParams as Ot, ViewTrackerOptions as P, RepliesParams as Pt, PollInput as Q, CreatePollInput as Qt, ReportsResource as R, Hashtag as Rt, UsersResource as S, ClientFeature as Sn, Portal as St, PhotoOpenInput as T, FeatureInstallation as Tn, NotificationListParams as Tt, FeedParams as U, Post as Ut, report as V, Poll as Vt, PostsResource as W, PostStats as Wt, post as X, isBuilder as Xt, PostUpdateInput as Y, ItdBuilder as Yt, PollBuilder as Z, CreateCommentInput as Zt, fromUrl as _, ClientPlugin as _n, StatusIncidentLine as _t, isMyProfile as a, PaginationMode as an, MarkupContent as at, UpdateProfileInput as b, PluginApi as bn, ChangelogEntry as bt, ALLOWED_MIME_TYPES as c, mapPage as cn, TextMarkup as ct, AudioMimeType as d, Subscription as dn, PlatformClientVersion as dt, CreateReportInput as en, ParseMarkupOptions as et, IMAGE_MIME_TYPES as f, RateLimitBucketState as fn, PlatformResource as ft, fromStream as g, AttemptNext as gn, StatusDay as gt, VideoMimeType as h, AttemptInterceptor as hn, ServiceStatus as ht, statusDays as i, PageState as in, MarkupBuilder as it, VideoProgressInput as j, UploadOptions as jt, TelemetryOptions as k, RequestHandler as kn, HashtagsResource as kt, AUDIO_MIME_TYPES as l, PaymentMethod as ln, autoSpans as lt, VIDEO_MIME_TYPES as m, AttemptExtensions as mn, PlatformStatus as mt, SpanRenderFormat as n, BaseResource as nn, parseMarkdown as nt, toDate as o, Paginator as on, MarkupInput as ot, ImageMimeType as p, AttemptContext as pn, PlatformVersions as pt, PostBuilder as q, comment as qt, renderSpans as r, Page as rn, AutoSpansOptions as rt, utcStampToIso as s, PaginatorOptions as sn, MarkupSpan as st, RenderSpansOptions as t, UpdatePostInput as tn, parseHtml as tt, AllowedMimeType as u, Session as un, markup as ut, VerificationResource as v, OperationExtensions as vn, Announcement as vt, InteractionEntry as w, FeatureContext as wn, VerificationStatus as wt, UserListParams as x, PluginTeardown as xn, Clan as xt, UpdatePrivacyInput as y, OperationTransformer as yn, AnnouncementButton as yt, ReportBuilder as z, LikeResult as zt };
|
|
2311
|
+
//# sourceMappingURL=render-CgwKdOzu.d.ts.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as UserSummary, B as Notification, Ct as ReportReason, Dt as ViewReason, Ft as Logger, G as FollowResult, It as OperationRequestOptions, J as PinsResult, K as MyProfile, Lt as PaginationOptions, Mt as Unsubscribe, Ot as ViewSource, Tt as ServiceState, V as NotificationSettings, W as Author, Wt as RequestOptions, X as Profile, Xt as QueryParams, Y as PrivacySettings, Z as PublicProfile, _t as InteractionType, bt as Loose, ct as IsoDate, dt as UserRef, et as AuthIdentity, gn as
|
|
1
|
+
import { $ as UserSummary, B as Notification, Ct as ReportReason, Dt as ViewReason, Ft as Logger, G as FollowResult, It as OperationRequestOptions, J as PinsResult, K as MyProfile, Lt as PaginationOptions, Mt as Unsubscribe, Ot as ViewSource, Qt as ServiceDefinition, Tt as ServiceState, V as NotificationSettings, Vt as RawRequestOptions, W as Author, Wt as RequestOptions, X as Profile, Xt as QueryParams, Y as PrivacySettings, Z as PublicProfile, _n as RetrySafety, _t as InteractionType, bt as Loose, ct as IsoDate, dt as UserRef, et as AuthIdentity, gn as OperationMethod, gt as IncidentKind, ht as FeedTab, lt as Span, mt as CommentSort, pt as AttachmentType, rn as BuiltInOperationId, sn as OperationId, tn as ItdClock, ut as UserId, wt as ReportTargetType, zt as RateLimitBucketOverride } from "./url-DTfZ2toq.cjs";
|
|
2
2
|
import { c as LazyFile, d as UrlFileOptions, i as FileStreamContent, l as StreamFile, n as FileContext, o as FileTransferMode, r as FileInput, s as FromStreamOptions } from "./contracts-BoT7msmq.cjs";
|
|
3
3
|
//#region src/core/catalog.d.ts
|
|
4
4
|
/**
|
|
@@ -77,6 +77,93 @@ type PipelineRequestInput = Omit<PipelineRequest, 'operationId'> & {
|
|
|
77
77
|
/** Обработчик запроса. Самый внутренний в цепочке — транспорт. */
|
|
78
78
|
type RequestHandler = (request: PipelineRequest) => Promise<unknown>;
|
|
79
79
|
//#endregion
|
|
80
|
+
//#region src/core/execution/http.d.ts
|
|
81
|
+
/** Что нужно фасаду для работы. */
|
|
82
|
+
interface HttpClientDeps {
|
|
83
|
+
/** Готовый обработчик — вся цепочка слоёв поверх транспорта. */
|
|
84
|
+
handler: RequestHandler;
|
|
85
|
+
baseUrl: string;
|
|
86
|
+
/** Каталог, из которого берётся HTTP-метод семантической операции. */
|
|
87
|
+
catalog: OperationCatalog;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Точка входа ресурсов в конвейер запросов.
|
|
91
|
+
*
|
|
92
|
+
* Принимает готовый обработчик — цепочку слоёв поверх транспорта, собранную
|
|
93
|
+
* во внутреннем runtime клиента, — и отдаёт ресурсам методы `request`/`operation`.
|
|
94
|
+
* О слоях и их порядке ресурсы не знают.
|
|
95
|
+
*/
|
|
96
|
+
declare class HttpClient {
|
|
97
|
+
#private;
|
|
98
|
+
constructor(deps: HttpClientDeps);
|
|
99
|
+
/** Базовый URL, к которому обращается клиент. */
|
|
100
|
+
get baseUrl(): string;
|
|
101
|
+
/**
|
|
102
|
+
* Выполняет запрос к API через собранный конвейер.
|
|
103
|
+
*
|
|
104
|
+
* @typeParam T ожидаемая форма ответа после снятия обёртки `{ data: … }`
|
|
105
|
+
* @throws {ItdApiError} если сервер ответил статусом ≥ 400
|
|
106
|
+
* @throws {ItdTimeoutError} если истёк таймаут
|
|
107
|
+
* @throws {ItdAbortError} если запрос отменён через `signal`
|
|
108
|
+
* @throws {ItdNetworkError} если запрос не дошёл до сервера
|
|
109
|
+
*/
|
|
110
|
+
request<T = unknown>(options: PipelineRequestInput): Promise<T>;
|
|
111
|
+
/** Выполняет встроенную семантическую операцию, подставляя её HTTP-метод из каталога. */
|
|
112
|
+
operation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
113
|
+
/** Выполняет внутреннюю операцию финализации после начала `ItdClient.dispose()`. @internal */
|
|
114
|
+
cleanupOperation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
115
|
+
}
|
|
116
|
+
//#endregion
|
|
117
|
+
//#region src/core/features.d.ts
|
|
118
|
+
/** Параметры запроса feature: маршрут задаёт ресурс, transport metadata — manifest. */
|
|
119
|
+
type FeatureRequestOptions = Omit<RawRequestOptions, 'operationId' | 'method' | 'service' | 'baseUrl' | 'retrySafety' | 'rateLimitBucket'>;
|
|
120
|
+
/** Операция одного feature. Локальный ключ используется в {@link FeatureContext.request}. */
|
|
121
|
+
interface FeatureOperationDefinition {
|
|
122
|
+
readonly method: OperationMethod;
|
|
123
|
+
readonly retrySafety: RetrySafety;
|
|
124
|
+
/** Имя сервиса из {@link ClientFeature.services}; без него используется основной API. */
|
|
125
|
+
readonly service?: string | undefined;
|
|
126
|
+
/** Локальное имя бакета из {@link ClientFeature.buckets}. */
|
|
127
|
+
readonly bucket?: string | undefined;
|
|
128
|
+
}
|
|
129
|
+
/** Начальные ограничения нового серверного счётчика feature. */
|
|
130
|
+
interface FeatureBucketDefinition extends RateLimitBucketOverride {}
|
|
131
|
+
/** Результат синхронной сборки API feature. */
|
|
132
|
+
interface FeatureInstallation<TApi> {
|
|
133
|
+
readonly api: TApi;
|
|
134
|
+
/** Не терминальная остановка фоновых ресурсов при `client.close()`. */
|
|
135
|
+
readonly close?: (() => void | Promise<void>) | undefined;
|
|
136
|
+
/** Терминальное освобождение ресурсов при `client.dispose()`. */
|
|
137
|
+
readonly dispose?: (() => void | Promise<void>) | undefined;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Подключаемый предметный модуль клиента.
|
|
141
|
+
*
|
|
142
|
+
* Manifest регистрируется атомарно до `setup()`. `setup()` не должен ходить в сеть: он создаёт
|
|
143
|
+
* только типизированный facade, а запросы выполняются лениво его методами.
|
|
144
|
+
*/
|
|
145
|
+
interface ClientFeature<TApi> {
|
|
146
|
+
/** Пространство имён модуля; глобальные ID операций начинаются с `<name>.`. */
|
|
147
|
+
readonly name: string;
|
|
148
|
+
readonly services?: readonly ServiceDefinition[] | undefined;
|
|
149
|
+
/** Операции по локальным именам; глобальный ID каждой строит реестр. */
|
|
150
|
+
readonly operations: Readonly<Record<string, FeatureOperationDefinition>>;
|
|
151
|
+
readonly buckets?: Readonly<Record<string, FeatureBucketDefinition>> | undefined;
|
|
152
|
+
setup(context: FeatureContext): FeatureInstallation<TApi>;
|
|
153
|
+
}
|
|
154
|
+
/** Ограниченный доступ feature к общему runtime клиента. */
|
|
155
|
+
interface FeatureContext {
|
|
156
|
+
readonly featureName: string;
|
|
157
|
+
readonly baseUrl: string;
|
|
158
|
+
readonly signal: AbortSignal;
|
|
159
|
+
readonly clock: ItdClock;
|
|
160
|
+
readonly logger: Logger | undefined;
|
|
161
|
+
/** Выполняет объявленную операцию через общие auth, plugins, retry и очереди клиента. */
|
|
162
|
+
request<T = unknown>(operation: string, options: FeatureRequestOptions): Promise<T>;
|
|
163
|
+
/** Возвращает фактический URL объявленного сервиса с учётом настроек клиента. */
|
|
164
|
+
serviceBaseUrl(name: string): string;
|
|
165
|
+
}
|
|
166
|
+
//#endregion
|
|
80
167
|
//#region src/core/plugins/contracts.d.ts
|
|
81
168
|
/**
|
|
82
169
|
* Обёртка одной логической операции.
|
|
@@ -254,43 +341,6 @@ interface RateLimitBucketState {
|
|
|
254
341
|
pending: number;
|
|
255
342
|
}
|
|
256
343
|
//#endregion
|
|
257
|
-
//#region src/core/execution/http.d.ts
|
|
258
|
-
/** Что нужно фасаду для работы. */
|
|
259
|
-
interface HttpClientDeps {
|
|
260
|
-
/** Готовый обработчик — вся цепочка слоёв поверх транспорта. */
|
|
261
|
-
handler: RequestHandler;
|
|
262
|
-
baseUrl: string;
|
|
263
|
-
/** Каталог, из которого берётся HTTP-метод семантической операции. */
|
|
264
|
-
catalog: OperationCatalog;
|
|
265
|
-
}
|
|
266
|
-
/**
|
|
267
|
-
* Точка входа ресурсов в конвейер запросов.
|
|
268
|
-
*
|
|
269
|
-
* Принимает готовый обработчик — цепочку слоёв поверх транспорта, собранную
|
|
270
|
-
* во внутреннем runtime клиента, — и отдаёт ресурсам методы `request`/`operation`.
|
|
271
|
-
* О слоях и их порядке ресурсы не знают.
|
|
272
|
-
*/
|
|
273
|
-
declare class HttpClient {
|
|
274
|
-
#private;
|
|
275
|
-
constructor(deps: HttpClientDeps);
|
|
276
|
-
/** Базовый URL, к которому обращается клиент. */
|
|
277
|
-
get baseUrl(): string;
|
|
278
|
-
/**
|
|
279
|
-
* Выполняет запрос к API через собранный конвейер.
|
|
280
|
-
*
|
|
281
|
-
* @typeParam T ожидаемая форма ответа после снятия обёртки `{ data: … }`
|
|
282
|
-
* @throws {ItdApiError} если сервер ответил статусом ≥ 400
|
|
283
|
-
* @throws {ItdTimeoutError} если истёк таймаут
|
|
284
|
-
* @throws {ItdAbortError} если запрос отменён через `signal`
|
|
285
|
-
* @throws {ItdNetworkError} если запрос не дошёл до сервера
|
|
286
|
-
*/
|
|
287
|
-
request<T = unknown>(options: PipelineRequestInput): Promise<T>;
|
|
288
|
-
/** Выполняет встроенную семантическую операцию, подставляя её HTTP-метод из каталога. */
|
|
289
|
-
operation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
290
|
-
/** Выполняет внутреннюю операцию финализации после начала `ItdClient.dispose()`. @internal */
|
|
291
|
-
cleanupOperation<T = unknown>(operationId: BuiltInOperationId, options: Omit<PipelineRequest, 'operationId' | 'method'>): Promise<T>;
|
|
292
|
-
}
|
|
293
|
-
//#endregion
|
|
294
344
|
//#region src/models/account.d.ts
|
|
295
345
|
/** Активная сессия входа. */
|
|
296
346
|
interface Session {
|
|
@@ -1160,6 +1210,14 @@ interface PlatformStatus {
|
|
|
1160
1210
|
services: ServiceStatus[];
|
|
1161
1211
|
}
|
|
1162
1212
|
//#endregion
|
|
1213
|
+
//#region src/resources/status.d.ts
|
|
1214
|
+
/** API встроенного status feature. @internal */
|
|
1215
|
+
declare class StatusResource {
|
|
1216
|
+
#private;
|
|
1217
|
+
constructor(context: FeatureContext);
|
|
1218
|
+
get(options?: RequestOptions): Promise<PlatformStatus>;
|
|
1219
|
+
}
|
|
1220
|
+
//#endregion
|
|
1163
1221
|
//#region src/resources/platform.d.ts
|
|
1164
1222
|
/** Требования к версии одного приложения платформы. */
|
|
1165
1223
|
interface PlatformClientVersion {
|
|
@@ -1182,6 +1240,9 @@ interface PlatformVersions {
|
|
|
1182
1240
|
* Доступна как `itd.platform`.
|
|
1183
1241
|
*/
|
|
1184
1242
|
declare class PlatformResource extends BaseResource {
|
|
1243
|
+
#private;
|
|
1244
|
+
/** @internal */
|
|
1245
|
+
constructor(http: ConstructorParameters<typeof BaseResource>[0], status: StatusResource);
|
|
1185
1246
|
/**
|
|
1186
1247
|
* Загружает минимальные и актуальные версии клиентских приложений.
|
|
1187
1248
|
*
|
|
@@ -2246,5 +2307,5 @@ interface RenderSpansOptions {
|
|
|
2246
2307
|
*/
|
|
2247
2308
|
declare function renderSpans(content: string, spans?: readonly Span[] | null | undefined, options?: RenderSpansOptions): string;
|
|
2248
2309
|
//#endregion
|
|
2249
|
-
export { poll as $, CreatePostData as $t, TelemetryResource as A, FilesResource as At, ReportInput as B, PinPostResult as Bt, DwellEntry as C,
|
|
2250
|
-
//# sourceMappingURL=render-
|
|
2310
|
+
export { poll as $, CreatePostData as $t, TelemetryResource as A, FilesResource as At, ReportInput as B, PinPostResult as Bt, DwellEntry as C, FeatureBucketDefinition as Cn, Report as Ct, TelemetryBatchOptions as D, FeatureRequestOptions as Dn, UpdateNotificationSettingsInput as Dt, TelemetryBatch as E, FeatureOperationDefinition as En, NotificationsResource as Et, SubscriptionResource as F, Attachment as Ft, UserPostsParams as G, CommentBuilder as Gt, CommentsParams as H, PollOption as Ht, SearchResource as I, Comment as It, PostInput as J, BuilderInput as Jt, CreatePostInput as K, CommentInput as Kt, SearchResult as L, CommentReplyTo as Lt, ViewTracker as M, UploadedFile as Mt, ViewTrackerInput as N, CommentsResource as Nt, TelemetryClock as O, HttpClient as On, HashtagPostsParams as Ot, ViewTrackerOptions as P, RepliesParams as Pt, PollInput as Q, CreatePollInput as Qt, ReportsResource as R, Hashtag as Rt, UsersResource as S, ClientFeature as Sn, Portal as St, PhotoOpenInput as T, FeatureInstallation as Tn, NotificationListParams as Tt, FeedParams as U, Post as Ut, report as V, Poll as Vt, PostsResource as W, PostStats as Wt, post as X, isBuilder as Xt, PostUpdateInput as Y, ItdBuilder as Yt, PollBuilder as Z, CreateCommentInput as Zt, fromUrl as _, ClientPlugin as _n, StatusIncidentLine as _t, isMyProfile as a, PaginationMode as an, MarkupContent as at, UpdateProfileInput as b, PluginApi as bn, ChangelogEntry as bt, ALLOWED_MIME_TYPES as c, mapPage as cn, TextMarkup as ct, AudioMimeType as d, Subscription as dn, PlatformClientVersion as dt, CreateReportInput as en, ParseMarkupOptions as et, IMAGE_MIME_TYPES as f, RateLimitBucketState as fn, PlatformResource as ft, fromStream as g, AttemptNext as gn, StatusDay as gt, VideoMimeType as h, AttemptInterceptor as hn, ServiceStatus as ht, statusDays as i, PageState as in, MarkupBuilder as it, VideoProgressInput as j, UploadOptions as jt, TelemetryOptions as k, RequestHandler as kn, HashtagsResource as kt, AUDIO_MIME_TYPES as l, PaymentMethod as ln, autoSpans as lt, VIDEO_MIME_TYPES as m, AttemptExtensions as mn, PlatformStatus as mt, SpanRenderFormat as n, BaseResource as nn, parseMarkdown as nt, toDate as o, Paginator as on, MarkupInput as ot, ImageMimeType as p, AttemptContext as pn, PlatformVersions as pt, PostBuilder as q, comment as qt, renderSpans as r, Page as rn, AutoSpansOptions as rt, utcStampToIso as s, PaginatorOptions as sn, MarkupSpan as st, RenderSpansOptions as t, UpdatePostInput as tn, parseHtml as tt, AllowedMimeType as u, Session as un, markup as ut, VerificationResource as v, OperationExtensions as vn, Announcement as vt, InteractionEntry as w, FeatureContext as wn, VerificationStatus as wt, UserListParams as x, PluginTeardown as xn, Clan as xt, UpdatePrivacyInput as y, OperationTransformer as yn, AnnouncementButton as yt, ReportBuilder as z, LikeResult as zt };
|
|
2311
|
+
//# sourceMappingURL=render-DO0F5YSm.d.cts.map
|