@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.
Files changed (177) hide show
  1. package/CHANGELOG.md +20 -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 +10 -4
  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 +23 -45
  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/realtime/client.js +45 -26
  33. package/dist/realtime/client.js.map +1 -1
  34. package/dist/services/accounts/accounts.schemas.d.ts +2 -2
  35. package/dist/services/accounts/accounts.schemas.d.ts.map +1 -1
  36. package/dist/services/accounts/accounts.schemas.js +3 -3
  37. package/dist/services/accounts/accounts.schemas.js.map +1 -1
  38. package/dist/services/address-book/address-book.schemas.d.ts +67 -68
  39. package/dist/services/address-book/address-book.schemas.d.ts.map +1 -1
  40. package/dist/services/address-book/address-book.schemas.js +11 -13
  41. package/dist/services/address-book/address-book.schemas.js.map +1 -1
  42. package/dist/services/api-keys/api-keys.schemas.d.ts +1 -2
  43. package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -1
  44. package/dist/services/api-keys/api-keys.schemas.js +4 -9
  45. package/dist/services/api-keys/api-keys.schemas.js.map +1 -1
  46. package/dist/services/auth/account-signer-auth.js +1 -1
  47. package/dist/services/auth/account-signer-auth.js.map +1 -1
  48. package/dist/services/auth/auth.d.ts +2 -3
  49. package/dist/services/auth/auth.d.ts.map +1 -1
  50. package/dist/services/auth/auth.js +4 -2
  51. package/dist/services/auth/auth.js.map +1 -1
  52. package/dist/services/balances/balances.schemas.d.ts +3 -3
  53. package/dist/services/balances/balances.schemas.d.ts.map +1 -1
  54. package/dist/services/balances/balances.schemas.js +7 -12
  55. package/dist/services/balances/balances.schemas.js.map +1 -1
  56. package/dist/services/candles/candles.schemas.d.ts +3 -3
  57. package/dist/services/candles/candles.schemas.d.ts.map +1 -1
  58. package/dist/services/candles/candles.schemas.js +5 -6
  59. package/dist/services/candles/candles.schemas.js.map +1 -1
  60. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +3 -3
  61. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -1
  62. package/dist/services/chain-analytics/chain-analytics.schemas.js +2 -3
  63. package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -1
  64. package/dist/services/claims/claims.codecs.d.ts +8 -0
  65. package/dist/services/claims/claims.codecs.d.ts.map +1 -0
  66. package/dist/services/claims/claims.codecs.js +17 -0
  67. package/dist/services/claims/claims.codecs.js.map +1 -0
  68. package/dist/services/claims/claims.d.ts +19 -0
  69. package/dist/services/claims/claims.d.ts.map +1 -0
  70. package/dist/services/claims/claims.js +30 -0
  71. package/dist/services/claims/claims.js.map +1 -0
  72. package/dist/services/claims/claims.schemas.d.ts +122 -0
  73. package/dist/services/claims/claims.schemas.d.ts.map +1 -0
  74. package/dist/services/claims/claims.schemas.js +47 -0
  75. package/dist/services/claims/claims.schemas.js.map +1 -0
  76. package/dist/services/claims/claims.types.d.ts +3 -0
  77. package/dist/services/claims/index.d.ts +5 -0
  78. package/dist/services/heatmap/heatmap.schemas.d.ts +4 -4
  79. package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -1
  80. package/dist/services/heatmap/heatmap.schemas.js +10 -10
  81. package/dist/services/heatmap/heatmap.schemas.js.map +1 -1
  82. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -1
  83. package/dist/services/internal-transfers/internal-transfers.schemas.js +1 -5
  84. package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -1
  85. package/dist/services/lifecycle/lifecycle.schemas.d.ts +90 -90
  86. package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -1
  87. package/dist/services/lifecycle/lifecycle.schemas.js +10 -11
  88. package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -1
  89. package/dist/services/market-overview/market-overview.schemas.d.ts +1 -1
  90. package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -1
  91. package/dist/services/market-overview/market-overview.schemas.js +3 -3
  92. package/dist/services/market-overview/market-overview.schemas.js.map +1 -1
  93. package/dist/services/mfa/mfa.schemas.d.ts +11 -11
  94. package/dist/services/mfa/mfa.schemas.d.ts.map +1 -1
  95. package/dist/services/mfa/mfa.schemas.js +4 -5
  96. package/dist/services/mfa/mfa.schemas.js.map +1 -1
  97. package/dist/services/orderbook/orderbook.schemas.d.ts +1 -1
  98. package/dist/services/orders/order-enums.codecs.js +2 -1
  99. package/dist/services/orders/order-enums.codecs.js.map +1 -1
  100. package/dist/services/orders/order-errors.schemas.d.ts +4 -5
  101. package/dist/services/orders/order-errors.schemas.d.ts.map +1 -1
  102. package/dist/services/orders/orders-batch.schemas.d.ts +110 -32
  103. package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -1
  104. package/dist/services/orders/orders-batch.schemas.js +9 -10
  105. package/dist/services/orders/orders-batch.schemas.js.map +1 -1
  106. package/dist/services/orders/orders-input.schemas.d.ts +111 -8
  107. package/dist/services/orders/orders-input.schemas.d.ts.map +1 -1
  108. package/dist/services/orders/orders-input.schemas.js +20 -4
  109. package/dist/services/orders/orders-input.schemas.js.map +1 -1
  110. package/dist/services/orders/orders-modify.schemas.d.ts +2 -2
  111. package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -1
  112. package/dist/services/orders/orders-modify.schemas.js +3 -3
  113. package/dist/services/orders/orders-modify.schemas.js.map +1 -1
  114. package/dist/services/orders/orders-output.schemas.d.ts +48 -32
  115. package/dist/services/orders/orders-output.schemas.d.ts.map +1 -1
  116. package/dist/services/orders/orders-output.schemas.js +16 -16
  117. package/dist/services/orders/orders-output.schemas.js.map +1 -1
  118. package/dist/services/orders/orders-risk.schemas.d.ts +0 -1
  119. package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -1
  120. package/dist/services/orders/orders-risk.schemas.js +4 -4
  121. package/dist/services/orders/orders-risk.schemas.js.map +1 -1
  122. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +4 -4
  123. package/dist/services/policies/shared.codecs.js +3 -3
  124. package/dist/services/policies/shared.codecs.js.map +1 -1
  125. package/dist/services/policies/shared.d.ts +0 -1
  126. package/dist/services/policies/shared.d.ts.map +1 -1
  127. package/dist/services/policies/shared.js +2 -3
  128. package/dist/services/policies/shared.js.map +1 -1
  129. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +2 -2
  130. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -1
  131. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +2 -5
  132. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -1
  133. package/dist/services/rate-limits/rate-limits.schemas.d.ts +6 -7
  134. package/dist/services/rate-limits/rate-limits.schemas.d.ts.map +1 -1
  135. package/dist/services/rate-limits/rate-limits.schemas.js +2 -3
  136. package/dist/services/rate-limits/rate-limits.schemas.js.map +1 -1
  137. package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -1
  138. package/dist/services/social-verification/social-verification.schemas.js +4 -4
  139. package/dist/services/social-verification/social-verification.schemas.js.map +1 -1
  140. package/dist/services/subaccounts/subaccounts.schemas.d.ts +23 -24
  141. package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -1
  142. package/dist/services/subaccounts/subaccounts.schemas.js +10 -12
  143. package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -1
  144. package/dist/services/trades/trades.schemas.d.ts +1 -1
  145. package/dist/services/trades/trades.schemas.d.ts.map +1 -1
  146. package/dist/services/trades/trades.schemas.js +4 -8
  147. package/dist/services/trades/trades.schemas.js.map +1 -1
  148. package/dist/services/transfers/transfers.schemas.d.ts +3 -4
  149. package/dist/services/transfers/transfers.schemas.d.ts.map +1 -1
  150. package/dist/services/transfers/transfers.schemas.js +5 -10
  151. package/dist/services/transfers/transfers.schemas.js.map +1 -1
  152. package/dist/services/triggers/trigger-input.schemas.d.ts +2 -2
  153. package/dist/services/triggers/triggers-output.schemas.d.ts +56 -58
  154. package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
  155. package/dist/services/triggers/triggers-output.schemas.js +34 -36
  156. package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
  157. package/dist/services/whiteboard/whiteboard.schemas.d.ts +42 -42
  158. package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -1
  159. package/dist/services/whiteboard/whiteboard.schemas.js +9 -10
  160. package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -1
  161. package/dist/shared/proto-enum-codec.js +11 -6
  162. package/dist/shared/proto-enum-codec.js.map +1 -1
  163. package/dist/shared/rate-limit.schemas.d.ts +4 -5
  164. package/dist/shared/rate-limit.schemas.d.ts.map +1 -1
  165. package/dist/shared/rate-limit.schemas.js +41 -46
  166. package/dist/shared/rate-limit.schemas.js.map +1 -1
  167. package/dist/shared/schemas.js +5 -1
  168. package/dist/shared/schemas.js.map +1 -1
  169. package/dist/shared/transports.d.ts +5 -1
  170. package/dist/shared/transports.d.ts.map +1 -1
  171. package/dist/shared/transports.js.map +1 -1
  172. package/dist/utils/timestamp.js +8 -1
  173. package/dist/utils/timestamp.js.map +1 -1
  174. package/dist/wired-services.d.ts.map +1 -1
  175. package/dist/wired-services.js +2 -0
  176. package/dist/wired-services.js.map +1 -1
  177. package/package.json +1 -1
