@polyester/sdk 0.24.0 → 0.25.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/CHANGELOG.md +20 -0
- package/README.md +18 -12
- package/dist/account-signer/create-polyester-account-signer.d.ts +9 -5
- package/dist/account-signer/create-polyester-account-signer.d.ts.map +1 -1
- package/dist/account-signer/create-polyester-account-signer.js +9 -5
- package/dist/account-signer/create-polyester-account-signer.js.map +1 -1
- package/dist/account-signer/types.d.ts +10 -4
- package/dist/account-signer/types.d.ts.map +1 -1
- package/dist/account-signer/types.js.map +1 -1
- package/dist/core-client.d.ts +3 -0
- package/dist/core-client.d.ts.map +1 -1
- package/dist/core-client.js +23 -45
- package/dist/core-client.js.map +1 -1
- package/dist/gen/auth/v1/auth_pb.d.ts +7 -4
- package/dist/gen/auth/v1/auth_pb.d.ts.map +1 -1
- package/dist/gen/auth/v1/auth_pb.js.map +1 -1
- package/dist/gen/claims/v1/claims_pb.d.ts +313 -0
- package/dist/gen/claims/v1/claims_pb.d.ts.map +1 -0
- package/dist/gen/claims/v1/claims_pb.js +135 -0
- package/dist/gen/claims/v1/claims_pb.js.map +1 -0
- package/dist/gen/index.d.ts +2 -1
- package/dist/gen/index.js +2 -1
- package/dist/gen/orders/v1/orders_pb.d.ts +50 -3
- package/dist/gen/orders/v1/orders_pb.d.ts.map +1 -1
- package/dist/gen/orders/v1/orders_pb.js +55 -43
- package/dist/gen/orders/v1/orders_pb.js.map +1 -1
- package/dist/gen/orders/v1/orders_read_pb.d.ts +10 -0
- package/dist/gen/orders/v1/orders_read_pb.d.ts.map +1 -1
- package/dist/gen/orders/v1/orders_read_pb.js +3 -1
- package/dist/gen/orders/v1/orders_read_pb.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/realtime/client.js +45 -26
- package/dist/realtime/client.js.map +1 -1
- package/dist/services/accounts/accounts.schemas.d.ts +2 -2
- package/dist/services/accounts/accounts.schemas.d.ts.map +1 -1
- package/dist/services/accounts/accounts.schemas.js +3 -3
- package/dist/services/accounts/accounts.schemas.js.map +1 -1
- package/dist/services/address-book/address-book.schemas.d.ts +67 -68
- package/dist/services/address-book/address-book.schemas.d.ts.map +1 -1
- package/dist/services/address-book/address-book.schemas.js +11 -13
- package/dist/services/address-book/address-book.schemas.js.map +1 -1
- package/dist/services/api-keys/api-keys.schemas.d.ts +1 -2
- package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -1
- package/dist/services/api-keys/api-keys.schemas.js +4 -9
- package/dist/services/api-keys/api-keys.schemas.js.map +1 -1
- package/dist/services/auth/account-signer-auth.js +1 -1
- package/dist/services/auth/account-signer-auth.js.map +1 -1
- package/dist/services/auth/auth.d.ts +2 -3
- package/dist/services/auth/auth.d.ts.map +1 -1
- package/dist/services/auth/auth.js +4 -2
- package/dist/services/auth/auth.js.map +1 -1
- package/dist/services/balances/balances.schemas.d.ts +3 -3
- package/dist/services/balances/balances.schemas.d.ts.map +1 -1
- package/dist/services/balances/balances.schemas.js +7 -12
- package/dist/services/balances/balances.schemas.js.map +1 -1
- package/dist/services/candles/candles.schemas.d.ts +3 -3
- package/dist/services/candles/candles.schemas.d.ts.map +1 -1
- package/dist/services/candles/candles.schemas.js +5 -6
- package/dist/services/candles/candles.schemas.js.map +1 -1
- package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +3 -3
- package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -1
- package/dist/services/chain-analytics/chain-analytics.schemas.js +2 -3
- package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -1
- package/dist/services/claims/claims.codecs.d.ts +8 -0
- package/dist/services/claims/claims.codecs.d.ts.map +1 -0
- package/dist/services/claims/claims.codecs.js +17 -0
- package/dist/services/claims/claims.codecs.js.map +1 -0
- package/dist/services/claims/claims.d.ts +19 -0
- package/dist/services/claims/claims.d.ts.map +1 -0
- package/dist/services/claims/claims.js +30 -0
- package/dist/services/claims/claims.js.map +1 -0
- package/dist/services/claims/claims.schemas.d.ts +122 -0
- package/dist/services/claims/claims.schemas.d.ts.map +1 -0
- package/dist/services/claims/claims.schemas.js +47 -0
- package/dist/services/claims/claims.schemas.js.map +1 -0
- package/dist/services/claims/claims.types.d.ts +3 -0
- package/dist/services/claims/index.d.ts +5 -0
- package/dist/services/heatmap/heatmap.schemas.d.ts +4 -4
- package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -1
- package/dist/services/heatmap/heatmap.schemas.js +10 -10
- package/dist/services/heatmap/heatmap.schemas.js.map +1 -1
- package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -1
- package/dist/services/internal-transfers/internal-transfers.schemas.js +1 -5
- package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -1
- package/dist/services/lifecycle/lifecycle.schemas.d.ts +90 -90
- package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -1
- package/dist/services/lifecycle/lifecycle.schemas.js +10 -11
- package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -1
- package/dist/services/market-overview/market-overview.schemas.d.ts +1 -1
- package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -1
- package/dist/services/market-overview/market-overview.schemas.js +3 -3
- package/dist/services/market-overview/market-overview.schemas.js.map +1 -1
- package/dist/services/mfa/mfa.schemas.d.ts +11 -11
- package/dist/services/mfa/mfa.schemas.d.ts.map +1 -1
- package/dist/services/mfa/mfa.schemas.js +4 -5
- package/dist/services/mfa/mfa.schemas.js.map +1 -1
- package/dist/services/orderbook/orderbook.schemas.d.ts +1 -1
- package/dist/services/orders/order-enums.codecs.js +2 -1
- package/dist/services/orders/order-enums.codecs.js.map +1 -1
- package/dist/services/orders/order-errors.schemas.d.ts +4 -5
- package/dist/services/orders/order-errors.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-batch.schemas.d.ts +110 -32
- package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-batch.schemas.js +9 -10
- package/dist/services/orders/orders-batch.schemas.js.map +1 -1
- package/dist/services/orders/orders-input.schemas.d.ts +111 -8
- package/dist/services/orders/orders-input.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-input.schemas.js +20 -4
- package/dist/services/orders/orders-input.schemas.js.map +1 -1
- package/dist/services/orders/orders-modify.schemas.d.ts +2 -2
- package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-modify.schemas.js +3 -3
- package/dist/services/orders/orders-modify.schemas.js.map +1 -1
- package/dist/services/orders/orders-output.schemas.d.ts +48 -32
- package/dist/services/orders/orders-output.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-output.schemas.js +16 -16
- package/dist/services/orders/orders-output.schemas.js.map +1 -1
- package/dist/services/orders/orders-risk.schemas.d.ts +0 -1
- package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-risk.schemas.js +4 -4
- package/dist/services/orders/orders-risk.schemas.js.map +1 -1
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +4 -4
- package/dist/services/policies/shared.codecs.js +3 -3
- package/dist/services/policies/shared.codecs.js.map +1 -1
- package/dist/services/policies/shared.d.ts +0 -1
- package/dist/services/policies/shared.d.ts.map +1 -1
- package/dist/services/policies/shared.js +2 -3
- package/dist/services/policies/shared.js.map +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +2 -2
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +2 -5
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -1
- package/dist/services/rate-limits/rate-limits.schemas.d.ts +6 -7
- package/dist/services/rate-limits/rate-limits.schemas.d.ts.map +1 -1
- package/dist/services/rate-limits/rate-limits.schemas.js +2 -3
- package/dist/services/rate-limits/rate-limits.schemas.js.map +1 -1
- package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -1
- package/dist/services/social-verification/social-verification.schemas.js +4 -4
- package/dist/services/social-verification/social-verification.schemas.js.map +1 -1
- package/dist/services/subaccounts/subaccounts.schemas.d.ts +23 -24
- package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -1
- package/dist/services/subaccounts/subaccounts.schemas.js +10 -12
- package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -1
- package/dist/services/trades/trades.schemas.d.ts +1 -1
- package/dist/services/trades/trades.schemas.d.ts.map +1 -1
- package/dist/services/trades/trades.schemas.js +4 -8
- package/dist/services/trades/trades.schemas.js.map +1 -1
- package/dist/services/transfers/transfers.schemas.d.ts +3 -4
- package/dist/services/transfers/transfers.schemas.d.ts.map +1 -1
- package/dist/services/transfers/transfers.schemas.js +5 -10
- package/dist/services/transfers/transfers.schemas.js.map +1 -1
- package/dist/services/triggers/trigger-input.schemas.d.ts +2 -2
- package/dist/services/triggers/triggers-output.schemas.d.ts +56 -58
- package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
- package/dist/services/triggers/triggers-output.schemas.js +34 -36
- package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
- package/dist/services/whiteboard/whiteboard.schemas.d.ts +42 -42
- package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -1
- package/dist/services/whiteboard/whiteboard.schemas.js +9 -10
- package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -1
- package/dist/shared/proto-enum-codec.js +11 -6
- package/dist/shared/proto-enum-codec.js.map +1 -1
- package/dist/shared/rate-limit.schemas.d.ts +4 -5
- package/dist/shared/rate-limit.schemas.d.ts.map +1 -1
- package/dist/shared/rate-limit.schemas.js +41 -46
- package/dist/shared/rate-limit.schemas.js.map +1 -1
- package/dist/shared/schemas.js +5 -1
- package/dist/shared/schemas.js.map +1 -1
- package/dist/shared/transports.d.ts +5 -1
- package/dist/shared/transports.d.ts.map +1 -1
- package/dist/shared/transports.js.map +1 -1
- package/dist/utils/timestamp.js +8 -1
- package/dist/utils/timestamp.js.map +1 -1
- package/dist/wired-services.d.ts.map +1 -1
- package/dist/wired-services.js +2 -0
- package/dist/wired-services.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
//#region src/services/claims/claims.schemas.d.ts
|
|
3
|
+
declare const ClaimCampaignSchema: v.ObjectSchema<{
|
|
4
|
+
readonly campaignId: v.StringSchema<undefined>;
|
|
5
|
+
readonly name: v.StringSchema<undefined>;
|
|
6
|
+
readonly description: v.StringSchema<undefined>;
|
|
7
|
+
readonly claimPolicy: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, "unspecified" | "utc_daily">]>;
|
|
8
|
+
}, undefined>;
|
|
9
|
+
type ClaimCampaign = v.InferOutput<typeof ClaimCampaignSchema>;
|
|
10
|
+
declare const DailyClaimRewardSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
11
|
+
readonly assetId: v.NumberSchema<undefined>;
|
|
12
|
+
readonly assetCode: v.StringSchema<undefined>;
|
|
13
|
+
readonly amountE18: v.OptionalSchema<v.ObjectSchema<{
|
|
14
|
+
readonly hi: v.BigintSchema<undefined>;
|
|
15
|
+
readonly lo: v.BigintSchema<undefined>;
|
|
16
|
+
}, undefined>, undefined>;
|
|
17
|
+
}, undefined>, v.TransformAction<{
|
|
18
|
+
assetId: number;
|
|
19
|
+
assetCode: string;
|
|
20
|
+
amountE18?: {
|
|
21
|
+
hi: bigint;
|
|
22
|
+
lo: bigint;
|
|
23
|
+
} | undefined;
|
|
24
|
+
}, {
|
|
25
|
+
amount: string;
|
|
26
|
+
assetId: number;
|
|
27
|
+
assetCode: string;
|
|
28
|
+
}>]>;
|
|
29
|
+
type DailyClaimReward = v.InferOutput<typeof DailyClaimRewardSchema>;
|
|
30
|
+
declare const DailyClaimTransferSchema: v.ObjectSchema<{
|
|
31
|
+
readonly assetId: v.NumberSchema<undefined>;
|
|
32
|
+
readonly transferId: v.StringSchema<undefined>;
|
|
33
|
+
}, undefined>;
|
|
34
|
+
type DailyClaimTransfer = v.InferOutput<typeof DailyClaimTransferSchema>;
|
|
35
|
+
declare const DailyClaimStatusSchema: v.ObjectSchema<{
|
|
36
|
+
readonly state: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, "unspecified" | "available" | "processing" | "claimed" | "unavailable">]>;
|
|
37
|
+
readonly resetAt: v.SchemaWithPipe<readonly [v.OptionalSchema<v.ObjectSchema<{
|
|
38
|
+
readonly seconds: v.BigintSchema<undefined>;
|
|
39
|
+
readonly nanos: v.OptionalSchema<v.NumberSchema<undefined>, 0>;
|
|
40
|
+
}, undefined>, undefined>, v.TransformAction<{
|
|
41
|
+
seconds: bigint;
|
|
42
|
+
nanos: number;
|
|
43
|
+
} | undefined, number | undefined>]>;
|
|
44
|
+
readonly rewards: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
45
|
+
readonly assetId: v.NumberSchema<undefined>;
|
|
46
|
+
readonly assetCode: v.StringSchema<undefined>;
|
|
47
|
+
readonly amountE18: v.OptionalSchema<v.ObjectSchema<{
|
|
48
|
+
readonly hi: v.BigintSchema<undefined>;
|
|
49
|
+
readonly lo: v.BigintSchema<undefined>;
|
|
50
|
+
}, undefined>, undefined>;
|
|
51
|
+
}, undefined>, v.TransformAction<{
|
|
52
|
+
assetId: number;
|
|
53
|
+
assetCode: string;
|
|
54
|
+
amountE18?: {
|
|
55
|
+
hi: bigint;
|
|
56
|
+
lo: bigint;
|
|
57
|
+
} | undefined;
|
|
58
|
+
}, {
|
|
59
|
+
amount: string;
|
|
60
|
+
assetId: number;
|
|
61
|
+
assetCode: string;
|
|
62
|
+
}>]>, undefined>, readonly []>;
|
|
63
|
+
readonly claimId: v.StringSchema<undefined>;
|
|
64
|
+
readonly campaign: v.OptionalSchema<v.ObjectSchema<{
|
|
65
|
+
readonly campaignId: v.StringSchema<undefined>;
|
|
66
|
+
readonly name: v.StringSchema<undefined>;
|
|
67
|
+
readonly description: v.StringSchema<undefined>;
|
|
68
|
+
readonly claimPolicy: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, "unspecified" | "utc_daily">]>;
|
|
69
|
+
}, undefined>, undefined>;
|
|
70
|
+
}, undefined>;
|
|
71
|
+
type DailyClaimStatus = v.InferOutput<typeof DailyClaimStatusSchema>;
|
|
72
|
+
declare const ClaimDailyRewardResultSchema: v.ObjectSchema<{
|
|
73
|
+
readonly claimId: v.StringSchema<undefined>;
|
|
74
|
+
readonly state: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, "unspecified" | "available" | "processing" | "claimed" | "unavailable">]>;
|
|
75
|
+
readonly claimedAt: v.SchemaWithPipe<readonly [v.OptionalSchema<v.ObjectSchema<{
|
|
76
|
+
readonly seconds: v.BigintSchema<undefined>;
|
|
77
|
+
readonly nanos: v.OptionalSchema<v.NumberSchema<undefined>, 0>;
|
|
78
|
+
}, undefined>, undefined>, v.TransformAction<{
|
|
79
|
+
seconds: bigint;
|
|
80
|
+
nanos: number;
|
|
81
|
+
} | undefined, number | undefined>]>;
|
|
82
|
+
readonly rewards: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
83
|
+
readonly assetId: v.NumberSchema<undefined>;
|
|
84
|
+
readonly assetCode: v.StringSchema<undefined>;
|
|
85
|
+
readonly amountE18: v.OptionalSchema<v.ObjectSchema<{
|
|
86
|
+
readonly hi: v.BigintSchema<undefined>;
|
|
87
|
+
readonly lo: v.BigintSchema<undefined>;
|
|
88
|
+
}, undefined>, undefined>;
|
|
89
|
+
}, undefined>, v.TransformAction<{
|
|
90
|
+
assetId: number;
|
|
91
|
+
assetCode: string;
|
|
92
|
+
amountE18?: {
|
|
93
|
+
hi: bigint;
|
|
94
|
+
lo: bigint;
|
|
95
|
+
} | undefined;
|
|
96
|
+
}, {
|
|
97
|
+
amount: string;
|
|
98
|
+
assetId: number;
|
|
99
|
+
assetCode: string;
|
|
100
|
+
}>]>, undefined>, readonly []>;
|
|
101
|
+
readonly transfers: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
102
|
+
readonly assetId: v.NumberSchema<undefined>;
|
|
103
|
+
readonly transferId: v.StringSchema<undefined>;
|
|
104
|
+
}, undefined>, undefined>, readonly []>;
|
|
105
|
+
readonly resetAt: v.SchemaWithPipe<readonly [v.OptionalSchema<v.ObjectSchema<{
|
|
106
|
+
readonly seconds: v.BigintSchema<undefined>;
|
|
107
|
+
readonly nanos: v.OptionalSchema<v.NumberSchema<undefined>, 0>;
|
|
108
|
+
}, undefined>, undefined>, v.TransformAction<{
|
|
109
|
+
seconds: bigint;
|
|
110
|
+
nanos: number;
|
|
111
|
+
} | undefined, number | undefined>]>;
|
|
112
|
+
readonly campaign: v.OptionalSchema<v.ObjectSchema<{
|
|
113
|
+
readonly campaignId: v.StringSchema<undefined>;
|
|
114
|
+
readonly name: v.StringSchema<undefined>;
|
|
115
|
+
readonly description: v.StringSchema<undefined>;
|
|
116
|
+
readonly claimPolicy: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, "unspecified" | "utc_daily">]>;
|
|
117
|
+
}, undefined>, undefined>;
|
|
118
|
+
}, undefined>;
|
|
119
|
+
type ClaimDailyRewardResult = v.InferOutput<typeof ClaimDailyRewardResultSchema>;
|
|
120
|
+
//#endregion
|
|
121
|
+
export { ClaimCampaign, ClaimCampaignSchema, ClaimDailyRewardResult, ClaimDailyRewardResultSchema, DailyClaimReward, DailyClaimRewardSchema, DailyClaimStatus, DailyClaimStatusSchema, DailyClaimTransfer, DailyClaimTransferSchema };
|
|
122
|
+
//# sourceMappingURL=claims.schemas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claims.schemas.d.ts","names":[],"sources":["../../../src/services/claims/claims.schemas.ts"],"mappings":";;cAWa,qBAAmB,EAAA;;;;;;KAOpB,gBAAgB,EAAE,mBAAmB;cAEpC,wBAAsB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;KAYvB,mBAAmB,EAAE,mBAAmB;cAEvC,0BAAwB,EAAA;;;;KAKzB,qBAAqB,EAAE,mBAAmB;cAEzC,wBAAsB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAQvB,mBAAmB,EAAE,mBAAmB;cAEvC,8BAA4B,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAU7B,yBAAyB,EAAE,mBAAmB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { enumLabelSchema } from "../../shared/proto-enum-codec.js";
|
|
2
|
+
import { OptionalTimestampMsSchema, U128Schema } from "../../shared/schemas.js";
|
|
3
|
+
import { scaledToDecimalOutput } from "../../shared/decimal-surface.js";
|
|
4
|
+
import { fromU128 } from "../../utils/u128.js";
|
|
5
|
+
import { ClaimPolicyCodec, DailyClaimStateCodec } from "./claims.codecs.js";
|
|
6
|
+
import * as v from "valibot";
|
|
7
|
+
//#region src/services/claims/claims.schemas.ts
|
|
8
|
+
const DailyClaimStateSchema = enumLabelSchema(DailyClaimStateCodec.protoToOutput);
|
|
9
|
+
const ClaimPolicySchema = enumLabelSchema(ClaimPolicyCodec.protoToOutput);
|
|
10
|
+
const ClaimCampaignSchema = v.object({
|
|
11
|
+
campaignId: v.string(),
|
|
12
|
+
name: v.string(),
|
|
13
|
+
description: v.string(),
|
|
14
|
+
claimPolicy: ClaimPolicySchema
|
|
15
|
+
});
|
|
16
|
+
const DailyClaimRewardSchema = v.pipe(v.object({
|
|
17
|
+
assetId: v.number(),
|
|
18
|
+
assetCode: v.string(),
|
|
19
|
+
amountE18: v.optional(U128Schema)
|
|
20
|
+
}), v.transform(({ amountE18, ...reward }) => ({
|
|
21
|
+
...reward,
|
|
22
|
+
amount: scaledToDecimalOutput(fromU128(amountE18), 18)
|
|
23
|
+
})));
|
|
24
|
+
const DailyClaimTransferSchema = v.object({
|
|
25
|
+
assetId: v.number(),
|
|
26
|
+
transferId: v.string()
|
|
27
|
+
});
|
|
28
|
+
const DailyClaimStatusSchema = v.object({
|
|
29
|
+
state: DailyClaimStateSchema,
|
|
30
|
+
resetAt: OptionalTimestampMsSchema,
|
|
31
|
+
rewards: v.optional(v.array(DailyClaimRewardSchema), []),
|
|
32
|
+
claimId: v.string(),
|
|
33
|
+
campaign: v.optional(ClaimCampaignSchema)
|
|
34
|
+
});
|
|
35
|
+
const ClaimDailyRewardResultSchema = v.object({
|
|
36
|
+
claimId: v.string(),
|
|
37
|
+
state: DailyClaimStateSchema,
|
|
38
|
+
claimedAt: OptionalTimestampMsSchema,
|
|
39
|
+
rewards: v.optional(v.array(DailyClaimRewardSchema), []),
|
|
40
|
+
transfers: v.optional(v.array(DailyClaimTransferSchema), []),
|
|
41
|
+
resetAt: OptionalTimestampMsSchema,
|
|
42
|
+
campaign: v.optional(ClaimCampaignSchema)
|
|
43
|
+
});
|
|
44
|
+
//#endregion
|
|
45
|
+
export { ClaimCampaignSchema, ClaimDailyRewardResultSchema, DailyClaimRewardSchema, DailyClaimStatusSchema, DailyClaimTransferSchema };
|
|
46
|
+
|
|
47
|
+
//# sourceMappingURL=claims.schemas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claims.schemas.js","names":[],"sources":["../../../src/services/claims/claims.schemas.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport { E18_SCALE, scaledToDecimalOutput } from \"../../shared/decimal-surface.js\";\nimport { enumLabelSchema } from \"../../shared/proto-enum-codec.js\";\nimport { OptionalTimestampMsSchema, U128Schema } from \"../../shared/schemas.js\";\nimport { fromU128 } from \"../../utils/u128.js\";\nimport { ClaimPolicyCodec, DailyClaimStateCodec } from \"./claims.codecs.js\";\n\nconst DailyClaimStateSchema = enumLabelSchema(DailyClaimStateCodec.protoToOutput);\n\nconst ClaimPolicySchema = enumLabelSchema(ClaimPolicyCodec.protoToOutput);\n\nexport const ClaimCampaignSchema = v.object({\n campaignId: v.string(),\n name: v.string(),\n description: v.string(),\n claimPolicy: ClaimPolicySchema,\n});\n\nexport type ClaimCampaign = v.InferOutput<typeof ClaimCampaignSchema>;\n\nexport const DailyClaimRewardSchema = v.pipe(\n v.object({\n assetId: v.number(),\n assetCode: v.string(),\n amountE18: v.optional(U128Schema),\n }),\n v.transform(({ amountE18, ...reward }) => ({\n ...reward,\n amount: scaledToDecimalOutput(fromU128(amountE18), E18_SCALE),\n })),\n);\n\nexport type DailyClaimReward = v.InferOutput<typeof DailyClaimRewardSchema>;\n\nexport const DailyClaimTransferSchema = v.object({\n assetId: v.number(),\n transferId: v.string(),\n});\n\nexport type DailyClaimTransfer = v.InferOutput<typeof DailyClaimTransferSchema>;\n\nexport const DailyClaimStatusSchema = v.object({\n state: DailyClaimStateSchema,\n resetAt: OptionalTimestampMsSchema,\n rewards: v.optional(v.array(DailyClaimRewardSchema), []),\n claimId: v.string(),\n campaign: v.optional(ClaimCampaignSchema),\n});\n\nexport type DailyClaimStatus = v.InferOutput<typeof DailyClaimStatusSchema>;\n\nexport const ClaimDailyRewardResultSchema = v.object({\n claimId: v.string(),\n state: DailyClaimStateSchema,\n claimedAt: OptionalTimestampMsSchema,\n rewards: v.optional(v.array(DailyClaimRewardSchema), []),\n transfers: v.optional(v.array(DailyClaimTransferSchema), []),\n resetAt: OptionalTimestampMsSchema,\n campaign: v.optional(ClaimCampaignSchema),\n});\n\nexport type ClaimDailyRewardResult = v.InferOutput<typeof ClaimDailyRewardResultSchema>;\n"],"mappings":";;;;;;;AAOA,MAAM,wBAAwB,gBAAgB,qBAAqB,aAAa;AAEhF,MAAM,oBAAoB,gBAAgB,iBAAiB,aAAa;AAExE,MAAa,sBAAsB,EAAE,OAAO;CACxC,YAAY,EAAE,OAAO;CACrB,MAAM,EAAE,OAAO;CACf,aAAa,EAAE,OAAO;CACtB,aAAa;AACjB,CAAC;AAID,MAAa,yBAAyB,EAAE,KACpC,EAAE,OAAO;CACL,SAAS,EAAE,OAAO;CAClB,WAAW,EAAE,OAAO;CACpB,WAAW,EAAE,SAAS,UAAU;AACpC,CAAC,GACD,EAAE,WAAW,EAAE,WAAW,GAAG,cAAc;CACvC,GAAG;CACH,QAAQ,sBAAsB,SAAS,SAAS,GAAA,EAAY;AAChE,EAAE,CACN;AAIA,MAAa,2BAA2B,EAAE,OAAO;CAC7C,SAAS,EAAE,OAAO;CAClB,YAAY,EAAE,OAAO;AACzB,CAAC;AAID,MAAa,yBAAyB,EAAE,OAAO;CAC3C,OAAO;CACP,SAAS;CACT,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,GAAG,CAAC,CAAC;CACvD,SAAS,EAAE,OAAO;CAClB,UAAU,EAAE,SAAS,mBAAmB;AAC5C,CAAC;AAID,MAAa,+BAA+B,EAAE,OAAO;CACjD,SAAS,EAAE,OAAO;CAClB,OAAO;CACP,WAAW;CACX,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,GAAG,CAAC,CAAC;CACvD,WAAW,EAAE,SAAS,EAAE,MAAM,wBAAwB,GAAG,CAAC,CAAC;CAC3D,SAAS;CACT,UAAU,EAAE,SAAS,mBAAmB;AAC5C,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ClaimCampaign, ClaimDailyRewardResult, DailyClaimReward, DailyClaimStatus, DailyClaimTransfer } from "./claims.schemas.js";
|
|
2
|
+
import { ClaimPolicy, DailyClaimState } from "./claims.codecs.js";
|
|
3
|
+
export type { ClaimCampaign, ClaimDailyRewardResult, ClaimPolicy, DailyClaimReward, DailyClaimState, DailyClaimStatus, DailyClaimTransfer };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ClaimCampaign, ClaimDailyRewardResult, DailyClaimReward, DailyClaimStatus, DailyClaimTransfer } from "./claims.schemas.js";
|
|
2
|
+
import { ClaimsService } from "./claims.js";
|
|
3
|
+
import { ClaimPolicy, DailyClaimState } from "./claims.codecs.js";
|
|
4
|
+
import "./claims.types.js";
|
|
5
|
+
export { type ClaimCampaign, type ClaimDailyRewardResult, type ClaimPolicy, ClaimsService, type DailyClaimReward, type DailyClaimState, type DailyClaimStatus, type DailyClaimTransfer };
|
|
@@ -14,7 +14,7 @@ type TimestampInit = {
|
|
|
14
14
|
declare const GetOrderbookHeatmapInputSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
15
15
|
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
16
16
|
readonly interval: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["1s", "1m", "5m", "1h"], undefined>, "1s">, v.TransformAction<"1s" | "1m" | "5m" | "1h", HeatmapInterval>]>;
|
|
17
|
-
readonly depth: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly [1, 5, 10, 20, 50, 100, 200, 500, 1000], undefined>, 50>, v.TransformAction<
|
|
17
|
+
readonly depth: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly [1, 5, 10, 20, 50, 100, 200, 500, 1000], undefined>, 50>, v.TransformAction<1 | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50, HeatmapDepth>]>;
|
|
18
18
|
readonly quantityMode: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["close", "peak"], undefined>, "close">, v.TransformAction<"close" | "peak", HeatmapQuantityMode>]>;
|
|
19
19
|
readonly limit: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 20000, undefined>]>;
|
|
20
20
|
readonly startTsSec: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, number, undefined>, v.TransformAction<number, bigint>]>, undefined>;
|
|
@@ -227,7 +227,7 @@ type OrderbookHeatmapDeltaChain = ReturnType<typeof convertHeatmapDeltaChain>;
|
|
|
227
227
|
declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
228
228
|
readonly symbolId: v.NumberSchema<undefined>;
|
|
229
229
|
readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1s" | "1m" | "5m" | "1h">>]>;
|
|
230
|
-
readonly depth: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number,
|
|
230
|
+
readonly depth: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, 1 | "unspecified" | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50>]>;
|
|
231
231
|
readonly chain: v.OptionalSchema<v.ObjectSchema<{
|
|
232
232
|
readonly baseKeyframe: v.OptionalSchema<v.ObjectSchema<{
|
|
233
233
|
readonly tsSec: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, number>]>;
|
|
@@ -287,7 +287,7 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
|
|
|
287
287
|
}, undefined>, v.TransformAction<{
|
|
288
288
|
symbolId: number;
|
|
289
289
|
interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
|
|
290
|
-
depth:
|
|
290
|
+
depth: 1 | "unspecified" | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50;
|
|
291
291
|
chain?: {
|
|
292
292
|
baseKeyframe?: {
|
|
293
293
|
tsSec: number;
|
|
@@ -347,7 +347,7 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
|
|
|
347
347
|
}, {
|
|
348
348
|
symbolId: number;
|
|
349
349
|
interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
|
|
350
|
-
depth:
|
|
350
|
+
depth: 1 | "unspecified" | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50;
|
|
351
351
|
chain: {
|
|
352
352
|
baseKeyframe: {
|
|
353
353
|
tsSec: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heatmap.schemas.d.ts","names":[],"sources":["../../../src/services/heatmap/heatmap.schemas.ts"],"mappings":";;;;;KAsBK;EACD,YAAY;EACZ,UAAU;;KAGT;EAAkB;EAAiB;;cAqB3B,gCAA8B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"heatmap.schemas.d.ts","names":[],"sources":["../../../src/services/heatmap/heatmap.schemas.ts"],"mappings":";;;;;KAsBK;EACD,YAAY;EACZ,UAAU;;KAGT;EAAkB;EAAiB;;cAqB3B,gCAA8B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA0DrC,iCAA+B,EAAA;;;;KAKhC,4BAA4B,EAAE,mBAAmB;iBAE7C,qBACL,QAAQ,2BACR,oBACA;;;;KAQQ,yBAAyB,kBAAkB;KAE3C,8BAA8B;cAEpC,mCAAiC,EAAA;;;;;;;;;;;;;;;KAUlC,8BAA8B,EAAE,mBAAmB;iBAE/C,uBACL,UAAU,6BACV,oBACA;;;;;;;;;;;;;;;KAaQ,2BAA2B,kBAAkB;cAEnD,sCAAoC,EAAA;;;;;;;;;;;;;;KASrC,iCAAiC,EAAE,mBAAmB;iBAElD,0BACL,QAAQ,gCACR,oBACA;;;;;;;;;;;;;;KAYQ,8BAA8B,kBAAkB;cAEtD,qCAAmC,EAAA;;;;;;;;;;;;;;;;;;;KAcpC,gCAAgC,EAAE,mBAAmB;iBAEjD,yBAAyB,QAAQ,+BAA+B,QAAQ;;;;;;;;;;;;;;;;;;;KAkBrE,6BAA6B,kBAAkB;cASrD,qCAAmC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAKpC,gCAAgC,EAAE,mBAAmB;iBAEjD,yBACL,OAAO,+BACP,oBACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAYQ,6BAA6B,kBAAkB;iBAmB3C,qCAAqC,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2B1D,2BAA2B,EAAE,kBAAkB;KAE/C,2BAA2B,EAAE,YACrC,kBAAkB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { enumLabel } from "../../shared/proto-enum-codec.js";
|
|
2
2
|
import { OptionalTimestampSecondsInputSchema } from "../../shared/schemas.js";
|
|
3
3
|
import { SymbolIdInputSchema } from "../shared.js";
|
|
4
4
|
import { scaledToDecimalOutput } from "../../shared/decimal-surface.js";
|
|
@@ -38,11 +38,11 @@ const GetOrderbookHeatmapInputSchema = v.pipe(v.object({
|
|
|
38
38
|
timeRange
|
|
39
39
|
};
|
|
40
40
|
}));
|
|
41
|
-
function
|
|
42
|
-
return
|
|
41
|
+
function intervalLabelFor(value) {
|
|
42
|
+
return enumLabel(HeatmapIntervalCodec.protoToOutput, value);
|
|
43
43
|
}
|
|
44
|
-
function
|
|
45
|
-
return
|
|
44
|
+
function quantityModeLabelFor(value) {
|
|
45
|
+
return enumLabel(HeatmapQuantityModeCodec.protoToOutput, value);
|
|
46
46
|
}
|
|
47
47
|
const TimestampSecondsSchema = v.pipe(v.bigint(), v.transform((value) => Number(value)));
|
|
48
48
|
const Uint64StringSchema = v.pipe(v.bigint(), v.transform((value) => value.toString()));
|
|
@@ -96,7 +96,7 @@ function convertHeatmapDeltaBucket(bucket, priceScale, qtyScale) {
|
|
|
96
96
|
}
|
|
97
97
|
const OrderbookHeatmapLiveBucketRawSchema = v.object({
|
|
98
98
|
symbolId: v.number(),
|
|
99
|
-
interval: v.pipe(v.number(), v.transform(
|
|
99
|
+
interval: v.pipe(v.number(), v.transform(intervalLabelFor)),
|
|
100
100
|
tsSec: TimestampSecondsSchema,
|
|
101
101
|
isFinal: v.boolean(),
|
|
102
102
|
bids: v.optional(OrderbookHeatmapLevelsRawSchema),
|
|
@@ -104,7 +104,7 @@ const OrderbookHeatmapLiveBucketRawSchema = v.object({
|
|
|
104
104
|
updatesInBucket: v.number(),
|
|
105
105
|
bookSeqStart: Uint64StringSchema,
|
|
106
106
|
bookSeqEnd: Uint64StringSchema,
|
|
107
|
-
quantityMode: v.pipe(v.number(), v.transform(
|
|
107
|
+
quantityMode: v.pipe(v.number(), v.transform(quantityModeLabelFor)),
|
|
108
108
|
effectiveBinTicks: v.bigint()
|
|
109
109
|
});
|
|
110
110
|
function convertHeatmapLiveBucket(bucket, scales) {
|
|
@@ -139,15 +139,15 @@ function convertHeatmapDeltaChain(chain, priceScale, qtyScale) {
|
|
|
139
139
|
}
|
|
140
140
|
const OrderbookHeatmapResponseRawSchema = v.object({
|
|
141
141
|
symbolId: v.number(),
|
|
142
|
-
interval: v.pipe(v.number(), v.transform(
|
|
143
|
-
depth: v.pipe(v.number(), v.transform((value) =>
|
|
142
|
+
interval: v.pipe(v.number(), v.transform(intervalLabelFor)),
|
|
143
|
+
depth: v.pipe(v.number(), v.transform((value) => enumLabel(HeatmapDepthCodec.protoToOutput, value))),
|
|
144
144
|
chain: v.optional(OrderbookHeatmapDeltaChainRawSchema),
|
|
145
145
|
lastPersistedTsSec: TimestampSecondsSchema,
|
|
146
146
|
liveFromBookSeqEnd: Uint64StringSchema,
|
|
147
147
|
hasLiveAnchor: v.boolean(),
|
|
148
148
|
nextPageToken: v.optional(v.string(), ""),
|
|
149
149
|
serverTimeSec: TimestampSecondsSchema,
|
|
150
|
-
quantityMode: v.pipe(v.number(), v.transform(
|
|
150
|
+
quantityMode: v.pipe(v.number(), v.transform(quantityModeLabelFor)),
|
|
151
151
|
liveBucket: v.optional(OrderbookHeatmapLiveBucketRawSchema)
|
|
152
152
|
});
|
|
153
153
|
function createOrderbookHeatmapResponseSchema(scales) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heatmap.schemas.js","names":[],"sources":["../../../src/services/heatmap/heatmap.schemas.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport { SymbolIdInputSchema } from \"../shared.js\";\nimport type {\n HeatmapDepth,\n HeatmapInterval,\n HeatmapQuantityMode,\n} from \"../../gen/marketdata/v1/heatmap_pb.js\";\nimport { OptionalTimestampSecondsInputSchema } from \"../../shared/schemas.js\";\nimport { requiredEnumLabel } from \"../../shared/proto-enum-codec.js\";\nimport type { DecodedEnum } from \"../../utils/types.js\";\nimport { scaledToDecimalOutput, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport {\n HEATMAP_DEPTH_VALUES,\n HEATMAP_INTERVAL_VALUES,\n HEATMAP_QUANTITY_MODE_VALUES,\n HeatmapDepthCodec,\n HeatmapIntervalCodec,\n HeatmapQuantityModeCodec,\n type HeatmapIntervalValue,\n type HeatmapQuantityModeValue,\n} from \"./heatmap.codecs.js\";\n\ntype HeatmapTimeRangeInit = {\n startTime?: TimestampInit;\n endTime?: TimestampInit;\n};\n\ntype TimestampInit = { seconds: bigint; nanos: number };\n\nconst IntervalInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_INTERVAL_VALUES), \"1s\"),\n v.transform((value): HeatmapInterval => HeatmapIntervalCodec.inputToProto[value]),\n);\n\nconst DepthInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_DEPTH_VALUES), 50),\n v.transform((value): HeatmapDepth => HeatmapDepthCodec.inputToProto[value]),\n);\n\nconst QuantityModeInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_QUANTITY_MODE_VALUES), \"close\"),\n v.transform((value): HeatmapQuantityMode => HeatmapQuantityModeCodec.inputToProto[value]),\n);\n\nfunction timestampFromTsSec(tsSec: bigint): TimestampInit {\n return { seconds: tsSec, nanos: 0 };\n}\n\nexport const GetOrderbookHeatmapInputSchema = v.pipe(\n v.object({\n symbolId: SymbolIdInputSchema,\n interval: IntervalInputSchema,\n depth: DepthInputSchema,\n quantityMode: QuantityModeInputSchema,\n limit: v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(20_000)),\n startTsSec: OptionalTimestampSecondsInputSchema,\n endTsSec: OptionalTimestampSecondsInputSchema,\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.check(\n (value) => value.pageToken !== \"\" || value.startTsSec != null || value.endTsSec != null,\n \"pageToken, startTsSec, or endTsSec is required\",\n ),\n v.transform((value) => {\n const timeRange: HeatmapTimeRangeInit | undefined =\n value.pageToken !== \"\"\n ? undefined\n : {\n startTime:\n value.startTsSec != null\n ? timestampFromTsSec(value.startTsSec)\n : undefined,\n endTime:\n value.endTsSec != null ? timestampFromTsSec(value.endTsSec) : undefined,\n };\n\n return {\n symbolId: value.symbolId,\n interval: value.interval,\n depth: value.depth,\n quantityMode: value.quantityMode,\n limit: value.limit,\n pageToken: value.pageToken,\n timeRange,\n };\n }),\n);\n\nfunction requiredIntervalLabelFor(value: number): DecodedEnum<HeatmapIntervalValue> {\n return requiredEnumLabel(\n HeatmapIntervalCodec.protoToOutput,\n value,\n \"OrderbookHeatmapResponseSchema\",\n \"interval\",\n );\n}\n\nfunction requiredQuantityModeLabelFor(value: number): DecodedEnum<HeatmapQuantityModeValue> {\n return requiredEnumLabel(\n HeatmapQuantityModeCodec.protoToOutput,\n value,\n \"OrderbookHeatmapResponseSchema\",\n \"quantity mode\",\n );\n}\n\nconst TimestampSecondsSchema = v.pipe(\n v.bigint(),\n v.transform((value) => Number(value)),\n);\n\nconst Uint64StringSchema = v.pipe(\n v.bigint(),\n v.transform((value) => value.toString()),\n);\n\nconst OrderbookHeatmapLevelsRawSchema = v.object({\n priceTicks: v.array(v.bigint()),\n qtyScaled: v.array(v.bigint()),\n});\n\ntype OrderbookHeatmapLevelsRaw = v.InferOutput<typeof OrderbookHeatmapLevelsRawSchema>;\n\nfunction convertHeatmapLevels(\n levels: OrderbookHeatmapLevelsRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n price: levels.priceTicks.map((tick) => scaledToDecimalOutput(tick, priceScale)),\n qty: levels.qtyScaled.map((qty) => scaledToDecimalOutput(qty, qtyScale)),\n };\n}\n\nexport type OrderbookHeatmapLevels = ReturnType<typeof convertHeatmapLevels>;\n\nexport type OrderbookHeatmapDeltaLevels = OrderbookHeatmapLevels;\n\nconst OrderbookHeatmapKeyframeRawSchema = v.object({\n tsSec: TimestampSecondsSchema,\n bestBidTicks: v.bigint(),\n bestAskTicks: v.bigint(),\n midTicks: v.bigint(),\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n bookSeq: Uint64StringSchema,\n});\n\ntype OrderbookHeatmapKeyframeRaw = v.InferOutput<typeof OrderbookHeatmapKeyframeRawSchema>;\n\nfunction convertHeatmapKeyframe(\n keyframe: OrderbookHeatmapKeyframeRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n tsSec: keyframe.tsSec,\n bestBid: scaledToDecimalOutput(keyframe.bestBidTicks, priceScale),\n bestAsk: scaledToDecimalOutput(keyframe.bestAskTicks, priceScale),\n mid: scaledToDecimalOutput(keyframe.midTicks, priceScale),\n bids: keyframe.bids ? convertHeatmapLevels(keyframe.bids, priceScale, qtyScale) : undefined,\n asks: keyframe.asks ? convertHeatmapLevels(keyframe.asks, priceScale, qtyScale) : undefined,\n bookSeq: keyframe.bookSeq,\n };\n}\n\nexport type OrderbookHeatmapKeyframe = ReturnType<typeof convertHeatmapKeyframe>;\n\nconst OrderbookHeatmapDeltaBucketRawSchema = v.object({\n tsSec: TimestampSecondsSchema,\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n updatesInBucket: v.number(),\n bookSeqStart: Uint64StringSchema,\n bookSeqEnd: Uint64StringSchema,\n});\n\ntype OrderbookHeatmapDeltaBucketRaw = v.InferOutput<typeof OrderbookHeatmapDeltaBucketRawSchema>;\n\nfunction convertHeatmapDeltaBucket(\n bucket: OrderbookHeatmapDeltaBucketRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n tsSec: bucket.tsSec,\n bids: bucket.bids ? convertHeatmapLevels(bucket.bids, priceScale, qtyScale) : undefined,\n asks: bucket.asks ? convertHeatmapLevels(bucket.asks, priceScale, qtyScale) : undefined,\n updatesInBucket: bucket.updatesInBucket,\n bookSeqStart: bucket.bookSeqStart,\n bookSeqEnd: bucket.bookSeqEnd,\n };\n}\n\nexport type OrderbookHeatmapDeltaBucket = ReturnType<typeof convertHeatmapDeltaBucket>;\n\nconst OrderbookHeatmapLiveBucketRawSchema = v.object({\n symbolId: v.number(),\n interval: v.pipe(v.number(), v.transform(requiredIntervalLabelFor)),\n tsSec: TimestampSecondsSchema,\n isFinal: v.boolean(),\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n updatesInBucket: v.number(),\n bookSeqStart: Uint64StringSchema,\n bookSeqEnd: Uint64StringSchema,\n quantityMode: v.pipe(v.number(), v.transform(requiredQuantityModeLabelFor)),\n effectiveBinTicks: v.bigint(),\n});\n\ntype OrderbookHeatmapLiveBucketRaw = v.InferOutput<typeof OrderbookHeatmapLiveBucketRawSchema>;\n\nfunction convertHeatmapLiveBucket(bucket: OrderbookHeatmapLiveBucketRaw, scales: SdkScales) {\n const priceScale = scales.price();\n const qtyScale = scales.baseQty(bucket.symbolId);\n return {\n symbolId: bucket.symbolId,\n interval: bucket.interval,\n tsSec: bucket.tsSec,\n isFinal: bucket.isFinal,\n bids: bucket.bids ? convertHeatmapLevels(bucket.bids, priceScale, qtyScale) : undefined,\n asks: bucket.asks ? convertHeatmapLevels(bucket.asks, priceScale, qtyScale) : undefined,\n updatesInBucket: bucket.updatesInBucket,\n bookSeqStart: bucket.bookSeqStart,\n bookSeqEnd: bucket.bookSeqEnd,\n quantityMode: bucket.quantityMode,\n effectiveBinSize: scaledToDecimalOutput(bucket.effectiveBinTicks, priceScale),\n };\n}\n\nexport type OrderbookHeatmapLiveBucket = ReturnType<typeof convertHeatmapLiveBucket>;\n\nexport function createOrderbookHeatmapLiveBucketSchema(scales: SdkScales) {\n return v.pipe(\n OrderbookHeatmapLiveBucketRawSchema,\n v.transform((bucket) => convertHeatmapLiveBucket(bucket, scales)),\n );\n}\n\nconst OrderbookHeatmapDeltaChainRawSchema = v.object({\n baseKeyframe: v.optional(OrderbookHeatmapKeyframeRawSchema),\n deltas: v.optional(v.array(OrderbookHeatmapDeltaBucketRawSchema), []),\n});\n\ntype OrderbookHeatmapDeltaChainRaw = v.InferOutput<typeof OrderbookHeatmapDeltaChainRawSchema>;\n\nfunction convertHeatmapDeltaChain(\n chain: OrderbookHeatmapDeltaChainRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n baseKeyframe: chain.baseKeyframe\n ? convertHeatmapKeyframe(chain.baseKeyframe, priceScale, qtyScale)\n : undefined,\n deltas: chain.deltas.map((bucket) =>\n convertHeatmapDeltaBucket(bucket, priceScale, qtyScale),\n ),\n };\n}\n\nexport type OrderbookHeatmapDeltaChain = ReturnType<typeof convertHeatmapDeltaChain>;\n\nconst OrderbookHeatmapResponseRawSchema = v.object({\n symbolId: v.number(),\n interval: v.pipe(v.number(), v.transform(requiredIntervalLabelFor)),\n depth: v.pipe(\n v.number(),\n v.transform((value) =>\n requiredEnumLabel(\n HeatmapDepthCodec.protoToOutput,\n value,\n \"OrderbookHeatmapResponseSchema\",\n \"depth\",\n ),\n ),\n ),\n chain: v.optional(OrderbookHeatmapDeltaChainRawSchema),\n lastPersistedTsSec: TimestampSecondsSchema,\n liveFromBookSeqEnd: Uint64StringSchema,\n hasLiveAnchor: v.boolean(),\n nextPageToken: v.optional(v.string(), \"\"),\n serverTimeSec: TimestampSecondsSchema,\n quantityMode: v.pipe(v.number(), v.transform(requiredQuantityModeLabelFor)),\n liveBucket: v.optional(OrderbookHeatmapLiveBucketRawSchema),\n});\n\nexport function createOrderbookHeatmapResponseSchema(scales: SdkScales) {\n return v.pipe(\n OrderbookHeatmapResponseRawSchema,\n v.transform((res) => {\n const priceScale = scales.price();\n const qtyScale = scales.baseQty(res.symbolId);\n return {\n symbolId: res.symbolId,\n interval: res.interval,\n depth: res.depth,\n chain: res.chain\n ? convertHeatmapDeltaChain(res.chain, priceScale, qtyScale)\n : undefined,\n lastPersistedTsSec: res.lastPersistedTsSec,\n liveFromBookSeqEnd: res.liveFromBookSeqEnd,\n hasLiveAnchor: res.hasLiveAnchor,\n nextPageToken: res.nextPageToken,\n serverTimeSec: res.serverTimeSec,\n quantityMode: res.quantityMode,\n liveBucket: res.liveBucket\n ? convertHeatmapLiveBucket(res.liveBucket, scales)\n : undefined,\n };\n }),\n );\n}\n\nexport type GetOrderbookHeatmapInput = v.InferInput<typeof GetOrderbookHeatmapInputSchema>;\nexport type ParsedGetOrderbookHeatmapInput = v.InferOutput<typeof GetOrderbookHeatmapInputSchema>;\nexport type OrderbookHeatmapResponse = v.InferOutput<\n ReturnType<typeof createOrderbookHeatmapResponseSchema>\n>;\nexport type ParsedHeatmapTimeRange = HeatmapTimeRangeInit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"heatmap.schemas.js","names":[],"sources":["../../../src/services/heatmap/heatmap.schemas.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport { SymbolIdInputSchema } from \"../shared.js\";\nimport type {\n HeatmapDepth,\n HeatmapInterval,\n HeatmapQuantityMode,\n} from \"../../gen/marketdata/v1/heatmap_pb.js\";\nimport { OptionalTimestampSecondsInputSchema } from \"../../shared/schemas.js\";\nimport { enumLabel } from \"../../shared/proto-enum-codec.js\";\nimport type { DecodedEnum } from \"../../utils/types.js\";\nimport { scaledToDecimalOutput, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport {\n HEATMAP_DEPTH_VALUES,\n HEATMAP_INTERVAL_VALUES,\n HEATMAP_QUANTITY_MODE_VALUES,\n HeatmapDepthCodec,\n HeatmapIntervalCodec,\n HeatmapQuantityModeCodec,\n type HeatmapIntervalValue,\n type HeatmapQuantityModeValue,\n} from \"./heatmap.codecs.js\";\n\ntype HeatmapTimeRangeInit = {\n startTime?: TimestampInit;\n endTime?: TimestampInit;\n};\n\ntype TimestampInit = { seconds: bigint; nanos: number };\n\nconst IntervalInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_INTERVAL_VALUES), \"1s\"),\n v.transform((value): HeatmapInterval => HeatmapIntervalCodec.inputToProto[value]),\n);\n\nconst DepthInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_DEPTH_VALUES), 50),\n v.transform((value): HeatmapDepth => HeatmapDepthCodec.inputToProto[value]),\n);\n\nconst QuantityModeInputSchema = v.pipe(\n v.optional(v.picklist(HEATMAP_QUANTITY_MODE_VALUES), \"close\"),\n v.transform((value): HeatmapQuantityMode => HeatmapQuantityModeCodec.inputToProto[value]),\n);\n\nfunction timestampFromTsSec(tsSec: bigint): TimestampInit {\n return { seconds: tsSec, nanos: 0 };\n}\n\nexport const GetOrderbookHeatmapInputSchema = v.pipe(\n v.object({\n symbolId: SymbolIdInputSchema,\n interval: IntervalInputSchema,\n depth: DepthInputSchema,\n quantityMode: QuantityModeInputSchema,\n limit: v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(20_000)),\n startTsSec: OptionalTimestampSecondsInputSchema,\n endTsSec: OptionalTimestampSecondsInputSchema,\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.check(\n (value) => value.pageToken !== \"\" || value.startTsSec != null || value.endTsSec != null,\n \"pageToken, startTsSec, or endTsSec is required\",\n ),\n v.transform((value) => {\n const timeRange: HeatmapTimeRangeInit | undefined =\n value.pageToken !== \"\"\n ? undefined\n : {\n startTime:\n value.startTsSec != null\n ? timestampFromTsSec(value.startTsSec)\n : undefined,\n endTime:\n value.endTsSec != null ? timestampFromTsSec(value.endTsSec) : undefined,\n };\n\n return {\n symbolId: value.symbolId,\n interval: value.interval,\n depth: value.depth,\n quantityMode: value.quantityMode,\n limit: value.limit,\n pageToken: value.pageToken,\n timeRange,\n };\n }),\n);\n\nfunction intervalLabelFor(value: number): DecodedEnum<HeatmapIntervalValue> {\n return enumLabel(HeatmapIntervalCodec.protoToOutput, value);\n}\n\nfunction quantityModeLabelFor(value: number): DecodedEnum<HeatmapQuantityModeValue> {\n return enumLabel(HeatmapQuantityModeCodec.protoToOutput, value);\n}\n\nconst TimestampSecondsSchema = v.pipe(\n v.bigint(),\n v.transform((value) => Number(value)),\n);\n\nconst Uint64StringSchema = v.pipe(\n v.bigint(),\n v.transform((value) => value.toString()),\n);\n\nconst OrderbookHeatmapLevelsRawSchema = v.object({\n priceTicks: v.array(v.bigint()),\n qtyScaled: v.array(v.bigint()),\n});\n\ntype OrderbookHeatmapLevelsRaw = v.InferOutput<typeof OrderbookHeatmapLevelsRawSchema>;\n\nfunction convertHeatmapLevels(\n levels: OrderbookHeatmapLevelsRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n price: levels.priceTicks.map((tick) => scaledToDecimalOutput(tick, priceScale)),\n qty: levels.qtyScaled.map((qty) => scaledToDecimalOutput(qty, qtyScale)),\n };\n}\n\nexport type OrderbookHeatmapLevels = ReturnType<typeof convertHeatmapLevels>;\n\nexport type OrderbookHeatmapDeltaLevels = OrderbookHeatmapLevels;\n\nconst OrderbookHeatmapKeyframeRawSchema = v.object({\n tsSec: TimestampSecondsSchema,\n bestBidTicks: v.bigint(),\n bestAskTicks: v.bigint(),\n midTicks: v.bigint(),\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n bookSeq: Uint64StringSchema,\n});\n\ntype OrderbookHeatmapKeyframeRaw = v.InferOutput<typeof OrderbookHeatmapKeyframeRawSchema>;\n\nfunction convertHeatmapKeyframe(\n keyframe: OrderbookHeatmapKeyframeRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n tsSec: keyframe.tsSec,\n bestBid: scaledToDecimalOutput(keyframe.bestBidTicks, priceScale),\n bestAsk: scaledToDecimalOutput(keyframe.bestAskTicks, priceScale),\n mid: scaledToDecimalOutput(keyframe.midTicks, priceScale),\n bids: keyframe.bids ? convertHeatmapLevels(keyframe.bids, priceScale, qtyScale) : undefined,\n asks: keyframe.asks ? convertHeatmapLevels(keyframe.asks, priceScale, qtyScale) : undefined,\n bookSeq: keyframe.bookSeq,\n };\n}\n\nexport type OrderbookHeatmapKeyframe = ReturnType<typeof convertHeatmapKeyframe>;\n\nconst OrderbookHeatmapDeltaBucketRawSchema = v.object({\n tsSec: TimestampSecondsSchema,\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n updatesInBucket: v.number(),\n bookSeqStart: Uint64StringSchema,\n bookSeqEnd: Uint64StringSchema,\n});\n\ntype OrderbookHeatmapDeltaBucketRaw = v.InferOutput<typeof OrderbookHeatmapDeltaBucketRawSchema>;\n\nfunction convertHeatmapDeltaBucket(\n bucket: OrderbookHeatmapDeltaBucketRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n tsSec: bucket.tsSec,\n bids: bucket.bids ? convertHeatmapLevels(bucket.bids, priceScale, qtyScale) : undefined,\n asks: bucket.asks ? convertHeatmapLevels(bucket.asks, priceScale, qtyScale) : undefined,\n updatesInBucket: bucket.updatesInBucket,\n bookSeqStart: bucket.bookSeqStart,\n bookSeqEnd: bucket.bookSeqEnd,\n };\n}\n\nexport type OrderbookHeatmapDeltaBucket = ReturnType<typeof convertHeatmapDeltaBucket>;\n\nconst OrderbookHeatmapLiveBucketRawSchema = v.object({\n symbolId: v.number(),\n interval: v.pipe(v.number(), v.transform(intervalLabelFor)),\n tsSec: TimestampSecondsSchema,\n isFinal: v.boolean(),\n bids: v.optional(OrderbookHeatmapLevelsRawSchema),\n asks: v.optional(OrderbookHeatmapLevelsRawSchema),\n updatesInBucket: v.number(),\n bookSeqStart: Uint64StringSchema,\n bookSeqEnd: Uint64StringSchema,\n quantityMode: v.pipe(v.number(), v.transform(quantityModeLabelFor)),\n effectiveBinTicks: v.bigint(),\n});\n\ntype OrderbookHeatmapLiveBucketRaw = v.InferOutput<typeof OrderbookHeatmapLiveBucketRawSchema>;\n\nfunction convertHeatmapLiveBucket(bucket: OrderbookHeatmapLiveBucketRaw, scales: SdkScales) {\n const priceScale = scales.price();\n const qtyScale = scales.baseQty(bucket.symbolId);\n return {\n symbolId: bucket.symbolId,\n interval: bucket.interval,\n tsSec: bucket.tsSec,\n isFinal: bucket.isFinal,\n bids: bucket.bids ? convertHeatmapLevels(bucket.bids, priceScale, qtyScale) : undefined,\n asks: bucket.asks ? convertHeatmapLevels(bucket.asks, priceScale, qtyScale) : undefined,\n updatesInBucket: bucket.updatesInBucket,\n bookSeqStart: bucket.bookSeqStart,\n bookSeqEnd: bucket.bookSeqEnd,\n quantityMode: bucket.quantityMode,\n effectiveBinSize: scaledToDecimalOutput(bucket.effectiveBinTicks, priceScale),\n };\n}\n\nexport type OrderbookHeatmapLiveBucket = ReturnType<typeof convertHeatmapLiveBucket>;\n\nexport function createOrderbookHeatmapLiveBucketSchema(scales: SdkScales) {\n return v.pipe(\n OrderbookHeatmapLiveBucketRawSchema,\n v.transform((bucket) => convertHeatmapLiveBucket(bucket, scales)),\n );\n}\n\nconst OrderbookHeatmapDeltaChainRawSchema = v.object({\n baseKeyframe: v.optional(OrderbookHeatmapKeyframeRawSchema),\n deltas: v.optional(v.array(OrderbookHeatmapDeltaBucketRawSchema), []),\n});\n\ntype OrderbookHeatmapDeltaChainRaw = v.InferOutput<typeof OrderbookHeatmapDeltaChainRawSchema>;\n\nfunction convertHeatmapDeltaChain(\n chain: OrderbookHeatmapDeltaChainRaw,\n priceScale: number,\n qtyScale: number,\n) {\n return {\n baseKeyframe: chain.baseKeyframe\n ? convertHeatmapKeyframe(chain.baseKeyframe, priceScale, qtyScale)\n : undefined,\n deltas: chain.deltas.map((bucket) =>\n convertHeatmapDeltaBucket(bucket, priceScale, qtyScale),\n ),\n };\n}\n\nexport type OrderbookHeatmapDeltaChain = ReturnType<typeof convertHeatmapDeltaChain>;\n\nconst OrderbookHeatmapResponseRawSchema = v.object({\n symbolId: v.number(),\n interval: v.pipe(v.number(), v.transform(intervalLabelFor)),\n depth: v.pipe(\n v.number(),\n v.transform((value) => enumLabel(HeatmapDepthCodec.protoToOutput, value)),\n ),\n chain: v.optional(OrderbookHeatmapDeltaChainRawSchema),\n lastPersistedTsSec: TimestampSecondsSchema,\n liveFromBookSeqEnd: Uint64StringSchema,\n hasLiveAnchor: v.boolean(),\n nextPageToken: v.optional(v.string(), \"\"),\n serverTimeSec: TimestampSecondsSchema,\n quantityMode: v.pipe(v.number(), v.transform(quantityModeLabelFor)),\n liveBucket: v.optional(OrderbookHeatmapLiveBucketRawSchema),\n});\n\nexport function createOrderbookHeatmapResponseSchema(scales: SdkScales) {\n return v.pipe(\n OrderbookHeatmapResponseRawSchema,\n v.transform((res) => {\n const priceScale = scales.price();\n const qtyScale = scales.baseQty(res.symbolId);\n return {\n symbolId: res.symbolId,\n interval: res.interval,\n depth: res.depth,\n chain: res.chain\n ? convertHeatmapDeltaChain(res.chain, priceScale, qtyScale)\n : undefined,\n lastPersistedTsSec: res.lastPersistedTsSec,\n liveFromBookSeqEnd: res.liveFromBookSeqEnd,\n hasLiveAnchor: res.hasLiveAnchor,\n nextPageToken: res.nextPageToken,\n serverTimeSec: res.serverTimeSec,\n quantityMode: res.quantityMode,\n liveBucket: res.liveBucket\n ? convertHeatmapLiveBucket(res.liveBucket, scales)\n : undefined,\n };\n }),\n );\n}\n\nexport type GetOrderbookHeatmapInput = v.InferInput<typeof GetOrderbookHeatmapInputSchema>;\nexport type ParsedGetOrderbookHeatmapInput = v.InferOutput<typeof GetOrderbookHeatmapInputSchema>;\nexport type OrderbookHeatmapResponse = v.InferOutput<\n ReturnType<typeof createOrderbookHeatmapResponseSchema>\n>;\nexport type ParsedHeatmapTimeRange = HeatmapTimeRangeInit;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-transfers.schemas.d.ts","names":[],"sources":["../../../src/services/internal-transfers/internal-transfers.schemas.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"internal-transfers.schemas.d.ts","names":[],"sources":["../../../src/services/internal-transfers/internal-transfers.schemas.ts"],"mappings":";;;;cAqBa,wCAAsC,EAAA,yBAAA,EAAA,uBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoCvC,8BAA8B,EAAE,kBACjC;iBAGK,wCAAwC,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAAA;;;;;;;;;;;;;;;KA0B7D,8BAA8B,EAAE,WACxC,kBAAkB;cAYT,2CAAyC,EAAA,yBAAA,EAAA;;;;;;;;;;;;;KAa1C,sCAAsC,EAAE,mBACzC;iBAGK,4CAAwC,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoB5C,+BAA+B,EAAE,YACzC,kBAAkB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { tsNsToMs } from "../../utils/time.js";
|
|
2
|
-
import { idInputSchema } from "../../shared/schemas.js";
|
|
2
|
+
import { U128Schema, idInputSchema } from "../../shared/schemas.js";
|
|
3
3
|
import { PositiveUint32InputSchema } from "../shared.js";
|
|
4
4
|
import { AccountScopeInputEntries, accountScopeToSubaccountId } from "../../shared/account-scope.js";
|
|
5
5
|
import { quantityInputToE18, scaledToDecimalOutput } from "../../shared/decimal-surface.js";
|
|
@@ -7,10 +7,6 @@ import { fromU128, toU128 } from "../../utils/u128.js";
|
|
|
7
7
|
import { InternalTransferDestinationCodec } from "./internal-transfers.codecs.js";
|
|
8
8
|
import * as v from "valibot";
|
|
9
9
|
//#region src/services/internal-transfers/internal-transfers.schemas.ts
|
|
10
|
-
const U128Schema = v.object({
|
|
11
|
-
hi: v.bigint(),
|
|
12
|
-
lo: v.bigint()
|
|
13
|
-
});
|
|
14
10
|
const IdSchema = idInputSchema;
|
|
15
11
|
const InternalTransferDestinationInputSchema = v.pipe(v.variant("type", [
|
|
16
12
|
v.strictObject({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-transfers.schemas.js","names":[],"sources":["../../../src/services/internal-transfers/internal-transfers.schemas.ts"],"sourcesContent":["import type { MessageInitShape } from \"@bufbuild/protobuf\";\nimport { PositiveUint32InputSchema } from \"../shared.js\";\nimport * as v from \"valibot\";\nimport type * as Proto from \"../../gen/transfer/v1/internal_transfer_pb.js\";\nimport { idInputSchema } from \"../../shared/schemas.js\";\nimport { tsNsToMs } from \"../../utils/time.js\";\nimport {\n E18_SCALE,\n quantityInputToE18,\n scaledToDecimalOutput,\n type SdkScales,\n} from \"../../shared/decimal-surface.js\";\nimport { InternalTransferDestinationCodec } from \"./internal-transfers.codecs.js\";\nimport {\n AccountScopeInputEntries,\n accountScopeToSubaccountId,\n} from \"../../shared/account-scope.js\";\nimport { fromU128, toU128 } from \"../../utils/u128.js\";\n\nconst
|
|
1
|
+
{"version":3,"file":"internal-transfers.schemas.js","names":[],"sources":["../../../src/services/internal-transfers/internal-transfers.schemas.ts"],"sourcesContent":["import type { MessageInitShape } from \"@bufbuild/protobuf\";\nimport { PositiveUint32InputSchema } from \"../shared.js\";\nimport * as v from \"valibot\";\nimport type * as Proto from \"../../gen/transfer/v1/internal_transfer_pb.js\";\nimport { idInputSchema, U128Schema } from \"../../shared/schemas.js\";\nimport { tsNsToMs } from \"../../utils/time.js\";\nimport {\n E18_SCALE,\n quantityInputToE18,\n scaledToDecimalOutput,\n type SdkScales,\n} from \"../../shared/decimal-surface.js\";\nimport { InternalTransferDestinationCodec } from \"./internal-transfers.codecs.js\";\nimport {\n AccountScopeInputEntries,\n accountScopeToSubaccountId,\n} from \"../../shared/account-scope.js\";\nimport { fromU128, toU128 } from \"../../utils/u128.js\";\n\nconst IdSchema = idInputSchema;\n\nexport const InternalTransferDestinationInputSchema = v.pipe(\n v.variant(\"type\", [\n v.strictObject({\n type: v.literal(\"account\"),\n accountId: IdSchema(\"accountId\"),\n }),\n v.strictObject({\n type: v.literal(\"subaccount\"),\n subaccountId: IdSchema(\"subaccountId\"),\n }),\n v.strictObject({\n type: v.literal(\"smartAccountAddress\"),\n address: v.pipe(v.string(), v.trim(), v.minLength(1)),\n }),\n ]),\n v.transform((destination) => {\n switch (destination.type) {\n case \"account\":\n return {\n case: InternalTransferDestinationCodec.inputToProtoCase.account,\n value: destination.accountId,\n } as const;\n case \"subaccount\":\n return {\n case: InternalTransferDestinationCodec.inputToProtoCase.subaccount,\n value: destination.subaccountId,\n } as const;\n case \"smartAccountAddress\":\n return {\n case: InternalTransferDestinationCodec.inputToProtoCase.smartAccountAddress,\n value: destination.address,\n } as const;\n }\n }),\n);\n\nexport type InternalTransferDestination = v.InferInput<\n typeof InternalTransferDestinationInputSchema\n>;\n\nexport function createCreateInternalTransferInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...AccountScopeInputEntries,\n destination: InternalTransferDestinationInputSchema,\n assetId: PositiveUint32InputSchema,\n quantity: v.string(),\n idempotencyKey: v.pipe(v.string(), v.trim(), v.minLength(1)),\n }),\n v.transform(\n ({ account, quantity, ...input }) =>\n ({\n ...input,\n amountE18: toU128(\n quantityInputToE18({\n scales,\n assetId: input.assetId,\n quantity,\n }),\n ),\n subaccountId: accountScopeToSubaccountId(account),\n }) satisfies MessageInitShape<typeof Proto.CreateInternalTransferRequestSchema>,\n ),\n );\n}\n\nexport type CreateInternalTransferInput = v.InferInput<\n ReturnType<typeof createCreateInternalTransferInputSchema>\n>;\nexport type CreateInternalTransferRequest = v.InferOutput<\n ReturnType<typeof createCreateInternalTransferInputSchema>\n>;\n\nconst NonEmptyResponseStringSchema = v.pipe(v.string(), v.trim(), v.minLength(1));\nconst OptionalResponseStringSchema = v.pipe(\n v.optional(v.pipe(v.string(), v.trim())),\n v.transform((value) => (value ? value : undefined)),\n);\n\nexport const ResolvedInternalTransferDestinationSchema = v.pipe(\n v.object({\n rootAccountPublicId: OptionalResponseStringSchema,\n subaccountPublicId: OptionalResponseStringSchema,\n smartAccountAddress: OptionalResponseStringSchema,\n }),\n v.transform(({ rootAccountPublicId, subaccountPublicId, smartAccountAddress }) => ({\n rootAccountId: rootAccountPublicId,\n subaccountId: subaccountPublicId,\n smartAccountAddress,\n })),\n);\n\nexport type ResolvedInternalTransferDestination = v.InferOutput<\n typeof ResolvedInternalTransferDestinationSchema\n>;\n\nexport function createCreateInternalTransferResultSchema() {\n return v.pipe(\n v.object({\n requestId: NonEmptyResponseStringSchema,\n transferId: NonEmptyResponseStringSchema,\n acceptedAtTsNs: v.bigint(),\n assetId: v.number(),\n assetCode: NonEmptyResponseStringSchema,\n uAssetId: NonEmptyResponseStringSchema,\n amountE18: U128Schema,\n destination: v.optional(ResolvedInternalTransferDestinationSchema),\n }),\n v.transform(({ acceptedAtTsNs, amountE18, ...result }) => ({\n ...result,\n acceptedAtUnixMs: tsNsToMs(acceptedAtTsNs),\n quantity: scaledToDecimalOutput(fromU128(amountE18), E18_SCALE),\n })),\n );\n}\n\nexport type CreateInternalTransferResult = v.InferOutput<\n ReturnType<typeof createCreateInternalTransferResultSchema>\n>;\n"],"mappings":";;;;;;;;;AAmBA,MAAM,WAAW;AAEjB,MAAa,yCAAyC,EAAE,KACpD,EAAE,QAAQ,QAAQ;CACd,EAAE,aAAa;EACX,MAAM,EAAE,QAAQ,SAAS;EACzB,WAAW,SAAS,WAAW;CACnC,CAAC;CACD,EAAE,aAAa;EACX,MAAM,EAAE,QAAQ,YAAY;EAC5B,cAAc,SAAS,cAAc;CACzC,CAAC;CACD,EAAE,aAAa;EACX,MAAM,EAAE,QAAQ,qBAAqB;EACrC,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,KAAK,GAAG,EAAE,UAAU,CAAC,CAAC;CACxD,CAAC;AACL,CAAC,GACD,EAAE,WAAW,gBAAgB;CACzB,QAAQ,YAAY,MAApB;EACI,KAAK,WACD,OAAO;GACH,MAAM,iCAAiC,iBAAiB;GACxD,OAAO,YAAY;EACvB;EACJ,KAAK,cACD,OAAO;GACH,MAAM,iCAAiC,iBAAiB;GACxD,OAAO,YAAY;EACvB;EACJ,KAAK,uBACD,OAAO;GACH,MAAM,iCAAiC,iBAAiB;GACxD,OAAO,YAAY;EACvB;CACR;AACJ,CAAC,CACL;AAMA,SAAgB,wCAAwC,QAAmB;CACvE,OAAO,EAAE,KACL,EAAE,aAAa;EACX,GAAG;EACH,aAAa;EACb,SAAS;EACT,UAAU,EAAE,OAAO;EACnB,gBAAgB,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,KAAK,GAAG,EAAE,UAAU,CAAC,CAAC;CAC/D,CAAC,GACD,EAAE,WACG,EAAE,SAAS,UAAU,GAAG,aACpB;EACG,GAAG;EACH,WAAW,OACP,mBAAmB;GACf;GACA,SAAS,MAAM;GACf;EACJ,CAAC,CACL;EACA,cAAc,2BAA2B,OAAO;CACpD,EACR,CACJ;AACJ;AASA,MAAM,+BAA+B,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,KAAK,GAAG,EAAE,UAAU,CAAC,CAAC;AAChF,MAAM,+BAA+B,EAAE,KACnC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC,GACvC,EAAE,WAAW,UAAW,QAAQ,QAAQ,KAAA,CAAU,CACtD;AAEA,MAAa,4CAA4C,EAAE,KACvD,EAAE,OAAO;CACL,qBAAqB;CACrB,oBAAoB;CACpB,qBAAqB;AACzB,CAAC,GACD,EAAE,WAAW,EAAE,qBAAqB,oBAAoB,2BAA2B;CAC/E,eAAe;CACf,cAAc;CACd;AACJ,EAAE,CACN;AAMA,SAAgB,2CAA2C;CACvD,OAAO,EAAE,KACL,EAAE,OAAO;EACL,WAAW;EACX,YAAY;EACZ,gBAAgB,EAAE,OAAO;EACzB,SAAS,EAAE,OAAO;EAClB,WAAW;EACX,UAAU;EACV,WAAW;EACX,aAAa,EAAE,SAAS,yCAAyC;CACrE,CAAC,GACD,EAAE,WAAW,EAAE,gBAAgB,WAAW,GAAG,cAAc;EACvD,GAAG;EACH,kBAAkB,SAAS,cAAc;EACzC,UAAU,sBAAsB,SAAS,SAAS,GAAA,EAAY;CAClE,EAAE,CACN;AACJ"}
|