ctrader-ts 0.1.10 → 1.0.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 (95) hide show
  1. package/README.md +259 -91
  2. package/dist/bin/auth.js +8 -8
  3. package/dist/bin/auth.js.map +1 -1
  4. package/dist/cli/index.js +169 -26
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/src/{client.d.ts → core/client.d.ts} +57 -15
  7. package/dist/src/core/client.d.ts.map +1 -0
  8. package/dist/src/{client.js → core/client.js} +306 -49
  9. package/dist/src/core/client.js.map +1 -0
  10. package/dist/src/core/config.d.ts.map +1 -0
  11. package/dist/src/{config.js → core/config.js} +13 -13
  12. package/dist/src/core/config.js.map +1 -0
  13. package/dist/src/{connect.d.ts → core/connect.d.ts} +3 -3
  14. package/dist/src/core/connect.d.ts.map +1 -0
  15. package/dist/src/{connect.js → core/connect.js} +4 -6
  16. package/dist/src/core/connect.js.map +1 -0
  17. package/dist/src/{connection.d.ts → core/connection.d.ts} +53 -4
  18. package/dist/src/core/connection.d.ts.map +1 -0
  19. package/dist/src/{connection.js → core/connection.js} +152 -18
  20. package/dist/src/core/connection.js.map +1 -0
  21. package/dist/src/{errors.d.ts → core/errors.d.ts} +5 -0
  22. package/dist/src/core/errors.d.ts.map +1 -0
  23. package/dist/src/core/errors.js +85 -0
  24. package/dist/src/core/errors.js.map +1 -0
  25. package/dist/src/{helpers.d.ts → core/helpers.d.ts} +3 -3
  26. package/dist/src/core/helpers.d.ts.map +1 -0
  27. package/dist/src/{helpers.js → core/helpers.js} +9 -7
  28. package/dist/src/core/helpers.js.map +1 -0
  29. package/dist/src/{symbol-cache.d.ts → core/symbol-cache.d.ts} +2 -2
  30. package/dist/src/core/symbol-cache.d.ts.map +1 -0
  31. package/dist/src/core/symbol-cache.js.map +1 -0
  32. package/dist/src/index.d.ts +26 -11
  33. package/dist/src/index.d.ts.map +1 -1
  34. package/dist/src/index.js +24 -9
  35. package/dist/src/index.js.map +1 -1
  36. package/dist/src/modules/account.d.ts +68 -2
  37. package/dist/src/modules/account.d.ts.map +1 -1
  38. package/dist/src/modules/account.js +91 -34
  39. package/dist/src/modules/account.js.map +1 -1
  40. package/dist/src/modules/auth.d.ts +29 -2
  41. package/dist/src/modules/auth.d.ts.map +1 -1
  42. package/dist/src/modules/auth.js +42 -10
  43. package/dist/src/modules/auth.js.map +1 -1
  44. package/dist/src/modules/market.d.ts +51 -3
  45. package/dist/src/modules/market.d.ts.map +1 -1
  46. package/dist/src/modules/market.js +57 -16
  47. package/dist/src/modules/market.js.map +1 -1
  48. package/dist/src/modules/trading.d.ts +69 -3
  49. package/dist/src/modules/trading.d.ts.map +1 -1
  50. package/dist/src/modules/trading.js +74 -35
  51. package/dist/src/modules/trading.js.map +1 -1
  52. package/dist/src/protocol/codec.d.ts.map +1 -0
  53. package/dist/src/{codec.js → protocol/codec.js} +2 -2
  54. package/dist/src/protocol/codec.js.map +1 -0
  55. package/dist/src/{enums.d.ts → protocol/enums.d.ts} +177 -0
  56. package/dist/src/protocol/enums.d.ts.map +1 -0
  57. package/dist/src/{enums.js → protocol/enums.js} +177 -0
  58. package/dist/src/protocol/enums.js.map +1 -0
  59. package/dist/src/protocol/proto/messages.d.ts +7496 -0
  60. package/dist/src/protocol/proto/messages.js +21525 -0
  61. package/dist/src/protocol/proto/proto/messages.d.ts +7496 -0
  62. package/dist/src/protocol/proto/proto/messages.js +21525 -0
  63. package/dist/src/{types.d.ts → protocol/types.d.ts} +151 -3
  64. package/dist/src/protocol/types.d.ts.map +1 -0
  65. package/dist/src/{types.js.map → protocol/types.js.map} +1 -1
  66. package/llms.txt +280 -0
  67. package/package.json +89 -61
  68. package/dist/src/client.d.ts.map +0 -1
  69. package/dist/src/client.js.map +0 -1
  70. package/dist/src/codec.d.ts.map +0 -1
  71. package/dist/src/codec.js.map +0 -1
  72. package/dist/src/config.d.ts.map +0 -1
  73. package/dist/src/config.js.map +0 -1
  74. package/dist/src/connect.d.ts.map +0 -1
  75. package/dist/src/connect.js.map +0 -1
  76. package/dist/src/connection.d.ts.map +0 -1
  77. package/dist/src/connection.js.map +0 -1
  78. package/dist/src/enums.d.ts.map +0 -1
  79. package/dist/src/enums.js.map +0 -1
  80. package/dist/src/errors.d.ts.map +0 -1
  81. package/dist/src/errors.js +0 -47
  82. package/dist/src/errors.js.map +0 -1
  83. package/dist/src/helpers.d.ts.map +0 -1
  84. package/dist/src/helpers.js.map +0 -1
  85. package/dist/src/proto/messages.d.ts +0 -7076
  86. package/dist/src/proto/messages.js +0 -23289
  87. package/dist/src/proto/proto/messages.d.ts +0 -7076
  88. package/dist/src/proto/proto/messages.js +0 -23289
  89. package/dist/src/symbol-cache.d.ts.map +0 -1
  90. package/dist/src/symbol-cache.js.map +0 -1
  91. package/dist/src/types.d.ts.map +0 -1
  92. /package/dist/src/{config.d.ts → core/config.d.ts} +0 -0
  93. /package/dist/src/{symbol-cache.js → core/symbol-cache.js} +0 -0
  94. /package/dist/src/{codec.d.ts → protocol/codec.d.ts} +0 -0
  95. /package/dist/src/{types.js → protocol/types.js} +0 -0
