@polyester/sdk 0.24.1 → 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.
Files changed (170) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +18 -12
  3. package/dist/account-signer/create-polyester-account-signer.d.ts +9 -5
  4. package/dist/account-signer/create-polyester-account-signer.d.ts.map +1 -1
  5. package/dist/account-signer/create-polyester-account-signer.js +9 -5
  6. package/dist/account-signer/create-polyester-account-signer.js.map +1 -1
  7. package/dist/account-signer/types.d.ts +9 -3
  8. package/dist/account-signer/types.d.ts.map +1 -1
  9. package/dist/account-signer/types.js.map +1 -1
  10. package/dist/core-client.d.ts +3 -0
  11. package/dist/core-client.d.ts.map +1 -1
  12. package/dist/core-client.js +5 -0
  13. package/dist/core-client.js.map +1 -1
  14. package/dist/gen/auth/v1/auth_pb.d.ts +7 -4
  15. package/dist/gen/auth/v1/auth_pb.d.ts.map +1 -1
  16. package/dist/gen/auth/v1/auth_pb.js.map +1 -1
  17. package/dist/gen/claims/v1/claims_pb.d.ts +313 -0
  18. package/dist/gen/claims/v1/claims_pb.d.ts.map +1 -0
  19. package/dist/gen/claims/v1/claims_pb.js +135 -0
  20. package/dist/gen/claims/v1/claims_pb.js.map +1 -0
  21. package/dist/gen/index.d.ts +2 -1
  22. package/dist/gen/index.js +2 -1
  23. package/dist/gen/orders/v1/orders_pb.d.ts +50 -3
  24. package/dist/gen/orders/v1/orders_pb.d.ts.map +1 -1
  25. package/dist/gen/orders/v1/orders_pb.js +55 -43
  26. package/dist/gen/orders/v1/orders_pb.js.map +1 -1
  27. package/dist/gen/orders/v1/orders_read_pb.d.ts +10 -0
  28. package/dist/gen/orders/v1/orders_read_pb.d.ts.map +1 -1
  29. package/dist/gen/orders/v1/orders_read_pb.js +3 -1
  30. package/dist/gen/orders/v1/orders_read_pb.js.map +1 -1
  31. package/dist/index.d.ts +4 -1
  32. package/dist/services/accounts/accounts.schemas.d.ts +2 -2
  33. package/dist/services/accounts/accounts.schemas.d.ts.map +1 -1
  34. package/dist/services/accounts/accounts.schemas.js +3 -3
  35. package/dist/services/accounts/accounts.schemas.js.map +1 -1
  36. package/dist/services/address-book/address-book.schemas.d.ts +67 -68
  37. package/dist/services/address-book/address-book.schemas.d.ts.map +1 -1
  38. package/dist/services/address-book/address-book.schemas.js +11 -13
  39. package/dist/services/address-book/address-book.schemas.js.map +1 -1
  40. package/dist/services/api-keys/api-keys.schemas.d.ts +1 -2
  41. package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -1
  42. package/dist/services/api-keys/api-keys.schemas.js +4 -9
  43. package/dist/services/api-keys/api-keys.schemas.js.map +1 -1
  44. package/dist/services/auth/auth.d.ts +2 -3
  45. package/dist/services/auth/auth.d.ts.map +1 -1
  46. package/dist/services/auth/auth.js +4 -2
  47. package/dist/services/auth/auth.js.map +1 -1
  48. package/dist/services/balances/balances.schemas.d.ts +3 -3
  49. package/dist/services/balances/balances.schemas.d.ts.map +1 -1
  50. package/dist/services/balances/balances.schemas.js +7 -12
  51. package/dist/services/balances/balances.schemas.js.map +1 -1
  52. package/dist/services/candles/candles.schemas.d.ts +10 -10
  53. package/dist/services/candles/candles.schemas.d.ts.map +1 -1
  54. package/dist/services/candles/candles.schemas.js +5 -6
  55. package/dist/services/candles/candles.schemas.js.map +1 -1
  56. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +3 -3
  57. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -1
  58. package/dist/services/chain-analytics/chain-analytics.schemas.js +2 -3
  59. package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -1
  60. package/dist/services/claims/claims.codecs.d.ts +8 -0
  61. package/dist/services/claims/claims.codecs.d.ts.map +1 -0
  62. package/dist/services/claims/claims.codecs.js +17 -0
  63. package/dist/services/claims/claims.codecs.js.map +1 -0
  64. package/dist/services/claims/claims.d.ts +19 -0
  65. package/dist/services/claims/claims.d.ts.map +1 -0
  66. package/dist/services/claims/claims.js +30 -0
  67. package/dist/services/claims/claims.js.map +1 -0
  68. package/dist/services/claims/claims.schemas.d.ts +122 -0
  69. package/dist/services/claims/claims.schemas.d.ts.map +1 -0
  70. package/dist/services/claims/claims.schemas.js +47 -0
  71. package/dist/services/claims/claims.schemas.js.map +1 -0
  72. package/dist/services/claims/claims.types.d.ts +3 -0
  73. package/dist/services/claims/index.d.ts +5 -0
  74. package/dist/services/heatmap/heatmap.schemas.d.ts +13 -13
  75. package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -1
  76. package/dist/services/heatmap/heatmap.schemas.js +10 -10
  77. package/dist/services/heatmap/heatmap.schemas.js.map +1 -1
  78. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -1
  79. package/dist/services/internal-transfers/internal-transfers.schemas.js +1 -5
  80. package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -1
  81. package/dist/services/lifecycle/lifecycle.schemas.d.ts +90 -90
  82. package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -1
  83. package/dist/services/lifecycle/lifecycle.schemas.js +10 -11
  84. package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -1
  85. package/dist/services/market-overview/market-overview.schemas.d.ts +3 -3
  86. package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -1
  87. package/dist/services/market-overview/market-overview.schemas.js +3 -3
  88. package/dist/services/market-overview/market-overview.schemas.js.map +1 -1
  89. package/dist/services/mfa/mfa.schemas.d.ts +11 -11
  90. package/dist/services/mfa/mfa.schemas.d.ts.map +1 -1
  91. package/dist/services/mfa/mfa.schemas.js +4 -5
  92. package/dist/services/mfa/mfa.schemas.js.map +1 -1
  93. package/dist/services/orderbook/orderbook.schemas.d.ts +1 -1
  94. package/dist/services/orders/order-enums.codecs.js +2 -1
  95. package/dist/services/orders/order-enums.codecs.js.map +1 -1
  96. package/dist/services/orders/order-errors.schemas.d.ts +4 -5
  97. package/dist/services/orders/order-errors.schemas.d.ts.map +1 -1
  98. package/dist/services/orders/orders-batch.schemas.d.ts +110 -32
  99. package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -1
  100. package/dist/services/orders/orders-batch.schemas.js +9 -10
  101. package/dist/services/orders/orders-batch.schemas.js.map +1 -1
  102. package/dist/services/orders/orders-input.schemas.d.ts +111 -8
  103. package/dist/services/orders/orders-input.schemas.d.ts.map +1 -1
  104. package/dist/services/orders/orders-input.schemas.js +20 -4
  105. package/dist/services/orders/orders-input.schemas.js.map +1 -1
  106. package/dist/services/orders/orders-modify.schemas.d.ts +2 -2
  107. package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -1
  108. package/dist/services/orders/orders-modify.schemas.js +3 -3
  109. package/dist/services/orders/orders-modify.schemas.js.map +1 -1
  110. package/dist/services/orders/orders-output.schemas.d.ts +48 -32
  111. package/dist/services/orders/orders-output.schemas.d.ts.map +1 -1
  112. package/dist/services/orders/orders-output.schemas.js +16 -16
  113. package/dist/services/orders/orders-output.schemas.js.map +1 -1
  114. package/dist/services/orders/orders-risk.schemas.d.ts +0 -1
  115. package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -1
  116. package/dist/services/orders/orders-risk.schemas.js +4 -4
  117. package/dist/services/orders/orders-risk.schemas.js.map +1 -1
  118. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +4 -4
  119. package/dist/services/policies/shared.codecs.js +3 -3
  120. package/dist/services/policies/shared.codecs.js.map +1 -1
  121. package/dist/services/policies/shared.d.ts +0 -1
  122. package/dist/services/policies/shared.d.ts.map +1 -1
  123. package/dist/services/policies/shared.js +2 -3
  124. package/dist/services/policies/shared.js.map +1 -1
  125. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +2 -2
  126. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -1
  127. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +2 -5
  128. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -1
  129. package/dist/services/rate-limits/rate-limits.schemas.d.ts +6 -7
  130. package/dist/services/rate-limits/rate-limits.schemas.d.ts.map +1 -1
  131. package/dist/services/rate-limits/rate-limits.schemas.js +2 -3
  132. package/dist/services/rate-limits/rate-limits.schemas.js.map +1 -1
  133. package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -1
  134. package/dist/services/social-verification/social-verification.schemas.js +4 -4
  135. package/dist/services/social-verification/social-verification.schemas.js.map +1 -1
  136. package/dist/services/subaccounts/subaccounts.schemas.d.ts +21 -22
  137. package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -1
  138. package/dist/services/subaccounts/subaccounts.schemas.js +10 -12
  139. package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -1
  140. package/dist/services/trades/trades.schemas.d.ts +1 -1
  141. package/dist/services/trades/trades.schemas.d.ts.map +1 -1
  142. package/dist/services/trades/trades.schemas.js +4 -8
  143. package/dist/services/trades/trades.schemas.js.map +1 -1
  144. package/dist/services/transfers/transfers.schemas.d.ts +3 -4
  145. package/dist/services/transfers/transfers.schemas.d.ts.map +1 -1
  146. package/dist/services/transfers/transfers.schemas.js +5 -10
  147. package/dist/services/transfers/transfers.schemas.js.map +1 -1
  148. package/dist/services/triggers/trigger-input.schemas.d.ts +1 -1
  149. package/dist/services/triggers/triggers-output.schemas.d.ts +53 -55
  150. package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
  151. package/dist/services/triggers/triggers-output.schemas.js +34 -36
  152. package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
  153. package/dist/services/whiteboard/whiteboard.schemas.d.ts +42 -42
  154. package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -1
  155. package/dist/services/whiteboard/whiteboard.schemas.js +9 -10
  156. package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -1
  157. package/dist/shared/proto-enum-codec.js +11 -6
  158. package/dist/shared/proto-enum-codec.js.map +1 -1
  159. package/dist/shared/rate-limit.schemas.d.ts +4 -5
  160. package/dist/shared/rate-limit.schemas.d.ts.map +1 -1
  161. package/dist/shared/rate-limit.schemas.js +41 -46
  162. package/dist/shared/rate-limit.schemas.js.map +1 -1
  163. package/dist/shared/schemas.js +5 -1
  164. package/dist/shared/schemas.js.map +1 -1
  165. package/dist/utils/timestamp.js +8 -1
  166. package/dist/utils/timestamp.js.map +1 -1
  167. package/dist/wired-services.d.ts.map +1 -1
  168. package/dist/wired-services.js +2 -0
  169. package/dist/wired-services.js.map +1 -1
  170. 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 };
