@polyester/sdk 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/dist/catalogs/readers.js +1 -1
- package/dist/gen/auth/v1/api_keys_pb.d.ts +1 -1
- package/dist/gen/auth/v1/api_keys_pb.js.map +1 -1
- package/dist/gen/auth/v1/policies_pb.d.ts +69 -341
- package/dist/gen/auth/v1/policies_pb.d.ts.map +1 -1
- package/dist/gen/auth/v1/policies_pb.js +28 -46
- package/dist/gen/auth/v1/policies_pb.js.map +1 -1
- package/dist/gen/fees/v1/fees_pb.d.ts +0 -6
- package/dist/gen/fees/v1/fees_pb.d.ts.map +1 -1
- package/dist/gen/fees/v1/fees_pb.js +1 -1
- package/dist/gen/fees/v1/fees_pb.js.map +1 -1
- package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts +6 -11
- package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts.map +1 -1
- package/dist/gen/marketoverview/v1/marketoverview_pb.js +1 -1
- package/dist/gen/marketoverview/v1/marketoverview_pb.js.map +1 -1
- package/dist/gen/orderbook/v1/orderbook_pb.d.ts +3 -3
- package/dist/gen/orderbook/v1/orderbook_pb.js +1 -1
- package/dist/gen/orderbook/v1/orderbook_pb.js.map +1 -1
- package/dist/gen/orders/v1/orders_pb.d.ts +43 -12
- package/dist/gen/orders/v1/orders_pb.d.ts.map +1 -1
- package/dist/gen/orders/v1/orders_pb.js +25 -1
- package/dist/gen/orders/v1/orders_pb.js.map +1 -1
- package/dist/gen/triggers/v1/triggers_pb.d.ts +28 -14
- package/dist/gen/triggers/v1/triggers_pb.d.ts.map +1 -1
- package/dist/gen/triggers/v1/triggers_pb.js +7 -1
- package/dist/gen/triggers/v1/triggers_pb.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/services/fees/fees.schemas.d.ts +2 -3
- package/dist/services/fees/fees.schemas.d.ts.map +1 -1
- package/dist/services/fees/fees.schemas.js +3 -4
- package/dist/services/fees/fees.schemas.js.map +1 -1
- package/dist/services/market-data/market-data.schemas.js +1 -1
- package/dist/services/market-overview/market-overview.d.ts +1 -1
- package/dist/services/market-overview/market-overview.js +1 -1
- package/dist/services/market-overview/market-overview.js.map +1 -1
- package/dist/services/market-overview/market-overview.schemas.d.ts +20 -7
- package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -1
- package/dist/services/market-overview/market-overview.schemas.js +8 -6
- package/dist/services/market-overview/market-overview.schemas.js.map +1 -1
- package/dist/services/orderbook/orderbook.d.ts +3 -4
- package/dist/services/orderbook/orderbook.d.ts.map +1 -1
- package/dist/services/orderbook/orderbook.js +13 -10
- package/dist/services/orderbook/orderbook.js.map +1 -1
- package/dist/services/orderbook/orderbook.schemas.d.ts +8 -9
- package/dist/services/orderbook/orderbook.schemas.d.ts.map +1 -1
- package/dist/services/orderbook/orderbook.schemas.js +9 -8
- package/dist/services/orderbook/orderbook.schemas.js.map +1 -1
- package/dist/services/orders/order-errors.schemas.d.ts +1 -1
- package/dist/services/orders/orders-batch.schemas.d.ts +42 -42
- package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-batch.schemas.js +7 -8
- package/dist/services/orders/orders-batch.schemas.js.map +1 -1
- package/dist/services/orders/orders-input.schemas.d.ts +29 -29
- package/dist/services/orders/orders-input.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-input.schemas.js +10 -10
- package/dist/services/orders/orders-input.schemas.js.map +1 -1
- package/dist/services/orders/orders-modify.schemas.d.ts +3 -2
- package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -1
- package/dist/services/orders/orders-modify.schemas.js +5 -3
- package/dist/services/orders/orders-modify.schemas.js.map +1 -1
- package/dist/services/orders/orders-risk.schemas.js +1 -1
- package/dist/services/orders/orders.d.ts +5 -5
- package/dist/services/orders/orders.d.ts.map +1 -1
- package/dist/services/orders/orders.js +8 -8
- package/dist/services/orders/orders.js.map +1 -1
- package/dist/services/policies/api-key-policies/api-key-policies.d.ts +2 -2
- package/dist/services/policies/api-key-policies/api-key-policies.js +2 -2
- package/dist/services/policies/api-key-policies/api-key-policies.js.map +1 -1
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +30 -155
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts.map +1 -1
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.js +5 -53
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.js.map +1 -1
- package/dist/services/policies/shared.codecs.js +4 -12
- package/dist/services/policies/shared.codecs.js.map +1 -1
- package/dist/services/policies/shared.d.ts +1 -1
- package/dist/services/policies/shared.d.ts.map +1 -1
- package/dist/services/policies/shared.js +5 -12
- package/dist/services/policies/shared.js.map +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.js +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.js.map +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +19 -215
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -1
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +9 -115
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -1
- package/dist/services/shared.js +4 -1
- package/dist/services/shared.js.map +1 -1
- package/dist/services/subaccounts/subaccounts.schemas.d.ts +1 -1
- package/dist/services/trades/trades.schemas.js +1 -1
- package/dist/services/trailing-oneof-inputs.js +1 -1
- package/dist/services/triggers/trigger-child-order.schemas.js +5 -3
- package/dist/services/triggers/trigger-child-order.schemas.js.map +1 -1
- package/dist/services/triggers/trigger-input.schemas.d.ts +46 -35
- package/dist/services/triggers/trigger-input.schemas.d.ts.map +1 -1
- package/dist/services/triggers/trigger-input.schemas.js +14 -4
- package/dist/services/triggers/trigger-input.schemas.js.map +1 -1
- package/dist/services/triggers/triggers-output.schemas.d.ts +4 -5
- package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
- package/dist/services/triggers/triggers-output.schemas.js +3 -3
- package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
- package/dist/services/triggers/triggers.codecs.js +6 -3
- package/dist/services/triggers/triggers.codecs.js.map +1 -1
- package/dist/services/triggers/triggers.d.ts +4 -4
- package/dist/services/triggers/triggers.js +4 -4
- package/dist/services/triggers/triggers.js.map +1 -1
- package/dist/services/triggers/triggers.types.d.ts +3 -3
- package/dist/shared/decimal-surface.js +1 -1
- package/dist/shared/schemas.js +2 -2
- package/dist/shared/schemas.js.map +1 -1
- package/dist/shared/transports.js +6 -1
- package/dist/shared/transports.js.map +1 -1
- package/dist/shared/wire-bounds.js +3 -1
- package/dist/shared/wire-bounds.js.map +1 -1
- package/dist/utils/numbers.js +1 -10
- package/dist/utils/numbers.js.map +1 -1
- package/package.json +2 -2
|
@@ -3,6 +3,7 @@ import { TriggerEventType, TriggerLimitFok, TriggerLimitGtc, TriggerLimitIoc, Tr
|
|
|
3
3
|
import { SdkScales } from "../../shared/decimal-surface.js";
|
|
4
4
|
import * as v from "valibot";
|
|
5
5
|
//#region src/services/triggers/trigger-input.schemas.d.ts
|
|
6
|
+
/** Builds the create-trigger boundary schema using catalog scales keyed by symbol ID. */
|
|
6
7
|
declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchema<[v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
7
8
|
readonly side: v.LiteralSchema<"sell", undefined>;
|
|
8
9
|
readonly execution: v.VariantSchema<"type", [v.StrictObjectSchema<{
|
|
@@ -20,7 +21,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
20
21
|
}, undefined>], undefined>;
|
|
21
22
|
readonly triggerType: v.LiteralSchema<"stop_loss", undefined>;
|
|
22
23
|
readonly triggerPrice: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
23
|
-
readonly
|
|
24
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
24
25
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
25
26
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
26
27
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -45,7 +46,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
45
46
|
};
|
|
46
47
|
triggerType: "stop_loss";
|
|
47
48
|
triggerPrice: string;
|
|
48
|
-
|
|
49
|
+
symbolId: number;
|
|
49
50
|
clientTriggerId: string;
|
|
50
51
|
qty: string;
|
|
51
52
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -70,7 +71,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
70
71
|
};
|
|
71
72
|
triggerType: "stop_loss";
|
|
72
73
|
triggerPrice: string;
|
|
73
|
-
|
|
74
|
+
symbolId: number;
|
|
74
75
|
clientTriggerId: string;
|
|
75
76
|
qty: string;
|
|
76
77
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -136,7 +137,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
136
137
|
};
|
|
137
138
|
};
|
|
138
139
|
};
|
|
139
|
-
|
|
140
|
+
symbolId: number;
|
|
140
141
|
qtyScaled: bigint;
|
|
141
142
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
142
143
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -157,7 +158,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
157
158
|
}, undefined>], undefined>;
|
|
158
159
|
readonly triggerType: v.LiteralSchema<"stop_loss", undefined>;
|
|
159
160
|
readonly triggerPrice: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
160
|
-
readonly
|
|
161
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
161
162
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
162
163
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
163
164
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -180,7 +181,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
180
181
|
};
|
|
181
182
|
triggerType: "stop_loss";
|
|
182
183
|
triggerPrice: string;
|
|
183
|
-
|
|
184
|
+
symbolId: number;
|
|
184
185
|
clientTriggerId: string;
|
|
185
186
|
qty: string;
|
|
186
187
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -246,7 +247,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
246
247
|
};
|
|
247
248
|
};
|
|
248
249
|
};
|
|
249
|
-
|
|
250
|
+
symbolId: number;
|
|
250
251
|
qtyScaled: bigint;
|
|
251
252
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
252
253
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -269,7 +270,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
269
270
|
}, undefined>], undefined>;
|
|
270
271
|
readonly triggerType: v.LiteralSchema<"take_profit", undefined>;
|
|
271
272
|
readonly triggerPrice: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
272
|
-
readonly
|
|
273
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
273
274
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
274
275
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
275
276
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -294,7 +295,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
294
295
|
};
|
|
295
296
|
triggerType: "take_profit";
|
|
296
297
|
triggerPrice: string;
|
|
297
|
-
|
|
298
|
+
symbolId: number;
|
|
298
299
|
clientTriggerId: string;
|
|
299
300
|
qty: string;
|
|
300
301
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -319,7 +320,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
319
320
|
};
|
|
320
321
|
triggerType: "take_profit";
|
|
321
322
|
triggerPrice: string;
|
|
322
|
-
|
|
323
|
+
symbolId: number;
|
|
323
324
|
clientTriggerId: string;
|
|
324
325
|
qty: string;
|
|
325
326
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -385,7 +386,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
385
386
|
};
|
|
386
387
|
};
|
|
387
388
|
};
|
|
388
|
-
|
|
389
|
+
symbolId: number;
|
|
389
390
|
qtyScaled: bigint;
|
|
390
391
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
391
392
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -406,7 +407,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
406
407
|
}, undefined>], undefined>;
|
|
407
408
|
readonly triggerType: v.LiteralSchema<"take_profit", undefined>;
|
|
408
409
|
readonly triggerPrice: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
409
|
-
readonly
|
|
410
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
410
411
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
411
412
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
412
413
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -429,7 +430,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
429
430
|
};
|
|
430
431
|
triggerType: "take_profit";
|
|
431
432
|
triggerPrice: string;
|
|
432
|
-
|
|
433
|
+
symbolId: number;
|
|
433
434
|
clientTriggerId: string;
|
|
434
435
|
qty: string;
|
|
435
436
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -495,7 +496,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
495
496
|
};
|
|
496
497
|
};
|
|
497
498
|
};
|
|
498
|
-
|
|
499
|
+
symbolId: number;
|
|
499
500
|
qtyScaled: bigint;
|
|
500
501
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
501
502
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -520,7 +521,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
520
521
|
}, undefined>, v.StrictObjectSchema<{
|
|
521
522
|
readonly kind: v.LiteralSchema<"none", undefined>;
|
|
522
523
|
}, undefined>], undefined>, undefined>;
|
|
523
|
-
readonly
|
|
524
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
524
525
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
525
526
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
526
527
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -547,7 +548,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
547
548
|
} | {
|
|
548
549
|
kind: "none";
|
|
549
550
|
} | undefined;
|
|
550
|
-
|
|
551
|
+
symbolId: number;
|
|
551
552
|
clientTriggerId: string;
|
|
552
553
|
qty: string;
|
|
553
554
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -574,7 +575,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
574
575
|
} | {
|
|
575
576
|
kind: "none";
|
|
576
577
|
} | undefined;
|
|
577
|
-
|
|
578
|
+
symbolId: number;
|
|
578
579
|
clientTriggerId: string;
|
|
579
580
|
qty: string;
|
|
580
581
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -612,7 +613,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
612
613
|
readonly side: Side.SELL;
|
|
613
614
|
};
|
|
614
615
|
};
|
|
615
|
-
|
|
616
|
+
symbolId: number;
|
|
616
617
|
qtyScaled: bigint;
|
|
617
618
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
618
619
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -629,7 +630,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
629
630
|
readonly type: v.LiteralSchema<"limit_gtc", undefined>;
|
|
630
631
|
readonly price: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
631
632
|
}, undefined>], undefined>;
|
|
632
|
-
readonly
|
|
633
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
633
634
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
634
635
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
635
636
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -648,7 +649,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
648
649
|
type: "limit_gtc";
|
|
649
650
|
price: string;
|
|
650
651
|
};
|
|
651
|
-
|
|
652
|
+
symbolId: number;
|
|
652
653
|
clientTriggerId: string;
|
|
653
654
|
qty: string;
|
|
654
655
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -667,7 +668,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
667
668
|
type: "limit_gtc";
|
|
668
669
|
price: string;
|
|
669
670
|
};
|
|
670
|
-
|
|
671
|
+
symbolId: number;
|
|
671
672
|
clientTriggerId: string;
|
|
672
673
|
qty: string;
|
|
673
674
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -686,7 +687,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
686
687
|
type: "limit_gtc";
|
|
687
688
|
price: string;
|
|
688
689
|
};
|
|
689
|
-
|
|
690
|
+
symbolId: number;
|
|
690
691
|
clientTriggerId: string;
|
|
691
692
|
qty: string;
|
|
692
693
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -712,7 +713,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
712
713
|
};
|
|
713
714
|
};
|
|
714
715
|
};
|
|
715
|
-
|
|
716
|
+
symbolId: number;
|
|
716
717
|
qtyScaled: bigint;
|
|
717
718
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
718
719
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
@@ -725,7 +726,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
725
726
|
readonly priceMax: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
726
727
|
readonly levels: v.SchemaWithPipe<readonly [v.UnionSchema<[v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>], undefined>, v.TransformAction<string | number, number>]>;
|
|
727
728
|
readonly postOnly: v.OptionalSchema<v.BooleanSchema<undefined>, false>;
|
|
728
|
-
readonly
|
|
729
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
729
730
|
readonly clientTriggerId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, () => `${string}-${string}-${string}-${string}-${string}`>;
|
|
730
731
|
readonly qty: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
731
732
|
readonly feeAsset: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["quote", "base"], undefined>, "quote">, v.TransformAction<"quote" | "base", FeeAsset.QUOTE | FeeAsset.BASE>]>;
|
|
@@ -740,7 +741,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
740
741
|
priceMax: string;
|
|
741
742
|
levels: number;
|
|
742
743
|
postOnly: boolean;
|
|
743
|
-
|
|
744
|
+
symbolId: number;
|
|
744
745
|
clientTriggerId: string;
|
|
745
746
|
qty: string;
|
|
746
747
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -755,7 +756,7 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
755
756
|
priceMax: string;
|
|
756
757
|
levels: number;
|
|
757
758
|
postOnly: boolean;
|
|
758
|
-
|
|
759
|
+
symbolId: number;
|
|
759
760
|
clientTriggerId: string;
|
|
760
761
|
qty: string;
|
|
761
762
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
@@ -776,17 +777,19 @@ declare function createCreateTriggerInputSchema(scales: SdkScales): v.UnionSchem
|
|
|
776
777
|
readonly postOnly: boolean;
|
|
777
778
|
};
|
|
778
779
|
};
|
|
779
|
-
|
|
780
|
+
symbolId: number;
|
|
780
781
|
qtyScaled: bigint;
|
|
781
782
|
feeAsset: FeeAsset.QUOTE | FeeAsset.BASE;
|
|
782
783
|
selfTradePreventionMode: SelfTradePreventionMode.EXPIRE_MAKER | SelfTradePreventionMode.EXPIRE_TAKER | SelfTradePreventionMode.EXPIRE_BOTH;
|
|
783
784
|
clientTriggerId: string;
|
|
784
785
|
};
|
|
785
786
|
}>]>], undefined>;
|
|
787
|
+
/** Public input for creating a standalone trigger. */
|
|
786
788
|
type CreateTriggerInput = v.InferInput<ReturnType<typeof createCreateTriggerInputSchema>>;
|
|
789
|
+
/** Public filters for listing triggers in an account scope. */
|
|
787
790
|
declare const ListTriggersInputSchema: v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
788
791
|
readonly parentOrderId: v.SchemaWithPipe<readonly [v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, undefined>, v.TransformAction<string | undefined, bigint | undefined>]>;
|
|
789
|
-
readonly
|
|
792
|
+
readonly symbolId: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>, undefined>;
|
|
790
793
|
readonly status: v.SchemaWithPipe<readonly [v.OptionalSchema<v.ArraySchema<v.PicklistSchema<readonly ["created", "armed", "running", "completed", "cancelled", "failed", "paused"], undefined>, undefined>, undefined>, v.TransformAction<("cancelled" | "created" | "failed" | "completed" | "armed" | "running" | "paused")[] | undefined, (TriggerStatus.STATUS_CREATED | TriggerStatus.STATUS_ARMED | TriggerStatus.STATUS_RUNNING | TriggerStatus.STATUS_COMPLETED | TriggerStatus.STATUS_CANCELED | TriggerStatus.STATUS_FAILED | TriggerStatus.STATUS_PAUSED)[]>]>;
|
|
791
794
|
readonly triggerType: v.SchemaWithPipe<readonly [v.OptionalSchema<v.PicklistSchema<readonly ["stop_loss", "take_profit", "trailing_stop", "twap", "ladder"], undefined>, undefined>, v.TransformAction<"twap" | "ladder" | "stop_loss" | "take_profit" | "trailing_stop" | undefined, TriggerType>]>;
|
|
792
795
|
readonly limit: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 1000, undefined>]>, 50>;
|
|
@@ -796,7 +799,7 @@ declare const ListTriggersInputSchema: v.SchemaWithPipe<readonly [v.StrictObject
|
|
|
796
799
|
}, undefined>], undefined>, undefined>;
|
|
797
800
|
}, undefined>, v.TransformAction<{
|
|
798
801
|
parentOrderId?: bigint | undefined;
|
|
799
|
-
|
|
802
|
+
symbolId?: number | undefined;
|
|
800
803
|
status?: (TriggerStatus.STATUS_CREATED | TriggerStatus.STATUS_ARMED | TriggerStatus.STATUS_RUNNING | TriggerStatus.STATUS_COMPLETED | TriggerStatus.STATUS_CANCELED | TriggerStatus.STATUS_FAILED | TriggerStatus.STATUS_PAUSED)[] | undefined;
|
|
801
804
|
triggerType?: TriggerType | undefined;
|
|
802
805
|
limit: number;
|
|
@@ -807,12 +810,13 @@ declare const ListTriggersInputSchema: v.SchemaWithPipe<readonly [v.StrictObject
|
|
|
807
810
|
}, {
|
|
808
811
|
subaccountId: bigint | undefined;
|
|
809
812
|
parentOrderId?: bigint | undefined;
|
|
810
|
-
|
|
813
|
+
symbolId?: number | undefined;
|
|
811
814
|
status?: (TriggerStatus.STATUS_CREATED | TriggerStatus.STATUS_ARMED | TriggerStatus.STATUS_RUNNING | TriggerStatus.STATUS_COMPLETED | TriggerStatus.STATUS_CANCELED | TriggerStatus.STATUS_FAILED | TriggerStatus.STATUS_PAUSED)[] | undefined;
|
|
812
815
|
triggerType?: TriggerType | undefined;
|
|
813
816
|
limit: number;
|
|
814
817
|
pageToken: string;
|
|
815
818
|
}>]>;
|
|
819
|
+
/** Public filters for listing triggers. */
|
|
816
820
|
type ListTriggersInput = v.InferInput<typeof ListTriggersInputSchema>;
|
|
817
821
|
declare const CancelTriggerInputSchema: v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
818
822
|
account: v.OptionalSchema<v.UnionSchema<[v.PicklistSchema<["active", "main"], undefined>, v.StrictObjectSchema<{
|
|
@@ -860,21 +864,25 @@ declare const PauseTriggerInputSchema: v.SchemaWithPipe<readonly [v.StrictObject
|
|
|
860
864
|
}>]>;
|
|
861
865
|
type PauseTriggerInput = v.InferInput<typeof PauseTriggerInputSchema>;
|
|
862
866
|
declare const ResumeTriggerInputSchema: v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
863
|
-
|
|
867
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
868
|
+
readonly account: v.OptionalSchema<v.UnionSchema<[v.PicklistSchema<["active", "main"], undefined>, v.StrictObjectSchema<{
|
|
864
869
|
readonly subaccountId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
865
870
|
}, undefined>], undefined>, undefined>;
|
|
866
|
-
triggerId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.TransformAction<string, bigint>]>;
|
|
871
|
+
readonly triggerId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.TransformAction<string, bigint>]>;
|
|
867
872
|
}, undefined>, v.TransformAction<{
|
|
873
|
+
symbolId: number;
|
|
868
874
|
account?: "active" | "main" | {
|
|
869
875
|
subaccountId: string;
|
|
870
876
|
} | undefined;
|
|
871
877
|
triggerId: bigint;
|
|
872
878
|
}, {
|
|
873
879
|
subaccountId: bigint | undefined;
|
|
880
|
+
symbolId: number;
|
|
874
881
|
triggerId: bigint;
|
|
875
882
|
}>]>;
|
|
876
883
|
type ResumeTriggerInput = v.InferInput<typeof ResumeTriggerInputSchema>;
|
|
877
884
|
declare function createModifyTriggerInputSchema(scales: SdkScales): v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
885
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
878
886
|
readonly triggerPrice: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
879
887
|
readonly limitPrice: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>, undefined>;
|
|
880
888
|
readonly trailingDistance: v.OptionalSchema<v.UnionSchema<[v.StrictObjectSchema<{
|
|
@@ -899,6 +907,7 @@ declare function createModifyTriggerInputSchema(scales: SdkScales): v.SchemaWith
|
|
|
899
907
|
}, undefined>], undefined>, undefined>;
|
|
900
908
|
readonly triggerId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.TransformAction<string, bigint>]>;
|
|
901
909
|
}, undefined>, v.CheckAction<{
|
|
910
|
+
symbolId: number;
|
|
902
911
|
triggerPrice?: string | undefined;
|
|
903
912
|
limitPrice?: string | undefined;
|
|
904
913
|
trailingDistance?: {
|
|
@@ -923,6 +932,7 @@ declare function createModifyTriggerInputSchema(scales: SdkScales): v.SchemaWith
|
|
|
923
932
|
} | undefined;
|
|
924
933
|
triggerId: bigint;
|
|
925
934
|
}, "At least one patch field is required">, v.TransformAction<{
|
|
935
|
+
symbolId: number;
|
|
926
936
|
triggerPrice?: string | undefined;
|
|
927
937
|
limitPrice?: string | undefined;
|
|
928
938
|
trailingDistance?: {
|
|
@@ -949,6 +959,7 @@ declare function createModifyTriggerInputSchema(scales: SdkScales): v.SchemaWith
|
|
|
949
959
|
}, {
|
|
950
960
|
triggerId: bigint;
|
|
951
961
|
subaccountId: bigint | undefined;
|
|
962
|
+
symbolId: number;
|
|
952
963
|
triggerPriceTicks: bigint | undefined;
|
|
953
964
|
limitPriceTicks: bigint | undefined;
|
|
954
965
|
trailingDistance: {
|
|
@@ -982,7 +993,7 @@ declare function createModifyTriggerInputSchema(scales: SdkScales): v.SchemaWith
|
|
|
982
993
|
type ModifyTriggerInput = v.InferInput<ReturnType<typeof createModifyTriggerInputSchema>>;
|
|
983
994
|
declare const ListTriggerEventsInputSchema: v.SchemaWithPipe<readonly [v.StrictObjectSchema<{
|
|
984
995
|
readonly limit: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 1000, undefined>]>, undefined>;
|
|
985
|
-
readonly eventType: v.OptionalSchema<v.PicklistSchema<readonly ["fired", "canceled", "updated"], undefined>, undefined>;
|
|
996
|
+
readonly eventType: v.OptionalSchema<v.PicklistSchema<readonly ["fired", "canceled", "updated", "failed"], undefined>, undefined>;
|
|
986
997
|
readonly pageToken: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, "">;
|
|
987
998
|
readonly account: v.OptionalSchema<v.UnionSchema<[v.PicklistSchema<["active", "main"], undefined>, v.StrictObjectSchema<{
|
|
988
999
|
readonly subaccountId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>]>;
|
|
@@ -990,7 +1001,7 @@ declare const ListTriggerEventsInputSchema: v.SchemaWithPipe<readonly [v.StrictO
|
|
|
990
1001
|
readonly triggerId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.TransformAction<string, bigint>]>;
|
|
991
1002
|
}, undefined>, v.TransformAction<{
|
|
992
1003
|
limit?: number | undefined;
|
|
993
|
-
eventType?: "updated" | "fired" | "canceled" | undefined;
|
|
1004
|
+
eventType?: "updated" | "failed" | "fired" | "canceled" | undefined;
|
|
994
1005
|
pageToken: string;
|
|
995
1006
|
account?: "active" | "main" | {
|
|
996
1007
|
subaccountId: string;
|
|
@@ -998,7 +1009,7 @@ declare const ListTriggerEventsInputSchema: v.SchemaWithPipe<readonly [v.StrictO
|
|
|
998
1009
|
triggerId: bigint;
|
|
999
1010
|
}, {
|
|
1000
1011
|
subaccountId: bigint | undefined;
|
|
1001
|
-
eventType: TriggerEventType.EVENT_FIRED | TriggerEventType.EVENT_CANCELED | TriggerEventType.EVENT_UPDATED | undefined;
|
|
1012
|
+
eventType: TriggerEventType.EVENT_FIRED | TriggerEventType.EVENT_CANCELED | TriggerEventType.EVENT_UPDATED | TriggerEventType.EVENT_FAILED | undefined;
|
|
1002
1013
|
limit?: number | undefined;
|
|
1003
1014
|
pageToken: string;
|
|
1004
1015
|
triggerId: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-input.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/trigger-input.schemas.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"trigger-input.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/trigger-input.schemas.ts"],"mappings":";;;;;;iBA0VgB,+BAA+B,QAAQ,YAAS,EAAA,aAAA,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAWpD,qBAAqB,EAAE,WAAW,kBAAkB;;cAGnD,yBAAuB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAgCxB,oBAAoB,EAAE,kBAAkB;cAEvC,0BAAwB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KACzB,qBAAqB,EAAE,kBAAkB;cAExC,uBAAqB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KACtB,kBAAkB,EAAE,kBAAkB;cAErC,yBAAuB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KACxB,oBAAoB,EAAE,kBAAkB;cAEvC,0BAAwB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;KAUzB,qBAAqB,EAAE,kBAAkB;iBAErC,+BAA+B,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAwDpD,qBAAqB,EAAE,WAAW,kBAAkB;cAEnD,8BAA4B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;KAiB7B,yBAAyB,EAAE,kBAAkB"}
|
|
@@ -2,11 +2,11 @@ import "../../gen/orders/v1/orders_pb.js";
|
|
|
2
2
|
import { idToBigInt } from "../../utils/base58-id.js";
|
|
3
3
|
import { parseOptionalPositiveIntLike } from "../../utils/numbers.js";
|
|
4
4
|
import { idInputSchema } from "../../shared/schemas.js";
|
|
5
|
+
import "../../shared/wire-bounds.js";
|
|
6
|
+
import { BpsStringOrNumberInputSchema, NoneInputSchema, SymbolIdInputSchema } from "../shared.js";
|
|
5
7
|
import { AccountScopeInputEntries, accountScopeToSubaccountId } from "../../shared/account-scope.js";
|
|
6
8
|
import { CatalogConversionError } from "../../catalogs/types.js";
|
|
7
|
-
import "../../shared/wire-bounds.js";
|
|
8
9
|
import { positiveDecimalInputToScaled } from "../../shared/decimal-surface.js";
|
|
9
|
-
import { BpsStringOrNumberInputSchema, NoneInputSchema } from "../shared.js";
|
|
10
10
|
import { OrderSideCodec } from "../orders/order-enums.codecs.js";
|
|
11
11
|
import "../../gen/triggers/v1/triggers_pb.js";
|
|
12
12
|
import { TRIGGER_EVENT_TYPE_VALUES, TRIGGER_STATUS_FILTER_VALUES, TRIGGER_TYPE_VALUES, TriggerEventTypeCodec, TriggerStatusCodec, TriggerTypeCodec } from "./triggers.codecs.js";
|
|
@@ -205,6 +205,7 @@ function createLadderTriggerInputSchema(scales) {
|
|
|
205
205
|
};
|
|
206
206
|
}));
|
|
207
207
|
}
|
|
208
|
+
/** Builds the create-trigger boundary schema using catalog scales keyed by symbol ID. */
|
|
208
209
|
function createCreateTriggerInputSchema(scales) {
|
|
209
210
|
return v.union([
|
|
210
211
|
...createConditionalTriggerInputSchema(scales, "stop_loss"),
|
|
@@ -214,10 +215,11 @@ function createCreateTriggerInputSchema(scales) {
|
|
|
214
215
|
createLadderTriggerInputSchema(scales)
|
|
215
216
|
]);
|
|
216
217
|
}
|
|
218
|
+
/** Public filters for listing triggers in an account scope. */
|
|
217
219
|
const ListTriggersInputSchema = v.pipe(v.strictObject({
|
|
218
220
|
...AccountScopeInputEntries,
|
|
219
221
|
parentOrderId: v.pipe(v.optional(v.pipe(v.string(), v.trim())), v.transform((value) => value ? idToBigInt(value, "parentOrderId") : void 0)),
|
|
220
|
-
|
|
222
|
+
symbolId: v.optional(SymbolIdInputSchema),
|
|
221
223
|
status: v.pipe(v.optional(v.array(TriggerStatusFilterSchema)), v.transform((values) => values?.map((value) => TriggerStatusCodec.inputToProto[value]) ?? [])),
|
|
222
224
|
triggerType: v.pipe(v.optional(TriggerTypeSchema), v.transform((value) => value ? TriggerTypeCodec.inputToProto[value] : 0)),
|
|
223
225
|
limit: v.optional(v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(1e3)), 50),
|
|
@@ -229,10 +231,17 @@ const ListTriggersInputSchema = v.pipe(v.strictObject({
|
|
|
229
231
|
const CancelTriggerInputSchema = TriggerScopedInputSchema;
|
|
230
232
|
const GetTriggerInputSchema = CancelTriggerInputSchema;
|
|
231
233
|
const PauseTriggerInputSchema = TriggerScopedInputSchema;
|
|
232
|
-
const ResumeTriggerInputSchema =
|
|
234
|
+
const ResumeTriggerInputSchema = v.pipe(v.strictObject({
|
|
235
|
+
...TriggerScopedInputEntries,
|
|
236
|
+
symbolId: SymbolIdInputSchema
|
|
237
|
+
}), v.transform(({ account, ...input }) => ({
|
|
238
|
+
...input,
|
|
239
|
+
subaccountId: accountScopeToSubaccountId(account)
|
|
240
|
+
})));
|
|
233
241
|
function createModifyTriggerInputSchema(scales) {
|
|
234
242
|
return v.pipe(v.strictObject({
|
|
235
243
|
...TriggerScopedInputEntries,
|
|
244
|
+
symbolId: SymbolIdInputSchema,
|
|
236
245
|
triggerPrice: v.optional(DecimalInputStringSchema),
|
|
237
246
|
limitPrice: v.optional(DecimalInputStringSchema),
|
|
238
247
|
trailingDistance: v.optional(TrailingDistanceInputSchema),
|
|
@@ -241,6 +250,7 @@ function createModifyTriggerInputSchema(scales) {
|
|
|
241
250
|
}), v.check((input) => input.triggerPrice !== void 0 || input.limitPrice !== void 0 || input.trailingDistance !== void 0 || input.activationPrice !== void 0 || input.maxSlippage !== void 0, "At least one patch field is required"), v.transform(({ account, ...input }) => ({
|
|
242
251
|
triggerId: input.triggerId,
|
|
243
252
|
subaccountId: accountScopeToSubaccountId(account),
|
|
253
|
+
symbolId: input.symbolId,
|
|
244
254
|
triggerPriceTicks: input.triggerPrice === void 0 ? void 0 : positiveDecimalInputToScaled("triggerPrice", input.triggerPrice, scales.price()),
|
|
245
255
|
limitPriceTicks: input.limitPrice === void 0 ? void 0 : positiveDecimalInputToScaled("limitPrice", input.limitPrice, scales.price()),
|
|
246
256
|
trailingDistance: input.trailingDistance === void 0 ? {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trigger-input.schemas.js","names":["TriggerSideCodec"],"sources":["../../../src/services/triggers/trigger-input.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 { idInputSchema } from \"../../shared/schemas.js\";\nimport {\n AccountScopeInputEntries,\n accountScopeToSubaccountId,\n} from \"../../shared/account-scope.js\";\nimport { positiveDecimalInputToScaled, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport { CatalogConversionError } from \"../../catalogs/types.js\";\nimport { PROTOBUF_INT32_MAX } from \"../../shared/wire-bounds.js\";\nimport { parseOptionalPositiveIntLike } from \"../../utils/numbers.js\";\nimport { idToBigInt } from \"../../utils/base58-id.js\";\nimport {\n TRIGGER_EVENT_TYPE_VALUES,\n TRIGGER_STATUS_FILTER_VALUES,\n TRIGGER_TYPE_VALUES,\n TriggerEventTypeCodec,\n TriggerSideCodec,\n TriggerTypeCodec,\n TriggerStatusCodec,\n} from \"./triggers.codecs.js\";\nimport { BpsStringOrNumberInputSchema, NoneInputSchema } from \"../shared.js\";\nimport {\n BaseTriggerFieldsSchema,\n ConditionalExecutionInputSchema,\n DecimalInputStringSchema,\n LimitConditionalExecutionInputSchema,\n TriggerSideInputSchema,\n TwapExecutionInputSchema,\n buildConditionalExecution,\n buildTriggerIntentBase,\n buildTwapExecution,\n type MaxSlippageOneof,\n type TrailingDistanceOneof,\n} from \"./trigger-child-order.schemas.js\";\n\nconst TriggerTypeSchema = v.picklist(TRIGGER_TYPE_VALUES);\nconst TriggerStatusFilterSchema = v.picklist(TRIGGER_STATUS_FILTER_VALUES);\nconst TriggerEventTypeSchema = v.picklist(TRIGGER_EVENT_TYPE_VALUES);\nconst TriggerIdInputSchema = idInputSchema(\"triggerId\");\n\nconst TriggerScopedInputEntries = {\n triggerId: TriggerIdInputSchema,\n ...AccountScopeInputEntries,\n};\n\nconst TriggerScopedInputSchema = v.pipe(\n v.strictObject(TriggerScopedInputEntries),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n })),\n);\n\n/** Absolute price distance, as a decimal price string (e.g. \"0.50\"). */\nconst PriceDistanceInputSchema = v.strictObject({\n kind: v.literal(\"distance\"),\n distance: DecimalInputStringSchema,\n});\n\n/** Absolute price slippage, as a decimal price string (e.g. \"0.25\"). */\nconst PriceSlippageInputSchema = v.strictObject({\n kind: v.literal(\"slippage\"),\n slippage: DecimalInputStringSchema,\n});\n\nconst TrailingDistanceInputSchema = v.union([\n PriceDistanceInputSchema,\n BpsStringOrNumberInputSchema,\n]);\n\nconst MaxSlippageInputSchema = v.union([\n PriceSlippageInputSchema,\n BpsStringOrNumberInputSchema,\n NoneInputSchema,\n]);\n\nfunction parseTrailingDistance(\n scales: SdkScales,\n distance: v.InferOutput<typeof TrailingDistanceInputSchema>,\n): TrailingDistanceOneof {\n if (distance.kind === \"distance\") {\n return {\n case: \"trailingDistanceTicks\",\n value: positiveDecimalInputToScaled(\n \"trailingDistance.distance\",\n distance.distance,\n scales.price(),\n ),\n };\n }\n const bps = parseOptionalPositiveIntLike(distance.bps);\n if (bps === undefined || bps <= 0) {\n throw new Error(\"trailingDistanceBps must be a positive integer\");\n }\n return { case: \"trailingDistanceBps\", value: bps };\n}\n\nfunction parseMaxSlippage(\n scales: SdkScales,\n slippage: v.InferOutput<typeof MaxSlippageInputSchema> | undefined,\n): MaxSlippageOneof {\n if (!slippage || slippage.kind === \"none\") {\n return { case: undefined, value: undefined };\n }\n if (slippage.kind === \"slippage\") {\n const ticks = positiveDecimalInputToScaled(\n \"maxSlippage.slippage\",\n slippage.slippage,\n scales.price(),\n );\n if (ticks > PROTOBUF_INT32_MAX) {\n throw new CatalogConversionError(\n \"maxSlippage.slippage\",\n `maxSlippage.slippage exceeds the maximum supported price distance: ${slippage.slippage}`,\n );\n }\n return { case: \"maxSlippageTicks\", value: Number(ticks) };\n }\n const bps = parseOptionalPositiveIntLike(slippage.bps);\n if (bps === undefined || bps <= 0) {\n throw new Error(\"maxSlippageBps must be a positive integer\");\n }\n return { case: \"maxSlippageBps\", value: bps };\n}\n\nfunction createConditionalTriggerInputSchema<const TriggerType extends \"stop_loss\" | \"take_profit\">(\n scales: SdkScales,\n triggerType: TriggerType,\n) {\n const sharedEntries = {\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(triggerType),\n triggerPrice: DecimalInputStringSchema,\n };\n\n const sellInputSchema = v.strictObject({\n ...sharedEntries,\n side: v.literal(\"sell\"),\n execution: ConditionalExecutionInputSchema,\n });\n const buyInputSchema = v.strictObject({\n ...sharedEntries,\n side: v.literal(\"buy\"),\n execution: LimitConditionalExecutionInputSchema,\n });\n\n function transformInput(\n input: v.InferOutput<typeof sellInputSchema> | v.InferOutput<typeof buyInputSchema>,\n ) {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n const strategy = {\n triggerPriceTicks: positiveDecimalInputToScaled(\n \"triggerPrice\",\n input.triggerPrice,\n scales.price(),\n ),\n side: TriggerSideCodec.inputToProto[input.side],\n child: buildConditionalExecution(input.execution, scales),\n };\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy:\n triggerType === \"stop_loss\"\n ? ({ case: \"stopLoss\", value: strategy } as const)\n : ({ case: \"takeProfit\", value: strategy } as const),\n },\n };\n }\n\n return [\n v.pipe(\n sellInputSchema,\n v.check(\n (input) => input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.transform((input: v.InferOutput<typeof sellInputSchema>) => transformInput(input)),\n ),\n v.pipe(\n buyInputSchema,\n v.transform((input: v.InferOutput<typeof buyInputSchema>) => transformInput(input)),\n ),\n ] as const;\n}\n\nfunction createTrailingStopTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"trailing_stop\"),\n trailingDistance: TrailingDistanceInputSchema,\n activationPrice: v.optional(DecimalInputStringSchema),\n maxSlippage: v.optional(MaxSlippageInputSchema),\n }),\n v.check(\n (input) => input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"Trailing-stop triggers must use the quote fee asset\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"trailingStop\",\n value: {\n trailingDistance: parseTrailingDistance(scales, input.trailingDistance),\n activationPriceTicks:\n input.activationPrice === undefined\n ? 0n\n : positiveDecimalInputToScaled(\n \"activationPrice\",\n input.activationPrice,\n scales.price(),\n ),\n maxSlippage: parseMaxSlippage(scales, input.maxSlippage),\n side: ProtoOrders.Side.SELL,\n },\n } as const,\n },\n };\n }),\n );\n}\n\nfunction createTwapTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"twap\"),\n side: TriggerSideInputSchema,\n durationMs: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.number()]),\n v.transform((value) => {\n const durationMs = parseOptionalPositiveIntLike(value);\n if (!durationMs || durationMs < 1000) {\n throw new Error(\"durationMs must be at least 1000ms\");\n }\n return BigInt(durationMs);\n }),\n ),\n sliceIntervalMs: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.number()]),\n v.transform((value) => {\n const sliceIntervalMs = parseOptionalPositiveIntLike(value);\n if (!sliceIntervalMs || sliceIntervalMs < 100) {\n throw new Error(\"sliceIntervalMs must be at least 100ms\");\n }\n return BigInt(sliceIntervalMs);\n }),\n ),\n execution: TwapExecutionInputSchema,\n }),\n v.check(\n (input) =>\n input.side !== ProtoOrders.Side.SELL ||\n input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.check(\n (input) => input.sliceIntervalMs <= input.durationMs,\n \"sliceIntervalMs cannot exceed durationMs\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"twap\",\n value: {\n side: input.side,\n durationMs: input.durationMs,\n sliceIntervalMs: input.sliceIntervalMs,\n execution: buildTwapExecution(input.execution, scales),\n },\n } as const,\n },\n };\n }),\n );\n}\n\nfunction createLadderTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"ladder\"),\n side: TriggerSideInputSchema,\n priceMin: DecimalInputStringSchema,\n priceMax: DecimalInputStringSchema,\n levels: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.pipe(v.number(), v.integer())]),\n v.transform((value) => {\n const levels = parseOptionalPositiveIntLike(value);\n if (!levels || levels < 2 || levels > 100) {\n throw new Error(\"levels must be between 2 and 100\");\n }\n return levels;\n }),\n ),\n postOnly: v.optional(v.boolean(), false),\n }),\n v.check(\n (input) =>\n input.side !== ProtoOrders.Side.SELL ||\n input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"ladder\",\n value: {\n side: input.side,\n priceMinTicks: positiveDecimalInputToScaled(\n \"priceMin\",\n input.priceMin,\n scales.price(),\n ),\n priceMaxTicks: positiveDecimalInputToScaled(\n \"priceMax\",\n input.priceMax,\n scales.price(),\n ),\n levels: input.levels,\n postOnly: input.postOnly,\n },\n } as const,\n },\n };\n }),\n );\n}\n\nexport function createCreateTriggerInputSchema(scales: SdkScales) {\n return v.union([\n ...createConditionalTriggerInputSchema(scales, \"stop_loss\"),\n ...createConditionalTriggerInputSchema(scales, \"take_profit\"),\n createTrailingStopTriggerInputSchema(scales),\n createTwapTriggerInputSchema(scales),\n createLadderTriggerInputSchema(scales),\n ]);\n}\n\nexport type CreateTriggerInput = v.InferInput<ReturnType<typeof createCreateTriggerInputSchema>>;\n\nexport const ListTriggersInputSchema = v.pipe(\n v.strictObject({\n ...AccountScopeInputEntries,\n parentOrderId: v.pipe(\n v.optional(v.pipe(v.string(), v.trim())),\n v.transform((value) => (value ? idToBigInt(value, \"parentOrderId\") : undefined)),\n ),\n symbol: v.optional(v.pipe(v.string(), v.trim())),\n status: v.pipe(\n v.optional(v.array(TriggerStatusFilterSchema)),\n v.transform(\n (values) => values?.map((value) => TriggerStatusCodec.inputToProto[value]) ?? [],\n ),\n ),\n triggerType: v.pipe(\n v.optional(TriggerTypeSchema),\n v.transform((value) =>\n value\n ? TriggerTypeCodec.inputToProto[value]\n : Proto.TriggerType.TRIGGER_TYPE_UNSPECIFIED,\n ),\n ),\n limit: v.optional(v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(1000)), 50),\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n })),\n);\n\nexport type ListTriggersInput = v.InferInput<typeof ListTriggersInputSchema>;\n\nexport const CancelTriggerInputSchema = TriggerScopedInputSchema;\nexport type CancelTriggerInput = v.InferInput<typeof CancelTriggerInputSchema>;\n\nexport const GetTriggerInputSchema = CancelTriggerInputSchema;\nexport type GetTriggerInput = v.InferInput<typeof GetTriggerInputSchema>;\n\nexport const PauseTriggerInputSchema = TriggerScopedInputSchema;\nexport type PauseTriggerInput = v.InferInput<typeof PauseTriggerInputSchema>;\n\nexport const ResumeTriggerInputSchema = TriggerScopedInputSchema;\nexport type ResumeTriggerInput = v.InferInput<typeof ResumeTriggerInputSchema>;\n\nexport function createModifyTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...TriggerScopedInputEntries,\n triggerPrice: v.optional(DecimalInputStringSchema),\n limitPrice: v.optional(DecimalInputStringSchema),\n trailingDistance: v.optional(TrailingDistanceInputSchema),\n activationPrice: v.optional(DecimalInputStringSchema),\n maxSlippage: v.optional(MaxSlippageInputSchema),\n }),\n v.check(\n (input) =>\n input.triggerPrice !== undefined ||\n input.limitPrice !== undefined ||\n input.trailingDistance !== undefined ||\n input.activationPrice !== undefined ||\n input.maxSlippage !== undefined,\n \"At least one patch field is required\",\n ),\n v.transform(({ account, ...input }) => ({\n triggerId: input.triggerId,\n subaccountId: accountScopeToSubaccountId(account),\n triggerPriceTicks:\n input.triggerPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\n \"triggerPrice\",\n input.triggerPrice,\n scales.price(),\n ),\n limitPriceTicks:\n input.limitPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\"limitPrice\", input.limitPrice, scales.price()),\n trailingDistance:\n input.trailingDistance === undefined\n ? ({ case: undefined, value: undefined } as const)\n : parseTrailingDistance(scales, input.trailingDistance),\n activationPriceTicks:\n input.activationPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\n \"activationPrice\",\n input.activationPrice,\n scales.price(),\n ),\n maxSlippage:\n input.maxSlippage === undefined\n ? ({ case: undefined, value: undefined } as const)\n : parseMaxSlippage(scales, input.maxSlippage),\n })),\n );\n}\n\nexport type ModifyTriggerInput = v.InferInput<ReturnType<typeof createModifyTriggerInputSchema>>;\n\nexport const ListTriggerEventsInputSchema = v.pipe(\n v.strictObject({\n ...TriggerScopedInputEntries,\n limit: v.optional(v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(1000))),\n eventType: v.optional(TriggerEventTypeSchema),\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n eventType:\n input.eventType === undefined\n ? undefined\n : TriggerEventTypeCodec.inputToProto[input.eventType],\n })),\n);\n\nexport type ListTriggerEventsInput = v.InferInput<typeof ListTriggerEventsInputSchema>;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trigger-input.schemas.js","names":["TriggerSideCodec"],"sources":["../../../src/services/triggers/trigger-input.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 { idInputSchema } from \"../../shared/schemas.js\";\nimport {\n AccountScopeInputEntries,\n accountScopeToSubaccountId,\n} from \"../../shared/account-scope.js\";\nimport { positiveDecimalInputToScaled, type SdkScales } from \"../../shared/decimal-surface.js\";\nimport { CatalogConversionError } from \"../../catalogs/types.js\";\nimport { PROTOBUF_INT32_MAX } from \"../../shared/wire-bounds.js\";\nimport { parseOptionalPositiveIntLike } from \"../../utils/numbers.js\";\nimport { idToBigInt } from \"../../utils/base58-id.js\";\nimport {\n TRIGGER_EVENT_TYPE_VALUES,\n TRIGGER_STATUS_FILTER_VALUES,\n TRIGGER_TYPE_VALUES,\n TriggerEventTypeCodec,\n TriggerSideCodec,\n TriggerTypeCodec,\n TriggerStatusCodec,\n} from \"./triggers.codecs.js\";\nimport { BpsStringOrNumberInputSchema, NoneInputSchema, SymbolIdInputSchema } from \"../shared.js\";\nimport {\n BaseTriggerFieldsSchema,\n ConditionalExecutionInputSchema,\n DecimalInputStringSchema,\n LimitConditionalExecutionInputSchema,\n TriggerSideInputSchema,\n TwapExecutionInputSchema,\n buildConditionalExecution,\n buildTriggerIntentBase,\n buildTwapExecution,\n type MaxSlippageOneof,\n type TrailingDistanceOneof,\n} from \"./trigger-child-order.schemas.js\";\n\nconst TriggerTypeSchema = v.picklist(TRIGGER_TYPE_VALUES);\nconst TriggerStatusFilterSchema = v.picklist(TRIGGER_STATUS_FILTER_VALUES);\nconst TriggerEventTypeSchema = v.picklist(TRIGGER_EVENT_TYPE_VALUES);\nconst TriggerIdInputSchema = idInputSchema(\"triggerId\");\n\nconst TriggerScopedInputEntries = {\n triggerId: TriggerIdInputSchema,\n ...AccountScopeInputEntries,\n};\n\nconst TriggerScopedInputSchema = v.pipe(\n v.strictObject(TriggerScopedInputEntries),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n })),\n);\n\n/** Absolute price distance, as a decimal price string (e.g. \"0.50\"). */\nconst PriceDistanceInputSchema = v.strictObject({\n kind: v.literal(\"distance\"),\n distance: DecimalInputStringSchema,\n});\n\n/** Absolute price slippage, as a decimal price string (e.g. \"0.25\"). */\nconst PriceSlippageInputSchema = v.strictObject({\n kind: v.literal(\"slippage\"),\n slippage: DecimalInputStringSchema,\n});\n\nconst TrailingDistanceInputSchema = v.union([\n PriceDistanceInputSchema,\n BpsStringOrNumberInputSchema,\n]);\n\nconst MaxSlippageInputSchema = v.union([\n PriceSlippageInputSchema,\n BpsStringOrNumberInputSchema,\n NoneInputSchema,\n]);\n\nfunction parseTrailingDistance(\n scales: SdkScales,\n distance: v.InferOutput<typeof TrailingDistanceInputSchema>,\n): TrailingDistanceOneof {\n if (distance.kind === \"distance\") {\n return {\n case: \"trailingDistanceTicks\",\n value: positiveDecimalInputToScaled(\n \"trailingDistance.distance\",\n distance.distance,\n scales.price(),\n ),\n };\n }\n const bps = parseOptionalPositiveIntLike(distance.bps);\n if (bps === undefined || bps <= 0) {\n throw new Error(\"trailingDistanceBps must be a positive integer\");\n }\n return { case: \"trailingDistanceBps\", value: bps };\n}\n\nfunction parseMaxSlippage(\n scales: SdkScales,\n slippage: v.InferOutput<typeof MaxSlippageInputSchema> | undefined,\n): MaxSlippageOneof {\n if (!slippage || slippage.kind === \"none\") {\n return { case: undefined, value: undefined };\n }\n if (slippage.kind === \"slippage\") {\n const ticks = positiveDecimalInputToScaled(\n \"maxSlippage.slippage\",\n slippage.slippage,\n scales.price(),\n );\n if (ticks > PROTOBUF_INT32_MAX) {\n throw new CatalogConversionError(\n \"maxSlippage.slippage\",\n `maxSlippage.slippage exceeds the maximum supported price distance: ${slippage.slippage}`,\n );\n }\n return { case: \"maxSlippageTicks\", value: Number(ticks) };\n }\n const bps = parseOptionalPositiveIntLike(slippage.bps);\n if (bps === undefined || bps <= 0) {\n throw new Error(\"maxSlippageBps must be a positive integer\");\n }\n return { case: \"maxSlippageBps\", value: bps };\n}\n\nfunction createConditionalTriggerInputSchema<const TriggerType extends \"stop_loss\" | \"take_profit\">(\n scales: SdkScales,\n triggerType: TriggerType,\n) {\n const sharedEntries = {\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(triggerType),\n triggerPrice: DecimalInputStringSchema,\n };\n\n const sellInputSchema = v.strictObject({\n ...sharedEntries,\n side: v.literal(\"sell\"),\n execution: ConditionalExecutionInputSchema,\n });\n const buyInputSchema = v.strictObject({\n ...sharedEntries,\n side: v.literal(\"buy\"),\n execution: LimitConditionalExecutionInputSchema,\n });\n\n function transformInput(\n input: v.InferOutput<typeof sellInputSchema> | v.InferOutput<typeof buyInputSchema>,\n ) {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n const strategy = {\n triggerPriceTicks: positiveDecimalInputToScaled(\n \"triggerPrice\",\n input.triggerPrice,\n scales.price(),\n ),\n side: TriggerSideCodec.inputToProto[input.side],\n child: buildConditionalExecution(input.execution, scales),\n };\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy:\n triggerType === \"stop_loss\"\n ? ({ case: \"stopLoss\", value: strategy } as const)\n : ({ case: \"takeProfit\", value: strategy } as const),\n },\n };\n }\n\n return [\n v.pipe(\n sellInputSchema,\n v.check(\n (input) => input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.transform((input: v.InferOutput<typeof sellInputSchema>) => transformInput(input)),\n ),\n v.pipe(\n buyInputSchema,\n v.transform((input: v.InferOutput<typeof buyInputSchema>) => transformInput(input)),\n ),\n ] as const;\n}\n\nfunction createTrailingStopTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"trailing_stop\"),\n trailingDistance: TrailingDistanceInputSchema,\n activationPrice: v.optional(DecimalInputStringSchema),\n maxSlippage: v.optional(MaxSlippageInputSchema),\n }),\n v.check(\n (input) => input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"Trailing-stop triggers must use the quote fee asset\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"trailingStop\",\n value: {\n trailingDistance: parseTrailingDistance(scales, input.trailingDistance),\n activationPriceTicks:\n input.activationPrice === undefined\n ? 0n\n : positiveDecimalInputToScaled(\n \"activationPrice\",\n input.activationPrice,\n scales.price(),\n ),\n maxSlippage: parseMaxSlippage(scales, input.maxSlippage),\n side: ProtoOrders.Side.SELL,\n },\n } as const,\n },\n };\n }),\n );\n}\n\nfunction createTwapTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"twap\"),\n side: TriggerSideInputSchema,\n durationMs: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.number()]),\n v.transform((value) => {\n const durationMs = parseOptionalPositiveIntLike(value);\n if (!durationMs || durationMs < 1000) {\n throw new Error(\"durationMs must be at least 1000ms\");\n }\n return BigInt(durationMs);\n }),\n ),\n sliceIntervalMs: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.number()]),\n v.transform((value) => {\n const sliceIntervalMs = parseOptionalPositiveIntLike(value);\n if (!sliceIntervalMs || sliceIntervalMs < 100) {\n throw new Error(\"sliceIntervalMs must be at least 100ms\");\n }\n return BigInt(sliceIntervalMs);\n }),\n ),\n execution: TwapExecutionInputSchema,\n }),\n v.check(\n (input) =>\n input.side !== ProtoOrders.Side.SELL ||\n input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.check(\n (input) => input.sliceIntervalMs <= input.durationMs,\n \"sliceIntervalMs cannot exceed durationMs\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"twap\",\n value: {\n side: input.side,\n durationMs: input.durationMs,\n sliceIntervalMs: input.sliceIntervalMs,\n execution: buildTwapExecution(input.execution, scales),\n },\n } as const,\n },\n };\n }),\n );\n}\n\nfunction createLadderTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...BaseTriggerFieldsSchema.entries,\n triggerType: v.literal(\"ladder\"),\n side: TriggerSideInputSchema,\n priceMin: DecimalInputStringSchema,\n priceMax: DecimalInputStringSchema,\n levels: v.pipe(\n v.union([v.pipe(v.string(), v.trim()), v.pipe(v.number(), v.integer())]),\n v.transform((value) => {\n const levels = parseOptionalPositiveIntLike(value);\n if (!levels || levels < 2 || levels > 100) {\n throw new Error(\"levels must be between 2 and 100\");\n }\n return levels;\n }),\n ),\n postOnly: v.optional(v.boolean(), false),\n }),\n v.check(\n (input) =>\n input.side !== ProtoOrders.Side.SELL ||\n input.feeAsset === ProtoOrders.FeeAsset.QUOTE,\n \"SELL triggers must use the quote fee asset\",\n ),\n v.transform((input) => {\n const { subaccountId, intent } = buildTriggerIntentBase(input, scales);\n return {\n subaccountId,\n trigger: {\n ...intent,\n strategy: {\n case: \"ladder\",\n value: {\n side: input.side,\n priceMinTicks: positiveDecimalInputToScaled(\n \"priceMin\",\n input.priceMin,\n scales.price(),\n ),\n priceMaxTicks: positiveDecimalInputToScaled(\n \"priceMax\",\n input.priceMax,\n scales.price(),\n ),\n levels: input.levels,\n postOnly: input.postOnly,\n },\n } as const,\n },\n };\n }),\n );\n}\n\n/** Builds the create-trigger boundary schema using catalog scales keyed by symbol ID. */\nexport function createCreateTriggerInputSchema(scales: SdkScales) {\n return v.union([\n ...createConditionalTriggerInputSchema(scales, \"stop_loss\"),\n ...createConditionalTriggerInputSchema(scales, \"take_profit\"),\n createTrailingStopTriggerInputSchema(scales),\n createTwapTriggerInputSchema(scales),\n createLadderTriggerInputSchema(scales),\n ]);\n}\n\n/** Public input for creating a standalone trigger. */\nexport type CreateTriggerInput = v.InferInput<ReturnType<typeof createCreateTriggerInputSchema>>;\n\n/** Public filters for listing triggers in an account scope. */\nexport const ListTriggersInputSchema = v.pipe(\n v.strictObject({\n ...AccountScopeInputEntries,\n parentOrderId: v.pipe(\n v.optional(v.pipe(v.string(), v.trim())),\n v.transform((value) => (value ? idToBigInt(value, \"parentOrderId\") : undefined)),\n ),\n symbolId: v.optional(SymbolIdInputSchema),\n status: v.pipe(\n v.optional(v.array(TriggerStatusFilterSchema)),\n v.transform(\n (values) => values?.map((value) => TriggerStatusCodec.inputToProto[value]) ?? [],\n ),\n ),\n triggerType: v.pipe(\n v.optional(TriggerTypeSchema),\n v.transform((value) =>\n value\n ? TriggerTypeCodec.inputToProto[value]\n : Proto.TriggerType.TRIGGER_TYPE_UNSPECIFIED,\n ),\n ),\n limit: v.optional(v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(1000)), 50),\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n })),\n);\n\n/** Public filters for listing triggers. */\nexport type ListTriggersInput = v.InferInput<typeof ListTriggersInputSchema>;\n\nexport const CancelTriggerInputSchema = TriggerScopedInputSchema;\nexport type CancelTriggerInput = v.InferInput<typeof CancelTriggerInputSchema>;\n\nexport const GetTriggerInputSchema = CancelTriggerInputSchema;\nexport type GetTriggerInput = v.InferInput<typeof GetTriggerInputSchema>;\n\nexport const PauseTriggerInputSchema = TriggerScopedInputSchema;\nexport type PauseTriggerInput = v.InferInput<typeof PauseTriggerInputSchema>;\n\nexport const ResumeTriggerInputSchema = v.pipe(\n v.strictObject({\n ...TriggerScopedInputEntries,\n symbolId: SymbolIdInputSchema,\n }),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n })),\n);\nexport type ResumeTriggerInput = v.InferInput<typeof ResumeTriggerInputSchema>;\n\nexport function createModifyTriggerInputSchema(scales: SdkScales) {\n return v.pipe(\n v.strictObject({\n ...TriggerScopedInputEntries,\n symbolId: SymbolIdInputSchema,\n triggerPrice: v.optional(DecimalInputStringSchema),\n limitPrice: v.optional(DecimalInputStringSchema),\n trailingDistance: v.optional(TrailingDistanceInputSchema),\n activationPrice: v.optional(DecimalInputStringSchema),\n maxSlippage: v.optional(MaxSlippageInputSchema),\n }),\n v.check(\n (input) =>\n input.triggerPrice !== undefined ||\n input.limitPrice !== undefined ||\n input.trailingDistance !== undefined ||\n input.activationPrice !== undefined ||\n input.maxSlippage !== undefined,\n \"At least one patch field is required\",\n ),\n v.transform(({ account, ...input }) => ({\n triggerId: input.triggerId,\n subaccountId: accountScopeToSubaccountId(account),\n symbolId: input.symbolId,\n triggerPriceTicks:\n input.triggerPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\n \"triggerPrice\",\n input.triggerPrice,\n scales.price(),\n ),\n limitPriceTicks:\n input.limitPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\"limitPrice\", input.limitPrice, scales.price()),\n trailingDistance:\n input.trailingDistance === undefined\n ? ({ case: undefined, value: undefined } as const)\n : parseTrailingDistance(scales, input.trailingDistance),\n activationPriceTicks:\n input.activationPrice === undefined\n ? undefined\n : positiveDecimalInputToScaled(\n \"activationPrice\",\n input.activationPrice,\n scales.price(),\n ),\n maxSlippage:\n input.maxSlippage === undefined\n ? ({ case: undefined, value: undefined } as const)\n : parseMaxSlippage(scales, input.maxSlippage),\n })),\n );\n}\n\nexport type ModifyTriggerInput = v.InferInput<ReturnType<typeof createModifyTriggerInputSchema>>;\n\nexport const ListTriggerEventsInputSchema = v.pipe(\n v.strictObject({\n ...TriggerScopedInputEntries,\n limit: v.optional(v.pipe(v.number(), v.integer(), v.gtValue(0), v.maxValue(1000))),\n eventType: v.optional(TriggerEventTypeSchema),\n pageToken: v.optional(v.pipe(v.string(), v.trim()), \"\"),\n }),\n v.transform(({ account, ...input }) => ({\n ...input,\n subaccountId: accountScopeToSubaccountId(account),\n eventType:\n input.eventType === undefined\n ? undefined\n : TriggerEventTypeCodec.inputToProto[input.eventType],\n })),\n);\n\nexport type ListTriggerEventsInput = v.InferInput<typeof ListTriggerEventsInputSchema>;\n"],"mappings":"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"}
|
|
@@ -126,11 +126,11 @@ type LadderDetailsOutput = {
|
|
|
126
126
|
type TriggerDetailsOutput = StopDetailsOutput | TrailingDetailsOutput | TwapDetailsOutput | LadderDetailsOutput | {
|
|
127
127
|
case: undefined;
|
|
128
128
|
};
|
|
129
|
+
/** Builds the public trigger output schema using each record's symbol ID for quantity scaling. */
|
|
129
130
|
declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
130
131
|
readonly triggerId: v.BigintSchema<undefined>;
|
|
131
132
|
readonly subaccountId: v.BigintSchema<undefined>;
|
|
132
|
-
readonly symbolId: v.NumberSchema<undefined>;
|
|
133
|
-
readonly symbol: v.StringSchema<undefined>;
|
|
133
|
+
readonly symbolId: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.GtValueAction<number, 0, undefined>, v.MaxValueAction<number, 4294967295, undefined>]>;
|
|
134
134
|
readonly status: v.EnumSchema<typeof TriggerStatus, undefined>;
|
|
135
135
|
readonly parentOrderId: v.OptionalSchema<v.BigintSchema<undefined>, undefined>;
|
|
136
136
|
readonly qtyScaled: v.BigintSchema<undefined>;
|
|
@@ -318,7 +318,6 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
318
318
|
triggerId: bigint;
|
|
319
319
|
subaccountId: bigint;
|
|
320
320
|
symbolId: number;
|
|
321
|
-
symbol: string;
|
|
322
321
|
status: TriggerStatus;
|
|
323
322
|
parentOrderId?: bigint | undefined;
|
|
324
323
|
qtyScaled: bigint;
|
|
@@ -506,7 +505,6 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
506
505
|
triggerId: string;
|
|
507
506
|
subaccountId: string;
|
|
508
507
|
symbolId: number;
|
|
509
|
-
symbol: string;
|
|
510
508
|
status: "unspecified" | "cancelled" | "created" | "failed" | "completed" | "armed" | "running" | "paused";
|
|
511
509
|
parentOrderId: string | undefined;
|
|
512
510
|
qty: string;
|
|
@@ -643,6 +641,7 @@ declare function createTriggerSchema(scales: SdkScales): v.SchemaWithPipe<readon
|
|
|
643
641
|
completedTs: number | undefined;
|
|
644
642
|
runtimeDetails: TriggerDetailsOutput;
|
|
645
643
|
}>]>;
|
|
644
|
+
/** A normalized standalone trigger record. */
|
|
646
645
|
type Trigger = v.InferOutput<ReturnType<typeof createTriggerSchema>>;
|
|
647
646
|
declare function createTriggerEventSchema(scales: SdkScales): v.SchemaWithPipe<readonly [v.ObjectSchema<{
|
|
648
647
|
readonly triggerId: v.BigintSchema<undefined>;
|
|
@@ -671,7 +670,7 @@ declare function createTriggerEventSchema(scales: SdkScales): v.SchemaWithPipe<r
|
|
|
671
670
|
subaccountId: string;
|
|
672
671
|
symbolId: number;
|
|
673
672
|
triggerType: "unspecified" | "twap" | "ladder" | "stop_loss" | "take_profit" | "trailing_stop";
|
|
674
|
-
eventType: "unspecified" | "updated" | "fired" | "canceled";
|
|
673
|
+
eventType: "unspecified" | "updated" | "failed" | "fired" | "canceled";
|
|
675
674
|
ts: number;
|
|
676
675
|
childSeq: number;
|
|
677
676
|
childOrderId: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"triggers-output.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"triggers-output.schemas.d.ts","names":[],"sources":["../../../src/services/triggers/triggers-output.schemas.ts"],"mappings":";;;;;KA0BK;KAEA;KAEA;cA2BQ,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;KAc1B,sBAAsB,EAAE,mBAAmB;cAE1C,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAE1B,sBAAsB,EAAE,mBAAmB;cAE1C,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAE1B,sBAAsB,EAAE,mBAAmB;cAE1C,0BAAwB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KACzB,qBAAqB,EAAE,mBAAmB;cAEzC,2BAAyB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;KAC1B,sBAAsB,EAAE,mBAAmB;KA2Q3C;EACR;EACA;EACA,oBAAoB;EACpB,kBAAkB;;KAGV;EACR;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,oBAAoB;EACpB,kBAAkB;;KAGV;EACR;EACA;EACA;EACA;EACA;;EAEA;;KAGQ;EACR;EACA;EACA;EACA;EACA,oBAAoB;;KAGZ,uBACN,oBACA,wBACA,oBACA;EACE;;;iBA0GQ,oBAAoB,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAuDzC,UAAU,EAAE,YAAY,kBAAkB;iBAEtC,yBAAyB,QAAQ,YAAS,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0C9C,eAAe,EAAE,YAAY,kBAAkB;KAE/C;EACR,QAAQ;EACR"}
|