@@ -1,15 +1,13 @@
1
- import { FeeAsset, SelfTradePreventionMode, Side, TriggerDirection, TriggerPriceSource } from "../../gen/orders/v1/orders_pb.js";
2
- import { requiredEnumLabel } from "../../shared/proto-enum-codec.js";
1
+ import { enumLabel, enumLabelSchema } from "../../shared/proto-enum-codec.js";
3
2
  import { formatId } from "../../utils/base58-id.js";
4
3
  import { tsNsToMs, tsObjToMs } from "../../utils/time.js";
5
4
  import { BigIntStringSchema, OptionalTimestampMsSchema, PublicIdSchema, TimestampSchema } from "../../shared/schemas.js";
6
5
  import { scaledToDecimalOutput } from "../../shared/decimal-surface.js";
7
6
  import { FeeAssetCodec, OrderSideCodec, SelfTradePreventionModeCodec, TriggerPriceSourceCodec } from "../orders/order-enums.codecs.js";
8
- import { LadderDistribution, TriggerCancelReason, TriggerEventType, TriggerFailureReason, TriggerStatus, TriggerType } from "../../gen/triggers/v1/triggers_pb.js";
9
7
  import { LadderDistributionCodec, TriggerCancelReasonCodec, TriggerDirectionCodec, TriggerEventTypeCodec, TriggerFailureReasonCodec, TriggerStatusCodec, TriggerTypeCodec } from "./triggers.codecs.js";
10
8
  import * as v from "valibot";
11
9
  //#region src/services/triggers/triggers-output.schemas.ts