@@ -13,8 +13,8 @@ type TimestampInit = {
13
13
  };
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
- readonly interval: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["1s", "1m", "5m", "1h"], undefined>, "1s">, v.TransformAction<"1h" | "1m" | "1s" | "5m", 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<5 | 10 | 20 | 1 | 200 | 1000 | 500 | 100 | 50, HeatmapDepth>]>;
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<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>;
@@ -122,7 +122,7 @@ declare function convertHeatmapDeltaBucket(bucket: OrderbookHeatmapDeltaBucketRa
122
122
  type OrderbookHeatmapDeltaBucket = ReturnType<typeof convertHeatmapDeltaBucket>;
123
123
  declare const OrderbookHeatmapLiveBucketRawSchema: v.ObjectSchema<{
124
124
  readonly symbolId: v.NumberSchema<undefined>;
125
- readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1h" | "1m" | "1s" | "5m">>]>;
125
+ readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1s" | "1m" | "5m" | "1h">>]>;
126
126
  readonly tsSec: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, number>]>;
127
127
  readonly isFinal: v.BooleanSchema<undefined>;
128
128
  readonly bids: v.OptionalSchema<v.ObjectSchema<{
@@ -142,7 +142,7 @@ declare const OrderbookHeatmapLiveBucketRawSchema: v.ObjectSchema<{
142
142
  type OrderbookHeatmapLiveBucketRaw = v.InferOutput<typeof OrderbookHeatmapLiveBucketRawSchema>;
143
143
  declare function convertHeatmapLiveBucket(bucket: OrderbookHeatmapLiveBucketRaw, scales: SdkScales): {
144
144
  symbolId: number;
145
- interval: DecodedEnum<"1h" | "1m" | "1s" | "5m">;
145
+ interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
146
146
  tsSec: number;
147
147
  isFinal: boolean;
148
148
  bids: {
@@ -226,8 +226,8 @@ declare function convertHeatmapDeltaChain(chain: OrderbookHeatmapDeltaChainRaw,
226
226
  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
- readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1h" | "1m" | "1s" | "5m">>]>;
230
- readonly depth: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, 5 | 10 | 20 | 1 | "unspecified" | 200 | 1000 | 500 | 100 | 50>]>;
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, 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>]>;
@@ -267,7 +267,7 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
267
267
  readonly quantityMode: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"close" | "peak">>]>;
268
268
  readonly liveBucket: v.OptionalSchema<v.ObjectSchema<{
269
269
  readonly symbolId: v.NumberSchema<undefined>;
270
- readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1h" | "1m" | "1s" | "5m">>]>;
270
+ readonly interval: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.TransformAction<number, DecodedEnum<"1s" | "1m" | "5m" | "1h">>]>;
271
271
  readonly tsSec: v.SchemaWithPipe<readonly [v.BigintSchema<undefined>, v.TransformAction<bigint, number>]>;
272
272
  readonly isFinal: v.BooleanSchema<undefined>;
273
273
  readonly bids: v.OptionalSchema<v.ObjectSchema<{
@@ -286,8 +286,8 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
286
286
  }, undefined>, undefined>;
287
287
  }, undefined>, v.TransformAction<{
288
288
  symbolId: number;
289
- interval: DecodedEnum<"1h" | "1m" | "1s" | "5m">;
290
- depth: 5 | 10 | 20 | 1 | "unspecified" | 200 | 1000 | 500 | 100 | 50;
289
+ interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
290
+ depth: 1 | "unspecified" | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50;
291
291
  chain?: {
292
292
  baseKeyframe?: {
293
293
  tsSec: number;
@@ -327,7 +327,7 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
327
327
  quantityMode: DecodedEnum<"close" | "peak">;
328
328
  liveBucket?: {
329
329
  symbolId: number;
330
- interval: DecodedEnum<"1h" | "1m" | "1s" | "5m">;
330
+ interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
331
331
  tsSec: number;
332
332
  isFinal: boolean;
333
333
  bids?: {
@@ -346,8 +346,8 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
346
346
  } | undefined;
347
347
  }, {
348
348
  symbolId: number;
349
- interval: DecodedEnum<"1h" | "1m" | "1s" | "5m">;
350
- depth: 5 | 10 | 20 | 1 | "unspecified" | 200 | 1000 | 500 | 100 | 50;
349
+ interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
350
+ depth: 1 | "unspecified" | 10 | 5 | 20 | 200 | 1000 | 500 | 100 | 50;
351
351
  chain: {
352
352
  baseKeyframe: {
353
353
  tsSec: number;
@@ -387,7 +387,7 @@ declare function createOrderbookHeatmapResponseSchema(scales: SdkScales): v.Sche
387
387
  quantityMode: DecodedEnum<"close" | "peak">;
388
388
  liveBucket: {
389
389
  symbolId: number;
390
- interval: DecodedEnum<"1h" | "1m" | "1s" | "5m">;
390
+ interval: DecodedEnum<"1s" | "1m" | "5m" | "1h">;
391
391
  tsSec: number;
392
392
  isFinal: boolean;
393
393
  bids: {
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoErC,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;iBA0B3C,qCAAqC,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2B1D,2BAA2B,EAAE,kBAAkB;KAE/C,2BAA2B,EAAE,YACrC,kBAAkB"}
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 { requiredEnumLabel } from "../../shared/proto-enum-codec.js";
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 requiredIntervalLabelFor(value) {
42
- return requiredEnumLabel(HeatmapIntervalCodec.protoToOutput, value, "OrderbookHeatmapResponseSchema", "interval");
41
+ function intervalLabelFor(value) {
42
+ return enumLabel(HeatmapIntervalCodec.protoToOutput, value);
43
43
  }
44
- function requiredQuantityModeLabelFor(value) {
45
- return requiredEnumLabel(HeatmapQuantityModeCodec.protoToOutput, value, "OrderbookHeatmapResponseSchema", "quantity mode");
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(requiredIntervalLabelFor)),
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(requiredQuantityModeLabelFor)),
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(requiredIntervalLabelFor)),
143
- depth: v.pipe(v.number(), v.transform((value) => requiredEnumLabel(HeatmapDepthCodec.protoToOutput, value, "OrderbookHeatmapResponseSchema", "depth"))),
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(requiredQuantityModeLabelFor)),
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":";;;;cA0Ba,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
+ {"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 U128Schema = v.object({\n hi: v.bigint(),\n lo: v.bigint(),\n});\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,aAAa,EAAE,OAAO;CACxB,IAAI,EAAE,OAAO;CACb,IAAI,EAAE,OAAO;AACjB,CAAC;AAED,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"}
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"}