itd-api 0.0.6 → 0.0.7
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/dist/{chunk-K7NBFQEE.cjs → chunk-3RNNZJZ4.cjs} +111 -52
- package/dist/chunk-3RNNZJZ4.cjs.map +1 -0
- package/dist/{chunk-CCRQI3ON.js → chunk-CG4SERVM.js} +108 -53
- package/dist/chunk-CG4SERVM.js.map +1 -0
- package/dist/{index-CDGXKy8r.d.cts → index-DNFPX_Z1.d.cts} +173 -58
- package/dist/{index-CDGXKy8r.d.ts → index-DNFPX_Z1.d.ts} +173 -58
- package/dist/index.cjs +101 -85
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/node.cjs +100 -84
- package/dist/node.d.cts +2 -2
- package/dist/node.d.ts +2 -2
- package/dist/node.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-CCRQI3ON.js.map +0 -1
- package/dist/chunk-K7NBFQEE.cjs.map +0 -1
|
@@ -614,14 +614,18 @@ var RealtimeStatus = Object.freeze({
|
|
|
614
614
|
Error: "error",
|
|
615
615
|
Disconnected: "disconnected"
|
|
616
616
|
});
|
|
617
|
-
var
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
var LikesVisibility = Object.freeze({
|
|
621
|
-
Everyone: "everyone",
|
|
617
|
+
var AccessType = Object.freeze({
|
|
618
|
+
/** Никто. */
|
|
619
|
+
Nobody: "nobody",
|
|
622
620
|
/** Только взаимные подписки. */
|
|
623
|
-
Mutual: "mutual"
|
|
621
|
+
Mutual: "mutual",
|
|
622
|
+
/** Подписчики. */
|
|
623
|
+
Followers: "followers",
|
|
624
|
+
/** Все. */
|
|
625
|
+
Everyone: "everyone"
|
|
624
626
|
});
|
|
627
|
+
var WallAccess = AccessType;
|
|
628
|
+
var LikesVisibility = AccessType;
|
|
625
629
|
var NotificationType = Object.freeze({
|
|
626
630
|
/** Реакция на пост. Старое имя — `like`. */
|
|
627
631
|
PostReaction: "post_reaction",
|
|
@@ -650,6 +654,36 @@ var NotificationType = Object.freeze({
|
|
|
650
654
|
/** Верификация отклонена. Приходит только по REST. */
|
|
651
655
|
VerificationRejected: "verification_rejected"
|
|
652
656
|
});
|
|
657
|
+
var InteractionType = Object.freeze({
|
|
658
|
+
/** Открытие фотографии. */
|
|
659
|
+
PhotoOpen: 1,
|
|
660
|
+
/** Прогресс просмотра видео. Несёт поля `pm`/`dm`. */
|
|
661
|
+
VideoProgress: 2
|
|
662
|
+
});
|
|
663
|
+
var ViewSource = Object.freeze({
|
|
664
|
+
FeedGlobal: 1,
|
|
665
|
+
FeedFollowing: 2,
|
|
666
|
+
FeedClan: 3,
|
|
667
|
+
Profile: 4,
|
|
668
|
+
Hashtag: 5,
|
|
669
|
+
PostPage: 6,
|
|
670
|
+
Link: 7,
|
|
671
|
+
Search: 8
|
|
672
|
+
});
|
|
673
|
+
var ViewReason = Object.freeze({
|
|
674
|
+
/** Пост ушёл из зоны видимости при обычной прокрутке. */
|
|
675
|
+
Normal: 0,
|
|
676
|
+
/** Потеря фокуса окна. */
|
|
677
|
+
Blur: 1,
|
|
678
|
+
/** Вкладка скрыта. */
|
|
679
|
+
Hidden: 2,
|
|
680
|
+
/** Уход со страницы (`pagehide`). */
|
|
681
|
+
PageHide: 3,
|
|
682
|
+
/** Элемент перестал наблюдаться. */
|
|
683
|
+
Unobserve: 4,
|
|
684
|
+
/** Достигнут порог времени просмотра. */
|
|
685
|
+
ThresholdMet: 5
|
|
686
|
+
});
|
|
653
687
|
var ItdErrorCode = Object.freeze({
|
|
654
688
|
BAD_REQUEST: "BAD_REQUEST",
|
|
655
689
|
UNAUTHORIZED: "UNAUTHORIZED",
|
|
@@ -1714,7 +1748,7 @@ function normalizeBaseUrl(baseUrl) {
|
|
|
1714
1748
|
// src/core/config.ts
|
|
1715
1749
|
var DEFAULT_BASE_URL = "https://xn--d1ah4a.com";
|
|
1716
1750
|
var DEFAULT_TIMEOUT = 3e4;
|
|
1717
|
-
var LIBRARY_VERSION = "0.0.
|
|
1751
|
+
var LIBRARY_VERSION = "0.0.7";
|
|
1718
1752
|
var DEFAULT_USER_AGENT = `Mozilla/5.0 (compatible; itd-api/${LIBRARY_VERSION}; +https://github.com/KiowDev/itd-api)`;
|
|
1719
1753
|
var DEFAULT_RATE_LIMIT_DELAYS = Object.freeze([1e3, 5e3, 3e4, 6e4, 9e4]);
|
|
1720
1754
|
function requirePositive(value, name) {
|
|
@@ -4241,49 +4275,6 @@ var PlatformResource = class extends BaseResource {
|
|
|
4241
4275
|
});
|
|
4242
4276
|
}
|
|
4243
4277
|
};
|
|
4244
|
-
var TelemetryResource = class extends BaseResource {
|
|
4245
|
-
/**
|
|
4246
|
-
* Отправляет время просмотра постов.
|
|
4247
|
-
*
|
|
4248
|
-
* @experimental Имена полей на проводе сжаты (`ai`, `v`, `s`), и их соответствие
|
|
4249
|
-
* смыслу **не проверено** на реальных запросах. Может измениться без предупреждения.
|
|
4250
|
-
*/
|
|
4251
|
-
dwell(entries, options = {}) {
|
|
4252
|
-
return this.http.request({
|
|
4253
|
-
method: "POST",
|
|
4254
|
-
path: "/api/v1/i",
|
|
4255
|
-
body: {
|
|
4256
|
-
items: entries.map((entry) => ({
|
|
4257
|
-
ai: entry.postId,
|
|
4258
|
-
v: entry.duration,
|
|
4259
|
-
...entry.vs ? { s: entry.vs } : {}
|
|
4260
|
-
}))
|
|
4261
|
-
},
|
|
4262
|
-
...this.requestOptions(options)
|
|
4263
|
-
});
|
|
4264
|
-
}
|
|
4265
|
-
/**
|
|
4266
|
-
* Отправляет события взаимодействия с контентом.
|
|
4267
|
-
*
|
|
4268
|
-
* @experimental См. предупреждение у {@link TelemetryResource}.
|
|
4269
|
-
*/
|
|
4270
|
-
interaction(entries, options = {}) {
|
|
4271
|
-
return this.http.request({
|
|
4272
|
-
method: "POST",
|
|
4273
|
-
path: "/api/v1/x",
|
|
4274
|
-
body: {
|
|
4275
|
-
items: entries.map((entry) => ({
|
|
4276
|
-
t: entry.type,
|
|
4277
|
-
...entry.value !== void 0 ? { v: entry.value } : {},
|
|
4278
|
-
...entry.postId ? { ai: entry.postId } : {},
|
|
4279
|
-
...entry.attachmentId ? { mi: entry.attachmentId } : {},
|
|
4280
|
-
...entry.vs ? { s: entry.vs } : {}
|
|
4281
|
-
}))
|
|
4282
|
-
},
|
|
4283
|
-
...this.requestOptions(options)
|
|
4284
|
-
});
|
|
4285
|
-
}
|
|
4286
|
-
};
|
|
4287
4278
|
|
|
4288
4279
|
// src/resources/notifications.ts
|
|
4289
4280
|
var READ_BATCH_SIZE = 20;
|
|
@@ -4773,6 +4764,70 @@ var PostsResource = class extends BaseResource {
|
|
|
4773
4764
|
}
|
|
4774
4765
|
};
|
|
4775
4766
|
|
|
4767
|
+
// src/resources/telemetry.ts
|
|
4768
|
+
var TelemetryResource = class extends BaseResource {
|
|
4769
|
+
/** Идентификатор сессии телеметрии, общий для всех событий этого объекта. */
|
|
4770
|
+
#sessionId;
|
|
4771
|
+
/**
|
|
4772
|
+
* Идентификатор сессии телеметрии (`sid`).
|
|
4773
|
+
*
|
|
4774
|
+
* Создаётся лениво при первом обращении и далее неизменен.
|
|
4775
|
+
*/
|
|
4776
|
+
get sessionId() {
|
|
4777
|
+
this.#sessionId ??= createDeviceId();
|
|
4778
|
+
return this.#sessionId;
|
|
4779
|
+
}
|
|
4780
|
+
/**
|
|
4781
|
+
* Отправляет события просмотра постов (`POST /api/v1/i`).
|
|
4782
|
+
*
|
|
4783
|
+
* @experimental См. предупреждение у {@link TelemetryResource}.
|
|
4784
|
+
*/
|
|
4785
|
+
dwell(entries, options = {}) {
|
|
4786
|
+
return this.http.request({
|
|
4787
|
+
method: "POST",
|
|
4788
|
+
path: "/api/v1/i",
|
|
4789
|
+
body: {
|
|
4790
|
+
sid: options.sid ?? this.sessionId,
|
|
4791
|
+
e: entries.map((entry) => ({
|
|
4792
|
+
md: entry.durationMs ?? entry.exitAt - entry.enterAt,
|
|
4793
|
+
et: entry.enterAt,
|
|
4794
|
+
xt: entry.exitAt,
|
|
4795
|
+
r: entry.reason,
|
|
4796
|
+
v: entry.vs,
|
|
4797
|
+
...entry.sourceContext !== void 0 ? { sc: entry.sourceContext } : {},
|
|
4798
|
+
...entry.source !== void 0 ? { s: entry.source } : {},
|
|
4799
|
+
...entry.repeat ? { b: 1 } : {}
|
|
4800
|
+
}))
|
|
4801
|
+
},
|
|
4802
|
+
...this.requestOptions(options)
|
|
4803
|
+
});
|
|
4804
|
+
}
|
|
4805
|
+
/**
|
|
4806
|
+
* Отправляет события взаимодействия с контентом (`POST /api/v1/x`).
|
|
4807
|
+
*
|
|
4808
|
+
* @experimental См. предупреждение у {@link TelemetryResource}.
|
|
4809
|
+
*/
|
|
4810
|
+
interaction(entries, options = {}) {
|
|
4811
|
+
return this.http.request({
|
|
4812
|
+
method: "POST",
|
|
4813
|
+
path: "/api/v1/x",
|
|
4814
|
+
body: {
|
|
4815
|
+
sid: options.sid ?? this.sessionId,
|
|
4816
|
+
e: entries.map((entry) => ({
|
|
4817
|
+
t: entry.type,
|
|
4818
|
+
v: entry.vs,
|
|
4819
|
+
ai: entry.postId,
|
|
4820
|
+
...entry.mediaIndex !== void 0 ? { mi: entry.mediaIndex } : {},
|
|
4821
|
+
...entry.source !== void 0 ? { s: entry.source } : {},
|
|
4822
|
+
...entry.positionMs !== void 0 ? { pm: Math.round(entry.positionMs) } : {},
|
|
4823
|
+
...entry.durationMs !== void 0 ? { dm: Math.round(entry.durationMs) } : {}
|
|
4824
|
+
}))
|
|
4825
|
+
},
|
|
4826
|
+
...this.requestOptions(options)
|
|
4827
|
+
});
|
|
4828
|
+
}
|
|
4829
|
+
};
|
|
4830
|
+
|
|
4776
4831
|
// src/resources/users.ts
|
|
4777
4832
|
var UsersResource = class extends BaseResource {
|
|
4778
4833
|
/** Загружает свой профиль — с подпиской и признаком подтверждённого телефона. */
|
|
@@ -5391,6 +5446,6 @@ function toDate(value) {
|
|
|
5391
5446
|
return Number.isFinite(date.getTime()) ? date : null;
|
|
5392
5447
|
}
|
|
5393
5448
|
|
|
5394
|
-
export { ALLOWED_MIME_TYPES, AUDIO_MIME_TYPES, AUTH_FLAG_COOKIE, AUTH_PATHS, AttachmentType, CommentSort, DEFAULT_BASE_URL, DEFAULT_TIMEOUT, DEFAULT_USER_AGENT, DEVICE_ID_HEADER, DetectedRuntime, FeedTab, IMAGE_MIME_TYPES, ItdAbortError, ItdApiError, ItdApiErrorKind, ItdAuthError, ItdClient, ItdConfigError, ItdConflictError, ItdError, ItdErrorCode, ItdErrorKind, ItdForbiddenError, ItdNetworkError, ItdNotFoundError, ItdPhoneVerificationError, ItdRateLimitError, ItdRealtime, ItdServerError, ItdTimeoutError, ItdValidationError, LIBRARY_VERSION, LikesVisibility, LocalStorageTokenStorage, MAX_RECONNECT_ATTEMPTS, MemoryTokenStorage, NOTIFICATION_TYPE_ALIASES, NotificationType, OAuthProvider, PaginationMode, Paginator, RECONNECT_BACKOFF, RECONNECT_JITTER, REFRESH_COOKIE, REFRESH_COOKIE_PATH, RealtimeStatus, RealtimeTransportKind, ReportReason, ReportTargetType, RuntimeMode, STREAM_PATH, SignInStatus, SpanType, TURNSTILE_SITE_KEY, UnauthorizedStreamError, VIDEO_MIME_TYPES, WallAccess, canonicalNotificationType, comment, createClient, createTokenStorage, formatNotificationText, isBuilder, isItdApiError, isItdAuthError, isItdConflictError, isItdError, isItdForbiddenError, isItdNotFoundError, isItdPhoneVerificationError, isItdRateLimitError, isItdServerError, isItdValidationError, isKnownNotificationType, isMyProfile, normalizeNotification, poll, post, readNotificationEvent, readUnreadCountEvent, report, resolveNotificationUrl, toDate };
|
|
5395
|
-
//# sourceMappingURL=chunk-
|
|
5396
|
-
//# sourceMappingURL=chunk-
|
|
5449
|
+
export { ALLOWED_MIME_TYPES, AUDIO_MIME_TYPES, AUTH_FLAG_COOKIE, AUTH_PATHS, AccessType, AttachmentType, CommentSort, DEFAULT_BASE_URL, DEFAULT_TIMEOUT, DEFAULT_USER_AGENT, DEVICE_ID_HEADER, DetectedRuntime, FeedTab, IMAGE_MIME_TYPES, InteractionType, ItdAbortError, ItdApiError, ItdApiErrorKind, ItdAuthError, ItdClient, ItdConfigError, ItdConflictError, ItdError, ItdErrorCode, ItdErrorKind, ItdForbiddenError, ItdNetworkError, ItdNotFoundError, ItdPhoneVerificationError, ItdRateLimitError, ItdRealtime, ItdServerError, ItdTimeoutError, ItdValidationError, LIBRARY_VERSION, LikesVisibility, LocalStorageTokenStorage, MAX_RECONNECT_ATTEMPTS, MemoryTokenStorage, NOTIFICATION_TYPE_ALIASES, NotificationType, OAuthProvider, PaginationMode, Paginator, RECONNECT_BACKOFF, RECONNECT_JITTER, REFRESH_COOKIE, REFRESH_COOKIE_PATH, RealtimeStatus, RealtimeTransportKind, ReportReason, ReportTargetType, RuntimeMode, STREAM_PATH, SignInStatus, SpanType, TURNSTILE_SITE_KEY, UnauthorizedStreamError, VIDEO_MIME_TYPES, ViewReason, ViewSource, WallAccess, canonicalNotificationType, comment, createClient, createTokenStorage, formatNotificationText, isBuilder, isItdApiError, isItdAuthError, isItdConflictError, isItdError, isItdForbiddenError, isItdNotFoundError, isItdPhoneVerificationError, isItdRateLimitError, isItdServerError, isItdValidationError, isKnownNotificationType, isMyProfile, normalizeNotification, poll, post, readNotificationEvent, readUnreadCountEvent, report, resolveNotificationUrl, toDate };
|
|
5450
|
+
//# sourceMappingURL=chunk-CG4SERVM.js.map
|
|
5451
|
+
//# sourceMappingURL=chunk-CG4SERVM.js.map
|