12
- const TriggerResultStatusSchema = v.pipe(v.enum(TriggerStatus), v.transform((status) => requiredEnumLabel(TriggerStatusCodec.protoToOutput, status, "TriggerResultSchema", "status")));
10
+ const TriggerResultStatusSchema = enumLabelSchema(TriggerStatusCodec.protoToOutput);
13
11
  const TriggerMutationResultBaseSchema = v.pipe(v.object({
14
12
  triggerId: PublicIdSchema,
15
13
  status: TriggerResultStatusSchema,
@@ -60,7 +58,7 @@ const ConditionalExecutionRawSchema = v.variant("case", [
60
58
  ]);
61
59
  const ConditionalConfigurationRawSchema = v.object({
62
60
  triggerPriceTicks: v.bigint(),
63
- side: v.enum(Side),
61
+ side: v.number(),
64
62
  child: v.optional(v.object({ execution: ConditionalExecutionRawSchema }))
65
63
  });
66
64
  const MaxSlippageRawSchema = v.variant("case", [
@@ -94,10 +92,10 @@ const TrailingConfigurationRawSchema = v.object({
94
92
  ]),
95
93
  activationPriceTicks: v.bigint(),
96
94
  maxSlippage: MaxSlippageRawSchema,
97
- side: v.enum(Side)
95
+ side: v.number()
98
96
  });
99
97
  const TwapConfigurationRawSchema = v.object({
100
- side: v.enum(Side),
98
+ side: v.number(),
101
99
  durationMs: v.bigint(),
102
100
  sliceIntervalMs: v.bigint(),
103
101
  execution: v.variant("case", [
@@ -116,7 +114,7 @@ const TwapConfigurationRawSchema = v.object({
116
114
  ])
117
115
  });
118
116
  const LadderConfigurationRawSchema = v.object({
119
- side: v.enum(Side),
117
+ side: v.number(),
120
118
  priceMinTicks: v.bigint(),
121
119
  priceMaxTicks: v.bigint(),
122
120
  levels: v.number(),
@@ -172,13 +170,13 @@ function transformTriggerConfiguration(configuration, scales) {
172
170
  case "stopLoss":
173
171
  case "takeProfit": return {
174
172
  type: configuration.case === "stopLoss" ? "stop_loss" : "take_profit",
175
- side: requiredEnumLabel(OrderSideCodec.protoToOutput, configuration.value.side, "TriggerConfigurationSchema", "side"),
173
+ side: enumLabel(OrderSideCodec.protoToOutput, configuration.value.side),
176
174
  triggerPrice: scaledToDecimalOutput(configuration.value.triggerPriceTicks, scales.price()),
177
175
  execution: transformConditionalExecution(configuration.value.child?.execution ?? { case: void 0 }, scales)
178
176
  };
179
177
  case "trailingStop": return {
180
178
  type: "trailing_stop",
181
- side: requiredEnumLabel(OrderSideCodec.protoToOutput, configuration.value.side, "TriggerConfigurationSchema", "side"),
179
+ side: enumLabel(OrderSideCodec.protoToOutput, configuration.value.side),
182
180
  trailingDistance: configuration.value.trailingDistance.case === "trailingDistanceTicks" ? {
183
181
  kind: "distance",
184
182
  distance: scaledToDecimalOutput(configuration.value.trailingDistance.value, scales.price())
@@ -191,7 +189,7 @@ function transformTriggerConfiguration(configuration, scales) {
191
189
  };
192
190
  case "twap": return {
193
191
  type: "twap",
194
- side: requiredEnumLabel(OrderSideCodec.protoToOutput, configuration.value.side, "TriggerConfigurationSchema", "side"),
192
+ side: enumLabel(OrderSideCodec.protoToOutput, configuration.value.side),
195
193
  durationMs: Number(configuration.value.durationMs),
196
194
  sliceIntervalMs: Number(configuration.value.sliceIntervalMs),
197
195
  execution: configuration.value.execution.case === "marketIoc" ? {
@@ -204,7 +202,7 @@ function transformTriggerConfiguration(configuration, scales) {
204
202
  };
205
203
  case "ladder": return {
206
204
  type: "ladder",
207
- side: requiredEnumLabel(OrderSideCodec.protoToOutput, configuration.value.side, "TriggerConfigurationSchema", "side"),
205
+ side: enumLabel(OrderSideCodec.protoToOutput, configuration.value.side),
208
206
  priceMin: scaledToDecimalOutput(configuration.value.priceMinTicks, scales.price()),
209
207
  priceMax: scaledToDecimalOutput(configuration.value.priceMaxTicks, scales.price()),
210
208
  levels: configuration.value.levels,
@@ -225,11 +223,11 @@ function formatMaxSlippage(maxSlippage, scales) {
225
223
  const TerminalReasonRawSchema = v.variant("case", [
226
224
  v.object({
227
225
  case: v.literal("cancelReason"),
228
- value: v.enum(TriggerCancelReason)
226
+ value: v.number()
229
227
  }),
230
228
  v.object({
231
229
  case: v.literal("failureReason"),
232
- value: v.enum(TriggerFailureReason)
230
+ value: v.number()
233
231
  }),
234
232
  v.object({
235
233
  case: v.undefined(),
@@ -239,12 +237,12 @@ const TerminalReasonRawSchema = v.variant("case", [
239
237
  function transformTerminalReason(reason) {
240
238
  switch (reason.case) {
241
239
  case "cancelReason": return {
242
- cancelReason: requiredEnumLabel(TriggerCancelReasonCodec.protoToOutput, reason.value, "TerminalReasonSchema", "cancel reason"),
240
+ cancelReason: enumLabel(TriggerCancelReasonCodec.protoToOutput, reason.value),
243
241
  failureReason: void 0
244
242
  };
245
243
  case "failureReason": return {
246
244
  cancelReason: void 0,
247
- failureReason: requiredEnumLabel(TriggerFailureReasonCodec.protoToOutput, reason.value, "TerminalReasonSchema", "failure reason")
245
+ failureReason: enumLabel(TriggerFailureReasonCodec.protoToOutput, reason.value)
248
246
  };
249
247
  default: return {
250
248
  cancelReason: void 0,
@@ -254,8 +252,8 @@ function transformTerminalReason(reason) {
254
252
  }
255
253
  const StopDetailsRawSchema = v.object({
256
254
  triggerPriceTicks: v.bigint(),
257
- triggerPriceSource: v.enum(TriggerPriceSource),
258
- triggerDirection: v.enum(TriggerDirection)
255
+ triggerPriceSource: v.number(),
256
+ triggerDirection: v.number()
259
257
  });
260
258
  const TrailingDetailsRawSchema = v.object({
261
259
  trailingDistanceTicks: v.bigint(),
@@ -265,8 +263,8 @@ const TrailingDetailsRawSchema = v.object({
265
263
  trailingDistanceBps: v.number(),
266
264
  maxSlippageTicks: v.number(),
267
265
  maxSlippageBps: v.number(),
268
- triggerPriceSource: v.enum(TriggerPriceSource),
269
- triggerDirection: v.enum(TriggerDirection)
266
+ triggerPriceSource: v.number(),
267
+ triggerDirection: v.number()
270
268
  });
271
269
  const TwapDetailsRawSchema = v.object({
272
270
  twapDurationMs: v.bigint(),
@@ -279,7 +277,7 @@ const LadderDetailsRawSchema = v.object({
279
277
  ladderPriceMinTicks: v.bigint(),
280
278
  ladderPriceMaxTicks: v.bigint(),
281
279
  ladderLevels: v.number(),
282
- ladderDistribution: v.enum(LadderDistribution),
280
+ ladderDistribution: v.number(),
283
281
  executedQtyScaled: v.bigint(),
284
282
  executedLevels: v.number()
285
283
  });
@@ -310,8 +308,8 @@ function transformTriggerDetails(details, scales, symbolId) {
310
308
  case "stop": return {
311
309
  case: "stop",
312
310
  triggerPrice: scaledToDecimalOutput(details.value.triggerPriceTicks, scales.price()),
313
- triggerPriceSource: requiredEnumLabel(TriggerPriceSourceCodec.protoToOutput, details.value.triggerPriceSource, "TriggerDetailsSchema", "trigger price source"),
314
- triggerDirection: requiredEnumLabel(TriggerDirectionCodec.protoToOutput, details.value.triggerDirection, "TriggerDetailsSchema", "trigger direction")
311
+ triggerPriceSource: enumLabel(TriggerPriceSourceCodec.protoToOutput, details.value.triggerPriceSource),
312
+ triggerDirection: enumLabel(TriggerDirectionCodec.protoToOutput, details.value.triggerDirection)
315
313
  };
316
314
  case "trailing": return {
317
315
  case: "trailing",
@@ -322,8 +320,8 @@ function transformTriggerDetails(details, scales, symbolId) {
322
320
  troughPrice: details.value.troughPriceTicks > 0n ? scaledToDecimalOutput(details.value.troughPriceTicks, scales.price()) : void 0,
323
321
  maxSlippage: details.value.maxSlippageTicks > 0 ? scaledToDecimalOutput(BigInt(details.value.maxSlippageTicks), scales.price()) : void 0,
324
322
  maxSlippageBps: details.value.maxSlippageBps,
325
- triggerPriceSource: requiredEnumLabel(TriggerPriceSourceCodec.protoToOutput, details.value.triggerPriceSource, "TriggerDetailsSchema", "trigger price source"),
326
- triggerDirection: requiredEnumLabel(TriggerDirectionCodec.protoToOutput, details.value.triggerDirection, "TriggerDetailsSchema", "trigger direction")
323
+ triggerPriceSource: enumLabel(TriggerPriceSourceCodec.protoToOutput, details.value.triggerPriceSource),
324
+ triggerDirection: enumLabel(TriggerDirectionCodec.protoToOutput, details.value.triggerDirection)
327
325
  };
328
326
  case "twapState": return {
329
327
  case: "twap",
@@ -338,7 +336,7 @@ function transformTriggerDetails(details, scales, symbolId) {
338
336
  ladderPriceMin: scaledToDecimalOutput(details.value.ladderPriceMinTicks, scales.price()),
339
337
  ladderPriceMax: scaledToDecimalOutput(details.value.ladderPriceMaxTicks, scales.price()),
340
338
  ladderLevels: details.value.ladderLevels,
341
- ladderDistribution: requiredEnumLabel(LadderDistributionCodec.protoToOutput, details.value.ladderDistribution, "TriggerDetailsSchema", "ladder distribution"),
339
+ ladderDistribution: enumLabel(LadderDistributionCodec.protoToOutput, details.value.ladderDistribution),
342
340
  executedQty: scaledToDecimalOutput(details.value.executedQtyScaled, scales.baseQty(symbolId)),
343
341
  executedLevels: details.value.executedLevels
344
342
  };
@@ -351,11 +349,11 @@ function createTriggerSchema(scales) {
351
349
  triggerId: v.bigint(),
352
350
  subaccountId: v.bigint(),
353
351
  symbolId: v.number(),
354
- status: v.enum(TriggerStatus),
352
+ status: v.number(),
355
353
  parentOrderId: v.optional(v.bigint()),
356
354
  qtyScaled: v.bigint(),
357
- feeAsset: v.enum(FeeAsset),
358
- selfTradePreventionMode: v.enum(SelfTradePreventionMode),
355
+ feeAsset: v.number(),
356
+ selfTradePreventionMode: v.number(),
359
357
  configuration: TriggerConfigurationRawSchema,
360
358
  clientTriggerId: v.string(),
361
359
  createdAt: v.optional(TimestampSchema),
@@ -368,11 +366,11 @@ function createTriggerSchema(scales) {
368
366
  triggerId: formatId(t.triggerId),
369
367
  subaccountId: formatId(t.subaccountId),
370
368
  symbolId: t.symbolId,
371
- status: requiredEnumLabel(TriggerStatusCodec.protoToOutput, t.status, "TriggerSchema", "status"),
369
+ status: enumLabel(TriggerStatusCodec.protoToOutput, t.status),
372
370
  parentOrderId: t.parentOrderId ? formatId(t.parentOrderId) : void 0,
373
371
  qty: scaledToDecimalOutput(t.qtyScaled, scales.baseQty(t.symbolId)),
374
- feeAsset: requiredEnumLabel(FeeAssetCodec.protoToOutput, t.feeAsset, "TriggerSchema", "fee asset"),
375
- selfTradePreventionMode: requiredEnumLabel(SelfTradePreventionModeCodec.protoToOutput, t.selfTradePreventionMode, "TriggerSchema", "STP mode"),
372
+ feeAsset: enumLabel(FeeAssetCodec.protoToOutput, t.feeAsset),
373
+ selfTradePreventionMode: enumLabel(SelfTradePreventionModeCodec.protoToOutput, t.selfTradePreventionMode),
376
374
  configuration: transformTriggerConfiguration(t.configuration, scales),
377
375
  clientTriggerId: t.clientTriggerId,
378
376
  createdTs: t.createdAt ? tsObjToMs(t.createdAt) : void 0,
@@ -388,8 +386,8 @@ function createTriggerEventSchema(scales) {
388
386
  triggerId: v.bigint(),
389
387
  subaccountId: v.bigint(),
390
388
  symbolId: v.number(),
391
- triggerType: v.enum(TriggerType),
392
- eventType: v.enum(TriggerEventType),
389
+ triggerType: v.number(),
390
+ eventType: v.number(),
393
391
  tsNs: v.bigint(),
394
392
  childSeq: v.number(),
395
393
  childOrderId: v.bigint(),
@@ -399,8 +397,8 @@ function createTriggerEventSchema(scales) {
399
397
  triggerId: formatId(e.triggerId),
400
398
  subaccountId: formatId(e.subaccountId),
401
399
  symbolId: e.symbolId,
402
- triggerType: requiredEnumLabel(TriggerTypeCodec.protoToOutput, e.triggerType, "TriggerEventSchema", "trigger type"),
403
- eventType: requiredEnumLabel(TriggerEventTypeCodec.protoToOutput, e.eventType, "TriggerEventSchema", "event type"),
400
+ triggerType: enumLabel(TriggerTypeCodec.protoToOutput, e.triggerType),
401
+ eventType: enumLabel(TriggerEventTypeCodec.protoToOutput, e.eventType),
404
402
  ts: tsNsToMs(e.tsNs),
405
403
  childSeq: e.childSeq,
406
404
  childOrderId: e.childOrderId > 0n ? formatId(e.childOrderId) : void 0,
@@ -1 +1 @@
1
- {"version":3,"file":"triggers-output.schemas.js","names":["Proto.TriggerStatus","ProtoOrders.Side","TriggerSideCodec","Proto.TriggerCancelReason","Proto.TriggerFailureReason","ProtoOrders.TriggerPriceSource","ProtoOrders.TriggerDirection","Proto.LadderDistribution","ProtoOrders.FeeAsset","ProtoOrders.SelfTradePreventionMode","Proto.TriggerType","Proto.TriggerEventType"],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"sourcesContent":["import * as Proto from \"../../gen/triggers/v1/triggers_pb.js\";\nimport * as ProtoOrders from \"../../gen/orders/v1/orders_pb.js\";\nimport * as v from \"valibot\";\nimport {\n BigIntStringSchema,\n OptionalTimestampMsSchema,\n TimestampSchema,\n PublicIdSchema,\n} from \"../../shared/schemas.js\";\nimport { requiredEnumLabel } from \"../../shared/proto-enum-codec.js\";\nimport { scaledToDecimalOutput, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport { tsNsToMs, tsObjToMs } from \"../../utils/time.js\";\nimport { formatId } from \"../../utils/base58-id.js\";\nimport {\n TriggerTypeCodec,\n TriggerStatusCodec,\n FeeAssetCodec,\n SelfTradePreventionModeCodec,\n TriggerPriceSourceCodec,\n TriggerDirectionCodec,\n LadderDistributionCodec,\n TriggerSideCodec,\n TriggerEventTypeCodec,\n TriggerCancelReasonCodec,\n TriggerFailureReasonCodec,\n} from \"./triggers.codecs.js\";\n\ntype TriggerPriceSourceLabel = \"last\" | \"index\" | \"mark\" | \"unspecified\";\n\ntype TriggerDirectionLabel = \"above\" | \"below\" | \"unspecified\";\n\ntype LadderDistributionLabel = \"linear\" | \"geometric\" | \"weighted_favorable\" | \"unspecified\";\n\nconst TriggerResultStatusSchema = v.pipe(\n v.enum(Proto.TriggerStatus),\n v.transform((status) =>\n requiredEnumLabel(\n TriggerStatusCodec.protoToOutput,\n status,\n \"TriggerResultSchema\",\n \"status\",\n ),\n ),\n);\n\nconst TriggerMutationResultBaseSchema = v.pipe(\n v.object({\n triggerId: PublicIdSchema,\n status: TriggerResultStatusSchema,\n tsNs: v.bigint(),\n }),\n v.transform(({ tsNs, ...result }) => ({\n ...result,\n ts: tsNsToMs(tsNs),\n tsNs: tsNs.toString(),\n })),\n);\n\nexport const CreateTriggerResultSchema = v.pipe(\n v.object({\n triggerId: PublicIdSchema,\n clientTriggerId: v.string(),\n acceptedAt: OptionalTimestampMsSchema,\n acceptedAtTsNs: BigIntStringSchema,\n }),\n v.transform(({ acceptedAt, acceptedAtTsNs, ...result }) => ({\n ...result,\n acceptedAt: acceptedAt ?? tsNsToMs(BigInt(acceptedAtTsNs)),\n acceptedAtNs: acceptedAtTsNs,\n })),\n);\n\nexport type CreateTriggerResult = v.InferOutput<typeof CreateTriggerResultSchema>;\n\nexport const CancelTriggerResultSchema = TriggerMutationResultBaseSchema;\n\nexport type CancelTriggerResult = v.InferOutput<typeof CancelTriggerResultSchema>;\n\nexport const ModifyTriggerResultSchema = TriggerMutationResultBaseSchema;\n\nexport type ModifyTriggerResult = v.InferOutput<typeof ModifyTriggerResultSchema>;\n\nexport const PauseTriggerResultSchema = TriggerMutationResultBaseSchema;\nexport type PauseTriggerResult = v.InferOutput<typeof PauseTriggerResultSchema>;\n\nexport const ResumeTriggerResultSchema = TriggerMutationResultBaseSchema;\nexport type ResumeTriggerResult = v.InferOutput<typeof ResumeTriggerResultSchema>;\n\nconst ConditionalExecutionRawSchema = v.variant(\"case\", [\n v.object({\n case: v.literal(\"marketIoc\"),\n value: v.object({}),\n }),\n v.object({\n case: v.literal(\"limitGtc\"),\n value: v.object({\n priceTicks: v.bigint(),\n postOnly: v.boolean(),\n }),\n }),\n v.object({\n case: v.literal(\"limitIoc\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({\n case: v.literal(\"limitFok\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nconst ConditionalConfigurationRawSchema = v.object({\n triggerPriceTicks: v.bigint(),\n side: v.enum(ProtoOrders.Side),\n child: v.optional(\n v.object({\n execution: ConditionalExecutionRawSchema,\n }),\n ),\n});\n\nconst MaxSlippageRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"maxSlippageTicks\"), value: v.number() }),\n v.object({ case: v.literal(\"maxSlippageBps\"), value: v.number() }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nconst TrailingConfigurationRawSchema = v.object({\n trailingDistance: v.variant(\"case\", [\n v.object({ case: v.literal(\"trailingDistanceTicks\"), value: v.bigint() }),\n v.object({ case: v.literal(\"trailingDistanceBps\"), value: v.number() }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n ]),\n activationPriceTicks: v.bigint(),\n maxSlippage: MaxSlippageRawSchema,\n side: v.enum(ProtoOrders.Side),\n});\n\nconst TwapConfigurationRawSchema = v.object({\n side: v.enum(ProtoOrders.Side),\n durationMs: v.bigint(),\n sliceIntervalMs: v.bigint(),\n execution: v.variant(\"case\", [\n v.object({\n case: v.literal(\"marketIoc\"),\n value: v.object({ maxSlippage: MaxSlippageRawSchema }),\n }),\n v.object({\n case: v.literal(\"limitGtc\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n ]),\n});\n\nconst LadderConfigurationRawSchema = v.object({\n side: v.enum(ProtoOrders.Side),\n priceMinTicks: v.bigint(),\n priceMaxTicks: v.bigint(),\n levels: v.number(),\n postOnly: v.boolean(),\n});\n\nconst TriggerConfigurationRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"stopLoss\"), value: ConditionalConfigurationRawSchema }),\n v.object({ case: v.literal(\"takeProfit\"), value: ConditionalConfigurationRawSchema }),\n v.object({ case: v.literal(\"trailingStop\"), value: TrailingConfigurationRawSchema }),\n v.object({ case: v.literal(\"twap\"), value: TwapConfigurationRawSchema }),\n v.object({ case: v.literal(\"ladder\"), value: LadderConfigurationRawSchema }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nfunction transformConditionalExecution(\n execution: v.InferOutput<typeof ConditionalExecutionRawSchema>,\n scales: SdkScales,\n) {\n switch (execution.case) {\n case \"marketIoc\":\n return { type: \"market_ioc\" } as const;\n case \"limitGtc\":\n return {\n type: \"limit_gtc\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n postOnly: execution.value.postOnly,\n } as const;\n case \"limitIoc\":\n return {\n type: \"limit_ioc\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n } as const;\n case \"limitFok\":\n return {\n type: \"limit_fok\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n } as const;\n default:\n return { type: \"unspecified\" } as const;\n }\n}\n\nfunction transformTriggerConfiguration(\n configuration: v.InferOutput<typeof TriggerConfigurationRawSchema>,\n scales: SdkScales,\n) {\n switch (configuration.case) {\n case \"stopLoss\":\n case \"takeProfit\":\n return {\n type:\n configuration.case === \"stopLoss\"\n ? (\"stop_loss\" as const)\n : (\"take_profit\" as const),\n side: requiredEnumLabel(\n TriggerSideCodec.protoToOutput,\n configuration.value.side,\n \"TriggerConfigurationSchema\",\n \"side\",\n ),\n triggerPrice: scaledToDecimalOutput(\n configuration.value.triggerPriceTicks,\n scales.price(),\n ),\n execution: transformConditionalExecution(\n configuration.value.child?.execution ?? { case: undefined },\n scales,\n ),\n };\n case \"trailingStop\":\n return {\n type: \"trailing_stop\" as const,\n side: requiredEnumLabel(\n TriggerSideCodec.protoToOutput,\n configuration.value.side,\n \"TriggerConfigurationSchema\",\n \"side\",\n ),\n trailingDistance:\n configuration.value.trailingDistance.case === \"trailingDistanceTicks\"\n ? {\n kind: \"distance\" as const,\n distance: scaledToDecimalOutput(\n configuration.value.trailingDistance.value,\n scales.price(),\n ),\n }\n : configuration.value.trailingDistance.case === \"trailingDistanceBps\"\n ? {\n kind: \"bps\" as const,\n bps: configuration.value.trailingDistance.value,\n }\n : { kind: \"unspecified\" as const },\n activationPrice:\n configuration.value.activationPriceTicks > 0n\n ? scaledToDecimalOutput(\n configuration.value.activationPriceTicks,\n scales.price(),\n )\n : undefined,\n maxSlippage: formatMaxSlippage(configuration.value.maxSlippage, scales),\n };\n case \"twap\":\n return {\n type: \"twap\" as const,\n side: requiredEnumLabel(\n TriggerSideCodec.protoToOutput,\n configuration.value.side,\n \"TriggerConfigurationSchema\",\n \"side\",\n ),\n durationMs: Number(configuration.value.durationMs),\n sliceIntervalMs: Number(configuration.value.sliceIntervalMs),\n execution:\n configuration.value.execution.case === \"marketIoc\"\n ? ({\n type: \"market_ioc\",\n maxSlippage: formatMaxSlippage(\n configuration.value.execution.value.maxSlippage,\n scales,\n ),\n } as const)\n : configuration.value.execution.case === \"limitGtc\"\n ? ({\n type: \"limit_gtc\",\n price: scaledToDecimalOutput(\n configuration.value.execution.value.priceTicks,\n scales.price(),\n ),\n } as const)\n : ({ type: \"unspecified\" } as const),\n };\n case \"ladder\":\n return {\n type: \"ladder\" as const,\n side: requiredEnumLabel(\n TriggerSideCodec.protoToOutput,\n configuration.value.side,\n \"TriggerConfigurationSchema\",\n \"side\",\n ),\n priceMin: scaledToDecimalOutput(configuration.value.priceMinTicks, scales.price()),\n priceMax: scaledToDecimalOutput(configuration.value.priceMaxTicks, scales.price()),\n levels: configuration.value.levels,\n postOnly: configuration.value.postOnly,\n };\n default:\n return { type: \"unspecified\" as const };\n }\n}\n\nfunction formatMaxSlippage(\n maxSlippage: v.InferOutput<typeof MaxSlippageRawSchema>,\n scales: SdkScales,\n) {\n return maxSlippage.case === \"maxSlippageTicks\"\n ? {\n kind: \"slippage\" as const,\n slippage: scaledToDecimalOutput(BigInt(maxSlippage.value), scales.price()),\n }\n : maxSlippage.case === \"maxSlippageBps\"\n ? { kind: \"bps\" as const, bps: maxSlippage.value }\n : { kind: \"none\" as const };\n}\n\nconst TerminalReasonRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"cancelReason\"), value: v.enum(Proto.TriggerCancelReason) }),\n v.object({ case: v.literal(\"failureReason\"), value: v.enum(Proto.TriggerFailureReason) }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nfunction transformTerminalReason(reason: v.InferOutput<typeof TerminalReasonRawSchema>) {\n switch (reason.case) {\n case \"cancelReason\":\n return {\n cancelReason: requiredEnumLabel(\n TriggerCancelReasonCodec.protoToOutput,\n reason.value,\n \"TerminalReasonSchema\",\n \"cancel reason\",\n ),\n failureReason: undefined,\n };\n case \"failureReason\":\n return {\n cancelReason: undefined,\n failureReason: requiredEnumLabel(\n TriggerFailureReasonCodec.protoToOutput,\n reason.value,\n \"TerminalReasonSchema\",\n \"failure reason\",\n ),\n };\n default:\n return { cancelReason: undefined, failureReason: undefined };\n }\n}\n\nconst StopDetailsRawSchema = v.object({\n triggerPriceTicks: v.bigint(),\n triggerPriceSource: v.enum(ProtoOrders.TriggerPriceSource),\n triggerDirection: v.enum(ProtoOrders.TriggerDirection),\n});\n\nconst TrailingDetailsRawSchema = v.object({\n trailingDistanceTicks: v.bigint(),\n activationPriceTicks: v.bigint(),\n peakPriceTicks: v.bigint(),\n troughPriceTicks: v.bigint(),\n trailingDistanceBps: v.number(),\n maxSlippageTicks: v.number(),\n maxSlippageBps: v.number(),\n triggerPriceSource: v.enum(ProtoOrders.TriggerPriceSource),\n triggerDirection: v.enum(ProtoOrders.TriggerDirection),\n});\n\nconst TwapDetailsRawSchema = v.object({\n twapDurationMs: v.bigint(),\n twapSliceIntervalMs: v.bigint(),\n sliceIdx: v.number(),\n sliceCount: v.number(),\n executedQtyScaled: v.bigint(),\n});\n\nconst LadderDetailsRawSchema = v.object({\n ladderPriceMinTicks: v.bigint(),\n ladderPriceMaxTicks: v.bigint(),\n ladderLevels: v.number(),\n ladderDistribution: v.enum(Proto.LadderDistribution),\n executedQtyScaled: v.bigint(),\n executedLevels: v.number(),\n});\n\nconst TriggerDetailsRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"stop\"), value: StopDetailsRawSchema }),\n v.object({ case: v.literal(\"trailing\"), value: TrailingDetailsRawSchema }),\n v.object({ case: v.literal(\"twapState\"), value: TwapDetailsRawSchema }),\n v.object({ case: v.literal(\"ladderState\"), value: LadderDetailsRawSchema }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nexport type StopDetailsOutput = {\n case: \"stop\";\n triggerPrice: string;\n triggerPriceSource: TriggerPriceSourceLabel;\n triggerDirection: TriggerDirectionLabel;\n};\n\nexport type TrailingDetailsOutput = {\n case: \"trailing\";\n trailingDistance: string | undefined;\n trailingDistanceBps: number;\n activationPrice: string | undefined;\n peakPrice: string | undefined;\n troughPrice: string | undefined;\n maxSlippage: string | undefined;\n maxSlippageBps: number;\n triggerPriceSource: TriggerPriceSourceLabel;\n triggerDirection: TriggerDirectionLabel;\n};\n\nexport type TwapDetailsOutput = {\n case: \"twap\";\n twapDurationMs: number;\n twapSliceIntervalMs: number;\n sliceIdx: number;\n sliceCount: number;\n /** Cumulative filled child-order base quantity. */\n executedQty: string;\n};\n\nexport type LadderDetailsOutput = {\n case: \"ladder\";\n ladderPriceMin: string;\n ladderPriceMax: string;\n ladderLevels: number;\n ladderDistribution: LadderDistributionLabel;\n /** Cumulative filled child-order base quantity. */\n executedQty: string;\n /** Number of ladder levels with at least one fill. */\n executedLevels: number;\n};\n\nexport type TriggerDetailsOutput =\n | StopDetailsOutput\n | TrailingDetailsOutput\n | TwapDetailsOutput\n | LadderDetailsOutput\n | { case: undefined };\n\nfunction transformTriggerDetails(\n details: v.InferOutput<typeof TriggerDetailsRawSchema>,\n scales: SdkScales,\n symbolId: number,\n): TriggerDetailsOutput {\n switch (details.case) {\n case \"stop\":\n return {\n case: \"stop\",\n triggerPrice: scaledToDecimalOutput(\n details.value.triggerPriceTicks,\n scales.price(),\n ),\n triggerPriceSource: requiredEnumLabel(\n TriggerPriceSourceCodec.protoToOutput,\n details.value.triggerPriceSource,\n \"TriggerDetailsSchema\",\n \"trigger price source\",\n ),\n triggerDirection: requiredEnumLabel(\n TriggerDirectionCodec.protoToOutput,\n details.value.triggerDirection,\n \"TriggerDetailsSchema\",\n \"trigger direction\",\n ),\n };\n case \"trailing\":\n return {\n case: \"trailing\",\n trailingDistance:\n details.value.trailingDistanceTicks > 0n\n ? scaledToDecimalOutput(details.value.trailingDistanceTicks, scales.price())\n : undefined,\n trailingDistanceBps: details.value.trailingDistanceBps,\n activationPrice:\n details.value.activationPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.activationPriceTicks, scales.price())\n : undefined,\n peakPrice:\n details.value.peakPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.peakPriceTicks, scales.price())\n : undefined,\n troughPrice:\n details.value.troughPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.troughPriceTicks, scales.price())\n : undefined,\n maxSlippage:\n details.value.maxSlippageTicks > 0\n ? scaledToDecimalOutput(\n BigInt(details.value.maxSlippageTicks),\n scales.price(),\n )\n : undefined,\n maxSlippageBps: details.value.maxSlippageBps,\n triggerPriceSource: requiredEnumLabel(\n TriggerPriceSourceCodec.protoToOutput,\n details.value.triggerPriceSource,\n \"TriggerDetailsSchema\",\n \"trigger price source\",\n ),\n triggerDirection: requiredEnumLabel(\n TriggerDirectionCodec.protoToOutput,\n details.value.triggerDirection,\n \"TriggerDetailsSchema\",\n \"trigger direction\",\n ),\n };\n case \"twapState\":\n return {\n case: \"twap\",\n twapDurationMs: Number(details.value.twapDurationMs),\n twapSliceIntervalMs: Number(details.value.twapSliceIntervalMs),\n sliceIdx: details.value.sliceIdx,\n sliceCount: details.value.sliceCount,\n executedQty: scaledToDecimalOutput(\n details.value.executedQtyScaled,\n scales.baseQty(symbolId),\n ),\n };\n case \"ladderState\":\n return {\n case: \"ladder\",\n ladderPriceMin: scaledToDecimalOutput(\n details.value.ladderPriceMinTicks,\n scales.price(),\n ),\n ladderPriceMax: scaledToDecimalOutput(\n details.value.ladderPriceMaxTicks,\n scales.price(),\n ),\n ladderLevels: details.value.ladderLevels,\n ladderDistribution: requiredEnumLabel(\n LadderDistributionCodec.protoToOutput,\n details.value.ladderDistribution,\n \"TriggerDetailsSchema\",\n \"ladder distribution\",\n ),\n executedQty: scaledToDecimalOutput(\n details.value.executedQtyScaled,\n scales.baseQty(symbolId),\n ),\n executedLevels: details.value.executedLevels,\n };\n default:\n return { case: undefined };\n }\n}\n\n/** Builds the public trigger output schema using each record's symbol ID for quantity scaling. */\nexport function createTriggerSchema(scales: SdkScales) {\n return v.pipe(\n v.object({\n triggerId: v.bigint(),\n subaccountId: v.bigint(),\n symbolId: v.number(),\n status: v.enum(Proto.TriggerStatus),\n parentOrderId: v.optional(v.bigint()),\n qtyScaled: v.bigint(),\n feeAsset: v.enum(ProtoOrders.FeeAsset),\n selfTradePreventionMode: v.enum(ProtoOrders.SelfTradePreventionMode),\n configuration: TriggerConfigurationRawSchema,\n clientTriggerId: v.string(),\n createdAt: v.optional(TimestampSchema),\n updatedAt: v.optional(TimestampSchema),\n armedAt: v.optional(TimestampSchema),\n completedAt: v.optional(TimestampSchema),\n terminalReason: TerminalReasonRawSchema,\n runtimeDetails: TriggerDetailsRawSchema,\n }),\n v.transform((t) => ({\n triggerId: formatId(t.triggerId),\n subaccountId: formatId(t.subaccountId),\n symbolId: t.symbolId,\n status: requiredEnumLabel(\n TriggerStatusCodec.protoToOutput,\n t.status,\n \"TriggerSchema\",\n \"status\",\n ),\n parentOrderId: t.parentOrderId ? formatId(t.parentOrderId) : undefined,\n qty: scaledToDecimalOutput(t.qtyScaled, scales.baseQty(t.symbolId)),\n feeAsset: requiredEnumLabel(\n FeeAssetCodec.protoToOutput,\n t.feeAsset,\n \"TriggerSchema\",\n \"fee asset\",\n ),\n selfTradePreventionMode: requiredEnumLabel(\n SelfTradePreventionModeCodec.protoToOutput,\n t.selfTradePreventionMode,\n \"TriggerSchema\",\n \"STP mode\",\n ),\n configuration: transformTriggerConfiguration(t.configuration, scales),\n clientTriggerId: t.clientTriggerId,\n createdTs: t.createdAt ? tsObjToMs(t.createdAt) : undefined,\n updatedTs: t.updatedAt ? tsObjToMs(t.updatedAt) : undefined,\n armedTs: t.armedAt ? tsObjToMs(t.armedAt) : undefined,\n completedTs: t.completedAt ? tsObjToMs(t.completedAt) : undefined,\n ...transformTerminalReason(t.terminalReason),\n runtimeDetails: transformTriggerDetails(t.runtimeDetails, scales, t.symbolId),\n })),\n );\n}\n\n/** A normalized standalone trigger record. */\nexport type Trigger = v.InferOutput<ReturnType<typeof createTriggerSchema>>;\n\nexport function createTriggerEventSchema(scales: SdkScales) {\n return v.pipe(\n v.object({\n triggerId: v.bigint(),\n subaccountId: v.bigint(),\n symbolId: v.number(),\n triggerType: v.enum(Proto.TriggerType),\n eventType: v.enum(Proto.TriggerEventType),\n tsNs: v.bigint(),\n childSeq: v.number(),\n childOrderId: v.bigint(),\n firePriceTicks: v.optional(v.bigint()),\n terminalReason: TerminalReasonRawSchema,\n }),\n v.transform((e) => ({\n triggerId: formatId(e.triggerId),\n subaccountId: formatId(e.subaccountId),\n symbolId: e.symbolId,\n triggerType: requiredEnumLabel(\n TriggerTypeCodec.protoToOutput,\n e.triggerType,\n \"TriggerEventSchema\",\n \"trigger type\",\n ),\n eventType: requiredEnumLabel(\n TriggerEventTypeCodec.protoToOutput,\n e.eventType,\n \"TriggerEventSchema\",\n \"event type\",\n ),\n ts: tsNsToMs(e.tsNs),\n childSeq: e.childSeq,\n childOrderId: e.childOrderId > 0n ? formatId(e.childOrderId) : undefined,\n firePrice:\n e.firePriceTicks !== undefined && e.firePriceTicks > 0n\n ? scaledToDecimalOutput(e.firePriceTicks, scales.price())\n : undefined,\n ...transformTerminalReason(e.terminalReason),\n })),\n );\n}\n\nexport type TriggerEvent = v.InferOutput<ReturnType<typeof createTriggerEventSchema>>;\n\nexport type ListTriggerEventsResult = {\n events: TriggerEvent[];\n nextPageToken: string;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"triggers-output.schemas.js","names":["TriggerSideCodec"],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport {\n BigIntStringSchema,\n OptionalTimestampMsSchema,\n TimestampSchema,\n PublicIdSchema,\n} from \"../../shared/schemas.js\";\nimport { enumLabel, enumLabelSchema } from \"../../shared/proto-enum-codec.js\";\nimport { scaledToDecimalOutput, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport { tsNsToMs, tsObjToMs } from \"../../utils/time.js\";\nimport { formatId } from \"../../utils/base58-id.js\";\nimport {\n TriggerTypeCodec,\n TriggerStatusCodec,\n FeeAssetCodec,\n SelfTradePreventionModeCodec,\n TriggerPriceSourceCodec,\n TriggerDirectionCodec,\n LadderDistributionCodec,\n TriggerSideCodec,\n TriggerEventTypeCodec,\n TriggerCancelReasonCodec,\n TriggerFailureReasonCodec,\n} from \"./triggers.codecs.js\";\n\ntype TriggerPriceSourceLabel = \"last\" | \"index\" | \"mark\" | \"unspecified\";\n\ntype TriggerDirectionLabel = \"above\" | \"below\" | \"unspecified\";\n\ntype LadderDistributionLabel = \"linear\" | \"geometric\" | \"weighted_favorable\" | \"unspecified\";\n\nconst TriggerResultStatusSchema = enumLabelSchema(TriggerStatusCodec.protoToOutput);\n\nconst TriggerMutationResultBaseSchema = v.pipe(\n v.object({\n triggerId: PublicIdSchema,\n status: TriggerResultStatusSchema,\n tsNs: v.bigint(),\n }),\n v.transform(({ tsNs, ...result }) => ({\n ...result,\n ts: tsNsToMs(tsNs),\n tsNs: tsNs.toString(),\n })),\n);\n\nexport const CreateTriggerResultSchema = v.pipe(\n v.object({\n triggerId: PublicIdSchema,\n clientTriggerId: v.string(),\n acceptedAt: OptionalTimestampMsSchema,\n acceptedAtTsNs: BigIntStringSchema,\n }),\n v.transform(({ acceptedAt, acceptedAtTsNs, ...result }) => ({\n ...result,\n acceptedAt: acceptedAt ?? tsNsToMs(BigInt(acceptedAtTsNs)),\n acceptedAtNs: acceptedAtTsNs,\n })),\n);\n\nexport type CreateTriggerResult = v.InferOutput<typeof CreateTriggerResultSchema>;\n\nexport const CancelTriggerResultSchema = TriggerMutationResultBaseSchema;\n\nexport type CancelTriggerResult = v.InferOutput<typeof CancelTriggerResultSchema>;\n\nexport const ModifyTriggerResultSchema = TriggerMutationResultBaseSchema;\n\nexport type ModifyTriggerResult = v.InferOutput<typeof ModifyTriggerResultSchema>;\n\nexport const PauseTriggerResultSchema = TriggerMutationResultBaseSchema;\nexport type PauseTriggerResult = v.InferOutput<typeof PauseTriggerResultSchema>;\n\nexport const ResumeTriggerResultSchema = TriggerMutationResultBaseSchema;\nexport type ResumeTriggerResult = v.InferOutput<typeof ResumeTriggerResultSchema>;\n\nconst ConditionalExecutionRawSchema = v.variant(\"case\", [\n v.object({\n case: v.literal(\"marketIoc\"),\n value: v.object({}),\n }),\n v.object({\n case: v.literal(\"limitGtc\"),\n value: v.object({\n priceTicks: v.bigint(),\n postOnly: v.boolean(),\n }),\n }),\n v.object({\n case: v.literal(\"limitIoc\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({\n case: v.literal(\"limitFok\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nconst ConditionalConfigurationRawSchema = v.object({\n triggerPriceTicks: v.bigint(),\n side: v.number(),\n child: v.optional(\n v.object({\n execution: ConditionalExecutionRawSchema,\n }),\n ),\n});\n\nconst MaxSlippageRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"maxSlippageTicks\"), value: v.number() }),\n v.object({ case: v.literal(\"maxSlippageBps\"), value: v.number() }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nconst TrailingConfigurationRawSchema = v.object({\n trailingDistance: v.variant(\"case\", [\n v.object({ case: v.literal(\"trailingDistanceTicks\"), value: v.bigint() }),\n v.object({ case: v.literal(\"trailingDistanceBps\"), value: v.number() }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n ]),\n activationPriceTicks: v.bigint(),\n maxSlippage: MaxSlippageRawSchema,\n side: v.number(),\n});\n\nconst TwapConfigurationRawSchema = v.object({\n side: v.number(),\n durationMs: v.bigint(),\n sliceIntervalMs: v.bigint(),\n execution: v.variant(\"case\", [\n v.object({\n case: v.literal(\"marketIoc\"),\n value: v.object({ maxSlippage: MaxSlippageRawSchema }),\n }),\n v.object({\n case: v.literal(\"limitGtc\"),\n value: v.object({ priceTicks: v.bigint() }),\n }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n ]),\n});\n\nconst LadderConfigurationRawSchema = v.object({\n side: v.number(),\n priceMinTicks: v.bigint(),\n priceMaxTicks: v.bigint(),\n levels: v.number(),\n postOnly: v.boolean(),\n});\n\nconst TriggerConfigurationRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"stopLoss\"), value: ConditionalConfigurationRawSchema }),\n v.object({ case: v.literal(\"takeProfit\"), value: ConditionalConfigurationRawSchema }),\n v.object({ case: v.literal(\"trailingStop\"), value: TrailingConfigurationRawSchema }),\n v.object({ case: v.literal(\"twap\"), value: TwapConfigurationRawSchema }),\n v.object({ case: v.literal(\"ladder\"), value: LadderConfigurationRawSchema }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nfunction transformConditionalExecution(\n execution: v.InferOutput<typeof ConditionalExecutionRawSchema>,\n scales: SdkScales,\n) {\n switch (execution.case) {\n case \"marketIoc\":\n return { type: \"market_ioc\" } as const;\n case \"limitGtc\":\n return {\n type: \"limit_gtc\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n postOnly: execution.value.postOnly,\n } as const;\n case \"limitIoc\":\n return {\n type: \"limit_ioc\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n } as const;\n case \"limitFok\":\n return {\n type: \"limit_fok\",\n price: scaledToDecimalOutput(execution.value.priceTicks, scales.price()),\n } as const;\n default:\n return { type: \"unspecified\" } as const;\n }\n}\n\nfunction transformTriggerConfiguration(\n configuration: v.InferOutput<typeof TriggerConfigurationRawSchema>,\n scales: SdkScales,\n) {\n switch (configuration.case) {\n case \"stopLoss\":\n case \"takeProfit\":\n return {\n type:\n configuration.case === \"stopLoss\"\n ? (\"stop_loss\" as const)\n : (\"take_profit\" as const),\n side: enumLabel(TriggerSideCodec.protoToOutput, configuration.value.side),\n triggerPrice: scaledToDecimalOutput(\n configuration.value.triggerPriceTicks,\n scales.price(),\n ),\n execution: transformConditionalExecution(\n configuration.value.child?.execution ?? { case: undefined },\n scales,\n ),\n };\n case \"trailingStop\":\n return {\n type: \"trailing_stop\" as const,\n side: enumLabel(TriggerSideCodec.protoToOutput, configuration.value.side),\n trailingDistance:\n configuration.value.trailingDistance.case === \"trailingDistanceTicks\"\n ? {\n kind: \"distance\" as const,\n distance: scaledToDecimalOutput(\n configuration.value.trailingDistance.value,\n scales.price(),\n ),\n }\n : configuration.value.trailingDistance.case === \"trailingDistanceBps\"\n ? {\n kind: \"bps\" as const,\n bps: configuration.value.trailingDistance.value,\n }\n : { kind: \"unspecified\" as const },\n activationPrice:\n configuration.value.activationPriceTicks > 0n\n ? scaledToDecimalOutput(\n configuration.value.activationPriceTicks,\n scales.price(),\n )\n : undefined,\n maxSlippage: formatMaxSlippage(configuration.value.maxSlippage, scales),\n };\n case \"twap\":\n return {\n type: \"twap\" as const,\n side: enumLabel(TriggerSideCodec.protoToOutput, configuration.value.side),\n durationMs: Number(configuration.value.durationMs),\n sliceIntervalMs: Number(configuration.value.sliceIntervalMs),\n execution:\n configuration.value.execution.case === \"marketIoc\"\n ? ({\n type: \"market_ioc\",\n maxSlippage: formatMaxSlippage(\n configuration.value.execution.value.maxSlippage,\n scales,\n ),\n } as const)\n : configuration.value.execution.case === \"limitGtc\"\n ? ({\n type: \"limit_gtc\",\n price: scaledToDecimalOutput(\n configuration.value.execution.value.priceTicks,\n scales.price(),\n ),\n } as const)\n : ({ type: \"unspecified\" } as const),\n };\n case \"ladder\":\n return {\n type: \"ladder\" as const,\n side: enumLabel(TriggerSideCodec.protoToOutput, configuration.value.side),\n priceMin: scaledToDecimalOutput(configuration.value.priceMinTicks, scales.price()),\n priceMax: scaledToDecimalOutput(configuration.value.priceMaxTicks, scales.price()),\n levels: configuration.value.levels,\n postOnly: configuration.value.postOnly,\n };\n default:\n return { type: \"unspecified\" as const };\n }\n}\n\nfunction formatMaxSlippage(\n maxSlippage: v.InferOutput<typeof MaxSlippageRawSchema>,\n scales: SdkScales,\n) {\n return maxSlippage.case === \"maxSlippageTicks\"\n ? {\n kind: \"slippage\" as const,\n slippage: scaledToDecimalOutput(BigInt(maxSlippage.value), scales.price()),\n }\n : maxSlippage.case === \"maxSlippageBps\"\n ? { kind: \"bps\" as const, bps: maxSlippage.value }\n : { kind: \"none\" as const };\n}\n\nconst TerminalReasonRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"cancelReason\"), value: v.number() }),\n v.object({ case: v.literal(\"failureReason\"), value: v.number() }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nfunction transformTerminalReason(reason: v.InferOutput<typeof TerminalReasonRawSchema>) {\n switch (reason.case) {\n case \"cancelReason\":\n return {\n cancelReason: enumLabel(TriggerCancelReasonCodec.protoToOutput, reason.value),\n failureReason: undefined,\n };\n case \"failureReason\":\n return {\n cancelReason: undefined,\n failureReason: enumLabel(TriggerFailureReasonCodec.protoToOutput, reason.value),\n };\n default:\n return { cancelReason: undefined, failureReason: undefined };\n }\n}\n\nconst StopDetailsRawSchema = v.object({\n triggerPriceTicks: v.bigint(),\n triggerPriceSource: v.number(),\n triggerDirection: v.number(),\n});\n\nconst TrailingDetailsRawSchema = v.object({\n trailingDistanceTicks: v.bigint(),\n activationPriceTicks: v.bigint(),\n peakPriceTicks: v.bigint(),\n troughPriceTicks: v.bigint(),\n trailingDistanceBps: v.number(),\n maxSlippageTicks: v.number(),\n maxSlippageBps: v.number(),\n triggerPriceSource: v.number(),\n triggerDirection: v.number(),\n});\n\nconst TwapDetailsRawSchema = v.object({\n twapDurationMs: v.bigint(),\n twapSliceIntervalMs: v.bigint(),\n sliceIdx: v.number(),\n sliceCount: v.number(),\n executedQtyScaled: v.bigint(),\n});\n\nconst LadderDetailsRawSchema = v.object({\n ladderPriceMinTicks: v.bigint(),\n ladderPriceMaxTicks: v.bigint(),\n ladderLevels: v.number(),\n ladderDistribution: v.number(),\n executedQtyScaled: v.bigint(),\n executedLevels: v.number(),\n});\n\nconst TriggerDetailsRawSchema = v.variant(\"case\", [\n v.object({ case: v.literal(\"stop\"), value: StopDetailsRawSchema }),\n v.object({ case: v.literal(\"trailing\"), value: TrailingDetailsRawSchema }),\n v.object({ case: v.literal(\"twapState\"), value: TwapDetailsRawSchema }),\n v.object({ case: v.literal(\"ladderState\"), value: LadderDetailsRawSchema }),\n v.object({ case: v.undefined(), value: v.optional(v.undefined()) }),\n]);\n\nexport type StopDetailsOutput = {\n case: \"stop\";\n triggerPrice: string;\n triggerPriceSource: TriggerPriceSourceLabel;\n triggerDirection: TriggerDirectionLabel;\n};\n\nexport type TrailingDetailsOutput = {\n case: \"trailing\";\n trailingDistance: string | undefined;\n trailingDistanceBps: number;\n activationPrice: string | undefined;\n peakPrice: string | undefined;\n troughPrice: string | undefined;\n maxSlippage: string | undefined;\n maxSlippageBps: number;\n triggerPriceSource: TriggerPriceSourceLabel;\n triggerDirection: TriggerDirectionLabel;\n};\n\nexport type TwapDetailsOutput = {\n case: \"twap\";\n twapDurationMs: number;\n twapSliceIntervalMs: number;\n sliceIdx: number;\n sliceCount: number;\n /** Cumulative filled child-order base quantity. */\n executedQty: string;\n};\n\nexport type LadderDetailsOutput = {\n case: \"ladder\";\n ladderPriceMin: string;\n ladderPriceMax: string;\n ladderLevels: number;\n ladderDistribution: LadderDistributionLabel;\n /** Cumulative filled child-order base quantity. */\n executedQty: string;\n /** Number of ladder levels with at least one fill. */\n executedLevels: number;\n};\n\nexport type TriggerDetailsOutput =\n | StopDetailsOutput\n | TrailingDetailsOutput\n | TwapDetailsOutput\n | LadderDetailsOutput\n | { case: undefined };\n\nfunction transformTriggerDetails(\n details: v.InferOutput<typeof TriggerDetailsRawSchema>,\n scales: SdkScales,\n symbolId: number,\n): TriggerDetailsOutput {\n switch (details.case) {\n case \"stop\":\n return {\n case: \"stop\",\n triggerPrice: scaledToDecimalOutput(\n details.value.triggerPriceTicks,\n scales.price(),\n ),\n triggerPriceSource: enumLabel(\n TriggerPriceSourceCodec.protoToOutput,\n details.value.triggerPriceSource,\n ),\n triggerDirection: enumLabel(\n TriggerDirectionCodec.protoToOutput,\n details.value.triggerDirection,\n ),\n };\n case \"trailing\":\n return {\n case: \"trailing\",\n trailingDistance:\n details.value.trailingDistanceTicks > 0n\n ? scaledToDecimalOutput(details.value.trailingDistanceTicks, scales.price())\n : undefined,\n trailingDistanceBps: details.value.trailingDistanceBps,\n activationPrice:\n details.value.activationPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.activationPriceTicks, scales.price())\n : undefined,\n peakPrice:\n details.value.peakPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.peakPriceTicks, scales.price())\n : undefined,\n troughPrice:\n details.value.troughPriceTicks > 0n\n ? scaledToDecimalOutput(details.value.troughPriceTicks, scales.price())\n : undefined,\n maxSlippage:\n details.value.maxSlippageTicks > 0\n ? scaledToDecimalOutput(\n BigInt(details.value.maxSlippageTicks),\n scales.price(),\n )\n : undefined,\n maxSlippageBps: details.value.maxSlippageBps,\n triggerPriceSource: enumLabel(\n TriggerPriceSourceCodec.protoToOutput,\n details.value.triggerPriceSource,\n ),\n triggerDirection: enumLabel(\n TriggerDirectionCodec.protoToOutput,\n details.value.triggerDirection,\n ),\n };\n case \"twapState\":\n return {\n case: \"twap\",\n twapDurationMs: Number(details.value.twapDurationMs),\n twapSliceIntervalMs: Number(details.value.twapSliceIntervalMs),\n sliceIdx: details.value.sliceIdx,\n sliceCount: details.value.sliceCount,\n executedQty: scaledToDecimalOutput(\n details.value.executedQtyScaled,\n scales.baseQty(symbolId),\n ),\n };\n case \"ladderState\":\n return {\n case: \"ladder\",\n ladderPriceMin: scaledToDecimalOutput(\n details.value.ladderPriceMinTicks,\n scales.price(),\n ),\n ladderPriceMax: scaledToDecimalOutput(\n details.value.ladderPriceMaxTicks,\n scales.price(),\n ),\n ladderLevels: details.value.ladderLevels,\n ladderDistribution: enumLabel(\n LadderDistributionCodec.protoToOutput,\n details.value.ladderDistribution,\n ),\n executedQty: scaledToDecimalOutput(\n details.value.executedQtyScaled,\n scales.baseQty(symbolId),\n ),\n executedLevels: details.value.executedLevels,\n };\n default:\n return { case: undefined };\n }\n}\n\n/** Builds the public trigger output schema using each record's symbol ID for quantity scaling. */\nexport function createTriggerSchema(scales: SdkScales) {\n return v.pipe(\n v.object({\n triggerId: v.bigint(),\n subaccountId: v.bigint(),\n symbolId: v.number(),\n status: v.number(),\n parentOrderId: v.optional(v.bigint()),\n qtyScaled: v.bigint(),\n feeAsset: v.number(),\n selfTradePreventionMode: v.number(),\n configuration: TriggerConfigurationRawSchema,\n clientTriggerId: v.string(),\n createdAt: v.optional(TimestampSchema),\n updatedAt: v.optional(TimestampSchema),\n armedAt: v.optional(TimestampSchema),\n completedAt: v.optional(TimestampSchema),\n terminalReason: TerminalReasonRawSchema,\n runtimeDetails: TriggerDetailsRawSchema,\n }),\n v.transform((t) => ({\n triggerId: formatId(t.triggerId),\n subaccountId: formatId(t.subaccountId),\n symbolId: t.symbolId,\n status: enumLabel(TriggerStatusCodec.protoToOutput, t.status),\n parentOrderId: t.parentOrderId ? formatId(t.parentOrderId) : undefined,\n qty: scaledToDecimalOutput(t.qtyScaled, scales.baseQty(t.symbolId)),\n feeAsset: enumLabel(FeeAssetCodec.protoToOutput, t.feeAsset),\n selfTradePreventionMode: enumLabel(\n SelfTradePreventionModeCodec.protoToOutput,\n t.selfTradePreventionMode,\n ),\n configuration: transformTriggerConfiguration(t.configuration, scales),\n clientTriggerId: t.clientTriggerId,\n createdTs: t.createdAt ? tsObjToMs(t.createdAt) : undefined,\n updatedTs: t.updatedAt ? tsObjToMs(t.updatedAt) : undefined,\n armedTs: t.armedAt ? tsObjToMs(t.armedAt) : undefined,\n completedTs: t.completedAt ? tsObjToMs(t.completedAt) : undefined,\n ...transformTerminalReason(t.terminalReason),\n runtimeDetails: transformTriggerDetails(t.runtimeDetails, scales, t.symbolId),\n })),\n );\n}\n\n/** A normalized standalone trigger record. */\nexport type Trigger = v.InferOutput<ReturnType<typeof createTriggerSchema>>;\n\nexport function createTriggerEventSchema(scales: SdkScales) {\n return v.pipe(\n v.object({\n triggerId: v.bigint(),\n subaccountId: v.bigint(),\n symbolId: v.number(),\n triggerType: v.number(),\n eventType: v.number(),\n tsNs: v.bigint(),\n childSeq: v.number(),\n childOrderId: v.bigint(),\n firePriceTicks: v.optional(v.bigint()),\n terminalReason: TerminalReasonRawSchema,\n }),\n v.transform((e) => ({\n triggerId: formatId(e.triggerId),\n subaccountId: formatId(e.subaccountId),\n symbolId: e.symbolId,\n triggerType: enumLabel(TriggerTypeCodec.protoToOutput, e.triggerType),\n eventType: enumLabel(TriggerEventTypeCodec.protoToOutput, e.eventType),\n ts: tsNsToMs(e.tsNs),\n childSeq: e.childSeq,\n childOrderId: e.childOrderId > 0n ? formatId(e.childOrderId) : undefined,\n firePrice:\n e.firePriceTicks !== undefined && e.firePriceTicks > 0n\n ? scaledToDecimalOutput(e.firePriceTicks, scales.price())\n : undefined,\n ...transformTerminalReason(e.terminalReason),\n })),\n );\n}\n\nexport type TriggerEvent = v.InferOutput<ReturnType<typeof createTriggerEventSchema>>;\n\nexport type ListTriggerEventsResult = {\n events: TriggerEvent[];\n nextPageToken: string;\n};\n"],"mappings":"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"}