@nadohq/mobile-client 0.65.0 → 0.67.0
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 +202 -10
- package/dist/{MobileClient-CfVZXTcz.cjs → MobileClient-vuI5wlB_.cjs} +303 -21
- package/dist/MobileClient-vuI5wlB_.cjs.map +1 -0
- package/dist/MobileClient.cjs +1 -1
- package/dist/MobileClient.d.cts +175 -20
- package/dist/MobileClient.d.cts.map +1 -1
- package/dist/MobileClient.d.ts +175 -20
- package/dist/MobileClient.d.ts.map +1 -1
- package/dist/MobileClient.js +303 -21
- package/dist/MobileClient.js.map +1 -1
- package/dist/{MobileServerFailureError-BZVwlsMg.d.ts → MobileServerFailureError-BeCCNShj.d.cts} +2 -3
- package/dist/MobileServerFailureError-BeCCNShj.d.cts.map +1 -0
- package/dist/{MobileServerFailureError-CbtK8kD4.d.cts → MobileServerFailureError-hHv28weI.d.ts} +2 -3
- package/dist/MobileServerFailureError-hHv28weI.d.ts.map +1 -0
- package/dist/MobileUnsupportedNotificationRouteError-DpiNBvvY.d.cts +15 -0
- package/dist/MobileUnsupportedNotificationRouteError-DpiNBvvY.d.cts.map +1 -0
- package/dist/MobileUnsupportedNotificationRouteError-DpiNBvvY.d.ts +15 -0
- package/dist/MobileUnsupportedNotificationRouteError-DpiNBvvY.d.ts.map +1 -0
- package/dist/{buildSignedMobileRequest-C1v0flCR.d.cts → buildSignedMobileRequest-DcEMKU_4.d.cts} +2 -2
- package/dist/{buildSignedMobileRequest-C1v0flCR.d.cts.map → buildSignedMobileRequest-DcEMKU_4.d.cts.map} +1 -1
- package/dist/{buildSignedMobileRequest-UeeWdYGU.d.ts → buildSignedMobileRequest-DlTMvoXR.d.ts} +2 -2
- package/dist/{buildSignedMobileRequest-UeeWdYGU.d.ts.map → buildSignedMobileRequest-DlTMvoXR.d.ts.map} +1 -1
- package/dist/{canonicalize-5eeZrkzQ.d.ts → canonicalize-BOZlflI3.d.ts} +2 -2
- package/dist/canonicalize-BOZlflI3.d.ts.map +1 -0
- package/dist/{canonicalize-CBaZprTo.d.cts → canonicalize-BvCozzvJ.d.cts} +2 -2
- package/dist/canonicalize-BvCozzvJ.d.cts.map +1 -0
- package/dist/{clientTypes-_mEgzmNs.d.cts → clientTypes-KpHlCDGZ.d.cts} +341 -38
- package/dist/clientTypes-KpHlCDGZ.d.cts.map +1 -0
- package/dist/{clientTypes-C9dJufxk.d.ts → clientTypes-XRI41VdC.d.ts} +341 -38
- package/dist/clientTypes-XRI41VdC.d.ts.map +1 -0
- package/dist/dataMappers.cjs +257 -20
- package/dist/dataMappers.cjs.map +1 -1
- package/dist/dataMappers.d.cts +98 -15
- package/dist/dataMappers.d.cts.map +1 -1
- package/dist/dataMappers.d.ts +98 -15
- package/dist/dataMappers.d.ts.map +1 -1
- package/dist/dataMappers.js +242 -20
- package/dist/dataMappers.js.map +1 -1
- package/dist/{eip712MethodByType-D8jLoxDu.d.cts → eip712MethodByType-DyAmzH7b.d.cts} +2 -2
- package/dist/eip712MethodByType-DyAmzH7b.d.cts.map +1 -0
- package/dist/{eip712MethodByType-DcUh8h-l.d.ts → eip712MethodByType-qSSAF6i2.d.ts} +2 -2
- package/dist/eip712MethodByType-qSSAF6i2.d.ts.map +1 -0
- package/dist/feed-BrgkFqP3.d.cts +23 -0
- package/dist/feed-BrgkFqP3.d.cts.map +1 -0
- package/dist/feed-DcbhLoo1.d.ts +23 -0
- package/dist/feed-DcbhLoo1.d.ts.map +1 -0
- package/dist/index-BVVgDSdq.d.cts +1 -0
- package/dist/index-BVVgDSdq.d.ts +1 -0
- package/dist/index.cjs +8 -2
- package/dist/index.d.cts +14 -16
- package/dist/index.d.ts +14 -16
- package/dist/index.js +4 -3
- package/dist/{mobileErrorCodes-CmjYEIYm.d.ts → mobileErrorCodes-CdwX6QTO.d.cts} +8 -3
- package/dist/mobileErrorCodes-CdwX6QTO.d.cts.map +1 -0
- package/dist/{mobileErrorCodes-CmjYEIYm.d.cts → mobileErrorCodes-CdwX6QTO.d.ts} +8 -3
- package/dist/mobileErrorCodes-CdwX6QTO.d.ts.map +1 -0
- package/dist/{payloadHash-DhHmgRqL.d.cts → payloadHash-BgGSZock.d.cts} +2 -2
- package/dist/payloadHash-BgGSZock.d.cts.map +1 -0
- package/dist/{payloadHash-E1_8fpLW.d.ts → payloadHash-Bi6upCLQ.d.ts} +2 -2
- package/dist/payloadHash-Bi6upCLQ.d.ts.map +1 -0
- package/dist/{serverExecuteTypes-BwWGspOg.d.ts → serverExecuteTypes-DuCWe_H_.d.cts} +23 -14
- package/dist/serverExecuteTypes-DuCWe_H_.d.cts.map +1 -0
- package/dist/{serverExecuteTypes-B-OJok19.d.cts → serverExecuteTypes-usJ6HMJv.d.ts} +23 -14
- package/dist/serverExecuteTypes-usJ6HMJv.d.ts.map +1 -0
- package/dist/{serverModelTypes-CiA-dy1R.d.ts → serverModelTypes-CTHMNIQS.d.cts} +170 -13
- package/dist/serverModelTypes-CTHMNIQS.d.cts.map +1 -0
- package/dist/{serverModelTypes-CiA-dy1R.d.cts → serverModelTypes-CTHMNIQS.d.ts} +170 -13
- package/dist/serverModelTypes-CTHMNIQS.d.ts.map +1 -0
- package/dist/{serverResponseGuards-CShiXpHT.d.ts → serverResponseGuards-CzmldAad.d.cts} +2 -2
- package/dist/{serverResponseGuards-BW69PS7O.d.cts.map → serverResponseGuards-CzmldAad.d.cts.map} +1 -1
- package/dist/{serverResponseGuards-BW69PS7O.d.cts → serverResponseGuards-Dvkbjp2_.d.ts} +2 -2
- package/dist/{serverResponseGuards-CShiXpHT.d.ts.map → serverResponseGuards-Dvkbjp2_.d.ts.map} +1 -1
- package/dist/signing/buildSignedMobileRequest.d.cts +1 -1
- package/dist/signing/buildSignedMobileRequest.d.ts +1 -1
- package/dist/signing/canonicalize.cjs +53 -2
- package/dist/signing/canonicalize.cjs.map +1 -1
- package/dist/signing/canonicalize.d.cts +1 -1
- package/dist/signing/canonicalize.d.ts +1 -1
- package/dist/signing/canonicalize.js +53 -2
- package/dist/signing/canonicalize.js.map +1 -1
- package/dist/signing/eip712MethodByType.cjs +7 -0
- package/dist/signing/eip712MethodByType.cjs.map +1 -1
- package/dist/signing/eip712MethodByType.d.cts +1 -1
- package/dist/signing/eip712MethodByType.d.ts +1 -1
- package/dist/signing/eip712MethodByType.js +7 -0
- package/dist/signing/eip712MethodByType.js.map +1 -1
- package/dist/signing/index.d.cts +5 -5
- package/dist/signing/index.d.ts +5 -5
- package/dist/signing/payloadHash.cjs +1 -1
- package/dist/signing/payloadHash.d.cts +1 -1
- package/dist/signing/payloadHash.d.ts +1 -1
- package/dist/signing/payloadHash.js +1 -1
- package/dist/signing/types.d.cts +1 -1
- package/dist/signing/types.d.ts +1 -1
- package/dist/types/MobileServerFailureError.d.cts +1 -1
- package/dist/types/MobileServerFailureError.d.ts +1 -1
- package/dist/types/MobileUnsupportedNotificationRouteError.cjs +19 -0
- package/dist/types/MobileUnsupportedNotificationRouteError.cjs.map +1 -0
- package/dist/types/MobileUnsupportedNotificationRouteError.d.cts +2 -0
- package/dist/types/MobileUnsupportedNotificationRouteError.d.ts +2 -0
- package/dist/types/MobileUnsupportedNotificationRouteError.js +18 -0
- package/dist/types/MobileUnsupportedNotificationRouteError.js.map +1 -0
- package/dist/types/clientTypes.d.cts +2 -2
- package/dist/types/clientTypes.d.ts +2 -2
- package/dist/types/index.cjs +4 -0
- package/dist/types/index.d.cts +8 -9
- package/dist/types/index.d.ts +8 -9
- package/dist/types/index.js +3 -2
- package/dist/types/mobileErrorCodes.cjs +11 -1
- package/dist/types/mobileErrorCodes.cjs.map +1 -1
- package/dist/types/mobileErrorCodes.d.cts +1 -1
- package/dist/types/mobileErrorCodes.d.ts +1 -1
- package/dist/types/mobileErrorCodes.js +11 -1
- package/dist/types/mobileErrorCodes.js.map +1 -1
- package/dist/types/serverBaseTypes.d.cts +1 -1
- package/dist/types/serverBaseTypes.d.ts +1 -1
- package/dist/types/serverExecuteTypes.d.cts +2 -2
- package/dist/types/serverExecuteTypes.d.ts +2 -2
- package/dist/types/serverModelTypes.cjs +15 -0
- package/dist/types/serverModelTypes.cjs.map +1 -1
- package/dist/types/serverModelTypes.d.cts +2 -2
- package/dist/types/serverModelTypes.d.ts +2 -2
- package/dist/types/serverModelTypes.js +14 -1
- package/dist/types/serverModelTypes.js.map +1 -1
- package/dist/types/serverQueryTypes.d.cts +2 -2
- package/dist/types/serverQueryTypes.d.ts +2 -2
- package/dist/types/serverRequestTypes.d.cts +2 -2
- package/dist/types/serverRequestTypes.d.ts +2 -2
- package/dist/types-CByl_NyJ.d.ts +825 -0
- package/dist/types-CByl_NyJ.d.ts.map +1 -0
- package/dist/types-CR5iaKR4.d.cts +825 -0
- package/dist/types-CR5iaKR4.d.cts.map +1 -0
- package/dist/utils/buildMobileFeedImageMultipart.cjs +31 -0
- package/dist/utils/buildMobileFeedImageMultipart.cjs.map +1 -0
- package/dist/utils/buildMobileFeedImageMultipart.d.cts +15 -0
- package/dist/utils/buildMobileFeedImageMultipart.d.cts.map +1 -0
- package/dist/utils/buildMobileFeedImageMultipart.d.ts +15 -0
- package/dist/utils/buildMobileFeedImageMultipart.d.ts.map +1 -0
- package/dist/utils/buildMobileFeedImageMultipart.js +30 -0
- package/dist/utils/buildMobileFeedImageMultipart.js.map +1 -0
- package/dist/utils/feed.cjs +12 -0
- package/dist/utils/feed.cjs.map +1 -1
- package/dist/utils/feed.d.cts +2 -2
- package/dist/utils/feed.d.ts +2 -2
- package/dist/utils/feed.js +11 -1
- package/dist/utils/feed.js.map +1 -1
- package/dist/utils/index.cjs +3 -1
- package/dist/utils/index.d.cts +3 -3
- package/dist/utils/index.d.ts +3 -3
- package/dist/utils/index.js +2 -2
- package/dist/utils/serverResponseGuards.d.cts +1 -1
- package/dist/utils/serverResponseGuards.d.ts +1 -1
- package/package.json +3 -3
- package/src/MobileClient.ts +444 -19
- package/src/dataMappers.test.ts +511 -6
- package/src/dataMappers.ts +325 -24
- package/src/feedImages.test.ts +309 -0
- package/src/notifications.test.ts +950 -0
- package/src/signing/canonicalize.ts +72 -0
- package/src/signing/eip712MethodByType.ts +10 -0
- package/src/signing/signing.test.ts +67 -1
- package/src/signing/types.ts +55 -9
- package/src/socialFeed.test.ts +63 -2
- package/src/types/MobileUnsupportedNotificationRouteError.ts +16 -0
- package/src/types/clientTypes.ts +427 -36
- package/src/types/index.ts +1 -0
- package/src/types/mobileErrorCodes.ts +10 -0
- package/src/types/serverExecuteTypes.ts +22 -10
- package/src/types/serverModelTypes.ts +216 -11
- package/src/types/serverQueryTypes.ts +106 -9
- package/src/types/serverRequestTypes.ts +114 -17
- package/src/utils/buildMobileFeedImageMultipart.test.ts +45 -0
- package/src/utils/buildMobileFeedImageMultipart.ts +36 -0
- package/src/utils/feed.ts +16 -0
- package/dist/MobileClient-CfVZXTcz.cjs.map +0 -1
- package/dist/MobileServerFailureError-BZVwlsMg.d.ts.map +0 -1
- package/dist/MobileServerFailureError-CbtK8kD4.d.cts.map +0 -1
- package/dist/canonicalize-5eeZrkzQ.d.ts.map +0 -1
- package/dist/canonicalize-CBaZprTo.d.cts.map +0 -1
- package/dist/clientTypes-C9dJufxk.d.ts.map +0 -1
- package/dist/clientTypes-_mEgzmNs.d.cts.map +0 -1
- package/dist/eip712MethodByType-D8jLoxDu.d.cts.map +0 -1
- package/dist/eip712MethodByType-DcUh8h-l.d.ts.map +0 -1
- package/dist/feed-DTJlsg8W.d.cts +0 -14
- package/dist/feed-DTJlsg8W.d.cts.map +0 -1
- package/dist/feed-DTJlsg8W.d.ts +0 -14
- package/dist/feed-DTJlsg8W.d.ts.map +0 -1
- package/dist/mobileErrorCodes-CmjYEIYm.d.cts.map +0 -1
- package/dist/mobileErrorCodes-CmjYEIYm.d.ts.map +0 -1
- package/dist/payloadHash-DhHmgRqL.d.cts.map +0 -1
- package/dist/payloadHash-E1_8fpLW.d.ts.map +0 -1
- package/dist/serverBaseTypes-B5J1_TyC.d.cts +0 -25
- package/dist/serverBaseTypes-B5J1_TyC.d.cts.map +0 -1
- package/dist/serverBaseTypes-DnLzsdm-.d.ts +0 -25
- package/dist/serverBaseTypes-DnLzsdm-.d.ts.map +0 -1
- package/dist/serverExecuteTypes-B-OJok19.d.cts.map +0 -1
- package/dist/serverExecuteTypes-BwWGspOg.d.ts.map +0 -1
- package/dist/serverModelTypes-CiA-dy1R.d.cts.map +0 -1
- package/dist/serverModelTypes-CiA-dy1R.d.ts.map +0 -1
- package/dist/serverQueryTypes-CJcjLB7n.d.ts +0 -283
- package/dist/serverQueryTypes-CJcjLB7n.d.ts.map +0 -1
- package/dist/serverQueryTypes-V1f9yE7L.d.cts +0 -283
- package/dist/serverQueryTypes-V1f9yE7L.d.cts.map +0 -1
- package/dist/serverRequestTypes-CRlkNSu5.d.cts +0 -270
- package/dist/serverRequestTypes-CRlkNSu5.d.cts.map +0 -1
- package/dist/serverRequestTypes-DZoOhV2o.d.ts +0 -270
- package/dist/serverRequestTypes-DZoOhV2o.d.ts.map +0 -1
- package/dist/types-BiRmH5Iv.d.cts +0 -108
- package/dist/types-BiRmH5Iv.d.cts.map +0 -1
- package/dist/types-DoJuq0Ij.d.ts +0 -108
- package/dist/types-DoJuq0Ij.d.ts.map +0 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as MobileServerSuccessResponse, t as MobileServerFailureResponse } from "./serverBaseTypes-B5J1_TyC.cjs";
|
|
1
|
+
import { L as MobileServerSocialFeedAuthor, St as MobileServerSocialFeedUploadedImage, mt as MobileServerSocialFeedReply, nt as MobileServerSocialFeedItem, q as MobileServerSocialFeedDrawing } from "./serverModelTypes-CTHMNIQS.js";
|
|
2
|
+
import { d as MobileServerPublicExecuteRequestType, k as MobileServerNotificationSettingsV2Response, nt as MobileServerSuccessResponse, o as MobileServerExecuteRequestType, tt as MobileServerFailureResponse, u as MobileServerPublicExecuteRequestByType } from "./types-CByl_NyJ.js";
|
|
4
3
|
import { Hex } from "viem";
|
|
5
4
|
|
|
6
5
|
//#region src/types/serverExecuteTypes.d.ts
|
|
@@ -58,15 +57,30 @@ interface MobileServerAvatarUploadResponse {
|
|
|
58
57
|
/** Upload URL lifetime in seconds from issuance. */
|
|
59
58
|
expires_in_seconds: number;
|
|
60
59
|
}
|
|
60
|
+
/** Ready image returned by a direct multipart upload. */
|
|
61
|
+
interface MobileServerSocialFeedImageUploadResponse {
|
|
62
|
+
/** Ready image metadata, including original and thumbnail paths. */
|
|
63
|
+
image: MobileServerSocialFeedUploadedImage;
|
|
64
|
+
}
|
|
61
65
|
/**
|
|
62
66
|
* Success payloads for each signed `execute`, keyed by request `type`. Mutations return either the success
|
|
63
67
|
* envelope alone or authoritative post-commit state; avatar upload creation returns a temporary grant.
|
|
64
68
|
*/
|
|
65
69
|
interface MobileServerExecuteResponseByType {
|
|
70
|
+
/** Capability-aware device registration returns only status. */
|
|
71
|
+
register_expo_token_v2: MobileServerEmptyExecuteResponse;
|
|
72
|
+
/** Re-query subscriptions after success to obtain the new revision. */
|
|
73
|
+
update_notification_subscriptions: MobileServerEmptyExecuteResponse;
|
|
74
|
+
/** Atomic event recording returns only status. */
|
|
75
|
+
record_product_events: MobileServerEmptyExecuteResponse;
|
|
66
76
|
/** Published or idempotently recovered item. */
|
|
67
77
|
create_feed_post: MobileServerSocialFeedPostResponse;
|
|
68
78
|
/** Atomically published reply and updated count. */
|
|
69
79
|
create_feed_comment: MobileServerSocialFeedCommentResponse;
|
|
80
|
+
/** Direct post-image upload; the image is ready immediately. */
|
|
81
|
+
create_feed_post_image_uploads: MobileServerSocialFeedImageUploadResponse;
|
|
82
|
+
/** Direct comment-image upload; the image is ready immediately. */
|
|
83
|
+
create_feed_comment_image_uploads: MobileServerSocialFeedImageUploadResponse;
|
|
70
84
|
/** First attached drawing. */
|
|
71
85
|
create_feed_chart_drawing: MobileServerSocialFeedDrawingMutationResponse;
|
|
72
86
|
/** Replaced or idempotently recovered drawing. */
|
|
@@ -126,13 +140,6 @@ interface MobileServerSocialFeedLikeResponse {
|
|
|
126
140
|
/** Display version. */
|
|
127
141
|
version: string;
|
|
128
142
|
}
|
|
129
|
-
/** Exposure counts deduplicated by browsing credential, item, and UTC day. */
|
|
130
|
-
interface MobileServerSocialFeedViewsResponse {
|
|
131
|
-
/** Newly counted items. */
|
|
132
|
-
accepted_item_ids: string[];
|
|
133
|
-
/** Already counted items. */
|
|
134
|
-
duplicate_item_ids: string[];
|
|
135
|
-
}
|
|
136
143
|
/** Page lease result; this response does not carry as_of_ms. */
|
|
137
144
|
interface MobileServerSocialFeedPresenceResponse {
|
|
138
145
|
/** Active visitor count. */
|
|
@@ -146,17 +153,19 @@ interface MobileServerSocialFeedPresenceResponse {
|
|
|
146
153
|
}
|
|
147
154
|
/** Response payloads for unsigned writes. */
|
|
148
155
|
interface MobileServerPublicExecuteResponseByType {
|
|
156
|
+
/** Saved document, including the advanced settings revision. */
|
|
157
|
+
update_notification_settings_v2: MobileServerNotificationSettingsV2Response;
|
|
149
158
|
/** Token removal returns only the success envelope. */
|
|
150
159
|
unregister_expo_token: MobileServerEmptyExecuteResponse;
|
|
151
160
|
/** Preference updates return only the success envelope. */
|
|
152
161
|
update_preferences: MobileServerEmptyExecuteResponse;
|
|
153
|
-
/**
|
|
154
|
-
record_feed_views:
|
|
162
|
+
/** Batch views return only status; no per-target result or count. */
|
|
163
|
+
record_feed_views: MobileServerEmptyExecuteResponse;
|
|
155
164
|
/** Page lease result. */
|
|
156
165
|
position_presence: MobileServerSocialFeedPresenceResponse;
|
|
157
166
|
}
|
|
158
167
|
/** Full success response for an unsigned write. */
|
|
159
168
|
type MobileServerPublicExecuteSuccessResponse<T extends MobileServerPublicExecuteRequestType = MobileServerPublicExecuteRequestType> = MobileServerSuccessResponse & MobileServerPublicExecuteResponseByType[T];
|
|
160
169
|
//#endregion
|
|
161
|
-
export {
|
|
162
|
-
//# sourceMappingURL=serverExecuteTypes-
|
|
170
|
+
export { MobileServerSocialFeedPresenceResponse as _, MobileServerExecuteSuccessResponse as a, MobileServerFollowMutationResponse as c, MobileServerPublicExecuteSuccessResponse as d, MobileServerSocialFeedCommentResponse as f, MobileServerSocialFeedPostResponse as g, MobileServerSocialFeedLikeResponse as h, MobileServerExecuteResult as i, MobileServerPublicExecuteRequest as l, MobileServerSocialFeedImageUploadResponse as m, MobileServerEmptyExecuteResponse as n, MobileServerFollowBatchResponse as o, MobileServerSocialFeedDrawingMutationResponse as p, MobileServerExecuteResponseByType as r, MobileServerFollowBatchResultItem as s, MobileServerAvatarUploadResponse as t, MobileServerPublicExecuteResponseByType as u };
|
|
171
|
+
//# sourceMappingURL=serverExecuteTypes-usJ6HMJv.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverExecuteTypes-usJ6HMJv.d.ts","names":[],"sources":["../src/types/src/types/serverExecuteTypes.ts"],"mappings":";;;;;AAuBA;;;;AAAA,KAAY,gCAAA,WACA,oCAAA,GACR,oCAAA,YAEI,oCAAA;EACJ,IAAA,EAAM,CAAA;AAAA,IACJ,sCAAA,CAAuC,CAAA,IAC3C,CAAA;;;;;;UAOe,kCAAA;EACf,YAAA;EAXM;EAaN,cAAc;AAAA;;;;UAMC,iCAAA;EAhBd;EAkBD,UAAA,EAAY,GAAG;EACf,YAAA;;EAEA,cAAA;AAAA;AALF;;;;;AAAA,UAaiB,+BAAA;EACf,OAAA,EAAS,iCAAiC;AAAA;;AAT5B;AAQhB;;;KASY,gCAAA,GAAmC,MAAM;AART;AAQ5C;;AAR4C,UAa3B,gCAAA;EALoC;EAOnD,UAAA;EAFe;EAIf,UAAA;;EAEA,OAAA,EAAS,MAAM;EAJf;EAMA,kBAAA;AAAA;;UAIe,yCAAA;EAJG;EAMlB,KAAA,EAAO,mCAAmC;AAAA;;;;AAAA;UAO3B,iCAAA;EAAiC;EAEhD,sBAAA,EAAwB,gCAAA;EAAA;EAExB,iCAAA,EAAmC,gCAAA;EAEZ;EAAvB,qBAAA,EAAuB,gCAAA;EAIF;EAFrB,gBAAA,EAAkB,kCAAA;EAMiB;EAJnC,mBAAA,EAAqB,qCAAA;EAQM;EAN3B,8BAAA,EAAgC,yCAAA;EAUvB;EART,iCAAA,EAAmC,yCAAA;EAYb;EAVtB,yBAAA,EAA2B,6CAAA;EAYT;EAVlB,yBAAA,EAA2B,6CAAA;EAYf;EAVZ,aAAA,EAAe,kCAAA;EAWkC;EATjD,OAAA,EAAS,gCAAA;EApBT;EAsBA,UAAA,EAAY,gCAAA;EApBZ;EAsBA,oBAAA,EAAsB,gCAAA;EACtB,YAAA,EAAc,gCAAA;EACd,gBAAA,EAAkB,gCAAA;EAClB,mBAAA,EAAqB,gCAAA;EACrB,UAAA,EAAY,kCAAA;EACZ,gBAAA,EAAkB,+BAAA;AAAA;;;;;KAOR,kCAAA,WACA,8BAAA,GAAiC,8BAAA,IACzC,2BAAA,GAA8B,iCAAA,CAAkC,CAAA;;;;KAKxD,yBAAA,GACR,2BAAA,GACA,2BAA2B;;UAGd,kCAAA;EA5BN;EA8BT,IAAA,EAAM,0BAA0B;AAAA;;UAIjB,qCAAA;EA7Bf;EA+BA,OAAA,EAAS,2BAA2B;EA9BpC;EAgCA,kBAAA;AAAA;;UAIe,6CAAA;EAlCH;EAoCZ,OAAA;EAnCkB;EAqClB,YAAA;EArCiD;EAuCjD,OAAA,EAAS,6BAA6B;AAAA;;UAIvB,kCAAA;EAnC4B;EAqC3C,OAAA;EApCgC;EAsChC,QAAA;EAtCmE;EAwCnE,UAAA;EAzCA;EA2CA,OAAA;AAAA;;UAIe,sCAAA;EA9CmD;EAgDlE,aAAA;EAhDmE;EAkDnE,eAAA,EAAiB,4BAA4B;EA7CV;EA+CnC,0BAAA;EA9CE;EAgDF,kBAAA;AAAA;;UAIe,uCAAA;EA9Cf;EAgDA,+BAAA,EAAiC,0CAAA;EA5ClB;EA8Cf,qBAAA,EAAuB,gCAAA;;EAEvB,kBAAA,EAAoB,gCAAA;EA9CpB;EAgDA,iBAAA,EAAmB,gCAAA;EA9CnB;EAgDA,iBAAA,EAAmB,sCAAA;AAAA;AA5CrB;AAAA,KAgDY,wCAAA,WACA,oCAAA,GACR,oCAAA,IACA,2BAAA,GAA8B,uCAAA,CAAwC,CAAA"}
|
|
@@ -25,6 +25,24 @@ interface MobileServerAvatarPreset {
|
|
|
25
25
|
* Platform of a device registered for push notifications.
|
|
26
26
|
*/
|
|
27
27
|
type MobileNotificationPlatform = 'ios' | 'android';
|
|
28
|
+
/**
|
|
29
|
+
* Notification types supported by the v2 payload protocol.
|
|
30
|
+
*/
|
|
31
|
+
type MobileNotificationTypeId = 'new_follower' | 'followed_you_back' | 'order_fill' | 'order_update' | 'liquidation' | 'trader_opened' | 'trader_closed' | 'position_milestone' | 'market_movement' | 'trader_streak' | 'account_drama' | 'weekly_digest';
|
|
32
|
+
/**
|
|
33
|
+
* Named navigation destinations supported by notification payloads.
|
|
34
|
+
*/
|
|
35
|
+
type MobileNotificationRouteName = MobileServerNotificationRoute['name'];
|
|
36
|
+
/** Position milestone options supported by notification settings. */
|
|
37
|
+
declare const MOBILE_NOTIFICATION_POSITION_THRESHOLDS: readonly [10, 25, 50];
|
|
38
|
+
/** Minimum trade-size options, in whole USD, supported by notification settings. */
|
|
39
|
+
declare const MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD: readonly [0, 100, 1000, 10000];
|
|
40
|
+
/** Supported notification position milestone threshold. */
|
|
41
|
+
type MobileNotificationPositionThreshold = (typeof MOBILE_NOTIFICATION_POSITION_THRESHOLDS)[number];
|
|
42
|
+
/** Supported notification minimum trade size, in whole USD. */
|
|
43
|
+
type MobileNotificationMinTradeSizeUsd = (typeof MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD)[number];
|
|
44
|
+
/** Supported product analytics interaction. */
|
|
45
|
+
type MobileProductEventName = 'notif_opened' | 'market_viewed' | 'chart_opened' | 'search';
|
|
28
46
|
/**
|
|
29
47
|
* Category of push notification.
|
|
30
48
|
*/
|
|
@@ -186,6 +204,112 @@ interface MobileServerNotificationPreferences {
|
|
|
186
204
|
schema_version: 1;
|
|
187
205
|
categories: MobileServerNotificationCategoryPreference[];
|
|
188
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Stored push-device metadata shared by registration requests and token ownership responses.
|
|
209
|
+
*/
|
|
210
|
+
interface MobileServerNotificationDeviceMetadata {
|
|
211
|
+
/** Device operating system. */
|
|
212
|
+
platform: MobileNotificationPlatform;
|
|
213
|
+
/** Locale tag, or null when absent; at most 35 UTF-8 bytes. */
|
|
214
|
+
locale: string | null;
|
|
215
|
+
/** App version, or null when absent; at most 64 UTF-8 bytes. */
|
|
216
|
+
app_version: string | null;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Device capabilities shared by v2 registration and v1/v2 registration queries.
|
|
220
|
+
*/
|
|
221
|
+
interface MobileServerNotificationCapabilities {
|
|
222
|
+
/** Exactly one supported payload version. */
|
|
223
|
+
payload_versions: [1] | [2];
|
|
224
|
+
/** Supported subset of the registered notification types. */
|
|
225
|
+
type_ids: MobileNotificationTypeId[];
|
|
226
|
+
/** Supported subset of the named destinations. */
|
|
227
|
+
routes: MobileNotificationRouteName[];
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Server-side wallet settings; all fields are required on replacement.
|
|
231
|
+
*/
|
|
232
|
+
interface MobileServerNotificationSettings {
|
|
233
|
+
/** Own position milestones and the initial weekly digest. */
|
|
234
|
+
my_positions: boolean;
|
|
235
|
+
/** One to three unique values; the minimum selects the starting milestone tier. */
|
|
236
|
+
position_thresholds: MobileNotificationPositionThreshold[];
|
|
237
|
+
/** Combined order fill/update switch; does not control liquidation notifications. */
|
|
238
|
+
my_orders: boolean;
|
|
239
|
+
/** Ordinary followed-trader notifications; enabled bells override this switch. */
|
|
240
|
+
following_trades: boolean;
|
|
241
|
+
/** Notifications about posts by followed traders. */
|
|
242
|
+
following_posts: boolean;
|
|
243
|
+
/** Minimum trade size for trade notifications, in whole USD. */
|
|
244
|
+
min_trade_size_usd: MobileNotificationMinTradeSizeUsd;
|
|
245
|
+
/** New followers and follow-backs. */
|
|
246
|
+
new_followers: boolean;
|
|
247
|
+
/** Maps to the legacy announcement preference. */
|
|
248
|
+
announcements: boolean;
|
|
249
|
+
/** Opt-in trader streak and account drama discovery notifications. */
|
|
250
|
+
discovery: boolean;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Server-side allowlisted destination; notification data must never be interpreted as an arbitrary URL.
|
|
254
|
+
*/
|
|
255
|
+
type MobileServerNotificationRoute = {
|
|
256
|
+
/** Public profile destination. */name: 'profile'; /** Profile subaccount as bytes32. */
|
|
257
|
+
subaccount: Hex;
|
|
258
|
+
} | {
|
|
259
|
+
/** Market destination. */name: 'market'; /** Positive product ID. */
|
|
260
|
+
product_id: number;
|
|
261
|
+
} | {
|
|
262
|
+
/** Own portfolio destination. */name: 'portfolio';
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Server-side v2 push/inbox navigation data, not a complete historical trade or notification body.
|
|
266
|
+
*/
|
|
267
|
+
interface MobileServerNotificationPayloadV2 {
|
|
268
|
+
/** Payload protocol version. */
|
|
269
|
+
payload_version: 2;
|
|
270
|
+
/** Logical notification UUID, used for click deduplication. */
|
|
271
|
+
notification_id: string;
|
|
272
|
+
/** Intended wallet; private navigation must wait for this wallet to connect. */
|
|
273
|
+
recipient_wallet: Hex;
|
|
274
|
+
/** Registered notification type. */
|
|
275
|
+
type_id: MobileNotificationTypeId;
|
|
276
|
+
/** Supported template version. */
|
|
277
|
+
template_version: 1;
|
|
278
|
+
/** Named destination and its parameters. */
|
|
279
|
+
route: MobileServerNotificationRoute;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Server-side accepted logical notification; does not prove device delivery or read status.
|
|
283
|
+
*/
|
|
284
|
+
interface MobileServerNotificationInboxItem {
|
|
285
|
+
/** Logical notification UUID. */
|
|
286
|
+
notification_id: string;
|
|
287
|
+
/** Registered notification type. */
|
|
288
|
+
type_id: MobileNotificationTypeId;
|
|
289
|
+
/** Navigation data, without title, body, or read state. */
|
|
290
|
+
data: MobileServerNotificationPayloadV2;
|
|
291
|
+
/** Intent acceptance time in milliseconds. */
|
|
292
|
+
created_at: number;
|
|
293
|
+
/** Backend-computed trade attribution. */
|
|
294
|
+
trade_within_24h: boolean;
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Server-side product analytics event; unused nullable fields must be explicitly null.
|
|
298
|
+
*/
|
|
299
|
+
interface MobileServerProductEvent {
|
|
300
|
+
/** Stable event UUID; reuse across retries. */
|
|
301
|
+
client_event_id: string;
|
|
302
|
+
/** Supported interaction; notif_opened is not a read-state mutation. */
|
|
303
|
+
event_name: MobileProductEventName;
|
|
304
|
+
/** Required for notif_opened and owned by the signing wallet; otherwise null. */
|
|
305
|
+
notification_id: string | null;
|
|
306
|
+
/** Actual event time in milliseconds, within the past 7 days or next 5 minutes. */
|
|
307
|
+
occurred_at: number;
|
|
308
|
+
/** Required for market_viewed/chart_opened; otherwise null. */
|
|
309
|
+
product_id: number | null;
|
|
310
|
+
/** Required for search, nonblank and at most 80 Unicode characters; otherwise null. */
|
|
311
|
+
query: string | null;
|
|
312
|
+
}
|
|
189
313
|
/** Content filters accepted by the six social feed lists. Empty or omitted means all. */
|
|
190
314
|
type MobileSocialFeedType = 'open' | 'close' | 'size_change' | 'thoughts' | 'analysis' | 'comments';
|
|
191
315
|
/** Market category used by the social feed. */
|
|
@@ -345,15 +469,41 @@ interface MobileServerSocialFeedCommentPreview {
|
|
|
345
469
|
items: MobileServerSocialFeedReply[];
|
|
346
470
|
/** Comment count. */
|
|
347
471
|
total_count: number;
|
|
348
|
-
/**
|
|
472
|
+
/** Opens the first complete group page in the same snapshot; do not prepend preview items. */
|
|
349
473
|
next_cursor: string | null;
|
|
350
474
|
}
|
|
351
|
-
/**
|
|
352
|
-
interface
|
|
353
|
-
/**
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
|
|
475
|
+
/** Uploaded feed image metadata; bytes are fetched separately with the reading session. */
|
|
476
|
+
interface MobileServerSocialFeedUploadedImage {
|
|
477
|
+
/** Image UUID. */
|
|
478
|
+
image_id: string;
|
|
479
|
+
/** Backend path for the original image bytes. */
|
|
480
|
+
url: string;
|
|
481
|
+
/** Display-orientation width in pixels. */
|
|
482
|
+
width: number;
|
|
483
|
+
/** Display-orientation height in pixels. */
|
|
484
|
+
height: number;
|
|
485
|
+
/** Detected content type. */
|
|
486
|
+
content_type: 'image/jpeg' | 'image/png';
|
|
487
|
+
/** Original file size in bytes. */
|
|
488
|
+
byte_size: number;
|
|
489
|
+
/** Always-present thumbnail (longest edge ≤ 512, never upscaled). */
|
|
490
|
+
thumbnail: MobileServerSocialFeedImageThumbnail;
|
|
491
|
+
}
|
|
492
|
+
/** External image loaded directly from its URL without Mobile session headers. */
|
|
493
|
+
interface MobileServerSocialFeedExternalImage {
|
|
494
|
+
/** Original HTTP/HTTPS URL; no upload metadata or thumbnail is provided. */
|
|
495
|
+
url: string;
|
|
496
|
+
}
|
|
497
|
+
/** Uploaded image metadata or an external URL; uploaded images precede external images. */
|
|
498
|
+
type MobileServerSocialFeedImage = MobileServerSocialFeedUploadedImage | MobileServerSocialFeedExternalImage;
|
|
499
|
+
/** Thumbnail metadata for an uploaded feed image. */
|
|
500
|
+
interface MobileServerSocialFeedImageThumbnail {
|
|
501
|
+
/** Backend path for the thumbnail bytes. */
|
|
502
|
+
url: string;
|
|
503
|
+
/** Thumbnail width in pixels. */
|
|
504
|
+
width: number;
|
|
505
|
+
/** Thumbnail height in pixels. */
|
|
506
|
+
height: number;
|
|
357
507
|
}
|
|
358
508
|
/** Coverage of the candidate authors in a qualification snapshot. */
|
|
359
509
|
interface MobileServerSocialFeedCohortCoverage {
|
|
@@ -398,6 +548,8 @@ interface MobileServerSocialFeedItemBase {
|
|
|
398
548
|
}
|
|
399
549
|
/** Content shared by authored posts and trade cards. */
|
|
400
550
|
interface MobileServerSocialFeedContentBase extends MobileServerSocialFeedItemBase {
|
|
551
|
+
/** Bound images in display order; empty when none. */
|
|
552
|
+
images: MobileServerSocialFeedImage[];
|
|
401
553
|
/** Card text, empty for automatic cards. */
|
|
402
554
|
text: string;
|
|
403
555
|
/** Mentions in the original, unmodified text. */
|
|
@@ -451,16 +603,14 @@ type MobileServerSocialFeedTradeRow = MobileServerSocialFeedTradeRowBase & ({
|
|
|
451
603
|
});
|
|
452
604
|
/** Discriminated social feed content. */
|
|
453
605
|
type MobileServerSocialFeedItem = MobileServerSocialFeedTradeCard | MobileServerSocialFeedTradeRow | MobileServerSocialFeedPost | MobileServerSocialFeedReply;
|
|
454
|
-
/**
|
|
606
|
+
/** Idle-renewed social feed reading session. Credentials and cursors must be returned unchanged. */
|
|
455
607
|
interface MobileServerSocialFeedReadSession {
|
|
456
608
|
/** Session identifier. */
|
|
457
609
|
session_id: string;
|
|
458
610
|
/** Feed, item, or full position history session. */
|
|
459
611
|
mode: MobileSocialFeedReadSessionMode;
|
|
460
|
-
/**
|
|
612
|
+
/** Current idle expiration in Unix milliseconds; legitimate session requests renew it. */
|
|
461
613
|
expires_at_ms: number;
|
|
462
|
-
/** Visibility requirements for explicit exposure reporting. */
|
|
463
|
-
view_tracking: MobileServerSocialFeedViewTracking;
|
|
464
614
|
/** Initial update baseline, distinct from the page cursor. */
|
|
465
615
|
update_cursor: string | null;
|
|
466
616
|
/** Credential for this reading session. Do not log or cache publicly. */
|
|
@@ -578,6 +728,8 @@ interface MobileServerSocialFeedPost extends MobileServerSocialFeedContentBase {
|
|
|
578
728
|
interface MobileServerSocialFeedReply extends MobileServerSocialFeedItemBase {
|
|
579
729
|
/** Reply discriminant. */
|
|
580
730
|
kind: 'reply';
|
|
731
|
+
/** Bound images in display order; empty when none. */
|
|
732
|
+
images: MobileServerSocialFeedImage[];
|
|
581
733
|
/** Original text. */
|
|
582
734
|
text: string;
|
|
583
735
|
/** Mentions in the text. */
|
|
@@ -597,6 +749,11 @@ interface MobileServerSocialFeedReply extends MobileServerSocialFeedItemBase {
|
|
|
597
749
|
/** Reply interaction state. */
|
|
598
750
|
interaction: MobileServerSocialFeedInteraction;
|
|
599
751
|
}
|
|
752
|
+
/** Top-level comment and all readable descendants from the same thread snapshot. */
|
|
753
|
+
interface MobileServerSocialFeedCommentGroup extends MobileServerSocialFeedReply {
|
|
754
|
+
/** Flat descendants in creation-time, depth, then UUID order; empty when none. */
|
|
755
|
+
replies: MobileServerSocialFeedReply[];
|
|
756
|
+
}
|
|
600
757
|
/** Current eligibility hints; actual writes still recheck the signed author. */
|
|
601
758
|
interface MobileServerSocialFeedPublishablePosition {
|
|
602
759
|
/** Candidate position. */
|
|
@@ -779,5 +936,5 @@ interface MobileServerSocialFeedChartRange {
|
|
|
779
936
|
to_ms: number;
|
|
780
937
|
}
|
|
781
938
|
//#endregion
|
|
782
|
-
export {
|
|
783
|
-
//# sourceMappingURL=serverModelTypes-
|
|
939
|
+
export { MobileServerSocialFeedImage as $, MobileSocialFeedUnavailableTarget as $t, MobileServerNotificationPreferences as A, MobileSocialFeedCohortStatus as At, MobileServerSocialFeedChartRange as B, MobileSocialFeedPositionResolution as Bt, MobileServerIdentitySummary as C, MobileSocialFeedAction as Ct, MobileServerNotificationInboxItem as D, MobileSocialFeedAttachmentStatus as Dt, MobileServerNotificationDeviceMetadata as E, MobileSocialFeedActionUnavailableReason as Et, MobileServerSocialFeedActionCandidate as F, MobileSocialFeedMention as Ft, MobileServerSocialFeedCompactCard as G, MobileSocialFeedSourceCategory as Gt, MobileServerSocialFeedCohortCoverage as H, MobileSocialFeedPositionState as Ht, MobileServerSocialFeedActionMarker as I, MobileSocialFeedPnlBasis as It, MobileServerSocialFeedEstimatedLiquidationLine as J, MobileSocialFeedTradeSizeChangeAction as Jt, MobileServerSocialFeedContentBase as K, MobileSocialFeedTargetType as Kt, MobileServerSocialFeedAuthor as L, MobileSocialFeedPnlMode as Lt, MobileServerNotificationSettings as M, MobileSocialFeedLeverage as Mt, MobileServerProductEvent as N, MobileSocialFeedLiquidationPriceQuality as Nt, MobileServerNotificationPayloadV2 as O, MobileSocialFeedChartDataQuality as Ot, MobileServerProfile as P, MobileSocialFeedMarketCategory as Pt, MobileServerSocialFeedHistoryTake as Q, MobileSocialFeedType as Qt, MobileServerSocialFeedCandle as R, MobileSocialFeedPnlQuality as Rt, MobileServerFollowSummary as S, MobileServerSocialFeedUploadedImage as St, MobileServerNotificationCategoryPreference as T, MobileSocialFeedActionResolution as Tt, MobileServerSocialFeedCommentGroup as U, MobileSocialFeedPresenceState as Ut, MobileServerSocialFeedCohort as V, MobileSocialFeedPositionResolutionReason as Vt, MobileServerSocialFeedCommentPreview as W, MobileSocialFeedReadSessionMode as Wt, MobileServerSocialFeedHistoryMetrics as X, MobileSocialFeedTraderDataStatus as Xt, MobileServerSocialFeedExternalImage as Y, MobileSocialFeedTraderBadgeCode as Yt, MobileServerSocialFeedHistorySummary as Z, MobileSocialFeedTradingResolution as Zt, MobileServerAvatarPreset as _, MobileServerSocialFeedTradeRow as _t, MOBILE_NOTIFICATION_POSITION_THRESHOLDS as a, MobileServerSocialFeedMarket as at, MobileServerFeedTrade as b, MobileServerSocialFeedTradingContext as bt, MobileFeedTradePositionDirection as c, MobileServerSocialFeedPositionCard as ct, MobileNotificationMinTradeSizeUsd as d, MobileServerSocialFeedPost as dt, MobileServerSocialFeedImageThumbnail as et, MobileNotificationPlatform as f, MobileServerSocialFeedPublishablePosition as ft, MobileProductEventName as g, MobileServerSocialFeedTradeCard as gt, MobileNotificationTypeId as h, MobileServerSocialFeedTimelineEntry as ht, MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD as i, MobileServerSocialFeedItemPatch as it, MobileServerNotificationRoute as j, MobileSocialFeedHistoryQuality as jt, MobileServerNotificationPreferenceScope as k, MobileSocialFeedChartInterval as kt, MobileFeedTradePositionEffect as l, MobileServerSocialFeedPositionHistoryCard as lt, MobileNotificationRouteName as m, MobileServerSocialFeedReply as mt, MOBILE_FEED_TRADE_POSITION_DIRECTIONS as n, MobileServerSocialFeedItem as nt, MobileFeedMarginMode as o, MobileServerSocialFeedPnl as ot, MobileNotificationPositionThreshold as p, MobileServerSocialFeedReadSession as pt, MobileServerSocialFeedDrawing as q, MobileSocialFeedTradeCardAction as qt, MOBILE_FEED_TRADE_POSITION_EFFECTS as r, MobileServerSocialFeedItemBase as rt, MobileFeedTradePosition as s, MobileServerSocialFeedPositionAction as st, MOBILE_FEED_MARGIN_MODES as t, MobileServerSocialFeedInteraction as tt, MobileNotificationCategory as u, MobileServerSocialFeedPositionPatch as ut, MobileServerAvatarSelection as v, MobileServerSocialFeedTradeRowBase as vt, MobileServerNotificationCapabilities as w, MobileSocialFeedActionPriceBasis as wt, MobileServerFollowListAccount as x, MobileServerSocialFeedTradingTarget as xt, MobileServerFeedMargin as y, MobileServerSocialFeedTraderBadge as yt, MobileServerSocialFeedCapabilities as z, MobileSocialFeedPositionDisplayBasis as zt };
|
|
940
|
+
//# sourceMappingURL=serverModelTypes-CTHMNIQS.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverModelTypes-CTHMNIQS.d.cts","names":[],"sources":["../src/types/src/types/serverModelTypes.ts"],"mappings":"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"}
|
|
@@ -25,6 +25,24 @@ interface MobileServerAvatarPreset {
|
|
|
25
25
|
* Platform of a device registered for push notifications.
|
|
26
26
|
*/
|
|
27
27
|
type MobileNotificationPlatform = 'ios' | 'android';
|
|
28
|
+
/**
|
|
29
|
+
* Notification types supported by the v2 payload protocol.
|
|
30
|
+
*/
|
|
31
|
+
type MobileNotificationTypeId = 'new_follower' | 'followed_you_back' | 'order_fill' | 'order_update' | 'liquidation' | 'trader_opened' | 'trader_closed' | 'position_milestone' | 'market_movement' | 'trader_streak' | 'account_drama' | 'weekly_digest';
|
|
32
|
+
/**
|
|
33
|
+
* Named navigation destinations supported by notification payloads.
|
|
34
|
+
*/
|
|
35
|
+
type MobileNotificationRouteName = MobileServerNotificationRoute['name'];
|
|
36
|
+
/** Position milestone options supported by notification settings. */
|
|
37
|
+
declare const MOBILE_NOTIFICATION_POSITION_THRESHOLDS: readonly [10, 25, 50];
|
|
38
|
+
/** Minimum trade-size options, in whole USD, supported by notification settings. */
|
|
39
|
+
declare const MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD: readonly [0, 100, 1000, 10000];
|
|
40
|
+
/** Supported notification position milestone threshold. */
|
|
41
|
+
type MobileNotificationPositionThreshold = (typeof MOBILE_NOTIFICATION_POSITION_THRESHOLDS)[number];
|
|
42
|
+
/** Supported notification minimum trade size, in whole USD. */
|
|
43
|
+
type MobileNotificationMinTradeSizeUsd = (typeof MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD)[number];
|
|
44
|
+
/** Supported product analytics interaction. */
|
|
45
|
+
type MobileProductEventName = 'notif_opened' | 'market_viewed' | 'chart_opened' | 'search';
|
|
28
46
|
/**
|
|
29
47
|
* Category of push notification.
|
|
30
48
|
*/
|
|
@@ -186,6 +204,112 @@ interface MobileServerNotificationPreferences {
|
|
|
186
204
|
schema_version: 1;
|
|
187
205
|
categories: MobileServerNotificationCategoryPreference[];
|
|
188
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Stored push-device metadata shared by registration requests and token ownership responses.
|
|
209
|
+
*/
|
|
210
|
+
interface MobileServerNotificationDeviceMetadata {
|
|
211
|
+
/** Device operating system. */
|
|
212
|
+
platform: MobileNotificationPlatform;
|
|
213
|
+
/** Locale tag, or null when absent; at most 35 UTF-8 bytes. */
|
|
214
|
+
locale: string | null;
|
|
215
|
+
/** App version, or null when absent; at most 64 UTF-8 bytes. */
|
|
216
|
+
app_version: string | null;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Device capabilities shared by v2 registration and v1/v2 registration queries.
|
|
220
|
+
*/
|
|
221
|
+
interface MobileServerNotificationCapabilities {
|
|
222
|
+
/** Exactly one supported payload version. */
|
|
223
|
+
payload_versions: [1] | [2];
|
|
224
|
+
/** Supported subset of the registered notification types. */
|
|
225
|
+
type_ids: MobileNotificationTypeId[];
|
|
226
|
+
/** Supported subset of the named destinations. */
|
|
227
|
+
routes: MobileNotificationRouteName[];
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Server-side wallet settings; all fields are required on replacement.
|
|
231
|
+
*/
|
|
232
|
+
interface MobileServerNotificationSettings {
|
|
233
|
+
/** Own position milestones and the initial weekly digest. */
|
|
234
|
+
my_positions: boolean;
|
|
235
|
+
/** One to three unique values; the minimum selects the starting milestone tier. */
|
|
236
|
+
position_thresholds: MobileNotificationPositionThreshold[];
|
|
237
|
+
/** Combined order fill/update switch; does not control liquidation notifications. */
|
|
238
|
+
my_orders: boolean;
|
|
239
|
+
/** Ordinary followed-trader notifications; enabled bells override this switch. */
|
|
240
|
+
following_trades: boolean;
|
|
241
|
+
/** Notifications about posts by followed traders. */
|
|
242
|
+
following_posts: boolean;
|
|
243
|
+
/** Minimum trade size for trade notifications, in whole USD. */
|
|
244
|
+
min_trade_size_usd: MobileNotificationMinTradeSizeUsd;
|
|
245
|
+
/** New followers and follow-backs. */
|
|
246
|
+
new_followers: boolean;
|
|
247
|
+
/** Maps to the legacy announcement preference. */
|
|
248
|
+
announcements: boolean;
|
|
249
|
+
/** Opt-in trader streak and account drama discovery notifications. */
|
|
250
|
+
discovery: boolean;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Server-side allowlisted destination; notification data must never be interpreted as an arbitrary URL.
|
|
254
|
+
*/
|
|
255
|
+
type MobileServerNotificationRoute = {
|
|
256
|
+
/** Public profile destination. */name: 'profile'; /** Profile subaccount as bytes32. */
|
|
257
|
+
subaccount: Hex;
|
|
258
|
+
} | {
|
|
259
|
+
/** Market destination. */name: 'market'; /** Positive product ID. */
|
|
260
|
+
product_id: number;
|
|
261
|
+
} | {
|
|
262
|
+
/** Own portfolio destination. */name: 'portfolio';
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Server-side v2 push/inbox navigation data, not a complete historical trade or notification body.
|
|
266
|
+
*/
|
|
267
|
+
interface MobileServerNotificationPayloadV2 {
|
|
268
|
+
/** Payload protocol version. */
|
|
269
|
+
payload_version: 2;
|
|
270
|
+
/** Logical notification UUID, used for click deduplication. */
|
|
271
|
+
notification_id: string;
|
|
272
|
+
/** Intended wallet; private navigation must wait for this wallet to connect. */
|
|
273
|
+
recipient_wallet: Hex;
|
|
274
|
+
/** Registered notification type. */
|
|
275
|
+
type_id: MobileNotificationTypeId;
|
|
276
|
+
/** Supported template version. */
|
|
277
|
+
template_version: 1;
|
|
278
|
+
/** Named destination and its parameters. */
|
|
279
|
+
route: MobileServerNotificationRoute;
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* Server-side accepted logical notification; does not prove device delivery or read status.
|
|
283
|
+
*/
|
|
284
|
+
interface MobileServerNotificationInboxItem {
|
|
285
|
+
/** Logical notification UUID. */
|
|
286
|
+
notification_id: string;
|
|
287
|
+
/** Registered notification type. */
|
|
288
|
+
type_id: MobileNotificationTypeId;
|
|
289
|
+
/** Navigation data, without title, body, or read state. */
|
|
290
|
+
data: MobileServerNotificationPayloadV2;
|
|
291
|
+
/** Intent acceptance time in milliseconds. */
|
|
292
|
+
created_at: number;
|
|
293
|
+
/** Backend-computed trade attribution. */
|
|
294
|
+
trade_within_24h: boolean;
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Server-side product analytics event; unused nullable fields must be explicitly null.
|
|
298
|
+
*/
|
|
299
|
+
interface MobileServerProductEvent {
|
|
300
|
+
/** Stable event UUID; reuse across retries. */
|
|
301
|
+
client_event_id: string;
|
|
302
|
+
/** Supported interaction; notif_opened is not a read-state mutation. */
|
|
303
|
+
event_name: MobileProductEventName;
|
|
304
|
+
/** Required for notif_opened and owned by the signing wallet; otherwise null. */
|
|
305
|
+
notification_id: string | null;
|
|
306
|
+
/** Actual event time in milliseconds, within the past 7 days or next 5 minutes. */
|
|
307
|
+
occurred_at: number;
|
|
308
|
+
/** Required for market_viewed/chart_opened; otherwise null. */
|
|
309
|
+
product_id: number | null;
|
|
310
|
+
/** Required for search, nonblank and at most 80 Unicode characters; otherwise null. */
|
|
311
|
+
query: string | null;
|
|
312
|
+
}
|
|
189
313
|
/** Content filters accepted by the six social feed lists. Empty or omitted means all. */
|
|
190
314
|
type MobileSocialFeedType = 'open' | 'close' | 'size_change' | 'thoughts' | 'analysis' | 'comments';
|
|
191
315
|
/** Market category used by the social feed. */
|
|
@@ -345,15 +469,41 @@ interface MobileServerSocialFeedCommentPreview {
|
|
|
345
469
|
items: MobileServerSocialFeedReply[];
|
|
346
470
|
/** Comment count. */
|
|
347
471
|
total_count: number;
|
|
348
|
-
/**
|
|
472
|
+
/** Opens the first complete group page in the same snapshot; do not prepend preview items. */
|
|
349
473
|
next_cursor: string | null;
|
|
350
474
|
}
|
|
351
|
-
/**
|
|
352
|
-
interface
|
|
353
|
-
/**
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
|
|
475
|
+
/** Uploaded feed image metadata; bytes are fetched separately with the reading session. */
|
|
476
|
+
interface MobileServerSocialFeedUploadedImage {
|
|
477
|
+
/** Image UUID. */
|
|
478
|
+
image_id: string;
|
|
479
|
+
/** Backend path for the original image bytes. */
|
|
480
|
+
url: string;
|
|
481
|
+
/** Display-orientation width in pixels. */
|
|
482
|
+
width: number;
|
|
483
|
+
/** Display-orientation height in pixels. */
|
|
484
|
+
height: number;
|
|
485
|
+
/** Detected content type. */
|
|
486
|
+
content_type: 'image/jpeg' | 'image/png';
|
|
487
|
+
/** Original file size in bytes. */
|
|
488
|
+
byte_size: number;
|
|
489
|
+
/** Always-present thumbnail (longest edge ≤ 512, never upscaled). */
|
|
490
|
+
thumbnail: MobileServerSocialFeedImageThumbnail;
|
|
491
|
+
}
|
|
492
|
+
/** External image loaded directly from its URL without Mobile session headers. */
|
|
493
|
+
interface MobileServerSocialFeedExternalImage {
|
|
494
|
+
/** Original HTTP/HTTPS URL; no upload metadata or thumbnail is provided. */
|
|
495
|
+
url: string;
|
|
496
|
+
}
|
|
497
|
+
/** Uploaded image metadata or an external URL; uploaded images precede external images. */
|
|
498
|
+
type MobileServerSocialFeedImage = MobileServerSocialFeedUploadedImage | MobileServerSocialFeedExternalImage;
|
|
499
|
+
/** Thumbnail metadata for an uploaded feed image. */
|
|
500
|
+
interface MobileServerSocialFeedImageThumbnail {
|
|
501
|
+
/** Backend path for the thumbnail bytes. */
|
|
502
|
+
url: string;
|
|
503
|
+
/** Thumbnail width in pixels. */
|
|
504
|
+
width: number;
|
|
505
|
+
/** Thumbnail height in pixels. */
|
|
506
|
+
height: number;
|
|
357
507
|
}
|
|
358
508
|
/** Coverage of the candidate authors in a qualification snapshot. */
|
|
359
509
|
interface MobileServerSocialFeedCohortCoverage {
|
|
@@ -398,6 +548,8 @@ interface MobileServerSocialFeedItemBase {
|
|
|
398
548
|
}
|
|
399
549
|
/** Content shared by authored posts and trade cards. */
|
|
400
550
|
interface MobileServerSocialFeedContentBase extends MobileServerSocialFeedItemBase {
|
|
551
|
+
/** Bound images in display order; empty when none. */
|
|
552
|
+
images: MobileServerSocialFeedImage[];
|
|
401
553
|
/** Card text, empty for automatic cards. */
|
|
402
554
|
text: string;
|
|
403
555
|
/** Mentions in the original, unmodified text. */
|
|
@@ -451,16 +603,14 @@ type MobileServerSocialFeedTradeRow = MobileServerSocialFeedTradeRowBase & ({
|
|
|
451
603
|
});
|
|
452
604
|
/** Discriminated social feed content. */
|
|
453
605
|
type MobileServerSocialFeedItem = MobileServerSocialFeedTradeCard | MobileServerSocialFeedTradeRow | MobileServerSocialFeedPost | MobileServerSocialFeedReply;
|
|
454
|
-
/**
|
|
606
|
+
/** Idle-renewed social feed reading session. Credentials and cursors must be returned unchanged. */
|
|
455
607
|
interface MobileServerSocialFeedReadSession {
|
|
456
608
|
/** Session identifier. */
|
|
457
609
|
session_id: string;
|
|
458
610
|
/** Feed, item, or full position history session. */
|
|
459
611
|
mode: MobileSocialFeedReadSessionMode;
|
|
460
|
-
/**
|
|
612
|
+
/** Current idle expiration in Unix milliseconds; legitimate session requests renew it. */
|
|
461
613
|
expires_at_ms: number;
|
|
462
|
-
/** Visibility requirements for explicit exposure reporting. */
|
|
463
|
-
view_tracking: MobileServerSocialFeedViewTracking;
|
|
464
614
|
/** Initial update baseline, distinct from the page cursor. */
|
|
465
615
|
update_cursor: string | null;
|
|
466
616
|
/** Credential for this reading session. Do not log or cache publicly. */
|
|
@@ -578,6 +728,8 @@ interface MobileServerSocialFeedPost extends MobileServerSocialFeedContentBase {
|
|
|
578
728
|
interface MobileServerSocialFeedReply extends MobileServerSocialFeedItemBase {
|
|
579
729
|
/** Reply discriminant. */
|
|
580
730
|
kind: 'reply';
|
|
731
|
+
/** Bound images in display order; empty when none. */
|
|
732
|
+
images: MobileServerSocialFeedImage[];
|
|
581
733
|
/** Original text. */
|
|
582
734
|
text: string;
|
|
583
735
|
/** Mentions in the text. */
|
|
@@ -597,6 +749,11 @@ interface MobileServerSocialFeedReply extends MobileServerSocialFeedItemBase {
|
|
|
597
749
|
/** Reply interaction state. */
|
|
598
750
|
interaction: MobileServerSocialFeedInteraction;
|
|
599
751
|
}
|
|
752
|
+
/** Top-level comment and all readable descendants from the same thread snapshot. */
|
|
753
|
+
interface MobileServerSocialFeedCommentGroup extends MobileServerSocialFeedReply {
|
|
754
|
+
/** Flat descendants in creation-time, depth, then UUID order; empty when none. */
|
|
755
|
+
replies: MobileServerSocialFeedReply[];
|
|
756
|
+
}
|
|
600
757
|
/** Current eligibility hints; actual writes still recheck the signed author. */
|
|
601
758
|
interface MobileServerSocialFeedPublishablePosition {
|
|
602
759
|
/** Candidate position. */
|
|
@@ -779,5 +936,5 @@ interface MobileServerSocialFeedChartRange {
|
|
|
779
936
|
to_ms: number;
|
|
780
937
|
}
|
|
781
938
|
//#endregion
|
|
782
|
-
export {
|
|
783
|
-
//# sourceMappingURL=serverModelTypes-
|
|
939
|
+
export { MobileServerSocialFeedImage as $, MobileSocialFeedUnavailableTarget as $t, MobileServerNotificationPreferences as A, MobileSocialFeedCohortStatus as At, MobileServerSocialFeedChartRange as B, MobileSocialFeedPositionResolution as Bt, MobileServerIdentitySummary as C, MobileSocialFeedAction as Ct, MobileServerNotificationInboxItem as D, MobileSocialFeedAttachmentStatus as Dt, MobileServerNotificationDeviceMetadata as E, MobileSocialFeedActionUnavailableReason as Et, MobileServerSocialFeedActionCandidate as F, MobileSocialFeedMention as Ft, MobileServerSocialFeedCompactCard as G, MobileSocialFeedSourceCategory as Gt, MobileServerSocialFeedCohortCoverage as H, MobileSocialFeedPositionState as Ht, MobileServerSocialFeedActionMarker as I, MobileSocialFeedPnlBasis as It, MobileServerSocialFeedEstimatedLiquidationLine as J, MobileSocialFeedTradeSizeChangeAction as Jt, MobileServerSocialFeedContentBase as K, MobileSocialFeedTargetType as Kt, MobileServerSocialFeedAuthor as L, MobileSocialFeedPnlMode as Lt, MobileServerNotificationSettings as M, MobileSocialFeedLeverage as Mt, MobileServerProductEvent as N, MobileSocialFeedLiquidationPriceQuality as Nt, MobileServerNotificationPayloadV2 as O, MobileSocialFeedChartDataQuality as Ot, MobileServerProfile as P, MobileSocialFeedMarketCategory as Pt, MobileServerSocialFeedHistoryTake as Q, MobileSocialFeedType as Qt, MobileServerSocialFeedCandle as R, MobileSocialFeedPnlQuality as Rt, MobileServerFollowSummary as S, MobileServerSocialFeedUploadedImage as St, MobileServerNotificationCategoryPreference as T, MobileSocialFeedActionResolution as Tt, MobileServerSocialFeedCommentGroup as U, MobileSocialFeedPresenceState as Ut, MobileServerSocialFeedCohort as V, MobileSocialFeedPositionResolutionReason as Vt, MobileServerSocialFeedCommentPreview as W, MobileSocialFeedReadSessionMode as Wt, MobileServerSocialFeedHistoryMetrics as X, MobileSocialFeedTraderDataStatus as Xt, MobileServerSocialFeedExternalImage as Y, MobileSocialFeedTraderBadgeCode as Yt, MobileServerSocialFeedHistorySummary as Z, MobileSocialFeedTradingResolution as Zt, MobileServerAvatarPreset as _, MobileServerSocialFeedTradeRow as _t, MOBILE_NOTIFICATION_POSITION_THRESHOLDS as a, MobileServerSocialFeedMarket as at, MobileServerFeedTrade as b, MobileServerSocialFeedTradingContext as bt, MobileFeedTradePositionDirection as c, MobileServerSocialFeedPositionCard as ct, MobileNotificationMinTradeSizeUsd as d, MobileServerSocialFeedPost as dt, MobileServerSocialFeedImageThumbnail as et, MobileNotificationPlatform as f, MobileServerSocialFeedPublishablePosition as ft, MobileProductEventName as g, MobileServerSocialFeedTradeCard as gt, MobileNotificationTypeId as h, MobileServerSocialFeedTimelineEntry as ht, MOBILE_NOTIFICATION_MIN_TRADE_SIZES_USD as i, MobileServerSocialFeedItemPatch as it, MobileServerNotificationRoute as j, MobileSocialFeedHistoryQuality as jt, MobileServerNotificationPreferenceScope as k, MobileSocialFeedChartInterval as kt, MobileFeedTradePositionEffect as l, MobileServerSocialFeedPositionHistoryCard as lt, MobileNotificationRouteName as m, MobileServerSocialFeedReply as mt, MOBILE_FEED_TRADE_POSITION_DIRECTIONS as n, MobileServerSocialFeedItem as nt, MobileFeedMarginMode as o, MobileServerSocialFeedPnl as ot, MobileNotificationPositionThreshold as p, MobileServerSocialFeedReadSession as pt, MobileServerSocialFeedDrawing as q, MobileSocialFeedTradeCardAction as qt, MOBILE_FEED_TRADE_POSITION_EFFECTS as r, MobileServerSocialFeedItemBase as rt, MobileFeedTradePosition as s, MobileServerSocialFeedPositionAction as st, MOBILE_FEED_MARGIN_MODES as t, MobileServerSocialFeedInteraction as tt, MobileNotificationCategory as u, MobileServerSocialFeedPositionPatch as ut, MobileServerAvatarSelection as v, MobileServerSocialFeedTradeRowBase as vt, MobileServerNotificationCapabilities as w, MobileSocialFeedActionPriceBasis as wt, MobileServerFollowListAccount as x, MobileServerSocialFeedTradingTarget as xt, MobileServerFeedMargin as y, MobileServerSocialFeedTraderBadge as yt, MobileServerSocialFeedCapabilities as z, MobileSocialFeedPositionDisplayBasis as zt };
|
|
940
|
+
//# sourceMappingURL=serverModelTypes-CTHMNIQS.d.ts.map
|