@nadohq/mobile-client 0.65.0 → 0.66.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 +107 -8
- package/dist/{MobileClient-CfVZXTcz.cjs → MobileClient-M4oC4lrX.cjs} +258 -16
- package/dist/MobileClient-M4oC4lrX.cjs.map +1 -0
- package/dist/MobileClient.cjs +1 -1
- package/dist/MobileClient.d.cts +146 -16
- package/dist/MobileClient.d.cts.map +1 -1
- package/dist/MobileClient.d.ts +146 -16
- package/dist/MobileClient.d.ts.map +1 -1
- package/dist/MobileClient.js +258 -16
- package/dist/MobileClient.js.map +1 -1
- package/dist/{MobileServerFailureError-BZVwlsMg.d.ts → MobileServerFailureError-C9iqNsxI.d.ts} +2 -3
- package/dist/MobileServerFailureError-C9iqNsxI.d.ts.map +1 -0
- package/dist/{MobileServerFailureError-CbtK8kD4.d.cts → MobileServerFailureError-MtS2reel.d.cts} +2 -3
- package/dist/MobileServerFailureError-MtS2reel.d.cts.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-UeeWdYGU.d.ts → buildSignedMobileRequest-BR-KJhIF.d.ts} +2 -2
- package/dist/{buildSignedMobileRequest-UeeWdYGU.d.ts.map → buildSignedMobileRequest-BR-KJhIF.d.ts.map} +1 -1
- package/dist/{buildSignedMobileRequest-C1v0flCR.d.cts → buildSignedMobileRequest-DyKCK34Y.d.cts} +2 -2
- package/dist/{buildSignedMobileRequest-C1v0flCR.d.cts.map → buildSignedMobileRequest-DyKCK34Y.d.cts.map} +1 -1
- package/dist/{canonicalize-5eeZrkzQ.d.ts → canonicalize-Bv6UIAbR.d.ts} +2 -2
- package/dist/canonicalize-Bv6UIAbR.d.ts.map +1 -0
- package/dist/{canonicalize-CBaZprTo.d.cts → canonicalize-CWh3XZzj.d.cts} +2 -2
- package/dist/canonicalize-CWh3XZzj.d.cts.map +1 -0
- package/dist/{clientTypes-C9dJufxk.d.ts → clientTypes-BUn5_OzK.d.ts} +297 -20
- package/dist/clientTypes-BUn5_OzK.d.ts.map +1 -0
- package/dist/{clientTypes-_mEgzmNs.d.cts → clientTypes-DOpUcu80.d.cts} +297 -20
- package/dist/clientTypes-DOpUcu80.d.cts.map +1 -0
- package/dist/dataMappers.cjs +203 -5
- package/dist/dataMappers.cjs.map +1 -1
- package/dist/dataMappers.d.cts +70 -7
- package/dist/dataMappers.d.cts.map +1 -1
- package/dist/dataMappers.d.ts +70 -7
- package/dist/dataMappers.d.ts.map +1 -1
- package/dist/dataMappers.js +192 -6
- package/dist/dataMappers.js.map +1 -1
- package/dist/{eip712MethodByType-D8jLoxDu.d.cts → eip712MethodByType-CJ6BoayT.d.cts} +2 -2
- package/dist/eip712MethodByType-CJ6BoayT.d.cts.map +1 -0
- package/dist/{eip712MethodByType-DcUh8h-l.d.ts → eip712MethodByType-Dx4mvgni.d.ts} +2 -2
- package/dist/eip712MethodByType-Dx4mvgni.d.ts.map +1 -0
- package/dist/{feed-DTJlsg8W.d.ts → feed-DErOLaoY.d.cts} +4 -2
- package/dist/feed-DErOLaoY.d.cts.map +1 -0
- package/dist/{feed-DTJlsg8W.d.cts → feed-DErOLaoY.d.ts} +4 -2
- package/dist/feed-DErOLaoY.d.ts.map +1 -0
- package/dist/index.cjs +7 -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-vD6rbFuF.d.cts} +8 -3
- package/dist/mobileErrorCodes-vD6rbFuF.d.cts.map +1 -0
- package/dist/{mobileErrorCodes-CmjYEIYm.d.cts → mobileErrorCodes-vD6rbFuF.d.ts} +8 -3
- package/dist/mobileErrorCodes-vD6rbFuF.d.ts.map +1 -0
- package/dist/{payloadHash-DhHmgRqL.d.cts → payloadHash-CdkF2Ocr.d.cts} +2 -2
- package/dist/payloadHash-CdkF2Ocr.d.cts.map +1 -0
- package/dist/{payloadHash-E1_8fpLW.d.ts → payloadHash-HD29K77M.d.ts} +2 -2
- package/dist/payloadHash-HD29K77M.d.ts.map +1 -0
- package/dist/{serverExecuteTypes-B-OJok19.d.cts → serverExecuteTypes-5JyyIXRK.d.ts} +21 -5
- package/dist/serverExecuteTypes-5JyyIXRK.d.ts.map +1 -0
- package/dist/{serverExecuteTypes-BwWGspOg.d.ts → serverExecuteTypes-CHrQ9Rtq.d.cts} +21 -5
- package/dist/serverExecuteTypes-CHrQ9Rtq.d.cts.map +1 -0
- package/dist/{serverModelTypes-CiA-dy1R.d.ts → serverModelTypes-CGUZCi0y.d.cts} +163 -8
- package/dist/serverModelTypes-CGUZCi0y.d.cts.map +1 -0
- package/dist/{serverModelTypes-CiA-dy1R.d.cts → serverModelTypes-CGUZCi0y.d.ts} +163 -8
- package/dist/serverModelTypes-CGUZCi0y.d.ts.map +1 -0
- package/dist/{serverResponseGuards-CShiXpHT.d.ts → serverResponseGuards-Bvw8ltYJ.d.ts} +2 -2
- package/dist/{serverResponseGuards-CShiXpHT.d.ts.map → serverResponseGuards-Bvw8ltYJ.d.ts.map} +1 -1
- package/dist/{serverResponseGuards-BW69PS7O.d.cts → serverResponseGuards-i1njcYKN.d.cts} +2 -2
- package/dist/{serverResponseGuards-BW69PS7O.d.cts.map → serverResponseGuards-i1njcYKN.d.cts.map} +1 -1
- package/dist/signing/buildSignedMobileRequest.d.cts +1 -1
- package/dist/signing/buildSignedMobileRequest.d.ts +1 -1
- package/dist/signing/canonicalize.cjs +51 -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 +51 -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-C9YE4EIt.d.cts +794 -0
- package/dist/types-C9YE4EIt.d.cts.map +1 -0
- package/dist/types-Cwy1y_9x.d.ts +794 -0
- package/dist/types-Cwy1y_9x.d.ts.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 +3 -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 +3 -1
- package/dist/utils/feed.js.map +1 -1
- package/dist/utils/index.cjs +2 -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 +388 -11
- package/src/dataMappers.test.ts +108 -2
- package/src/dataMappers.ts +253 -5
- package/src/feedImages.test.ts +309 -0
- package/src/notifications.test.ts +950 -0
- package/src/signing/canonicalize.ts +66 -0
- package/src/signing/eip712MethodByType.ts +10 -0
- package/src/signing/signing.test.ts +16 -1
- package/src/signing/types.ts +51 -9
- package/src/socialFeed.test.ts +38 -2
- package/src/types/MobileUnsupportedNotificationRouteError.ts +16 -0
- package/src/types/clientTypes.ts +372 -16
- package/src/types/index.ts +1 -0
- package/src/types/mobileErrorCodes.ts +10 -0
- package/src/types/serverExecuteTypes.ts +20 -0
- package/src/types/serverModelTypes.ts +205 -6
- package/src/types/serverQueryTypes.ts +74 -5
- package/src/types/serverRequestTypes.ts +101 -12
- package/src/utils/buildMobileFeedImageMultipart.test.ts +45 -0
- package/src/utils/buildMobileFeedImageMultipart.ts +36 -0
- package/src/utils/feed.ts +3 -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.map +0 -1
- 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
package/dist/types-DoJuq0Ij.d.ts
DELETED
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { _t as MobileSocialFeedMention, d as MobileServerAvatarSelection, l as MobileNotificationPlatform } from "./serverModelTypes-CiA-dy1R.js";
|
|
2
|
-
import { nt as MobileSignedRequestParams } from "./clientTypes-C9dJufxk.js";
|
|
3
|
-
import { WalletClientWithAccount } from "@nadohq/shared";
|
|
4
|
-
import { Hex } from "viem";
|
|
5
|
-
|
|
6
|
-
//#region src/signing/types.d.ts
|
|
7
|
-
/**
|
|
8
|
-
* Unsigned inner payloads that can be authenticated against the mobile service API.
|
|
9
|
-
*
|
|
10
|
-
* Key order is significant: the payload hash is `keccak256(msgpack(inner))`, and msgpack encodes object keys
|
|
11
|
-
* in insertion order, so every field of every sub-type must be serialized in the exact order the backend
|
|
12
|
-
* declares its structs — `type` first, then the remaining fields — or the hash won't match and signature
|
|
13
|
-
* verification fails. This type only describes the shape; the authoritative runtime key order is enforced by
|
|
14
|
-
* {@link canonicalizeMobileInner}, which is the source of truth. Keep the field order here in sync with it.
|
|
15
|
-
*
|
|
16
|
-
* Every bytes32 field must be lowercase hex. The backend decodes them case-insensitively but hashes its own
|
|
17
|
-
* re-serialization, which is always lowercase, so a mixed-case value is accepted on the wire and then fails
|
|
18
|
-
* authentication against a hash the client never reproduced. Build them with `subaccountToHex`, which
|
|
19
|
-
* lowercases; unlike bytes32, string fields such as `display_name` are hashed as-is and keep their casing.
|
|
20
|
-
*/
|
|
21
|
-
type MobileSignedInner = {
|
|
22
|
-
/** Atomic post publication. */type: 'create_feed_post'; /** Author-scoped idempotency UUID. */
|
|
23
|
-
client_request_id: string; /** Owned position UUID. */
|
|
24
|
-
position_id: string; /** Optional trusted action UUID, omitted rather than encoded as nil. */
|
|
25
|
-
action_id?: string; /** Unmodified original text. */
|
|
26
|
-
text: string; /** Ordered mentions into the original text. */
|
|
27
|
-
mentions: MobileSocialFeedMention[]; /** Original JSON text; omitted when absent. */
|
|
28
|
-
drawing_data_json?: string;
|
|
29
|
-
} | {
|
|
30
|
-
/** Atomic comment publication. */type: 'create_feed_comment'; /** Author-scoped idempotency UUID. */
|
|
31
|
-
client_request_id: string; /** Root UUID. */
|
|
32
|
-
root_item_id: string; /** Optional same-thread reply UUID. */
|
|
33
|
-
reply_to_item_id?: string; /** Unmodified original text. */
|
|
34
|
-
text: string; /** Ordered mentions. */
|
|
35
|
-
mentions: MobileSocialFeedMention[]; /** Optional owned position UUID. */
|
|
36
|
-
attached_position_id?: string;
|
|
37
|
-
} | {
|
|
38
|
-
/** First attachment. */type: 'create_feed_chart_drawing'; /** Parent UUID. */
|
|
39
|
-
item_id: string; /** Original JSON text, not parsed or reformatted before hashing. */
|
|
40
|
-
data_json: string;
|
|
41
|
-
} | {
|
|
42
|
-
/** Full replacement of an existing drawing. */type: 'update_feed_chart_drawing'; /** Parent UUID. */
|
|
43
|
-
item_id: string; /** Original JSON text. */
|
|
44
|
-
data_json: string;
|
|
45
|
-
} | {
|
|
46
|
-
/** Idempotent relationship mutation. */type: 'set_feed_like'; /** Item UUID. */
|
|
47
|
-
item_id: string; /** Desired relationship state. */
|
|
48
|
-
is_liked: boolean;
|
|
49
|
-
} | {
|
|
50
|
-
type: 'set_bio';
|
|
51
|
-
bio: string;
|
|
52
|
-
} | {
|
|
53
|
-
type: 'create_avatar_upload';
|
|
54
|
-
content_length: number;
|
|
55
|
-
} | {
|
|
56
|
-
type: 'set_avatar';
|
|
57
|
-
avatar: MobileServerAvatarSelection | null;
|
|
58
|
-
} | {
|
|
59
|
-
type: 'set_username';
|
|
60
|
-
display_name: string;
|
|
61
|
-
} | {
|
|
62
|
-
type: 'set_private_mode';
|
|
63
|
-
private_mode: boolean;
|
|
64
|
-
} | {
|
|
65
|
-
type: 'register_expo_token';
|
|
66
|
-
expo_token: string;
|
|
67
|
-
platform: MobileNotificationPlatform;
|
|
68
|
-
locale: string | null;
|
|
69
|
-
app_version: string | null;
|
|
70
|
-
} | {
|
|
71
|
-
type: 'set_follow';
|
|
72
|
-
subaccount: Hex; /** `true` follows the target, `false` unfollows it. Both directions are idempotent. */
|
|
73
|
-
is_following: boolean;
|
|
74
|
-
} | {
|
|
75
|
-
type: 'set_follow_batch'; /** Distinct targets in request order; the response keeps this order. */
|
|
76
|
-
subaccounts: Hex[]; /** `true` follows every target, `false` unfollows every target. Both directions are idempotent. */
|
|
77
|
-
is_following: boolean;
|
|
78
|
-
};
|
|
79
|
-
/**
|
|
80
|
-
* The single {@link MobileSignedInner} member carrying the given `type` tag.
|
|
81
|
-
*/
|
|
82
|
-
type MobileSignedInnerByType<T extends MobileSignedInner['type']> = Extract<MobileSignedInner, {
|
|
83
|
-
type: T;
|
|
84
|
-
}>;
|
|
85
|
-
/**
|
|
86
|
-
* Type-specific payload fields for a signed inner request of a given `type` (the inner payload without its
|
|
87
|
-
* `type` tag). Derived from {@link MobileSignedInner} so the two never drift apart.
|
|
88
|
-
*/
|
|
89
|
-
type MobileSignedInnerParams<T extends MobileSignedInner['type']> = Omit<MobileSignedInnerByType<T>, 'type'>;
|
|
90
|
-
/**
|
|
91
|
-
* A signed mobile service API request body: the inner payload flattened with its signature, sender, and
|
|
92
|
-
* nonce (unlike the engine client, which wraps params under a `{ [type]: params }` key).
|
|
93
|
-
*/
|
|
94
|
-
type MobileSignedRequest<T extends MobileSignedInner = MobileSignedInner> = T & {
|
|
95
|
-
signature: Hex;
|
|
96
|
-
sender: Hex;
|
|
97
|
-
nonce: string;
|
|
98
|
-
};
|
|
99
|
-
/**
|
|
100
|
-
* Params for {@link buildSignedMobileRequest}.
|
|
101
|
-
*/
|
|
102
|
-
interface BuildSignedMobileRequestParams extends MobileSignedRequestParams {
|
|
103
|
-
walletClient: WalletClientWithAccount;
|
|
104
|
-
inner: MobileSignedInner;
|
|
105
|
-
}
|
|
106
|
-
//#endregion
|
|
107
|
-
export { MobileSignedRequest as a, MobileSignedInnerParams as i, MobileSignedInner as n, MobileSignedInnerByType as r, BuildSignedMobileRequestParams as t };
|
|
108
|
-
//# sourceMappingURL=types-DoJuq0Ij.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types-DoJuq0Ij.d.ts","names":[],"sources":["../src/signing/src/signing/types.ts"],"mappings":";;;;;;;;AAuBA;;;;;;;;;;;;KAAY,iBAAA;EAON,+BAJA,IAAA,sBAQA;EANA,iBAAA,UAQU;EANV,WAAA,UAYA;EAVA,SAAA,WAcA;EAZA,IAAA,UAgBA;EAdA,QAAA,EAAU,uBAAA,IAgBA;EAdV,iBAAA;AAAA;EAsBA,kCAlBA,IAAA,yBAwBA;EAtBA,iBAAA,UA0BA;EAxBA,YAAA,UA8BA;EA5BA,gBAAA,WAgCA;EA9BA,IAAA,UA+BA;EA7BA,QAAA,EAAU,uBAAA,IA+BV;EA7BA,oBAAA;AAAA;EAgCA,wBA5BA,IAAA,+BA6BA;EA3BA,OAAA,UA6BA;EA3BA,SAAA;AAAA;EA6BU,+CAzBV,IAAA,+BA6BA;EA3BA,OAAA,UA+BA;EA7BA,SAAA;AAAA;EAkCA,wCA9BA,IAAA,mBAgCa;EA9Bb,OAAA,UAgCY;EA9BZ,QAAA;AAAA;EAEA,IAAA;EAAiB,GAAA;AAAA;EACjB,IAAA;EAA8B,cAAA;AAAA;EAE9B,IAAA;EACA,MAAA,EAAQ,2BAAA;AAAA;EAER,IAAA;EAAsB,YAAA;AAAA;EACtB,IAAA;EAA0B,YAAA;AAAA;EAE1B,IAAA;EACA,UAAA;EACA,QAAA,EAAU,0BAAA;EAGV,MAAA;EACA,WAAA;AAAA;EAGA,IAAA;EACA,UAAA,EAAY,GAAA,EAsB6D;EApBzE,YAAA;AAAA;EAGA,IAAA,sBAiBqE;EAfrE,WAAA,EAAa,GAAA,IAgBO;EAdpB,YAAA;AAAA;AAsBN;;;AAAA,KAhBY,uBAAA,WAAkC,iBAAA,YAC5C,OAAA,CAAQ,iBAAA;EAAqB,IAAA,EAAM,CAAA;AAAA;;;;;KAMzB,uBAAA,WAAkC,iBAAA,YAA6B,IAAA,CACzE,uBAAA,CAAwB,CAAA;;;;;KAQd,mBAAA,WACA,iBAAA,GAAoB,iBAAA,IAC5B,CAAA;EACF,SAAA,EAAW,GAAA;EACX,MAAA,EAAQ,GAAA;EACR,KAAA;AAAA;AAAK;AAMP;;AANO,UAMU,8BAAA,SAAuC,yBAAA;EACtD,YAAA,EAAc,uBAAA;EACd,KAAA,EAAO,iBAAA;AAAA"}
|