package/dist/cli/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from "commander";
3
- import { connect } from "../src/connect.js";
4
- import { TrendbarPeriod } from "../src/enums.js";
3
+ import { connect } from "../src/core/connect.js";
4
+ import { TrendbarPeriod } from "../src/protocol/enums.js";
5
5
  let cachedClient = null;
6
6
  async function getClient() {
7
7
  if (cachedClient === null) {
@@ -10,7 +10,7 @@ async function getClient() {
10
10
  return cachedClient;
11
11
  }
12
12
  function dump(data) {
13
- process.stdout.write(JSON.stringify(data, null, 2) + "\n");
13
+ process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
14
14
  }
15
15
  /**
16
16
  * Parse "50p" / "$25" / "2%e" into SlTpSpec. Formats:
@@ -68,11 +68,20 @@ function buildMarketOpts(opts) {
68
68
  return result;
69
69
  }
70
70
  const periodMap = {
71
- M1: TrendbarPeriod.M1, M2: TrendbarPeriod.M2, M3: TrendbarPeriod.M3,
72
- M4: TrendbarPeriod.M4, M5: TrendbarPeriod.M5, M10: TrendbarPeriod.M10,
73
- M15: TrendbarPeriod.M15, M30: TrendbarPeriod.M30, H1: TrendbarPeriod.H1,
74
- H4: TrendbarPeriod.H4, H12: TrendbarPeriod.H12, D1: TrendbarPeriod.D1,
75
- W1: TrendbarPeriod.W1, MN1: TrendbarPeriod.MN1,
71
+ M1: TrendbarPeriod.M1,
72
+ M2: TrendbarPeriod.M2,
73
+ M3: TrendbarPeriod.M3,
74
+ M4: TrendbarPeriod.M4,
75
+ M5: TrendbarPeriod.M5,
76
+ M10: TrendbarPeriod.M10,
77
+ M15: TrendbarPeriod.M15,
78
+ M30: TrendbarPeriod.M30,
79
+ H1: TrendbarPeriod.H1,
80
+ H4: TrendbarPeriod.H4,
81
+ H12: TrendbarPeriod.H12,
82
+ D1: TrendbarPeriod.D1,
83
+ W1: TrendbarPeriod.W1,
84
+ MN1: TrendbarPeriod.MN1,
76
85
  };
77
86
  const program = new Command();
78
87
  program
@@ -85,7 +94,9 @@ program
85
94
  .description("Run interactive OAuth setup (delegates to bin/auth.js)")
86
95
  .action(async () => {
87
96
  const { execFileSync } = await import("node:child_process");
88
- execFileSync("node", [new URL("../bin/auth.js", import.meta.url).pathname], { stdio: "inherit" });
97
+ execFileSync("node", [new URL("../bin/auth.js", import.meta.url).pathname], {
98
+ stdio: "inherit",
99
+ });
89
100
  });
90
101
  // ─── state ───────────────────────────────────────────────────────────────────
91
102
  program
@@ -152,8 +163,16 @@ program
152
163
  .option("--expires <ms>", "Expiry Unix ms timestamp")
153
164
  .action(async (symbol, lots, limitPrice, opts) => {
154
165
  const ct = await getClient();
155
- const base = buildMarketOpts({ lots, sl: opts.sl, tp: opts.tp, label: opts.label });
156
- const orderOpts = { ...base, limitPrice: Number(limitPrice) };
166
+ const base = buildMarketOpts({
167
+ lots,
168
+ sl: opts.sl,
169
+ tp: opts.tp,
170
+ label: opts.label,
171
+ });
172
+ const orderOpts = {
173
+ ...base,
174
+ limitPrice: Number(limitPrice),
175
+ };
157
176
  if (opts.expires !== undefined)
158
177
  orderOpts.expirationTimestamp = Number(opts.expires);
159
178
  const event = await ct.buyLimit(symbol, orderOpts);
@@ -173,8 +192,16 @@ program
173
192
  .option("--expires <ms>", "Expiry Unix ms timestamp")
174
193
  .action(async (symbol, lots, limitPrice, opts) => {
175
194
  const ct = await getClient();
176
- const base = buildMarketOpts({ lots, sl: opts.sl, tp: opts.tp, label: opts.label });
177
- const orderOpts = { ...base, limitPrice: Number(limitPrice) };
195
+ const base = buildMarketOpts({
196
+ lots,
197
+ sl: opts.sl,
198
+ tp: opts.tp,
199
+ label: opts.label,
200
+ });
201
+ const orderOpts = {
202
+ ...base,
203
+ limitPrice: Number(limitPrice),
204
+ };
178
205
  if (opts.expires !== undefined)
179
206
  orderOpts.expirationTimestamp = Number(opts.expires);
180
207
  const event = await ct.sellLimit(symbol, orderOpts);
@@ -194,8 +221,16 @@ program
194
221
  .option("--expires <ms>", "Expiry Unix ms timestamp")
195
222
  .action(async (symbol, lots, stopPrice, opts) => {
196
223
  const ct = await getClient();
197
- const base = buildMarketOpts({ lots, sl: opts.sl, tp: opts.tp, label: opts.label });
198
- const orderOpts = { ...base, stopPrice: Number(stopPrice) };
224
+ const base = buildMarketOpts({
225
+ lots,
226
+ sl: opts.sl,
227
+ tp: opts.tp,
228
+ label: opts.label,
229
+ });
230
+ const orderOpts = {
231
+ ...base,
232
+ stopPrice: Number(stopPrice),
233
+ };
199
234
  if (opts.expires !== undefined)
200
235
  orderOpts.expirationTimestamp = Number(opts.expires);
201
236
  const event = await ct.buyStop(symbol, orderOpts);
@@ -215,8 +250,16 @@ program
215
250
  .option("--expires <ms>", "Expiry Unix ms timestamp")
216
251
  .action(async (symbol, lots, stopPrice, opts) => {
217
252
  const ct = await getClient();
218
- const base = buildMarketOpts({ lots, sl: opts.sl, tp: opts.tp, label: opts.label });
219
- const orderOpts = { ...base, stopPrice: Number(stopPrice) };
253
+ const base = buildMarketOpts({
254
+ lots,
255
+ sl: opts.sl,
256
+ tp: opts.tp,
257
+ label: opts.label,
258
+ });
259
+ const orderOpts = {
260
+ ...base,
261
+ stopPrice: Number(stopPrice),
262
+ };
220
263
  if (opts.expires !== undefined)
221
264
  orderOpts.expirationTimestamp = Number(opts.expires);
222
265
  const event = await ct.sellStop(symbol, orderOpts);
@@ -275,6 +318,27 @@ program
275
318
  dump({ modified: Number(positionId) });
276
319
  ct.disconnect();
277
320
  });
321
+ // ─── resize ─────────────────────────────────────────────────────────────────
322
+ program
323
+ .command("resize")
324
+ .description("Resize a position — change its volume to a new target in lots")
325
+ .argument("<positionId>", "Position ID")
326
+ .argument("<newLots>", "Desired total position size in lots (e.g. 0.05, 0.1, 1.0)")
327
+ .action(async (positionId, newLots) => {
328
+ const ct = await getClient();
329
+ const event = await ct.resize(Number(positionId), Number(newLots));
330
+ if (event === undefined) {
331
+ dump({
332
+ resized: Number(positionId),
333
+ change: "none",
334
+ message: "Position already at target size",
335
+ });
336
+ }
337
+ else {
338
+ dump({ resized: Number(positionId), newLots: Number(newLots), event });
339
+ }
340
+ ct.disconnect();
341
+ });
278
342
  // ─── cancel ──────────────────────────────────────────────────────────────────
279
343
  program
280
344
  .command("cancel")
@@ -295,10 +359,14 @@ program
295
359
  .option("--max <rows>", "Max results")
296
360
  .action(async (opts) => {
297
361
  const ct = await getClient();
298
- const from = opts.from !== undefined ? Number(opts.from) : undefined;
299
- const to = opts.to !== undefined ? Number(opts.to) : undefined;
300
- const maxRows = opts.max !== undefined ? Number(opts.max) : undefined;
301
- const result = await ct.getDeals(from, to, maxRows);
362
+ const dealOpts = {};
363
+ if (opts.from !== undefined)
364
+ dealOpts.from = Number(opts.from);
365
+ if (opts.to !== undefined)
366
+ dealOpts.to = Number(opts.to);
367
+ if (opts.max !== undefined)
368
+ dealOpts.maxRows = Number(opts.max);
369
+ const result = await ct.getDeals(dealOpts);
302
370
  dump(result);
303
371
  ct.disconnect();
304
372
  });
@@ -341,19 +409,94 @@ program
341
409
  price.symbol,
342
410
  price.bidDecimal !== undefined ? `bid=${price.bidDecimal}` : "",
343
411
  price.askDecimal !== undefined ? `ask=${price.askDecimal}` : "",
344
- ].filter(Boolean).join(" ");
345
- process.stdout.write(line + "\n");
412
+ ]
413
+ .filter(Boolean)
414
+ .join(" ");
415
+ process.stdout.write(`${line}\n`);
346
416
  });
347
417
  const cleanup = async () => {
348
418
  await stop();
349
419
  ct.disconnect();
350
420
  process.exit(0);
351
421
  };
352
- process.on("SIGINT", () => { void cleanup(); });
353
- process.on("SIGTERM", () => { void cleanup(); });
422
+ process.on("SIGINT", () => {
423
+ void cleanup();
424
+ });
425
+ process.on("SIGTERM", () => {
426
+ void cleanup();
427
+ });
428
+ });
429
+ // ─── symbols ────────────────────────────────────────────────────────────────
430
+ program
431
+ .command("symbols")
432
+ .description("List all available trading symbols")
433
+ .option("--json", "Output as JSON")
434
+ .action(async (opts) => {
435
+ const ct = await getClient();
436
+ const symbols = await ct.getSymbols();
437
+ if (opts.json) {
438
+ dump(symbols);
439
+ }
440
+ else {
441
+ // Table format with columns: symbolId, symbolName
442
+ const rows = symbols.map((s) => [String(s.symbolId), s.symbolName || ""]);
443
+ const header = ["Symbol ID", "Symbol Name"];
444
+ const colWidths = [
445
+ Math.max(header[0]?.length ?? 0, ...(rows.length > 0 ? rows.map((r) => r[0]?.length ?? 0) : [1])),
446
+ Math.max(header[1]?.length ?? 0, ...(rows.length > 0 ? rows.map((r) => r[1]?.length ?? 0) : [1])),
447
+ ];
448
+ const sep = (widths) => ` ${widths.map((w) => "-".repeat(w)).join(" ")}\n`;
449
+ const row = (cells, widths) => ` ${cells.map((c, i) => String(c).padEnd(widths[i] ?? 0)).join(" ")}\n`;
450
+ process.stdout.write(row(header, colWidths));
451
+ process.stdout.write(sep(colWidths));
452
+ for (const r of rows) {
453
+ process.stdout.write(row(r, colWidths));
454
+ }
455
+ }
456
+ ct.disconnect();
457
+ });
458
+ // ─── symbol-info ────────────────────────────────────────────────────────────
459
+ program
460
+ .command("symbol-info")
461
+ .description("Show detailed info for a symbol")
462
+ .argument("<symbol>", "Symbol name (e.g. EURUSD)")
463
+ .option("--json", "Output as JSON")
464
+ .action(async (symbol, opts) => {
465
+ const ct = await getClient();
466
+ const details = await ct.getSymbolDetails([symbol]);
467
+ if (details.length === 0) {
468
+ process.stderr.write(`Symbol not found: ${symbol}\n`);
469
+ ct.disconnect();
470
+ process.exit(1);
471
+ }
472
+ const info = details[0];
473
+ if (opts.json) {
474
+ dump(info);
475
+ }
476
+ else {
477
+ // Formatted key-value output
478
+ const fields = [
479
+ ["Symbol ID", String(info.symbolId)],
480
+ ["Symbol Name", String(info.symbolId)],
481
+ ["Digits", String(info.digits)],
482
+ ["Pip Position", String(info.pipPosition)],
483
+ ["Lot Size", String(info.lotSize ?? "")],
484
+ ["Min Volume", String(info.minVolume ?? "")],
485
+ ["Max Volume", String(info.maxVolume ?? "")],
486
+ ["Step Volume", String(info.stepVolume ?? "")],
487
+ ];
488
+ if (info.schedule !== undefined && info.schedule.length > 0) {
489
+ fields.push(["Trading Hours", `${info.schedule.length} schedule(s)`]);
490
+ }
491
+ const maxKeyLen = Math.max(...fields.map((f) => f[0].length));
492
+ for (const [key, val] of fields) {
493
+ process.stdout.write(`${key.padEnd(maxKeyLen)} ${String(val)}\n`);
494
+ }
495
+ }
496
+ ct.disconnect();
354
497
  });
355
498
  program.parseAsync(process.argv).catch((err) => {
356
- process.stderr.write(String(err) + "\n");
499
+ process.stderr.write(`${String(err)}\n`);
357
500
  process.exit(1);
358
501
  });
359
502
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,IAAI,YAAY,GAAmB,IAAI,CAAC;AAExC,KAAK,UAAU,SAAS;IACvB,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC3B,YAAY,GAAG,MAAM,OAAO,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,SAAS,IAAI,CAAC,IAAa;IAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,GAAW;IAC7B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;IAC5B,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAClE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;IACnE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACpB,CAAC;AAED,SAAS,eAAe,CAAC,IAMxB;IACA,MAAM,MAAM,GAAuB,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC/D,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;QAAE,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;QAAE,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACxD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9D,OAAO,MAAM,CAAC;AACf,CAAC;AAED,MAAM,SAAS,GAA+C;IAC7D,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;IACnE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG;IACrE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;IACvE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE;IACrE,EAAE,EAAE,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG;CAC9C,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACL,IAAI,CAAC,aAAa,CAAC;KACnB,WAAW,CAAC,sEAAsE,CAAC;KACnF,OAAO,CAAC,OAAO,CAAC,CAAC;AAEnB,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,wDAAwD,CAAC;KACrE,MAAM,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC5D,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;AACnG,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,wEAAwE,CAAC;KACrF,MAAM,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;IAClC,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC;IACtD,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5B,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,gDAAgD,CAAC;KAC7D,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;KACjD,QAAQ,CAAC,QAAQ,EAAE,+BAA+B,CAAC;KACnD,MAAM,CAAC,aAAa,EAAE,kDAAkD,CAAC;KACzE,MAAM,CAAC,aAAa,EAAE,oDAAoD,CAAC;KAC3E,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,qBAAqB,EAAE,eAAe,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,IAAoE,EAAE,EAAE;IACpH,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,iDAAiD,CAAC;KAC9D,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;KACjD,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KACpC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC;KAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,qBAAqB,EAAE,eAAe,CAAC;KAC9C,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,IAAoE,EAAE,EAAE;IACpH,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;IACtE,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,iEAAiE,CAAC;KAC9E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KACpC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;KACvC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC;KAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;KACpD,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,UAAkB,EAAE,IAAoE,EAAE,EAAE;IACxI,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACpF,MAAM,SAAS,GAAsB,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;IACjF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,SAAS,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnD,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,kEAAkE,CAAC;KAC/E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KACpC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;KACvC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC;KAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;KACpD,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,UAAkB,EAAE,IAAoE,EAAE,EAAE;IACxI,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACpF,MAAM,SAAS,GAAsB,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;IACjF,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,SAAS,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,gEAAgE,CAAC;KAC7E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KACpC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;KAC7C,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC;KAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;KACpD,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,SAAiB,EAAE,IAAoE,EAAE,EAAE;IACvI,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACpF,MAAM,SAAS,GAAqB,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9E,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,SAAS,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,kEAAkE,CAAC;KAC/E,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KACpC,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;KAC7C,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC;KAClC,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC;KACpC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC;KACxC,MAAM,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;KACpD,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,IAAY,EAAE,SAAiB,EAAE,IAAoE,EAAE,EAAE;IACvI,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACpF,MAAM,SAAS,GAAqB,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9E,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,SAAS,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnD,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gDAAgD,CAAC;KAC7D,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;KACvC,MAAM,CAAC,eAAe,EAAE,qCAAqC,CAAC;KAC9D,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,IAAuB,EAAE,EAAE;IAC7D,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,CAAC,CAAC;IACZ,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,KAAK,IAAI,EAAE;IAClB,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAChC,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,0CAA0C,CAAC;KACvD,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;IAChC,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,kCAAkC,CAAC;KAC/C,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC;KACvC,MAAM,CAAC,aAAa,EAAE,sDAAsD,CAAC;KAC7E,MAAM,CAAC,aAAa,EAAE,wDAAwD,CAAC;KAC/E,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,IAAkC,EAAE,EAAE;IACxE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;QAAE,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;QAAE,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACvC,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,gDAAgD,CAAC;KAC7D,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;KACzC,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;IACjC,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrC,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,aAAa,EAAE,4BAA4B,CAAC;KACnD,MAAM,CAAC,WAAW,EAAE,0BAA0B,CAAC;KAC/C,MAAM,CAAC,cAAc,EAAE,aAAa,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,IAAkD,EAAE,EAAE;IACpE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,CAAC;IACb,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,uCAAuC,CAAC;KACpD,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;KACnC,QAAQ,CAAC,UAAU,EAAE,kDAAkD,CAAC;KACxE,QAAQ,CAAC,QAAQ,EAAE,4BAA4B,CAAC;KAChD,QAAQ,CAAC,MAAM,EAAE,0BAA0B,CAAC;KAC5C,MAAM,CAAC,aAAa,EAAE,oBAAoB,CAAC;KAC3C,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,SAAiB,EAAE,IAAY,EAAE,EAAU,EAAE,IAAwB,EAAE,EAAE;IACvG,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,SAAS,2DAA2D,CAAC,CAAC;QAC9G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,MAAM,GAA2F;QACtG,MAAM;QACN,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;KACvB,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,CAAC,CAAC;IACb,EAAE,CAAC,UAAU,EAAE,CAAC;AACjB,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAEhF,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,QAAQ,CAAC,cAAc,EAAE,+CAA+C,CAAC;KACzE,MAAM,CAAC,KAAK,EAAE,OAAiB,EAAE,EAAE;IACnC,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG;YACZ,KAAK,CAAC,MAAM;YACZ,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;YAC/D,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;SAC/D,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,KAAK,IAAmB,EAAE;QACzC,MAAM,IAAI,EAAE,CAAC;QACb,EAAE,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC;AAEJ,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
+ import { CTraderAccount } from "../modules/account.js";
2
+ import { CTraderAuth } from "../modules/auth.js";
3
+ import { CTraderMarket, type GetTickDataParams, type GetTrendbarsParams } from "../modules/market.js";
4
+ import { type AmendOrderParams, CTraderTrading } from "../modules/trading.js";
5
+ import { TradeSide } from "../protocol/enums.js";
6
+ import type { AccountDisconnectEvent, AccountState, ClientDisconnectEvent, ConnectionState, Deal, DealOffset, DepositWithdraw, DepthEvent, DynamicLeverage, EnrichedTrader, ExecutionEvent, ExpectedMargin, FullSymbol, GetDealsOptions, GetOrdersOptions, LightSymbol, LiveAccountState, MarginCall, MarginCallEvent, MarginChangedEvent, Order, OrderErrorEvent, Position, PositionUnrealizedPnL, SlTpSpec, SymbolChangedEvent, TickData, TokenInvalidatedEvent, TraderUpdatedEvent, TrailingSLChangedEvent, Trendbar, WatchStateOptions } from "../protocol/types.js";
1
7
  import { CTraderConnection } from "./connection.js";
2
- import { CTraderAuth } from "./modules/auth.js";
3
- import { CTraderTrading, type AmendOrderParams } from "./modules/trading.js";
4
- import { CTraderAccount } from "./modules/account.js";
5
- import { CTraderMarket, type GetTickDataParams, type GetTrendbarsParams } from "./modules/market.js";
6
- import { TradeSide } from "./enums.js";
7
- import type { AccountState, ConnectionState, Deal, DealOffset, DepositWithdraw, DepthEvent, DynamicLeverage, ExecutionEvent, ExpectedMargin, FullSymbol, LightSymbol, MarginCall, MarginCallEvent, MarginChangedEvent, Order, OrderErrorEvent, Position, PositionUnrealizedPnL, SlTpSpec, SymbolChangedEvent, TickData, Trader, TraderUpdatedEvent, TrailingSLChangedEvent, Trendbar, TokenInvalidatedEvent, ClientDisconnectEvent, AccountDisconnectEvent } from "./types.js";
8
8
  export interface CTraderClientConfig {
9
9
  /** Hostname — e.g. "demo.ctraderapi.com" or "live.ctraderapi.com" */
10
10
  host: string;
@@ -116,10 +116,16 @@ export declare class CTrader {
116
116
  * @param symbolsOrIds - Symbol names ("EURUSD") or numeric IDs, or a mix
117
117
  */
118
118
  getSymbolDetails(symbolsOrIds: Symbol[]): Promise<FullSymbol[]>;
119
+ /**
120
+ * Full details for a single symbol: spread, commission, swap, lot size, schedule.
121
+ * Convenience wrapper around getSymbolDetails() for when you only need one.
122
+ * @param symbol - Symbol name ("EURUSD") or numeric ID
123
+ */
124
+ getSymbolInfo(symbol: Symbol): Promise<FullSymbol>;
119
125
  /** Force-refresh the symbol name→ID cache. Call if the broker adds new symbols. */
120
126
  refreshSymbols(): Promise<void>;
121
- /** Trader profile: balance, equity, margin, account type, access rights */
122
- getTrader(): Promise<Trader>;
127
+ /** Trader profile with computed `leverage` field (e.g. 100, 200, 500) */
128
+ getTrader(): Promise<EnrichedTrader>;
123
129
  /**
124
130
  * All open positions and pending orders.
125
131
  * @param returnProtectionOrders - Also return SL/TP as separate order objects
@@ -134,12 +140,10 @@ export declare class CTrader {
134
140
  */
135
141
  getState(): Promise<AccountState>;
136
142
  /**
137
- * Deal (execution) history.
138
- * @param from - Start Unix timestamp in ms
139
- * @param to - End Unix timestamp in ms
140
- * @param maxRows - Limit results (API max ~5000)
143
+ * Deal (execution) history. Defaults to last 24 hours if no time range specified.
144
+ * @param opts - Optional time range and row limit
141
145
  */
142
- getDeals(from?: number, to?: number, maxRows?: number): Promise<{
146
+ getDeals(opts?: GetDealsOptions): Promise<{
143
147
  deals: Deal[];
144
148
  hasMore: boolean;
145
149
  }>;
@@ -150,8 +154,11 @@ export declare class CTrader {
150
154
  offsetBy: DealOffset[];
151
155
  offsetting: DealOffset[];
152
156
  }>;
153
- /** Order history */
154
- getOrders(from?: number, to?: number): Promise<{
157
+ /**
158
+ * Order history. Defaults to last 24 hours if no time range specified.
159
+ * @param opts - Optional time range
160
+ */
161
+ getOrders(opts?: GetOrdersOptions): Promise<{
155
162
  orders: Order[];
156
163
  hasMore: boolean;
157
164
  }>;
@@ -230,6 +237,16 @@ export declare class CTrader {
230
237
  * @param opts - New sl and/or tp
231
238
  */
232
239
  modify(positionId: number, opts: ModifyOptions): Promise<void>;
240
+ /**
241
+ * Resize a position — change its volume to a new target in lots.
242
+ * If newLots > current: adds volume via a market order on the same position.
243
+ * If newLots < current: partially closes the difference.
244
+ * If equal: no-op.
245
+ * @param positionId - The cTrader position ID
246
+ * @param newLots - Desired total position size in lots (e.g. 0.05, 0.1, 1.0)
247
+ * @returns The execution event from the increase/decrease, or undefined if no-op
248
+ */
249
+ resize(positionId: number, newLots: Lots): Promise<ExecutionEvent | undefined>;
233
250
  /**
234
251
  * Close a position by ID. Full close by default, or partial if lots is specified.
235
252
  * @param positionId - The cTrader position ID
@@ -299,7 +316,32 @@ export declare class CTrader {
299
316
  onTokenInvalidated(handler: (event: TokenInvalidatedEvent) => void): () => void;
300
317
  /** Fires when a specific account is disconnected by the server. Returns unsubscribe fn */
301
318
  onAccountDisconnect(handler: (event: AccountDisconnectEvent) => void): () => void;
319
+ /**
320
+ * Stream live depth-of-market (order book) data. Returns an async unsubscribe function.
321
+ * @param symbolsOrIds - Symbol names or IDs to watch
322
+ * @param handler - Called on every depth update for subscribed symbols
323
+ * @example
324
+ * const stop = await client.watchDepth(["EURUSD"], (e) => console.log(e));
325
+ * // later: await stop();
326
+ */
302
327
  watchDepth(symbolsOrIds: Symbol[], handler: (event: DepthEvent) => void): Promise<() => Promise<void>>;
328
+ /**
329
+ * Stream live account state — balance, equity, margin, positions, and orders update in real-time.
330
+ * Listens to execution events, balance changes, margin updates, and spot prices to
331
+ * recompute a full AccountState snapshot on every change. No polling — pure push.
332
+ *
333
+ * Returns an async unsubscribe function that cleans up all listeners and spot subscriptions.
334
+ *
335
+ * @param handler - Called with the latest LiveAccountState on every state change
336
+ * @param options - Optional: throttleMs to limit spot-triggered updates (default 500ms)
337
+ *
338
+ * @example
339
+ * const stop = await ct.watchState((state) => {
340
+ * console.log(`Equity: $${state.equity}, Positions: ${state.positions.length}`);
341
+ * });
342
+ * // later: await stop();
343
+ */
344
+ watchState(handler: (state: LiveAccountState) => void, options?: WatchStateOptions): Promise<() => Promise<void>>;
303
345
  private executeMarketOrder;
304
346
  private executeLimitOrder;
305
347
  private executeStopOrder;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/core/client.ts"],"names":[],"mappings":"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"}